The Measure of a Language
What is Expressiveness in a Computer Language?
Computer languages have a solid mathematical foundation. As such tools, the more solid their technical properties, the better they are. Because they are not 100% mathematics, their validity or usefulness is partially dependent on their user. C gurus may beat Lisper wannabes but that does not mean C is a superior language. The fact that C is popular not mean C is superior. The basis of computer languages's merit lie in their mathematical properties. It is this metric, that we should use as a guide for direction.
As a analogy, we measure the quality of a hammer by scientific principles: ergonomics, material, weight, hardness, construction, statistical analysis of accidents and productivity …, not by vogue or lore. If we go by feelings and preferences, hammer's future will deviate and perhaps become dildos or maces.
If rubes don't recognize a computer, the problem ain't faulty technology but ignorance. If SGML hasn't made a splash but HTML did, that's a problem of social immaturity. SGML remains a superior tool. If C droids don't appreciate lisp, that's trauma of the droids, not lisp.
Aim to have superior tools and knowledgeable people, not downgrading tools or stagnate to fit ordinary people. Education is the key. (education is always good in general.)
Haskell is a purely functional language. The language of the future. I love functional languages, especially no-assignment and absolute-lazy-evaluation ones. (often known as “pure” and “non-strict” respectively.) Such so-called denotational language is a piece of computable mathematics, unerring and exacting.
One of the best book in computer science The Structure and Interpretation of Computer Programs by Harold Abelson, Gerald Jay Sussman, Julie Sussman. (Free online at http://mitpress.mit.edu/sicp/) The cover features a wizard talking lambda with a witch, with the foot of the table showing.
Perl calls for its own page. See Pathetically Elational Regex Language.
Java is a all pent-up language with incessant lies.
SQL is a query language for databases. Supposedly it stands for Structured Query Language, but that may be a fix. SQL is one of the world's most fantastically moronic language. It is a language of ad-hoc-ness; the least structured; a oneliner sequence of awkwardness and inflexibility. There are controversies regarding its pronunciation. Oracle documents would bid for “sequel”, while the venerable database guru Christopher J Date in his A Guide to SQL Standard (4th Edition) amazon dismiss “sequel” pronunciation being a myth and unfit. I have only read the first chapter of this book. This book is for expert-level developers who needs in-depth knowledge about SQL.
Although there are standards for SQL the language, but it is in practice laughable as a portability practice.
A excellent introductory book on SQL is The Practical SQL Handbook, by Judith S Bowman et al. amazon I read the 3rd edition in 1998.