Jeebox was considered from many angles at once. Here is a list of most of them:
The Values Used To Create Jeebox
|• Making sure the entire language fits together, while containing a large number of features|
|• Removing ambiguities|
|• Being extensible|
|• Making sure the entire thing looks nice to the human eye|
|• Being able to represent natural-language, and in a way that reads naturally to English speakers|
|• Being familiar to coders|
|• Being minimal in expressing code|
|• Handling unicode properly. (All names can be Unicode. Allows numeric Unicode characters in strings.)|
|• Naturally representing a large variety of concepts, used in multiple programming languages. (C bitshifts, Obj-C named parameters, PHP error ignoring, etc)|
|• Adding a few cool programming concepts of my own, like "case sensitive, or insensitive operators".|
|• Containing all the best practices I've encountered in programming languages (such as allowing embedded values in strings)|
|• Improving on those best practices (such as making comments end lines)|
|• Being able to be embedded in XML, and have the entire document parsed by Jeebox.|
|• Creating a standard XML export format, and a standard "list" format (Like on the AST page).|
|• Being easy to use in a compiler (I've tested it by writing a compiler around Jeebox.)|
|• Being easy to use for natural-language (tested by writing a translation program.)|
|• Having a fast and easy API to work with the AST.|
|• Reliable. Jeebox has self-tests built in.|
|• Being "pretty on the inside". Jeebox's original source, although you can't see it, is very well made. Easy for me to understand, fix or improve.|
|• And more... I can't list all the angles I've viewed Jeebox from...|
Endless loving care was given to the design of Jeebox.
It's been a multi-year project, and I think the effort and single-minded focus of just one guy making his visions and values come real, pays off. Unlike most languages (C++ / Perl), this is not a language where you ask yourself "What the hell were they thinking???"
It's a big goal, but it is my goal. Honestly... Jeebox was designed with one overall goal.
|"Be the best, at everything... All at once."|
I think I've acheived it.