There’s a quite amusing kerfluffle (of the first kind) that can be browsed beginning at Conal Elliott‘s brilliant and hilarious post explaining how The C language is purely functional. (You can follow the links to other parts of the discussion after you stop laughing.)
C++ is a general-purpose programming language, not necessarily suitable for your special purpose.
and continues with a thorough discussion spiced with pungent observations:
- If you are an expert in the intricacies of C++, please consider this knowledge a kind of martial art – something a real master never uses.
- For the record, some of my knowledge of C++ was obtained through rather time consuming experimentation, performed under the wrong assumption that it has to pay off when I finally plug all the holes.
- If you choose to use a tool not suitable for your job, you shouldn’t blame the tool.
If any of those statements resonates with you, then by all means click on the following image:
Despite the title, James Iry’s A Brief, Incomplete, and Mostly Wrong History of Programming Languages is long, comprehensive, and mostly on-target! How could he get the title so wrong and the article so right?
There is a video interview from the 2007 JAOO conference available on-line.
“Attila Szegedi, Charles Nutter, and Erik Meijer discuss dynamic languages and language environments for mixed programming languages. Attila works on Rhino, the JVM-based version of Java Script. Charles is one of the leads for JRuby, and Erik is the farther of Linq, and also engaged in language design for VB.NET.”
A recent article on physorg.com caught my eye. It seems that a 37-year-old theoretical result has now been realized, producing what’s been described as “the fourth fundamental circuit element in electrical engineering”.
Flash-cut to the programming world, where there’s lots of discussion on closures and functional programming, both of which were actively explored in Lisp over 40 years ago.
Call me grumpy (or call me a cab), but it seems that there are many worthwhile ideas of a few decades back that are still worth a closer look, and deserve a bit of credit-where-credit-is-due.
Flip side: how many worthwhile ideas that somebody is thinking right now are at risk of being lost because:
- Somebody else’s (less valuable) idea gets better PR.
- In the rush for quick results, they take a little too long to come to fruition.
- They’re regarded as proprietary, and never get communicated to the world.
- They never get written down.
- Well, there was this bus…
The tite was borrowd from the original post referenced below. I never knew that Bob Newhart did consulting on software development. It applies “boxing” and “unboxing” in a new way.
The debate over static typing vs dynamic typing has been a popular topic for a while now (often in the form of “My Favorite Language can beat up your favorite language”). “What to Know Before Debating Type Systems” is a nice article that defines some of the terms of discussion, provides links to a few relevant discussions and references, and addresses common fallacies often heard in the debate. It’s a good basic introduction.