1998Q4/
<!-- MHonArc v2.4.4 -->
<!--X-Subject: [MUD&#45;Dev] Re: DevMUD:  Inheritable modules -->
<!--X-From-R13: Qlaor eh Fnera <plaorNzhd.bet> -->
<!--X-Date: Fri, 30 Oct 1998 23:50:39 &#45;0800 -->
<!--X-Message-Id: 199810310718.BAA28675#laurel,actlab.utexas.edu -->
<!--X-Content-Type: text/plain -->
<!--X-Head-End-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<title>MUD-Dev message, [MUD-Dev] Re: DevMUD:  Inheritable modules</title>
<!-- meta name="robots" content="noindex,nofollow" -->
<link rev="made" href="mailto:cynbe#muq,org">
</head>
<body background="/backgrounds/paperback.gif" bgcolor="#ffffff"
      text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000">

  <font size="+4" color="#804040">
    <strong><em>MUD-Dev<br>mailing list archive</em></strong>
  </font>
      
<br>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
<br clear=all><hr>
<!--X-Body-Begin-->
<!--X-User-Header-->
<!--X-User-Header-End-->
<!--X-TopPNI-->

Date:&nbsp;
[&nbsp;<a href="msg00620.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00622.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Thread:&nbsp;
[&nbsp;<a href="msg00853.html">Previous</a>
&nbsp;|&nbsp;<a href="msg00657.html">Next</a>
&nbsp;]
&nbsp;&nbsp;&nbsp;&nbsp;
Index:&nbsp;
[&nbsp;<A HREF="author.html#00621">Author</A>
&nbsp;|&nbsp;<A HREF="#00621">Date</A>
&nbsp;|&nbsp;<A HREF="thread.html#00621">Thread</A>
&nbsp;]

<!--X-TopPNI-End-->
<!--X-MsgBody-->
<!--X-Subject-Header-Begin-->
<H1>[MUD-Dev] Re: DevMUD:  Inheritable modules</H1>
<HR>
<!--X-Subject-Header-End-->
<!--X-Head-of-Message-->
<UL>
<LI><em>To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
<LI><em>Subject</em>: [MUD-Dev] Re: DevMUD:  Inheritable modules</LI>
<LI><em>From</em>: Cynbe ru Taren &lt;<A HREF="mailto:cynbe#muq,org">cynbe#muq,org</A>&gt;</LI>
<LI><em>Date</em>: Sat, 31 Oct 1998 01:18:10 -0600</LI>
<LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI>
</UL>
<!--X-Head-of-Message-End-->
<!--X-Head-Body-Sep-Begin-->
<HR>
<!--X-Head-Body-Sep-End-->
<!--X-Body-of-Message-->
<PRE>

"Jon A. Lambert" &lt;jlsysinc#ix,netcom.com&gt; comments:

| I think the idea of a something called the core is sort of a cop out 
| in designing a system.  Basically it's a blackhole, where one can 
| dump anything with out really thinking about interface.
| 
| Some may also know this as the blob phenomenon, where a single
| amorphous controller class or system management module monopolizes
| all the processing.  The surrounding modules become little more than
| a means to encapsulate data and ultimately serve the blob.
| One solution is to slow down, stop, and refactor the responsibilities
| of the disparate functions which have been tossed into the blob.
|
| [...]
|
| Any thoughts.... :)


For an opposing opinion, see the discussion of the Mediator design
pattern in Design Patterns by Gamma,Helm,Johnson,Vlissides. (Probably
the single most important book for anyone doing high-level OOP design?)

They note that factoring knowledge of interconnects diffusely into a
network of classes results in a system that acts as though it is
monolithic, because each class knows too much about its surroundings
to work well in any other context.

Isolating all the interaction logic in a central Mediator class can
let the leaf classes be much simpler and more focussed and hence
easier to use in other contexts.

This also lets the interactions be modified by subclassing only the
Mediator object, instead of having to subclass all the leaf classes
as well.



Anyhow, that's one possible justification for having a 'core'.



BTW:  Not to cast cold water, but I think interchangable software
parts which work smoothly in novel combinations is a Really Hard
Problem which people have been attempting for decades with as yet
no clear success stories[*].  (JavaBeans is the latest effort along
these lines, and I think the jury is clearly still out.)

At least some people seem to envision DevMUD solving this problem:
That would be wonderful if so, but I believe it will require
intense focus and some brilliant work to make it happen.

 Cynbe

[*] Unless, say, one wishes to count Unix filters or AVS modules.
I see those as different in spirit from the usual interchangable
software parts vision.


</PRE>

<!--X-Body-of-Message-End-->
<!--X-MsgBody-End-->
<!--X-Follow-Ups-->
<HR>
<ul compact><li><strong>Follow-Ups</strong>:
<ul>
<li><strong><A NAME="00657" HREF="msg00657.html">[MUD-Dev] Re: DevMUD:  Inheritable modules</A></strong>
<ul compact><li><em>From:</em> "Jon A. Lambert" &lt;jlsysinc#ix,netcom.com&gt;</li></ul>
</UL></LI></UL>
<!--X-Follow-Ups-End-->
<!--X-References-->
<!--X-References-End-->
<!--X-BotPNI-->
<UL>
<LI>Prev by Date:
<STRONG><A HREF="msg00620.html">[MUD-Dev] Re: DevMUD Objectives?</A></STRONG>
</LI>
<LI>Next by Date:
<STRONG><A HREF="msg00622.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></STRONG>
</LI>
<LI>Prev by thread:
<STRONG><A HREF="msg00853.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></STRONG>
</LI>
<LI>Next by thread:
<STRONG><A HREF="msg00657.html">[MUD-Dev] Re: DevMUD:  Inheritable modules</A></STRONG>
</LI>
<LI>Index(es):
<UL>
<LI><A HREF="index.html#00621"><STRONG>Date</STRONG></A></LI>
<LI><A HREF="thread.html#00621"><STRONG>Thread</STRONG></A></LI>
</UL>
</LI>
</UL>

<!--X-BotPNI-End-->
<!--X-User-Footer-->
<!--X-User-Footer-End-->
<ul><li>Thread context:
<BLOCKQUOTE><UL>
<LI><STRONG>[MUD-Dev] Re: DevMUD:  Inheritable modules</STRONG>, <EM>(continued)</EM>
<ul compact>
<LI><strong><A NAME="00614" HREF="msg00614.html">[MUD-Dev] Re: DevMUD:  Inheritable modules</A></strong>, 
Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Sat 31 Oct 1998, 03:37 GMT
<UL>
<LI><strong><A NAME="00633" HREF="msg00633.html">[MUD-Dev] Re: DevMUD:  Inheritable modules</A></strong>, 
The Arrow <a href="mailto:arrow#trelleborg,mail.telia.com">arrow#trelleborg,mail.telia.com</a>, Sat 31 Oct 1998, 21:01 GMT
</LI>
<LI><strong><A NAME="00852" HREF="msg00852.html">[MUD-Dev] Re: DevMUD:  Inheritable modules</A></strong>, 
James Wilson <a href="mailto:jwilson#rochester,rr.com">jwilson#rochester,rr.com</a>, Sun 22 Nov 1998, 23:04 GMT
<UL>
<LI><strong><A NAME="00853" HREF="msg00853.html">[MUD-Dev] Re: DevMUD: Inheritable modules</A></strong>, 
J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Sun 22 Nov 1998, 23:08 GMT
</LI>
</UL>
</LI>
</UL>
</LI>
<LI><strong><A NAME="00621" HREF="msg00621.html">[MUD-Dev] Re: DevMUD:  Inheritable modules</A></strong>, 
Cynbe ru Taren <a href="mailto:cynbe#muq,org">cynbe#muq,org</a>, Sat 31 Oct 1998, 07:50 GMT
<UL>
<LI><strong><A NAME="00657" HREF="msg00657.html">[MUD-Dev] Re: DevMUD:  Inheritable modules</A></strong>, 
Jon A. Lambert <a href="mailto:jlsysinc#ix,netcom.com">jlsysinc#ix,netcom.com</a>, Sun 01 Nov 1998, 04:02 GMT
</LI>
</UL>
</LI>
<LI><strong><A NAME="00639" HREF="msg00639.html">[MUD-Dev] Re: DevMUD:  Inheritable modules</A></strong>, 
Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Sat 31 Oct 1998, 21:22 GMT
</LI>
<LI><strong><A NAME="00644" HREF="msg00644.html">[MUD-Dev] Re: DevMUD:  Inheritable modules</A></strong>, 
Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Sat 31 Oct 1998, 21:23 GMT
</LI>
<LI><strong><A NAME="00645" HREF="msg00645.html">[MUD-Dev] Re: DevMUD:  Inheritable modules</A></strong>, 
Chris Gray <a href="mailto:cg#ami-cg,GraySage.Edmonton.AB.CA">cg#ami-cg,GraySage.Edmonton.AB.CA</a>, Sat 31 Oct 1998, 21:23 GMT
</LI>
</ul>
</LI>
</UL></BLOCKQUOTE>

</ul>
<hr>
<center>
[&nbsp;<a href="../">Other Periods</a>
&nbsp;|&nbsp;<a href="../../">Other mailing lists</a>
&nbsp;|&nbsp;<a href="/search.php3">Search</a>
&nbsp;]
</center>
<hr>
</body>
</html>