Wow. That sounds sweet. Having a domain-specific language can really help when creating a sequence of rules. This is why scripting is so pervasive in game engines. Can you imagine having to hard-code all the cut-scenes, interaction logic, maps, etc? It sure beats a complex data model and/or lots of hairy if-then statements. This is exactly the the sort of thing Paul Graham discusses in his arcticle about bottom-up programming:
http://www.paulgraham.com/progbot.html On Dec 19, 2007 11:19 PM, Charles Curley <[EMAIL PROTECTED]> wrote: > On Wed, Dec 19, 2007 at 10:44:16AM -0700, Nathan Blackham wrote: > > > Without futher ado: > > http://steve-yegge.blogspot.com/2007/12/codes-worst-enemy.html > > Intersting. I'm not going to read the whole thing, but I do appreciate > his point. > > 20 years ago, I had a compiler, interpreter, operating system, and > maybe an assembler, all in 8 Kb. 12 Kb on 32 bit processors. It ran in > as little as 16 Kb, but I preferred 24 Kb. I could port it to a new > processor in a few weeks, and once I had the processor down I could > put it on a new computer in as little as an hour. The source code fit > on a DSDD floppy, along with editors, assemblers, the cross compiler > (it was self hosting), decompilers, single steppers, disassemblers and > other tools. Oh, and a few games. And an IDE. > > This was not a toy. I made my living writing fun things like dimmer > boards and microprocessor development stations with it. > > I understood it. Far better than I understand any of the tools I use > today. I could go in and tweak it, and know the implications of doing > so far better than the implications of tweaks I make today. > > That system also took an unusual approach to programming. If you write > the code to run, say, a washing machine, in C or Java, you write a > washing machine in C or Java. But what this tool kit let me do was > write a language for writing washing machines in. Then writing the > actual washing machine would be easy, less than a page of code, > because you're writing it in a washing machine language. "rinse" is a > verb in the language you're working in, not the name of some function > or object. I didn't care about functions or objects; I just wanted to > get those clothes rinsed. > > Bloat? There was none; you can't afford bloat when you only have 8 Kb > of ROM space and the processor is something brain dead like an 8080. > > -- > > Charles Curley /"\ ASCII Ribbon Campaign > Looking for fine software \ / Respect for open standards > and/or writing? X No HTML/RTF in email > http://www.charlescurley.com / \ No M$ Word docs in email > > Key fingerprint = CE5C 6645 A45A 64E4 94C0 809C FFF6 4C48 4ECD DFDB > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.6 (GNU/Linux) > > iD8DBQFHagmH//ZMSE7N39sRAktdAJ4pyDgcimSaZDHekSNlBgGGWj+L5wCdFhm+ > aYcqg1EzvYFiA3Q//ulAD7c= > =I0F+ > -----END PGP SIGNATURE----- > > > /* > PLUG: http://plug.org, #utah on irc.freenode.net > Unsubscribe: http://plug.org/mailman/options/plug > Don't fear the penguin. > */ > -- Kurt /* PLUG: http://plug.org, #utah on irc.freenode.net Unsubscribe: http://plug.org/mailman/options/plug Don't fear the penguin. */
