User login

Reply to comment

Expressivity != whole story?

I like this article but I'm not sure I really agree with the conclusion in all cases.

Often, less expressive languages (eg. Java vs Lisp) come with other advantages like static typing, additional compile-time checks, and refactoring tools that are of great benefit to large projects. There are various levels at which languages can trade expressivity for "safety" (meaning the extent to which the compiler can find errors in your code); consider pure functional languages like Haskell as an extreme example of this.

There's also the issue that code in more expressive languages can be harder to predict or analyse; here I'm thinking of a Ruby program with ORM classes generated at runtime, vs. a Java program where the ORM classes are generated at or before compile time.

So even though you will need to type more to produce a Java program than an equivalent Lisp program, expressivity doesn't tell the whole story.

Although if I'm programming myself I'll take Lisp over Java any day, unless the libraries I'm going to rely on are larger than my program's code :)

Reply

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.