Message 15 on *C& Group (#72879):
Date:    Thu Mar  6 14:26:32 2003 PST
From:    Luke-Jr (#115349)
To:      TEf (#69976) and *C& Group (#72879)

Changing if/endif syntax would break compatibility with existing code
majorly and therefore shouldn't be changed without taking alot of
consideration. I feel that if one wishes to do a single-line 'if'
without the overhead, they can simply do something like (ifthis) &&
(dothis);

Object definition syntax is one task of this group. One idea I might put
forward would be something like this:
object #dummy parents #core #dumbobj
.defined_clear_property
.inherited_prop = "non-clear"
.defined_prop = "non-clear"
:verb(a)
return "dummy" + tostr(typeof(a));
.

Note the part of the verb definition "(a)" would be treated somewhat
like as if the first line was: {a, @ignored} = args;
This also suggests multiple parentage. That will be discussed at some
time in the future...
The #dummy is one example of where it sets a compile-time variable
"dummy" as a reference to that object. While compiling, #dummy would be
replaced with a pointer to the object. At runtime, it could be tostr()'d
and would probably have a random-ish object ID.

In a OS-level environment, I imagine the C&/MOOcode being loaded and
treating all non-OO processes/threads as single objects and the
C&/MOOcode main library be #0 so that things like $ldd would refer to
the dynamic loader and such.
For example, one could $ldd:load("dummy", "2.1.4") to load libdummy
version 2.1.4 (or 2.1 if unavailable, or 2 if unavailable, etc) and
return the object it was loaded into.
This would, obviously, require programs to have one "program object"
with maybe a simple .program_objects property. Perhaps .dummy would
point to what was "#dummy" in the source.

The C&/MOOcode main library could also probably define things such as
open_network_connection (though we will have to look at how to allow
things to use multiple protocols).


#############################################################
This message is sent to you because you are subscribed to
  the mailing list <[EMAIL PROTECTED]>.
To unsubscribe, E-mail to: <[EMAIL PROTECTED]>
To switch to the DIGEST mode, E-mail to <[EMAIL PROTECTED]>
To switch to the INDEX mode, E-mail to <[EMAIL PROTECTED]>
Send administrative queries to  <[EMAIL PROTECTED]>

Reply via email to