I was glad to see your post. I looked into the ORCS project a while ago, but got the impression they were going to use some odd C-like language, and so I gave up on it. A well-developed framework under Squeak would be great, I think, because it would bring a rich programming language and class library with it, as well as a very pleasant development environment.
I've been looking into interactive fiction lately, and I think there's a lot to be learned from that. There's a few mature developement environments that exist for IF, and there's a lot of similarities between IF and Rogue-ish games. I've only started learning Inform (and I haven't looked at TADS or ALAN), but it's definately based heavily on a prototype-like system (nearly every object in IF is unique, so inheretence isn't a large concept). The more simulation-based Rogue-like games would certainly include greater numbers of similar objects, and would demand a better formed class hiarchy, but the prototype model would still probably be central.
I agree that some syntactic sugar is necessary if Squeak is to be used. I don't know if it's really necessary to make it too C-like, though, except perhaps for political reasons. Some of the sugar in Python is nice, though.
[if you really want to make the C people happy, maybe Objective C would make sense? Interpretted would be *very* nice, though]
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- || Ian Bicking | bickiia@earlham.edu || || drawer #419 Earlham College | (765) 973-2537 || || Richmond, IN 47374 | || -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
I've been looking into interactive fiction lately, and I think there's a lot to be learned from that. There's a few mature developement environments that exist for IF, and there's a lot of similarities between IF and Rogue-ish games. I've only started learning Inform (and I haven't looked at TADS or ALAN), but it's definately based heavily on a prototype-like system (nearly every object in IF is unique, so inheretence isn't a large concept). The more simulation-based Rogue-like games would certainly include greater numbers of similar objects, and would demand a better formed class hiarchy, but the prototype model would still probably be central.
In the Roguelike games I've seen (Nethack, Diablo, Angband), there are very few unique objects, at least not enough to warrant using a prototype-based system over a class-based system[1]. The general idea behind IF is puzzle solving, while in a Roguelike, the general idea is to make your character strong enough to finish the main quest. Thus, IF players spend most of their time trying to get past the current situation, while Roguelike players are busy killing things, eating them and taking their stuff.
The Roguelike model lends itself quite nicely to a class heirarchy. I suspect that the IF development environments are distantly derived from MUDs and MUSHes, where simplicity and easy object creation are vital and there are also lots of uniques.
I agree that some syntactic sugar is necessary if Squeak is to be used. I don't know if it's really necessary to make it too C-like, though, except perhaps for political reasons. Some of the sugar in Python is nice, though.
Perhaps ORCS would benefit from just using Python, Lua or Tcl with all of the major libraries written in C. Smalltalk doesn't come across as a scripting language to me.
BTW, since the topic's come up, I should mention that I'm currently in the process of writing a Roguelike game in Squeak. I'll post more details when I have something that actually _does_ something.
--Chris
[1] Not that I'm opposed to using a Prototype-based language if there are other good reasons for it.
squeak-dev@lists.squeakfoundation.org