Fri, 05 Nov 2010 09:53:50 -0400, Gary Whatmore wrote: > bearophile Wrote: > >> Ellery Newcomer: >> >> > hey, cool >> > >> > stumbled on sing# a while ago and thought it was intriguing, or at >> > least the fact that ms was using it to write an OS kernel >> >> It contains a ton of new computer science ideas :-) So it's interesting >> regardless its applications. (If you don't keep yourself updated with >> new computer science ideas, you can't keep being a productive >> programmer for many years). > > Are you saying that Walter Bright or anyone else here isn't as > productive as you are because we haven't read about the latest language > research done between 1980 and 2010? Keeping yourself updated with new > ideas also means pragmatic real world books, not just ivory tower > research papers that usually aren't freely accessible without an > expensive subscription: > > http://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/ dp/0132350882/ > http://www.amazon.com/Domain-Specific-Languages-Addison-Wesley- Signature-Martin/dp/0321712943/ > http://www.amazon.com/D-Programming-Language-Andrei-Alexandrescu/ dp/0321635361/ > http://www.amazon.com/Lean-Architecture-Agile-Software-Development/ dp/0470684208/ > http://www.amazon.com/Mythical-Man-Month-Software-Engineering- Anniversary/dp/0201835959/ > http://www.amazon.com/Pragmatic-Programmer-Journeyman-Master/ dp/020161622X/ > http://www.amazon.com/Programming-Massively-Parallel-Processors-Hands/ dp/0123814723/ > http://www.amazon.com/Refactoring-Improving-Design-Existing-Code/ dp/0201485672/ > http://www.amazon.com/Test-Driven-Development-Kent-Beck/dp/0321146530/ > http://www.amazon.com/Version-Control-Git-Collaborative-Development/ dp/0596520123/ > http://www.amazon.com/Working-Effectively-Legacy-Michael-Feathers/ dp/0131177052/ > > Do I need to say more?
Those all books deal with tools and non-academic best practices. Probably useful information, but it's not necessarily built on previous (written) knowledge about the domain. The more academic papers discuss why some algoritm works, how to measure it analytically, how language constructs are built from smaller pieces etc. You should at least read few of those to get a better view of the literature. Programming language research has indeed found new techniques and results since the idea of OOP came some 30 to 40 years ago. Nothing suggests that OOP is the be-all and end-all of programming language design. See the links at http://harmful.cat-v.org/software/OO_programming/ Even D is slowly adopting real lambdas, algebraic data types, tuples, and all kinds of functional features.
