I'm not so much a specific language fanboy as a languages fanboy. There are so many languages out there that are outside the C, C++, Java and C# bucket that offer features that people in the C/C++/Java/C# camp don't even know about.
I agree... Programming languages are amazing tools... just as natural languages affects how we think, programming languages affect how we code. However, to bring this conversation back to a thread from a few weeks ago, I find it interesting, and sometimes frustrating, that most new languages that differ from C/C++ tend to target interpreters and virtual machines. Does anyone know any interesting and powerful languages that can be used just like C? That can link to C libraries, and can be compiled to native machine code, and can express the same low-level concepts as C, but in a more powerful and intuitive way? In short, does anyone know any languages other than C and C++ that would be interesting for audio programming? This list has made of aware of FAUST and some other interesting examples of "meta-languages" that compile to C code. I do find this interesting, but I would like a more common ground: something that can be used in a more general-purpose way (like C), but is still useful for audio, realtime programming, and maybe even operating systems (like C). I'm not one to argue against C or C++ actually, but having experienced Python and other high-level languages, I find myself wanting to use such a syntax for natively compiled code. I suppose that one could argue that a lot of the power of these interpreted languages comes from the fact that they are often dynamically and loosely typed, which is much more difficult to express in optimized, compiled code. It's precisely the strong typing and well-defined memory usage that makes C useful for things like operating systems and realtime programming. I do understand that. I am only suggesting that maybe there is some middle-ground between the likes of C and Python, that happens to not be C++. Anyone? I have often wondered what I might do if I tried to design such a language, but I think it's just too big a task. (For now anyways.) And I would hate to re-invent the wheel yet again. Steve
