Since about a month I'm playing with Scheme. I've first learned it during my studies, now I'm using it just for fun. First I've just wanted to know if my remembrance has been right but now I've discovered Scheme as a nice language for my smaller projects, like the successor of the Tideland Dynamic Content Processor (DCP), currently written in Python.
I've decided to use PLT Scheme. It is portable and works really fine on OS X, Linux and Windows. Also the development environment DrScheme has nice features, even if it can't compare to a typical Smalltalk environment. One example is the highlighting of the usage of variables, functions, and returns through arrows when you mark them with your mouse. You can follow them and trace their scopes. Also the code navigation, the very flexible editor, the debugger, and the profiler are pleasing. It suits for my current small projects.
Scheme as a language is also really interesting. Alan Kay told about Lisp, the big brother of Scheme: "Lisp isn't a language, it's a buildings material.". Right now I'm just using Scheme just as a language. But I'm also using the object-oriented class extension, which shows how Scheme can be extended providing an additional paradigm. The macro system of Scheme isn't just a string replacement. It is a full feature that works in the program context and the lexical scope. So powerful procedures can be build to extend the base language and automaticly create even more useful procedures in one step for the given context if needed.
Right now I develop a simple markup language for the DCP. Maybe I can show some nice example of how Scheme supports me here soon.
I've decided to use PLT Scheme. It is portable and works really fine on OS X, Linux and Windows. Also the development environment DrScheme has nice features, even if it can't compare to a typical Smalltalk environment. One example is the highlighting of the usage of variables, functions, and returns through arrows when you mark them with your mouse. You can follow them and trace their scopes. Also the code navigation, the very flexible editor, the debugger, and the profiler are pleasing. It suits for my current small projects.
Scheme as a language is also really interesting. Alan Kay told about Lisp, the big brother of Scheme: "Lisp isn't a language, it's a buildings material.". Right now I'm just using Scheme just as a language. But I'm also using the object-oriented class extension, which shows how Scheme can be extended providing an additional paradigm. The macro system of Scheme isn't just a string replacement. It is a full feature that works in the program context and the lexical scope. So powerful procedures can be build to extend the base language and automaticly create even more useful procedures in one step for the given context if needed.
Right now I develop a simple markup language for the DCP. Maybe I can show some nice example of how Scheme supports me here soon.
0 Comments:
Post a Comment