janet-sh
net_skeleton
Our great sponsors
janet-sh | net_skeleton | |
---|---|---|
4 | 2 | |
77 | 441 | |
- | 1.4% | |
2.3 | 0.0 | |
4 months ago | over 4 years ago | |
Janet | C | |
- | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
janet-sh
- Writing Small CLI Programs in Common Lisp (2021)
-
Getting started with lisp
Right now, the one that is most attractive is Janet, with its wonderful shell programming integration and built-in http request. Those are both things I'm working a lot with.
-
Janet – a Lisp-like functional, imperative programming language
I use Janet most often as a glue for shell utilities using the sh package (https://github.com/andrewchambers/janet-sh). It's a great tool for building small containerized jobs. I think it has a ton of potential as the ecosystem grows and matures.
Some rough spots:
- No canonical http client. There are a few attempts at wrapping libcurl but nothing complete and well documented yet. However, the creator of Joy framework for Janet does have an http client library.
- The main http server circlet is MIT licensed, but it is built on top of Mongoose, which is GPL/paid commercial. Something to be aware of if you want to distribute binaries made with this library.
- I have never been successful getting any of the UI or drawing libraries to work.
- Naming of packages is a bit confusing even if you have watched the Good Place and are aware of all of the inside jokes.
-
Writing Small CLI Programs in Common Lisp
The arguments I have seen are based on Janet using arrays/tuples rather than cons cells. Here is the author addressing this on reddit a while back. https://old.reddit.com/r/programming/comments/aqwedz/janet_i...
The debate continues in the thread. Either way, I think Janet is very useful for situations where you want something lisp like and also want/need small executables. I've experimented with it quite a bit and have found it really useful for putting together cli apps. The sh package is really useful for gluing together other shell programs. https://github.com/andrewchambers/janet-sh
net_skeleton
- Janet – a Lisp-like functional, imperative programming language
-
C Deep
mongoose - Embedded web server. GPL-2.0-only
What are some alternatives?
roswell - intended to be a launcher for a major lisp environment that just works.
Breep - C++ peer to peer library, built on the top of boost
janetdocs - A community documentation site for the janet programming language
libcurl - A command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. libcurl offers a myriad of powerful features
termp - Trivial utility: are we in a terminal window or in a dumb one? (like Emacs' Slime)
Restbed - Corvusoft's Restbed framework brings asynchronous RESTful functionality to C++14 applications.
freja - Self-modifiable editor for coding graphical things
Mongoose - Embedded Web Server
janet-pobox - Clojure like atoms/spinlocking in Janet
crispy-fortnight
hofmod-cli - Hofstadter generator for Golang CLIs
libwebsockets - canonical libwebsockets.org networking library