Your Language is a Start-up

Watching the TIOBE index of programming language popularity is depressing. PHP and Javascript rule the web, despite the consensus that they are horrible; Haskell and Smalltalk are relegated to academic prototyping, but unanimously praised for the conceptual purity. How technolgy adoption happens is a puzzling question. Evidences seem to suggest that what matters is to attract a … Continue reading Your Language is a Start-up

Programming Languages Gotchas

Hoare's famous paper "Hints on Programming Language Design" distinguishes two main aspects of language design: Part of language design consists of innovation. This activity leads to new language features in isolation. The most difficult part of language design lies in integration: selecting a limited set of language features and polishing them until the result is … Continue reading Programming Languages Gotchas

Abstraction-Level vs. Meta-Level

As per wikipedia, a model is a pattern, plan, representation (especially in miniature), or description designed to show the main object or workings of an object, system, or concept. In the case of software engineering, models are used to represent specific aspects of the software system, such as static structures, communication paths, algorithms, etc. Models … Continue reading Abstraction-Level vs. Meta-Level