Skip to content

Instantly share code, notes, and snippets.

@knocte
Created September 5, 2013 00:20
Show Gist options
  • Save knocte/6444504 to your computer and use it in GitHub Desktop.
Save knocte/6444504 to your computer and use it in GitHub Desktop.
disadvantages of some programming languages
* Rust: already mentioned it's maybe too early to use (it didn't reach 1.0 and that means that the language keywords, classlibraries APIs, etc, can still change without warning). I like how safe and statically typed it tries to be, but I don't like the fact that it defaults to use manual memory management (non-GC).
* Go: definitely a language that will give a lot to talk about. The only thing I don't like about it is that, even though it uses an error-passing model that may be better than the try-catch model, it makes errors not bubble up (thus ignored) by default, which doesn't look very safe to me.
* Haskell: a very good contender in the functional-paradigm world, however the fact that it doesn't interoperate with other languages at the VM level (like F# or Clojure) makes it a no-go for me.
* Scala: a good static-typing alternative to Java, a bit less verbose, hybrid between functional and object-oriented paradigm, and which runs on the JVM. Disadvantage I see: doesn't default to immutability, like most functional languages do.
* Clojure: another good alternative to Scala if you're really convinced about immutability and the functional paradigm, because it also runs in the JVM. Only disadvantages I see are:
** JVM itself, a virtual-machine whose opensource counterpart is much worse than Oracle's version.
** JVM doesn't seem to do tail call optimizations (a fundamental technique for functional programming) as well as other VMs (i.e.: .NET).
** It has a dynamically typed system (although there's a library to achieve static typing!: http://logaan.github.io/clojure/core.typed/2013/08/29/first-look-at-core.typed.html?utm_source=dlvr.it&utm_medium=twitter).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment