December 2000
- Components and Inheritence Jon Lambert
- Components and Inheritence John Buehler
Jon Lambert writes:
> I don't believe the use of a component approach is mutually exclusive
> with inheritence. My view of components is that of black box
> inheritence.
Agreed. I believe I've mentioned that inheritance permits a subset of the
designs possible by using components. Just as components permit a subset of
the designs possible using a turing-complete language. Interestingly, we
were wondering how many components of a non-trivial nature would be required
to build just about all possible applications. A 'turing-complete' set of
components, if you will. The *trivial* set of components would be
components that implement individual machine instructions. But that would
be a shade on the inefficient side.
> I believe components are best used in conjunction with simple glue by
> non-programmers (tool-users). These are the people you don't want
> "hanging themselves", not the mud library programmers (the
> tool-builders).
>
> Components and glue are the ideal "level" for your builders, creative
> writers, and tinkerers which are players who have the capability in-game
> to build and assemble things.
This is a fundamental point, and one that I disagree with pretty vehemently.
It states that it's important to have high quality code at the core, but
that then the rigorous techniques can be set aside. But that just means
that the crashes and odd behaviors migrade to the glue code. I equate the
component technique with an intensive inspection of packaged functionality.
I equate traditional methods with a straight introduction of machine
instructions to the execution space. Perhaps you are thinking of other
techniques that can be applied to glue code, but the point is that you
believe that there's no need to pursue components as a complete building
material for an application. That simply makes no sense to me.
I consider component constructions to be a hierarchical mechanism that never
stops. You spent the time to create some functionality, so you popped it
into some intelligently-constructed components. Great for me! Now I can
grab those components and reuse them. They are nicely-encapsulated
functionality. If you go ahead and code a traditional 'application' around
some existing components, then all I can do is reuse the component portions
and cut/paste the rest and go back to the traditional morass of trying to
reuse code. The end result: nobody bothers with components and components
become like the ActiveX toolkit. One more step forward, but everything
built on top of that toolkit is not reuseable.
As I said, you may believe that there are practical techniques for getting
reuse, quality control, etc, for methods, inheritance-based class
constructions and the like. I haven't seen them, and what I HAVE seen of
components tends to suggest that such things are too loose to build
arbitrarily large applications.
> So I've decided on a multi-level approach to designing my MPL. My mud
> language Aphrodite supports an Object Model similar to that of C++.
> Apollo is basically an interface definition language that is used
> to build
> components. This all all brought together in Artemis a visual
> programming,
> creative writing and building interface. A component is very similar to
> an ActiveX module. It is exposes properties that may be modified
> at runtime
> via glue code or at design time.
I know this is asking a lot, but I'd be very interested to know what
percentage of your code goes into components versus glue code. Best of luck
with the project.
JB - Components and Inheritence Jon Lambert
- Components and Inheritence John Buehler
- Cash for Lawsuits UCMM Administration
- Cash for Lawsuits Brian 'Psychochild' Green
- Cash for Lawsuits Patrick Dughi
- Cash for Lawsuits Matthew D. Fuller
- Cash for Lawsuits Patrick Dughi
- Cash for Lawsuits Matthew Mihaly
- Cash for Lawsuits Richard.Woolcock@rsuk.rohde-schwarz.com
- Cash for Lawsuits Richard.Woolcock@rsuk.rohde-schwarz.com
- Cash for Lawsuits Alex
- Names (was: An essay on d00dz ...) Marian Griffith
- Names (was "An essay on d00dism and the MMORPG") gmiller@classic-games.com
- Names (was "An essay on d00dism and the MMORPG") Travis Casey
- New and looking for a good place to get started... Graham Reitz
- New and looking for a good place to get started... Peter
- New and looking for a good place to get started... Corey Crawford
- New and looking for a good place to get started... Patrick Dughi
- New and looking for a good place to get started... J C Lawrence
- New and looking for a good place to get started... Brian 'Psychochild' Green
- Permadeath or Not? Corey Crawford
- Permadeath or Not? John Buehler
- Permadeath or Not? Jeff Freeman
- Permadeath or Not? Ben Chambers
- Permadeath or Not? John Buehler
- Permadeath or Not? Travis Nixon
- Permadeath or Not? Corey Crawford
- Permadeath or Not? John Buehler
- Permadeath or Not? Madrona Tree
- Permadeath or Not? John Buehler
- Permadeath or Not? Travis Casey
- Permadeath or Not? Jeff Freeman
- Permadeath or Not? Travis Casey
- Permadeath or Not? Travis Nixon
- Permadeath or Not? Zak Jarvis
- Permadeath or Not? Koster, Raph
- Permadeath or Not? Vincent Archer
- Permadeath or Not? Koster, Raph
- Permadeath or Not? Dave Rickey
- Permadeath or Not? Ananda Dawnsinger
- Permadeath or Not? Jeff Freeman
- Permadeath or Not? Batir
- Permadeath or Not? Koster, Raph
- Permadeath or Not? Jeff Freeman
- Permadeath or Not? Paul Schwanz - Enterprise Services
- Permadeath or Not? Kwon Ekstrom
- Permadeath or Not? Jeff Freeman
- Permadeath or Not? J. Eric Townsend
- Permadeath or Not? Ananda Dawnsinger
- Permadeath or Not? Travis Casey
- Permadeath or Not? John Buehler
- Permadeath or Not? Madrona Tree
- Permadeath or Not? Marian Griffith
- Permadeath or Not? rayzam
- Greetings from Organelle o. rchaeus
- Diku & GPL Patrick Dughi
- Diku & GPL Jon Lambert
- Diku & GPL Richard.Woolcock@rsuk.rohde-schwarz.com
- Diku & GPL Jon Lambert
- Diku & GPL J C Lawrence
- Diku & GPL Richard.Woolcock@rsuk.rohde-schwarz.com
- Diku & GPL Hans-Henrik Staerfeldt
- Diku & GPL Hans-Henrik Staerfeldt
- Diku & GPL Vincent Archer
- Diku & GPL gmiller@classic-games.com
- Diku & GPL Lars Duening
- Diku & GPL Steve {Bloo} Daniels
- Diku & GPL Alex
- Diku & GPL Corey Crawford
- Diku & GPL George Greer
- Current Server Versions (was: "New and looking for a good place to get started...") Corey Crawford
- Current Server Versions Corey Crawford
- Current Server Versions J C Lawrence
- A list of MMORPG Questions Eric Rhea
- A list of MMORPG Questions Steve {Bloo} Daniels
- A list of MMORPG Questions Jeff Freeman
- A list of MMORPG Questions Vincent Archer
- A list of MMORPG Questions J C Lawrence
- A list of MMORPG Questions Marc Bowden
- A list of MMORPG Questions Dave Rickey
- A list of MMORPG Questions John Szeder
- A list of MMORPG Questions Dave Kennerly
- A list of MMORPG Questions Corey Crawford
- A list of MMORPG Questions Koster, Raph
- A list of MMORPG Questions Jeff Freeman
- A list of MMORPG Questions Eric Rhea
- A list of MMORPG Questions Lee Sheldon
- A list of MMORPG Questions Koster, Raph
- A list of MMORPG Questions Eric Rhea
- A list of MMORPG Questions Koster, Raph
- A list of MMORPG Questions Sage
- Distro for Intricate / Numerous Mobs Hulbert, Leland
- Levels of immersion Richard A. Bartle
- Levels of immersion Yves K
- Levels of immersion Richard A. Bartle
- Levels of immersion olag@ifi.uio.no
- Levels of immersion Richard A. Bartle
- Levels of immersion John Vanderbeck
- Levels of immersion Richard A. Bartle
- Levels of immersion Tess Snider
- Levels of immersion Tess Lowe
- Levels of immersion Travis Casey
- Levels of immersion Richard A. Bartle
- Levels of immersion Travis Casey
- Levels of immersion Tess Snider
- Levels of immersion Paul Schwanz - Enterprise Services
- Levels of immersion Richard A. Bartle
- Levels of immersion Tess Snider
- Levels of immersion Jeff Freeman
- Levels of immersion Tess Lowe
- Levels of immersion Richard A. Bartle
- Levels of immersion Jeff Freeman
- Levels of immersion Travis Casey
- Levels of immersion olag@ifi.uio.no
- Levels of immersion Richard A. Bartle
- Levels of immersion msew
- Levels of immersion J C Lawrence
- Permadeath Nigel Chapman
- Permadeath Tess Snider
- Permadeath Richard.Woolcock@rsuk.rohde-schwarz.com
- History of a Game Christopher Allen
- Levels of immersion (Warning LONG) John Vanderbeck
- NPC Goals ( Was: Dynamic Timelines) Lord Ashon
- NPC Goals ( Was: Dynamic Timelines) Travis Casey
- NPC Goals ( Was: Dynamic Timelines) Lord Ashon
- Interesting EQ rant Tess Lowe
- New stuff on my site Koster, Raph
- New stuff on my site John Vanderbeck
- Tile Editor for MUD? Corey Crawford
- Moving away from the level based system John Vanderbeck
- Moving away from the level based system Corey Crawford
- Moving away from the level based system John Vanderbeck
- Moving away from the level based system Phillip Lenhardt
- Moving away from the level based system Dave Rickey
- Moving away from the level based system rayzam
- Moving away from the level based system John Buehler
- Moving away from the level based system msew
- Moving away from the level based system John Buehler
- Moving away from the level based system Jeff Freeman
- Moving away from the level based system John Buehler
- Moving away from the level based system Jeff Freeman
- Moving away from the level based system Phillip Lenhardt
- Moving away from the level based system Mike Warning
- Moving away from the level based system John Vanderbeck
- Moving away from the level based system rayzam
- Moving away from the level based system John Vanderbeck
- Moving away from the level based system Gabriel
- Moving away from the level based system Ron Moore
- Moving away from the level based system Corey Crawford
- Moving away from the level based system Jon Morrow
- Moving away from the level based system Batir
- Moving away from the level based system Ron Moore
- Moving away from the level based system Travis Casey
- Moving away from the level based system Christopher Allen
- Moving away from the level based system Travis Casey
- Moving away from the level based system David Bennett
- Moving away from the level based system Travis Casey
- Moving away from the level based system John Buehler
- Moving away from the level based system gmiller@classic-games.com
- Moving away from the level based system Hulbert, Leland
- Moving away from the level based system Kwon Ekstrom
- Moving away from the level based system John Buehler
- Moving away from the level based system Jeff Freeman
- Moving away from the level based system Tess Lowe
- Moving away from the level based system Paul Schwanz - Enterprise Services
- Moving away from the level based system Jeff Freeman
- Moving away from the level based system Paul Schwanz - Enterprise Services
- Moving away from the level based system Szii
- Moving away from the level based system Gabriel
- Moving away from the level based system Travis Casey
- Moving away from the level based system Kwon Ekstrom
- Moving away from the level based system Travis Casey
- Moving away from the level based system Hulbert, Leland
- Moving away from the level based system Travis Casey
- Dealing with high-level characters. Zak Jarvis
- Speaking of Everquest... Ananda Dawnsinger
- Magic systems, was: Moving away from the level based system Richard.Woolcock@rsuk.rohde-schwarz.com
- Immersion Types (was Levels of Immersion) Tess Lowe
- Immersion Types (was Levels of Immersion) Jeff Freeman
- Text Parsers szii@sziisoft.com
- Text Parsers Darren Henderson
- Text Parsers Travis Casey
- Text Parsers Nathan F.Yospe
- Re:Text Parsers szii@sziisoft.com
- EQ Crawling (was: Permadeath or Not?) Mike Warning
- EQ Crawling (was: Permadeath or Not?) Jeff Freeman
- Building a New MUD Ron
- Building a New MUD SavantKnowsAll@cs.com
- NPC grouping (LONG) Hulbert, Leland
- NPC grouping (LONG) ling@kanga.nu
- NPC grouping (LONG) Hulbert, Leland
- Level-less skill systems John W Pierce
- Forks or Frameworks? Gavin Doughtie
- Forks or Frameworks? Bryce Harrington
- Forks or Frameworks? Bryce Harrington
- Forks or Frameworks? szii@sziisoft.com
- Forks or Frameworks? Thomas, Chris
- Forks or Frameworks? Matthew Mihaly
- Forks or Frameworks? Tess Snider
- Forks or Frameworks? Bryce Harrington
- Forks or Frameworks? Koster, Raph
- Forks or Frameworks? bruce@puremagic.com
- Forks or Frameworks? Travis Casey
- Forks or Frameworks? Bryce Harrington
- Forks or Frameworks? Travis Casey
- Forks or Frameworks? Matthew Mihaly
- Forks or Frameworks? Dave Rickey
- Forks or Frameworks? Travis Casey
- Forks or Frameworks? Matthew Mihaly
- Forks or Frameworks? Travis Casey
- Forks or Frameworks? Tess Snider
- Forks or Frameworks? Jon Morrow
- Forks or Frameworks? Matthew Mihaly
- Forks or Frameworks? Koster, Raph
- Forks or Frameworks? Matthew Mihaly
- Forks or Frameworks? Kwon Ekstrom
- Forks or Frameworks? gmiller@classic-games.com
- Forks or Frameworks? Travis Casey
- LPC text parser Travis Casey
- "Exclusion" in Asimov's Greg Miller
- New Skill System Phil O'Donnell
- New Skill System John W Pierce
- New Skill System jsmithn@hotmail.com
- New Skill System gmiller@classic-games.com
- New Skill System John Buehler
- New Skill System Koster, Raph
- New Skill System John Buehler
- New Skill System Madrona Tree
- New Skill System gmiller@classic-games.com
- New Skill System Jon Morrow
- Curing skill spam (was: Moving away from the level based system) z032383@students.niu.edu
- Locker/Theft/Anti-Hoarding System Idea Andrew Snelling
- Locker/Theft/Anti-Hoarding System Idea Chris Lloyd
- Locker/Theft/Anti-Hoarding System Idea Travis Casey
- Locker/Theft/Anti-Hoarding System Idea Chris Lloyd
- Locker/Theft/Anti-Hoarding System Idea Andrew Snelling
- Curing skill spam (was: Moving away from the level based system) Phil Hall
- Must infrastructure dictate content? (was: Forks or Frameworks) Gavin Doughtie
- Virtual Communities olag@ifi.uio.no
- Virtual Communities Jon Morrow
- Virtual Communities msew
- Curing skill spam (was: Moving away from the level base system) Scatter
- Curing skill spam (was: Moving away from the level base system) z032383@students.niu.edu
- Curing skill spam (was: Moving away from the level base system) Batir
- Ray Feist interview Koster, Raph
- Ray Feist interview John Buehler
- Ray Feist interview David Loeser
- Ray Feist interview John Vanderbeck
- Ray Feist interview John Buehler
- Ray Feist interview Brian 'Psychochild' Green
- Ray Feist interview Travis Casey
- Ray Feist interview Lee Sheldon
- Ray Feist interview Travis Casey
- Ray Feist interview Fredfish {E. Harper}
- Ray Feist interview Lee Sheldon
- Ray Feist interview Lee Sheldon
- Storytelling Games [was: Ray Feist interview] Christopher Allen
- Curing skill spam Dan
- Curing skill spam Travis Casey
- Curing skill spam Jon Lambert
- Curing skill spam Alistair Milne