5 ms·
I'm considering a lisp dialect for a personal project (REST Api w/sqlite embedded in an ARM device running linux). I'm evaluating racket, clojure, even IronSch
by gbaygon 14y ago
I'm considering a lisp dialect for a personal project (REST Api w/sqlite embedded in an ARM device running linux).
I'm evaluating racket, clojure, even IronScheme over mono.
Do you recommend using Chicken Scheme, what are his advantages/disadvantages over the other languages mentioned earlier?
- profquail 14y agoChicken Scheme is purportedly very fast (which might be important for your project) and has a friendly, knowledgeable community behind it. It's also BSD-licensed -- not so important for a personal project, but nice if you want to build a commercial product in Scheme. Gambit Scheme also has this (it's available under the Apache 2.0 license).
- kyllo 14y agoI've never used Chicken Scheme (only Racket), but I've read a few articles about it and the advantages seem to be: -Compiles to C, so it's highly portable and you get the performance optimization benefits of whichever C compiler you're using -Lots of libraries -Good packaging system, with packages that are cutely referred to as "eggs" (similar to Ruby's "gems" system) Racket is great too, though, and DrRacket is an excellent IDE with minimal install/configuration difficulty. It just works. I'm not really sure what tools exist for Chicken Scheme. With Clojure, you're probably going to need to configure emacs or another text editor for syntax highlighting and REPL. I write Clojure in Sublime Text 2 with SublimeREPL but that requires some config and isn't technically free. There are Eclipse and NetBeans plugins, but I dislike Java IDEs for their enormous memory footprint.
- gbaygon 14y agoI've been trying clojure in IntelliJ with La Clojure plugin and it works pretty well.
- emidln 14y agoI write for Chicken Scheme inside vim and tmux with some minor plumbing to send my selections/buffers to evaluate in another tmux pane that contains my repl. This is basically the same thing you do for every other language when using vim/tmux. Feel free to replace vim/tmux with $EDITOR/$TERMINALMUXER of your choice here, outside of emacs, which kinda does this already as long as you don't care about updating your repl buffer at the same time as you are editing code (say, whatever code you send doesn't return immediately because it's doing something time-consuming). vim+conque has this same issue as emacs, making $EDITOR/$TERMINALMUXER the only alternative if you want to use the repl to hack/dispatch big jobs.
- aeosynth 14y agoI use https://github.com/benmills/vimux https://github.com/benmills/vimux for vim/tmux plumbing.
- thecombjelly 14y agoI've evaluated other schemes as well and built my personal site and a few web apps in chicken scheme. Why do I love it? It can be fast, very fast. You can embed C code if it isn't fast enough. It is very practical, there are many libs. It compiles to C which makes it pretty easy to add support for many popular libs that are written in C/C++. A lot of schemes sacrifice speed and practicality for academic reasons, chicken scheme doesn't do this. The community is fantastic. Everyone is reasonable and kind and helpful.