[MUD-Dev] Language design

clawrenc at cup.hp.com clawrenc at cup.hp.com
Thu Aug 28 10:13:31 New Zealand Standard Time 1997


In <9708260547.8cwv at ami-cg.GraySage.Edmonton.AB.CA>, on 08/25/97 
   at 11:03 PM, cg at ami-cg.GraySage.Edmonton.AB.CA (Chris Gray) said:

>[Greg M:]
>:I seem to remember that someone (Jeff Kesselman, I think) stated that when
>:designing a language, they always went via one of two routes:
>:
>:   1. The language is tightly-bound to the task at hand
>:   2. The language is very generic in nature
>:
>:What are the (dis)advantages of each? I suspect that a non-generic
>:language would not be too extensible (and may cause problems if it went
>:on to a public ftp-able release), what are your opinions on this? A
>:generic language with libraries for specific purposes seems better than
>:tying everything to the language itself, but this is pretty much 'the C/C++
>:route'; I'm anxious to avoid making decisions solely on the basis of
>:"It's all I know."

>I have a hard time thinking of any disadvantages of using a more
>general purpose language, combined with a number of built-in
>functions to efficiently support the things that are used a lot by
>the expected code. 

Agreed.

My general approach is to do a general purpose language, and to then
add in data-specific features to customise it to the sorts of data I
expect the language to be used for.  Thus, my internal language has
many simple ways to represent and process lists of various types, as I
see that as a common data manipulation for a MUD.

>I don't think its any harder to make a general
>language - in fact it is probably easier than having to add in a
>bunch of extra constructs for the special stuff you want. 

Agreed.  On the rare times I've attempted a specialise language I've
found that I end up painting myself into a corner where previous
features prevent me from adding the new feature I really want.  This
is of course a failure in design, not the case of special cased
languages.

--
J C Lawrence                           Internet: claw at null.net
(Contractor)                           Internet: coder at ibm.net
---------------(*)               Internet: clawrenc at cup.hp.com
...Honorary Member Clan McFUD -- Teamer's Avenging Monolith...




More information about the MUD-Dev mailing list