Hacker News new | ask | show | jobs
by bakpakin 1767 days ago
Thanks you very much for the support, I can totally understand that position.

We have been making great progress in terms of features since then to "flesh out" the languages and libraries including threading support, an event loop, and some basic networking (socket) support built in to the runtime. Generally though, the PL design space is already incredibly fatigued an most new languages claiming something have already been made a few times over, just doing doing one thing slightly better, so it is true we cannot truly compete in that space.

Janet is a hobby lisp(?) taken too far and I have been adding lots of features that I find useful for day-to-day programming and experiments while still being something "embed-able" into another project. Janet is not a corporate project in anyway and donations are accepted mostly as a token of gratitude and expenses used to maintain the website and CI bills. My goal is really just to make it a good, clean, useful language for my own use and not as some kind of advertisement or product for anything, it is a project I started in my college dorm and have continued working on as a passion project since.

1 comments

Thank you for creating Janet. It is a fun language and it's exciting to watch it evolve. With the addition of the event loop and networking I'm curious to know if an http client and http server based on these will be added in the future?

I am aware that there are already libraries that cover these to an extent like circlet and halo for http. Joy also features an http client. Maybe it's outside the scope of the project, but I think an http server and client as part of the core would really add to the utility of Janet. It would also answer some of the licensing questions for distribution if these were included directly in Janet core. For example, circlet is MIT, but it is based on mongoose is GPLv2.

Also, seeing Janet on HN a year or so ago was what got me to watch The Good Place, so thanks for that as well.

Probably unlikely to be added in the core (esp. HTTP/2), but an HTTP/1 implementation could be done in pure janet - there is a binding of just a parser here: https://github.com/andrewchambers/janet-pico-http-parser

But yes, at some point a canonical replacement for circlet that was MIT licensed and event-loop friendly would be nice.