Happy to see both my favorite editor and my favorite programming language hit the front page of Hacker News! FWIW, I responded to some of the points regarding Tutkain over at reddit[1].
> get rid of the extra “REPL” panel for good. Why do you need it if you can see your results inline?
But I do not want them inline. I want to use the REPL as a _interactive_ REPL, where I can write my code and later copy that to the file. That's actually one of the reasons I still use Emacs: Common Lisp with Sly and Clojurescript with Cider.
Because I gain nothing when writing in the editor window - because in _Emacs_ the REPL window works (almost) the same as the editor.
A REPL with Paredit, autocompletion and 'normal' editing capabilities is what I want. That's why I often program other languages (that have a REPL, but no way to comfortably edit using it, like Haskell, PureScript, Elixir, OCaml und Rust) using Jupyter notebooks, which is the same as evaluating inline - that's better than the 'normal' way (only seeing errors/warnings/... inline) but it's not the same experience.
This is an exceptionally well thought out set of points on REPL use for a lang like Clojure. I'm playing with Scheme but the ideas here are great. Love the timing of each command if it takes longer than a threshold!
Yes because it's a very nice language, with lot of bells and whistles. Javascript and Java integration are nearly perfect, allowing you to have a access huge ecosystem.
No because even though there's progress regarding the error reporting, it's not always simple to parse them. No because you'll have to understand way more Java than you may be willing to.
No because it's not Lisp per se. It's nearly a different beast.
Would I recommend it? YES. But know that "Here be dragons"
Definitely. It's got great learning resources like Clojure for the Brave and True, and it's very practical. There is good support for using it in server-side work, web apps, both frontend and backend, and now even lightweight scripting.
Further to other replies, you can dabble with Clojure using Babashka [1], a Clojure runtime compiled to native code that allows you to execute scripts without a full JVM.
It also has support for defining & running 'tasks', which makes it useful as a simple build system.
if you want to learn the power of lisp and learn a very powerful language check out Common Lisp. if you are a solid programmer, learn the syntax on youtube or by completing Common Lisp Koans (should take you a day or two). then pick up Norvig's Paradigms of AI Programming, which is a classic in and of itself. if you don't know emacs, choose Portacle to get you started
I got my start in Clojure with ClojureScript. If you do front end web development it's a great way to jump in. I think I actually now prefer ClojureScript with the Reagent and Re-frame libraries more than standard React using js/TypeScript.
Really cool plugin, although a bit sad to see how long it's taking to get approved - It makes sense to want to do a thorough review, although taking a month+ not something I like seeing in my favorite editor :(
> It’s been two weeks since I started using Sublime Clojure REPL myself. And you know what? I started to really enjoy Clojure exceptions! Short, concise, pointing directly to the error, formatted in Clojure naming convention, not in Java munged style which you need to decypher back to Clojure. It’s a fantastic experience, even if on paper it doesn’t sound as much.
Aren't bad exceptions one of the top issues for new (and old) users? I think solving this is a much bigger deal than you're making it out to be.
For instance, when people speak about "the REPL" in the Clojure community they are talking about a live application thats is integrated with the editor like 99% of the time, they don't mean a command-line prompt. All Lisps use REPLs for interactive development in this manner.
Was wondering if you could coach me through setting this up? I keep getting Java errors. Would be happy to pay you for your time (if I can afford it, that is :))
These were some refreshing ideas to solve UX problems in the clojure REPL driven development flow (especially the REPL panel which I always keep hidden).
I've been frustrated a bit with the general UX of using emacs, clojure, and REPL since a while now. I keep tweaking my emacs config to improve it one bit at a time, hopefully one day I'll be happy :)
This looks really nice! I recently started learning Clojure and picked up Tutkain as my editor plugin. This, however, looks like it would better fit my workflow and I will definitely check it out later!
Inline evaluation is overwhelmingly what I miss from vim-fireplace when I moved to Cursive. Having said that, the code navigation tools are so much better.
Wow, that is certainly one way of making a website color scheme (and alienating potential readers).
Either searing the reader's eyes with that gaudy yellow OR making the reader wave around their mouse as a "flashlight" instead of changing or even just switching the BG and FG colors.
I suspect accessability didn't factor that much into the thought process behind designing that website.
I think people have reacted to this comment as pure snark, but I did take a moment to look at your comment history and you're actually describing a physical reaction you're having, not just a matter of taste. I'd love to hear how general this problem is for you on the web, and how one might go around testing for these sorts of accessibility issues during development. I know of the various colour blindness 'simulation' tools available but other than the option of a dark mode (a proper one, not a gimmicky one like here) I wouldn't know how to address this issue.
> I'd love to hear how general this problem is for you on the web
For me in general "thin dark fonts on bright BG" and "bright fonts on very dark BG" are both straining to the eyes although the former is worse almost every time.
I find myself zooming in further and more often on websites with those sorts of color schemes although if I zoom too far in I then have to swivel my head back and forth for every line of text due to my glasses having "progressive lenses"[0] ie. a pretty narrow cone of vision with the right "power" to read at eye-screen distance.
> testing for these sorts of accessibility issues during development
- IMO a pretty good rule of thumb would be to not cover vast amounts of the website in bright colors
- offer a dark mode, maybe even make it the default with an optional light-mode
- respect the user's browser/system-colorscheme with the CSS property "color-scheme" [1] (although in Firefox the support for that feature is scheduled for the next version this coming January)
I have poor eyesight and am fairly sensitive to contrast problems. I found this site very pleasant to read and have bookmarked it for later design “inspiration”.
Yellow on black tends to make the writing “shrink” for me, lowering the readability.
For me the light/bright colors are really straining my eyes since they're very sensitive to glare/bright lights as a consequence of cataracts.
Also the switching of the FG and BG colors was just an example I could think of in the moment to get something like "dark mode" with minimal effort.
In practice I'd probably go with a somewhat "off-white"(?) FG on a medium-dark grey BG.
IMO a less bright white text color in this scenario does well in eliminating the "shrinking" you speak of while the contrast with the muted grey BG isn't too harsh.
We seem to have slightly different access needs. This highlights the richness of working on accessibility problems. No one solution suits everyone, and there isn’t even a “accessible” and “not-accessible” pair that covers all bases either.
Yep, I have sent this website to people before with excited messages like “this color scheme seems weird but I find it very soothing and helpful for reading and concentrating.”
I really enjoy the color scheme of their site. As some work arounds though, the site works well with reader mode in Safari and Firefox. Also check out Dark Reader by Alexander Shutau for Firefox. That may help alleviate some eye pain. https://addons.mozilla.org/en-US/firefox/addon/darkreader/
[1] https://www.reddit.com/r/Clojure/comments/rflhxf/comment/hoi...