Article For Thought

Kurt Griffiths kurt.griffiths at gmail.com
Thu Dec 20 17:31:15 MST 2007


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 <charlescurley at charlescurley.com>
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



More information about the PLUG mailing list