For up-to-date information on tsPyC, please head over to the tsPyC page at Sqizit's new home.The following information should not be considered current, and is retained for historical value only.DescriptionTsPyC (rhymes with “spicy”) is a new programming language. This raises the obvious question, “Why do we need another programming language?” TsPyC is different because it is built with extension in mind. It gives programmers the flexibility to enhance the compile-time behaviour of the language.There numerous situations in which this flexibility could come in handy. For instance, tsPyC gives the programmer the ability to introduce new keywords into the language and define their behaviour. By introducing such keywords, programmers have the ability to write code that reflects more clearly what they want to happen rather than the fine detail of how it should be done. It also allows programmers to develop domain-specific extensions to the language. TsPyC's extensibility also gives programmers the ability to additional layers of static checking to be done during the process of compiling a program, allowing a greater degree of certainty that a program is robust. Furthermore, the implementation of tsPyC includes a mechanism for generating C code from a syntax tree structure. This mechanism is modular, so may be used to generate and compile C code in applications that do not rely on the rest of tsPyC, thus simplifying the task of writing programs which generate C code. Primarily, tsPyC will:
StatusAs of November 2009, TsPyC is in a state roughly approximating completion. That is, it works, but there are still things that should be improved about it. It will be pushed to launchpad in the next few days.MotivationThe motivation of this project comes from these premises:
Documents
|