I personally believe that this adds a more unique feel to your application, as well as gives its users who wish to integrate their ideas with your application more freedom to do so. However, I do believe that it varies from program to program whether or not something like this should be implemented, and I think that's obvious.
Code: Select all
crumb Guard is Npc {
spit(player) gives number {
if(player:isBlack()) {
return swallow(player, "kill()", "take(money)", "send(jail)");
}
return swallow(player);
}
}
In the game that this scripting language was to be used, the players could freely kill one another, but they would receive a limit, and once that limit was breached, the player's name would turn black, and if they were killed, they had a chance to lose their equipment. And if that player wandered into city limits, and a Guard saw him, the above commands would be parsed and executed. There was a lot more than just this, but I've forgotten most if it.
This language wasn't at all designed to be intuitive or easy to use. Thoughts of implementing a new error-- "GiveUpAllHopeError," and a new Boolean value, "maybe," were considered as being a permanent part of the language. This language was designed for what was going to be our community, so that we could gawk at their laughable attempts at trying to use and understand our complex language.
Spoon: Thoughts, ideas, etc.