Hacker News new | past | comments | ask | show | jobs | submit login

I'd be a loyal user of Racket, if it was reasonably easy to use with an IDE similar to VS Code.

Emacs is too involved for a casual hobbyist like me, while Dr Racket feels a bit toyish.




I usually prefer Emacs, but I still sometimes use VSCode for Common Lisp, Racket, and Haskell (and of course for Python). Try, for example, the Magic Racket VSCode plugin.


Will give it a try, thanks!


Have you tried vanilla Emacs? It doesn't require any configuration to just start using it.


The only thing you have to configure is your entire brain. Seriously, for anyone under 40, pressing Ctrl-Z should undo, not hide the window. I say this as a fanatical emacs user. There is nothing straightforward about vanilla emacs for someone whose software expectations have been shaped by the conventions of the last three decades!


I can't speak to its completeness as I haven't used it personally, but Emacs does ship with cua-mode which enables a lot of those keybindings. It's just not enabled by default, as most existing users wouldn't use it.


Am under 40. Regularity get annoyed by new windows opening when I just wanted to go down one line (and yes, I have found the gnome emacs input mode setting).


i hated emacs at first for this reason. ctrl-v should be paste, ctrl-c should be copy, right !? now though i have emacs bindings system wide

what brought me to emacs first was intrigue - why do people keep saying that this little shitty-looking weird editor is the most powerful program on my computer :) they weren't wrong


or something preconfigured like spacemacs or prelude. I think the biggest problem of emacs is that it's an entire universe by itself: everything is there in a zillion flavours (which always ALMOST work out of the box) and I don't know which one to pick.


I was explicitly thinking about spacemacs when I wrote that. I guess it might be attractive to a VS code user but it's a lot to manage.


As a VSCode user, no spacemacs isn't really attractive. What's good about VSCode is that it works really well for all skill level and require almost no learning to start with. Spacemacs (and vanilla emacs) don't really fit that description. To be fair, most IDEs also don't fit that description.


Plain old Common Lisp has similar issues on the Mac. (And possibly Windows too - I haven't looked.)

There's supposed a one click dev system installer, but it hasn't been updated for a while. There's a many click recommended collection of tools, but it looks like half a day of work to get it all installed and then you're supposed to use Emacs.

You can add a REPL to something like Sublime Text. Or install Atom and go through another convoluted process which launches a Lisp server and etc etc etc.

I gave up and got back to work at that point. It might work smoothly if I worked through it all. Then again... it might not.

Which is a shame, because I like the look of Lisp very much and I really would like to play with it.


I think https://portacle.github.io/ is quite close to a one click installer.

Also, I have shared https://github.com/susam/emacs4cl which provides a quick starter file to set up Emacs for Common Lisp development pretty quickly. Additionally, it explains every line of the quick starter file, in case one is willing to learn how it is setup and customise it for their needs.


Try just installing SBCL using Homebrew and then setup either VSCode or Emacs (or Vi, my last manager lived in Vi when doing Common Lisp and Clojure development).


Yep installing any major (and even some of the minor) Common Lisp implementation(s) is very straightforward.

Emacs is my regular editor so I do use it when coding lisp but I don't use any extensions other than syntax highlighting (so no REPL or SLIME).

I sort of get the desire to use the "one click installers" like portacle but in reality they don't add very much and now you're dependent on a third-party system with less support than the language itself. It does not make sense to say Common Lisp on Mac is broken because a third-party installer isn't great.


For Mac at least it shouldn't be that hard if you already have a development environment setup.

    brew install sbcl.
If you want to use Sublime Text, then you can go and install this plugin called Slyblime, and the only change you need to make after that is to edit the preferences to select SBCL as the lisp command in the plugin settings.


FWIW I use vim with the slimv plugin for CL, it works great. Of course for many systems vim can be a bit of a pain to install for the first-timer, too, though I think less so than emacs or one of its many flavors.

For the price of an email address, you can download one of the proprietary CL IDEs https://franz.com/downloads/clp/survey and try it out, maybe by following their instructional videos/slides https://franz.com/services/classes/ Then after that you can be better informed if you want to pay for their IDE (or check out the other proprietary competition) or invest effort in emacs/vim/the atom plugin/something else.

I'm curious what languages do you use, or have used, that have shaped your expectations of setup? Do you remember what the first time setup was like for them? For me, I first started learning PHP in 2004, and over the next few years learned or played with JavaScript/Java/Python/Perl/Ruby/C/C++/Scheme (Java and "C with classes" C++ mostly in highschool). My "setup" for most of them was the same, just EditPad Lite, which was better than Notepad only in two ways: you could have multiple files open in tabs, and you could just save-as blah.ext without having to first select "all file types" so you didn't end up with blah.ext.txt. No syntax highlighting or indentation, I didn't appreciate those until after I had made the switch to vim sometime in 2007, though even my vim usage was pretty bare-bones for a while.

But still, for the longest time I just edited files, saved (and maybe FTP'd or compiled), and executed either in the command line or by pointing my browser at the files. When I played with Scheme (by following some of SICP), I changed things up a bit to also match what I had started doing with Python, which was I'd still edit/save/run most things, but occasionally I'd copy-paste from the editor to the REPL and play in the REPL directly for a while, copying stuff back out if it was useful. This was fine, and still is fine! You can have this bare-bones experience with CL, too. If you've installed SBCL, you just have to run `sbcl --script file.lisp`. If you launch SBCL by itself (it's even better with rlwrap), you can just play in the REPL. If you were doing an intro-to-programming course for highschoolers, would you have them setup much beyond any random text editor and telling them how to execute stuff?

On the other hand if you want a more "professional" environment, is it really reasonable to expect to not have to spend some time setting things up? Especially with CL where if you want more than the bare-bones experience, i.e. developing with the REPL, you.. need to have something that can talk to a REPL, and not just a pure text editor. One of these days I should try out https://microsoft.github.io/language-server-protocol/ and maybe I can just recommend it, I know someone made a server for CL that just wraps the classic one, which should let any editor with an LSP client have a good experience. But taking from my own experience again, when I took my second job writing professional Java, Eclipse was basically mandatory, which I hadn't needed really before, plus there were some company-specific extensions you had to install to make it work better, and anyway it took me a while to get used to Eclipse itself and learn the shortcuts. I never thought this was unreasonable...

I wrote way more than I planned... all I really wanted to say after the Allegro recommend was I think if you really want to try CL, just go for it, the bare-bones experience can give you a taste just fine, and maybe encourage you to take the pains of setup for a more professional environment (for which emacs, while popular, is not the only choice). If you want to follow along a book like PCL (https://gigamonkeys.com/book/) or Land of Lisp (http://landoflisp.com/), you don't even need an editor, you can just type things in.


Hey, since you specifically asked for it: did you try Magic Racket? [1] It’s a VS Code extension for Racket based on the Racket language server. We don’t have feature-parity with DrRacket yet, but many people are contributing to the language server, adding new features continually.

(Disclaimer: I am the maintainer of Magic Racket)

[1]: https://github.com/Eugleo/magic-racket


And it can't produce native executables - last time I checked it just bundles Racket interpreter itself with the source code.


Racket (CS) produces machine code. Yes, it packs the runtime along but that's certainly not your 'vanilla' interpreter. For example, it compiles a parallel GC profiled to your app along too. That's pretty hardcore, IMO! In fact, Racket is very similar in spirit to the GraalVM.




Join us for AI Startup School this June 16-17 in San Francisco!

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

Search: