Live data from Hacker News

Fennel: A Practical Lisp

mattroelle.com

11–20 of 91 posts

Re: Fennel: A Practical Lisp

#11
post #4

Calvin rose, the author of fennel is a really great programmer and an even better language designer. Personally, i dont use or like lua, but I'm a big fan of one of his other projects, janet[0] [0] https://github.com/janet-lang/janet

> i dont use or like lua, but I'm a big fan of one of his other projects, janet As a big fan of both Lua _and_ Janet, I'll just point out that a lot of what makes Janet nice and interesting are in fact inspired by Lua. Tables, fibers (coroutines), prototypes (metatables/metamethods), custom module loaders, a lot of the API, the peg parser (LPEG), etc etc. I understand no language is for everyone, but the influence ca…

I’ll also add that Fennel fixes some of things about Lua most people dislike, like the global variables by default thing. IMO it’s worth checking out even if you didn’t like Lua at first

Re: Fennel: A Practical Lisp

#12

Earlier quoted context omitted.

Not sure when you used Lua but there is a package manager called LuaRocks now which has some pretty nice packages in it for many purposes. I don't think it'd be too hard to get Lua running inside of a Python env either :) https://luarocks.org/

It's really pretty rough compared to everything else I've used. I really don't feel like luarocks solves very many of my problems. A lot of gaps in there, or libraries that only target 5.1, or only luajit. Or are completely unmaintained, or have poorly documented dependencies on C libraries. etc etc. I use lua a lot and like it fine but the build/dependency/tooling situation is a fucking mess. It exposes you to a lot…

Yeah, my experience is limited mostly to web dev, via OpenResty, and game dev, via love2d.

The Lua libraries in these areas are very well maintained.

That said 90% of the time libraries ship as a single lua file and it’s often better to copy and paste it into your project. I have a modified version of lume I like to use floating around :)

This spartan approach to libraries is a strength of Lua.

Re: Fennel: A Practical Lisp

#13
If you're interested in discussing further, there is a growing community that hangs out on #fennel on the Libera Chat IRC server. You can connect via matrix chat using https://matrix.to/#/!rnpLWzzTijEUDhhtjW:matrix.org I'll be hanging out there all day today and I'd love to talk about Fennel. There is also a Fennel User Group meeting this Saturday at 10am, open to all. More info at https://fennel-lang.org/events

Re: Fennel: A Practical Lisp

#14
post #4

Calvin rose, the author of fennel is a really great programmer and an even better language designer. Personally, i dont use or like lua, but I'm a big fan of one of his other projects, janet[0] [0] https://github.com/janet-lang/janet

I didn't realize the author of Janet was the author of Fennel, thanks for making the connection.

Re: Fennel: A Practical Lisp

#16
Fennel is really cool, and the fact that it builds on Lua—an already-popular language—is a huge win; Fennel gets access to the entire Lua ecosystem.

Importantly, Lua is pretty easy to embed in native applications. I haven’t found a Lisp or Scheme as easily-embeddable as Lua(+Fennel).

It’s also a good drop-in replacement for Lua. I write my Hammerspoon config in Fennel, and hopefully my Neovim config soon as well.

Re: Fennel: A Practical Lisp

#17
post #14
post #4

Calvin rose, the author of fennel is a really great programmer and an even better language designer. Personally, i dont use or like lua, but I'm a big fan of one of his other projects, janet[0] [0] https://github.com/janet-lang/janet

I didn't realize the author of Janet was the author of Fennel, thanks for making the connection.

Yup, same author! Although to my knowledge Calvin has mostly stepped away from the Fennel project at this point. It is primarily maintained by the same dev that made Clojure's Leiningen, technomancy.

Re: Fennel: A Practical Lisp

#18

The thing I hate the most about Fennel is when you go back to Clojure and type `print` rather than `println`.

(ns foo.bar (:refer-clojure :exclude [print] :rename {print println})) (print "Should have a newline")

;; How to infuriate your co-workers

Re: Fennel: A Practical Lisp

#19

Fennel is really cool, and the fact that it builds on Lua—an already-popular language—is a huge win; Fennel gets access to the entire Lua ecosystem. Importantly, Lua is pretty easy to embed in native applications. I haven’t found a Lisp or Scheme as easily-embeddable as Lua(+Fennel). It’s also a good drop-in replacement for Lua. I write my Hammerspoon config in Fennel, and hopefully my Neovim config soon as well.

Chibi scheme is easily embeddable. Guile is a different beast to manage, but then you get a lot more power and speed. Not luaJIT speed, of course, but a lot faster than vanilla lua, and with proper threads as a bonus.

The others I haven't tried embedding, but I hear racket is really no fun to embed,but things might have changed with the chez transition.

Re: Fennel: A Practical Lisp

#20

Fennel is really cool, and the fact that it builds on Lua—an already-popular language—is a huge win; Fennel gets access to the entire Lua ecosystem. Importantly, Lua is pretty easy to embed in native applications. I haven’t found a Lisp or Scheme as easily-embeddable as Lua(+Fennel). It’s also a good drop-in replacement for Lua. I write my Hammerspoon config in Fennel, and hopefully my Neovim config soon as well.

[deleted]
Post reply on HN