Get the top HN stories in your inbox every day.
ReleaseCandidat
> 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.
dunefox
Why do you write code in the REPL directly? Write it in a buffer and send it to the REPL.
coldtea
>I want to use the REPL as a _interactive_ REPL, where I can write my code and later copy that to the file
Just write in the normal editor, and evaluate interactively code from there. Emacs does that too
ReleaseCandidat
Yes, but I don't have to, because with Emacs I have (almost) the same editing capabilities in the REPL.
dunefox
Why? Then you have to copy it from the REPL into the file later instead of already having a working version in the file. This makes zero sense.
GGfpc
Why do you want to code in the repl when you can code in the editor and eval in the repl?
ReleaseCandidat
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.
nikivi
The inline errors are life changing. If you use VSCode, ErrorLens package achieves same thing: https://marketplace.visualstudio.com/items?itemName=username...
rajandatta
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!
whalesalad
Sublime is my favorite editor and I’m so glad to see that there is still enthusiasm in the community. Stoked to try this out!
nop_slide
I've never done any Lisp before, is Clojure a good starting candidate?
Arcanum-XIII
Yes, no.
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"
gradys
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.
kitd
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.
medo-bear
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
llovan
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.
dunefox
Only if you know the JVM and a bit of Java, otherwise I would look at Scheme or Racket tbh.
recov
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 :(
jmchuster
> 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.
gavinray
This is stellar work from Tonsky as usual, nice to see the innovation here.
Though I made the same point about inline real-time evaluation being better than a REPL recently, and my comment received no such fanfare =(
simongray
It can be confusing.
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.
panick21_
This is real neat. However, I tend to use Cursive and REBL. I think that's some of the coolest development environment I ever used.
People who have not heard of the REBL, can check out this video:
https://www.youtube.com/watch?v=c52QhiXsmyI
> REBL is a graphical, interactive tool for browsing Clojure data.
leobg
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 :))
panick21_
I can't really do more then follow the basic steps. I suggest you go onto Clojure Slack channels.
Are your Clojure tools working, do you understand how deps.edn works?
If you have your clojure tool installed you just put:
:rebl ;; for JDK 11+ {:extra-deps {com.cognitect/rebl {:mvn/version "0.9.242"} org.openjfx/javafx-fxml {:mvn/version "15-ea+6"} org.openjfx/javafx-controls {:mvn/version "15-ea+6"} org.openjfx/javafx-swing {:mvn/version "15-ea+6"} org.openjfx/javafx-base {:mvn/version "15-ea+6"} org.openjfx/javafx-web {:mvn/version "15-ea+6"}} :main-opts ["-m" "cognitect.rebl"]} ;;:rebl-jdk8 ;; for JDK 8 ;;{:extra-deps {com.cognitect/rebl {:mvn/version "0.9.242"}} ;; :main-opts ["-m" "cognitect.rebl"]}
Into your '~/.clojure/deps.edn'.
From there I can just add 'rebl' as a profile to my Intellj when you start a REPL it starts automatically.
There are also alternative tools like Portal to do the same things: https://github.com/djblue/portal
oxalorg
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 :)
tut-urut-utut
Which part of the Emacs Clojure workflow you find annoying, and what is your proposed fix?
Asking because I still flow somewhere between Emacs/Cider and IntelliJ/Cursive.
Conlectus
Looks nice! The inline REPL functionality reminds me a lot of the (defunct) Light Table[1].
Get the top HN stories in your inbox every day.
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].
[1] https://www.reddit.com/r/Clojure/comments/rflhxf/comment/hoi...