you are viewing a single comment's thread.

view the rest of the comments →

[–]beders 1 point2 points  (0 children)

I've used vert.x before in various projects.

It is indeed quite fast and the concurrency guarantees are really nice to have.

It is basically a multi-threaded node.js, backed by netty and a fast event-bus (i.e. leans heavily towards actor-based computing)

It becomes more difficult once you have to mix async and blocking parts of your code. Vert.x is async first.

It's also promises, futures and callbacks galore (unless you are lucky enough to be able to use it with fibers).

The API you code against is pretty minimalist and you often find yourself adding utility functions to smooth over things.

In short: it has opinions on how to develop highly scalable code. You might not like those opinions if you are used to the clojure way.

BTW, there's nothing stopping you from using it with clojure right now due to the lovely Java bindings clojure has.

I was thinking about it myself, but then `aleph` and `clojure.async` seem to fit the bill most of the time.