March 1998
- Describe Concept Stephen Zepp
- Describe Concept Jon A. Lambert
- Describe Concept J C Lawrence
- Describe Concept Jon A. Lambert
- Describe Concept J C Lawrence
- Describe Concept Vadim Tkachenko
- Tutorial: Let's build a Compiler! - Part XI: Lexical Scan Revisited Jon A. Lambert
- Tutorial: Let's build a Compiler! - Part XII: Miscellany Jon A. Lambert
- Tutorial: Let's build a Compiler! - Part XIII: Procedures Jon A. Lambert
- Tutorial: Let's build a Compiler! Chris Gray
- VEIL Network Protocol Brandon Gillespie
- Tutorial: Let's build a Compiler! - Part XIV: Types Jon A. Lambert
- Tutorial: Let's build a Compiler! - Part XV: Back to the Future Jon A. Lambert
- Tutorial: Let's build a Compiler! - Part XVI: Unit Construction Jon A. Lambert
- For Ling's FAQ Koster, Raph
- MUD Ratings jlsysinc.ix.netcom.com@ix.netcom.com
- Random Generation Tools Ling
- ANNOUNCE: DB Robin Carey
- THE DARKWHOLE TESTS J C Lawrence
- Magic as Metaphor J C Lawrence
- Magic as Metaphor J C Lawrence
- Magic as Metaphor Jon A. Lambert
- Magic as Metaphor J C Lawrence
- CT - A Hypothetical Session (mid 1995) J C Lawrence
- 2Cyberconf: An article J C Lawrence
- (long) AnarchyMOO Primary Log J C Lawrence
- (short) AnarchyMOO parting salute J C Lawrence
- AnarchyMOO purpose J C Lawrence
- (fwd) CODE RELEASE: [client] Spod! (Java mud client) J C Lawrence
- (fwd) CODE RELEASE: [client]: lyntin (hacker's client) 1.1b Released J C Lawrence
- DarkWhole Test #1 J C Lawrence
- DarkWhole Test #2 J C Lawrence
- DarkWhole test #3 J C Lawrence
- DarkWhole test #4 J C Lawrence
- DarkWhole test #5 J C Lawrence
- DarkWhole test Identity Crisis J C Lawrence
- The Craft of Adventure J C Lawrence
- What in THE Hell was that? Stephen Zepp
- What in THE Hell was that? Ben Greear
- What in THE Hell was that? J C Lawrence
- What in THE Hell was that? Jon A. Lambert
- (fwd) Varying Time Commitment Levels: what's an admin to do? J C Lawrence
- Hello, and a brief intro cimri
- Hello, and a brief intro Ben Greear
- (no title) Time limits? s001gmu@nova.wright.edu
- (no title) Time limits? Justin McKinnerney
- (no title) Time limits? J C Lawrence
- Speaking of Avatars Jon A. Lambert
- Speaking of Avatars Jon A. Lambert
- Speaking of Avatars J C Lawrence
- Speaking of Avatars Jon A. Lambert
- Re: Vadim Tkachenko
- META: Broken mail headers coder@ibm.net
- META: Broken mail headers Alex Oren
- META: Broken mail headers J C Lawrence
- META: Broken mail headers Alex Oren
- META: Broken mail headers J C Lawrence
- META: Broken mail headers Chris Gray
- META: Broken mail headers J C Lawrence
- META: Broken mail headers Caliban Tiresias Darklock
- META: Broken mail headers Chris Gray
- Turn-based MU*'s Sauron
- Balancing Addicts -> soft vs. hard enforcement cimri
- Balancing Addicts -> soft vs. hard enforcement Justin McKinnerney
- Balancing Addicts -> soft vs. hard enforcement J C Lawrence
- Balancing Addicts -> soft vs. hard enforcement Jon A. Lambert
- Balancing Addicts -> soft vs. hard enforcement Ling
- Balancing Addicts -> soft vs. hard enforcement Jon A. Lambert
- Balancing Addicts -> soft vs. hard enforcement Matt Chatterley
- Balancing Addicts -> soft vs. hard enforcement J C Lawrence
- Balancing Addicts -> soft vs. hard enforcement Jon A. Lambert
- Balancing Addicts -> soft vs. hard enforcement Matt Chatterley
- Balancing Addicts -> soft vs. hard enforcement Adam Wiggins
- Balancing Addicts -> soft vs. hard enforcement Joel Dillon
- SfD: Clientside Caching Nathan F Yospe
- SfD: Clientside Caching Jon A. Lambert
- SfD: Clientside Caching Nathan F Yospe
- SfD: Clientside Caching Chris Gray
- SfD: Clientside Caching Jon A. Lambert
- (subject missing) J C Lawrence
- Balancing Addicts Ling
- Balancing Addicts Richard Woolcock
- Balancing Addicts Ling
- Balancing Addicts J C Lawrence
- Transport layer (UDP vs TCP) Ben Greear
- Transport layer (UDP vs TCP) Niklas Elmqvist
- Transport layer (UDP vs TCP) Jon Leonard
- Transport layer (UDP vs TCP) Ben Greear
- Transport layer (UDP vs TCP) Jon Leonard
- Transport layer (UDP vs TCP) Ben Greear
- Transport layer (UDP vs TCP) Chris Gray
- Transport layer (UDP vs TCP) Niklas Elmqvist
- Transport layer (UDP vs TCP) Jon A. Lambert
- Transport layer (UDP vs TCP) Ben Greear
- Time Limits? Jon A. Lambert
- META: topic and thread culling (was Balancing Addicts -> soft vs. hard enforcement ) J C Lawrence
- (subject missing) J C Lawrence
- XShipWars J C Lawrence
- (fwd) INFO: [client] Chaco looking for new parent for Pueblo J C Lawrence
- SIMULATING FUTURE HISTORIES: THE NAU SOLAR SYSTEM SIMULATION & MARS SETTLEMENT J C Lawrence
- (fwd) Functional Security J C Lawrence
- (fwd) Functional Security Ling
- (fwd) Functional Security Chris Gray
- (fwd) Functional Security Matt Chatterley
- (fwd) Functional Security Miroslav Silovic
- (fwd) Functional Security Felix A. Croes
- (fwd) Functional Security J C Lawrence
On Fri, 20 Mar 1998 02:51:53 PST8PDT
Miroslav Silovic<silovic@zesoi.fer.hr> wrote:
> Actually Cold seems to have solved this problem: It has the
> following mechanisms:
> 1) bind() - binds primitive function to an object. After that,
> only the methods on the object can invoke the function
> 2) native methods - C function can be interfaced with Cold in
> such a way that it appears to be ordinary method for all practical
> purposes (except that you can't list its source)
> 3) private/public/protected method flags - these do the same
> thing as in C++ - they limit the objects that can call methods
> 4) no_override flag - flag a method with this and it can't be
> overriden on the descendants of the object
I follow this model almost exactly except that I add the following:
Inheritance is at the whim of the parent, not the child.
All incoming method calls, including inheritance requests, are
passed thru a simple gauntlet which maps the inheritance tree of the
caller and event owner against an explicit list of objects, and
depending on match either accepts or denies the method call on that
basis.
ie
accept ($caller, {list, of, objects, ...})
will accept method calls from all objects whose inheritance tree
intersects one of the listed objects
reject ($caller, {list, of, objects, ...})
will reject method calls from all objects whose inheritance tree
intersects one of the listed objects by raising exception.
Method calls which are neither explicitly accepted or rejected are
rejected with an exception to the effect of "I don't know who you
are". The archicture of the object model has the relevant object
lists for each being inherited, cumulative, and non-overrideable. Oh,
and the reject list is checked before the accept list...
Note: This is cheaper than it seems as I don't maintain compound
object images for objects representing their inheritance state, but
instead keep them as a dynamic map of the inheritance tree with calls
being made to the original copies, not local copies. I also do a
*LOT* of cacheing so that checks for the same object pairs within a
given event are not repeated.
Should the incoming method call pass the gauntlet, it may then
(optionally) pass thru a second level of object-specific
authentication before being passed to the object in question.
Outside of this authentication tends to be done on the basis of
"friends" and "allies" lists, with membership (or occassionally
inheritance from) one of the listed objects being the pass phrase.
--
J C Lawrence Internet: claw@null.net
(Contractor) Internet: coder@ibm.net
---------(*) Internet: claw@under.engr.sgi.com
...Honourary Member of Clan McFud -- Teamer's Avenging Monolith...
- SIMULATING FUTURE HISTORIES s001gmu@nova.wright.edu
- Character development [was ] Matt Chatterley
- Character development [was ] J C Lawrence
- Character development [was ] Matt Chatterley
- Character development [was ] Travis Casey
- Character development [was ] J C Lawrence
- Character development [was ] Travis S. Casey
- Character development [was ] Marian Griffith
- Character development [was ] Travis S. Casey
- Character development [was ] Vadim Tkachenko
- Character development [was ] Travis Casey
- Character development [was ] Vadim Tkachenko
- Character development [was ] Travis Casey
- Character development [was ] Vadim Tkachenko
- Character development [was ] Marian Griffith
- Character development [was ] Vadim Tkachenko
- Character development [was ] Marian Griffith
- Character development [was ] s001gmu@nova.wright.edu
- Character development [was ] Marian Griffith
- Character development [was ] J C Lawrence
- Character development [was ] Cimri
- Character development [was ] J C Lawrence
- Character development [was ] s001gmu@nova.wright.edu
- Character development [was ] Caliban Tiresias Darklock
- Character development [was ] Caliban Tiresias Darklock
- Character development [was ] Vadim Tkachenko
- Character development [was ] Ben Greear
- Character development [was ] Matt Chatterley
- Character development [was ] J C Lawrence
- Character development [was ] Matt Chatterley
- Character development [was ] Travis S. Casey
- Character development [was ] J C Lawrence
- Character development [was ] Koster, Raph
- Character development [was ] J C Lawrence
- Character development [was ] Koster, Raph
- Character development [was ] Alex Bertoglio
- Character development [was ] J C Lawrence
- Character development [was ] J C Lawrence
- Character development [was ] John Bertoglio
- 3D engines for MUDs Niklas Elmqvist
- 3D engines for MUDs Chris Gray
- 3D engines for MUDs J C Lawrence
- 3D engines for MUDs Niklas Elmqvist
- 3D engines for MUDs Chris Gray
- 3D engines for MUDs Ling
- 3D engines for MUDs Koster, Raph
- 3D engines for MUDs Mike Sellers
- 3D engines for MUDs Niklas Elmqvist
- 3D engines for MUDs Koster, Raph
- 3D engines for MUDs Ling
- 3D engines for MUDs s001gmu@nova.wright.edu
- Dynamic Loading of Modules Niklas Elmqvist
- Dynamic Loading of Modules Greg Munt
- Dynamic Loading of Modules J C Lawrence
- Parlez vous NPC? Matt Chatterley
- Parlez vous NPC? Vadim Tkachenko
- Parlez vous NPC? Matt Chatterley
- Parlez vous NPC? Chris Gray
- Parlez vous NPC? Matt Chatterley
- Parlez vous NPC? Nathan F Yospe
- Parlez vous NPC? Matt Chatterley
- Dynamic Loading of Modules Niklas Elmqvist
- Dynamic Loading of Modules Chris Gray
- Dynamic Loading of Modules Jon A. Lambert
- World Persistence, flat files v/s DB v/s ?? Ben Greear
- World Persistence, flat files v/s DB v/s ?? Chris Gray
- World Persistence, flat files v/s DB v/s ?? Jon A. Lambert
- World Persistence, flat files v/s DB v/s ?? Greg Munt
- World Persistence, flat files v/s DB v/s ?? Chris Gray
- World Persistence, flat files v/s DB v/s ?? Matt Chatterley
- World Persistence, flat files v/s DB v/s ?? s001gmu@nova.wright.edu
- World Persistence, flat files v/s DB v/s ?? Vadim Tkachenko
- World Persistence, flat files v/s DB v/s ?? Vadim Tkachenko
- World Persistence, flat files v/s DB v/s ?? Matt Chatterley
- World Persistence, flat files v/s DB v/s ?? Ben Greear
- World Persistence, flat files v/s DB v/s ?? Vadim Tkachenko
- World Persistence, flat files v/s DB v/s ?? Joel Dillon
- World Persistence, flat files v/s DB v/s ?? Joel Dillon
- World Persistence, flat files v/s DB v/s ?? Vadim Tkachenko
- World Persistence, flat files v/s DB v/s ?? Matt Chatterley
- World Persistence, flat files v/s DB v/s ?? Chris Gray
- World Persistence, flat files v/s DB v/s ?? Ross Nicoll
- World Persistence, flat files v/s DB v/s ?? Ross Nicoll
- World Persistence, flat files v/s DB v/s ?? Matt Chatterley
- World Persistence, flat files v/s DB v/s ?? Vadim Tkachenko
- World Persistence, flat files v/s DB v/s ?? s001gmu@nova.wright.edu
- World Persistence, flat files v/s DB v/s ?? Joel Dillon
- World Persistence, flat files v/s DB v/s ?? Matt Chatterley
- World Persistence, flat files v/s DB v/s ?? Vadim Tkachenko
- World Persistence, flat files v/s DB v/s ?? J C Lawrence
- World Persistence, flat files v/s DB v/s ?? Chris Gray
- World Persistence, flat files v/s DB v/s ?? J C Lawrence
- World Persistence, flat files v/s DB v/s ?? Vadim Tkachenko
- World Persistence, flat files v/s DB v/s ?? Chris Gray
- World Persistence, flat files v/s DB v/s ?? J C Lawrence
- World Persistence, flat files v/s DB v/s ?? Jon A. Lambert
- World Persistence, flat files v/s DB v/s ?? J C Lawrence
- World Persistence, flat files v/s DB v/s ?? Ben Greear
- World Persistence, flat files v/s DB v/s ?? Matt Chatterley
- World Persistence, flat files v/s DB v/s ?? Ben Greear
- World Persistence, flat files v/s DB v/s ?? Jon A. Lambert
- World Persistence, flat files v/s DB v/s ?? J C Lawrence
- World Persistence, flat files v/s DB v/s ?? Joel Dillon
- World Persistence, flat files v/s DB v/s ?? Matt Chatterley
- World Persistence, flat files v/s DB v/s ?? Joel Dillon
- World Persistence, flat files v/s DB v/s ?? J C Lawrence
- World Persistence, flat files v/s DB v/s ?? Joel Dillon
- World Persistence, flat files v/s DB v/s ?? J C Lawrence
- World Persistence, flat files v/s DB v/s ?? Matt Chatterley
- World Persistence, flat files v/s DB v/s ?? J C Lawrence
- World Persistence, flat files v/s DB v/s ?? Adam Wiggins
- World Persistence, flat files v/s DB v/s ?? Ben Greear
- World Persistence, flat files v/s DB v/s ?? Orion Henry
- World Persistence, flat files v/s DB v/s ?? Ben Greear
- World Persistence, flat files v/s DB v/s ?? Nathan F Yospe
- World Persistence, flat files v/s DB v/s ?? Ben Greear
- World Persistence, flat files v/s DB v/s ?? Vadim Tkachenko
- World Persistence, flat files v/s DB v/s ?? J C Lawrence
- World Persistence, flat files v/s DB v/s ?? J C Lawrence
- World Persistence, flat files v/s DB v/s ?? Greg Munt
- World Persistence, flat files v/s DB v/s ?? Ben Greear
- World Persistence, flat files v/s DB v/s ?? Jon A. Lambert
- World Persistence, flat files v/s DB v/s ?? J C Lawrence
- World Persistence, flat files v/s DB v/s ?? J C Lawrence
- World Persistence, flat files v/s DB v/s ?? Chris Gray
- World Persistence, flat files v/s DB v/s ?? J C Lawrence
- Jukebox Vadim Tkachenko
- Another recruit for the list? Joel Dillon
- OT: Martin Keegan J C Lawrence
- Old code Joel Dillon
- Old code Michael Hohensee
- UML/Commercial v Free Muds Greg Munt
- UML/Commercial v Free Muds Nathan F Yospe
- UML/Commercial v Free Muds Jon A. Lambert
- Heightfield Terrain Rendering Paper Niklas Elmqvist
- (subject missing) J C Lawrence
- (fwd) Roleplaying J C Lawrence
- (fwd) Roleplaying s001gmu@nova.wright.edu
- (fwd) Roleplaying Katrina McClelan
- (fwd) Roleplaying Ling
- (fwd) Roleplaying J C Lawrence
- (fwd) Roleplaying Travis Casey
- Predicting future motion intelligently J C Lawrence
- META: New Mail server and ISP J C Lawrence
- (rec.games.mud.admin) Roleplaying (fwd) Nathan F Yospe
- Persistant storage.... My current idea. Ben Greear
- Persistant storage.... My current idea. Jon A. Lambert
- Persistant storage.... My current idea. Ben Greear
- Persistant storage.... My current idea. J C Lawrence
- Persistant storage.... My current idea. Ben Greear
- Persistant storage.... My current idea. J C Lawrence
- Persistant storage.... My current idea. Ben Greear
- Persistant storage.... My current idea. Chris Gray
- Persistant storage.... My current idea. Ben Greear
- Persistant storage.... My current idea. J C Lawrence
- Persistant storage.... My current idea. Ben Greear
- UML & CORBA Greg Munt
- [MUD-Dev]: smoothing J C Lawrence
- [MUD-Dev]: smoothing J C Lawrence