Hacker Newsnew | past | comments | ask | show | jobs | submit | r0man's commentslogin

Location: Berlin, Germany

Remote: Yes

Willing to relocate: No

Technologies: Clojure, ClojureScript, PostgreSQL, GraphQL

GitHub: https://github.com/r0man/

LinkedIn: https://www.linkedin.com/in/roman-scherer-488246b6/

Email: roman@burningswell.com


I always wanted to become better in Elisp, so I'm using SoundCloud now from Emacs ;) https://github.com/r0man/soundklaus.el


We should all support EDN


I'm using my ported version of Hiccup [1] to ClojureScript for a while now and share most of my templates between Clojure on the server, and ClojureScript on the client side with good sucess. It can sometimes get a little bit hairy to share code between the 2 platforms, but I hope something like Common Lisp's feature expressions [2] will make it into Clojure and ClojureScript soon. When this arrives, life will be a lot better ...

Just for fun, I benchmarked my Hiccup port against the other candidates.

Compilation Mode: Whitespace {:crate 7.076333333333333, :jquery 1.4643333333333333, :dommy 2.1186666666666665, :hiccup-str 1.985, :hiccup-node 2.3476666666666666}

Running Hiccup and Dommy in advanced mode get's the time towards unoptimized jQuery.

Compilation Mode: Advanced (Crate and jQuery don't run in advanced mode) {:dommy 1.3436666666666666, :hiccup-str 1.0293333333333334, :hiccup-node 1.3506666666666665}

One thing to note: The original Prismatic tests were building jQuery Nodes and appended them to an UL element. Building strings and appending those to the node speeds the whole thing up a little bit further [3]. In the above benchmark :hiccup-node uses DOM nodes to append to the root, :hiccup-str uses Javascript strings.

I can only agree. Using a Hiccup like template system in Clojure is very nice.

[1] https://github.com/r0man/hiccup/tree/clojurescript [2] http://dev.clojure.org/display/design/Feature+Expressions [3] https://github.com/r0man/dommy/tree/hiccup


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: