D Programming Language for Systems & Embedded Programming
Greg and I are working at X-Rite these days on an extended assignment. We’re part of a team developing a new color measurement device. It’s a complicated embedded system and the first large-scale implementation of our Agile and TDD approaches to embedded system development (incidentally, thanks, X-Rite, for your faith in us). One of our team members, Mark, has some familiarity with the D programming language. I’ve heard of it. It’s been in development for quite some time. Version 1.0 was just released in January of 2007. Because of Mark I just checked it out. It’s nice.
For anyone who’s worked with high-level programming in say Java or C# and also used C or C++ for low-level systems programming, you know that feature lust you get. You love working in a language like C close to the hardware but simultaneously long for capabilities more advanced languages provide. For instance, in our project we’re using C. We just implemented a simple exception handling mechanism based on setjmp/longjmp. While it’s definitely making error handling much simpler, it’s not fully featured exception handling.
Boy oh boy, does D look nice. Rather than try to summarize its niceties here, go read more about it on Wikipedia and check out its feature/language comparison page too. I wouldn’t be surprised if D picked up some decent steam in the systems programming world (there’s already support for Win32, x86 Linux, and OS X). Unfortunately, given the slow-moving software engineering culture surrounding embedded systems, I doubt D will make an appearance any time soon. Still, we can dream…
bugTriagogomo Says:
August 17th, 2008 at 06:34 PMHi homemade portable air filters homemade flavored sugars salts homemade milling machine plans homemade cardboard picture frame homemade air core choke inductors charts Bye