When your #javascript ends up looking a lot more like #lisp...
@phoe lol, yes. no hiding those scars. I miss clojure, but I'd be hard pressed to do web app stuff faster than with sinatra (hence not using clojure / cljs)
Made a tiny library for doing db migrations a while back (kinda like activerecord's "rake db:migrate"), but there's a lot around authentication, etc... didn't wanna learn clojure web app ecosystem as well as all the PWA stuff :P
@phoe some of the ES6 stuff is nice - better anonymous function syntax, let bindings, etc. and the fact that functions are first class is clutch, and closures. The comparison isn't too ridiculous.
One of the most unfortunate things is the syntax. Lisp that looks like C loses expressiveness.
@slackz Yep, I see! ES6 has adopted enough useful things to be a bearable (for me) programming language. Same with many other langs.
I did a very quick and dirty attempt at lispifying your syntax and got the following.
@phoe yeah, all about the tool for the job. lol, stop tempting me... ughh... yeah, I would love to be working in clojurescript right now.
My entire source code tree is ~0.7MB right now though. lol I'm trying to keep it super minimalist.
Shoot, I could use cljs... most of the sinatra stuff became irrelevant when restructuring things as a single-page app. It's just basically a json endpoing right now with vuejs, etc in front
*ponders*
@phoe oops, meant to link to project:
http://github.com/ckuttruff/orghub
Thanks for the code sample. that is super tempting
@slackz My sample is much more Common-Lisp-like since that's the dialect I am using, but I'm glad to have tempted you anyway. (:
@phoe I would love to hear from CL folks at this point what keeps them in that camp vs clojure. That's no shade on Common Lisp for sure; still fondly remember reading (and re-reading) Practical Common Lisp. One of my fav coding books of all time...
Have read some decent discussions about it, but yeah, Clojure straight up blew me away with the persistent data structures, syntax sugar, concision of clojure.core (reading it is a joy), Rich Hickey cause he's a badass, all the jvm infastructure.
@slackz See the recent HN discussion at https://news.ycombinator.com/item?id=17036497
Myself, I really enjoy OO programming with Common Lisp, which is something that Clojure cannot give me (since it's a FP-oriented language).
@phoe that's super fair and not even something I thought about that much. I love the immutability and the way of thinking with a lot of functional programming, but I also spend the vast majority of time in Ruby where everything's an object :)
Was so impressed to learn about how CL just added on CLOS like it was no thing cause Lisp is magic. Do you use SBCL?
@slackz I use SBCL, but it doesn't really matter since I stick to portable Common Lisp most of the time and therefore my code should run on any conforming implementation.
For a good book about implementing CLOS in a CLOS-less Common Lisp, see https://en.wikipedia.org/wiki/The_Art_of_the_Metaobject_Protocol
@phoe haven't read it, but I absolutely remember that cover. I know it's a classic text. So appreciate the entire Lisp community really.
Racket community rockin on scheme, clojurians doing their thing, Common Lispers obv still around :)
Lisp is alive and well in 2018
@slackz A classic text but also a very good book that explains the inner working of CLOS.
@phoe wooooaaaa.... this site got a damn fine upgrade: http://lisp-lang.org/
lol, I can't remember what the earlier version looked like, but not like that.
Is this a thing you use?
https://common-lisp.net/project/parenscript/
@slackz I used Parenscript back in the day, yes. I don't think it has been upgraded for ES6 though.
@phoe This is what I get for being uncritically excited
Full-blown *facedesk* running into stuff like this:
https://stackoverflow.com/questions/28889450/when-should-i-use-return-in-es6-arrow-functions
javascript is gross.
Moments like this when cljs is looking very appealing
@slackz sorry, but this still looks like JS and not Lisp.