From Archenoth to ~technomancy/fennel
So uh, it seems like I have No Idea how to send patches to a mailing list while also having them be a part of the main thread, but I've sent a patch to https://lists.sr.ht/~technomancy/fennel/patches/41464 that should basically do all of those things, and should be usable to get around the limitations of the implementation in cljlib without the need for GOTO labels (Speaking of which, sorry about the double post! I ran `make test` to make sure that I didn't break anything with my patch, but didn't notice that there was also a linter that would break the build) I tried pretty hard to not affect any existing code, and to make it have as minimal a footprint as possible too, so hopefully it doesn't seem too wild of a proposed patch
From Archenoth to ~technomancy/fennel
So uh, it seems like I have No Idea how to send patches to a mailing list while also having them be a part of the main thread, but I've sent a patch to https://lists.sr.ht/~technomancy/fennel/patches/41464 that should basically do all of those things, and should be usable to get around the limitations of the implementation in cljlib without the need for GOTO labels (Speaking of which, sorry about the double post! I ran `make test` to make sure that I didn't break anything with my patch, but didn't notice that there was also a linter that would break the build) I tried pretty hard to not affect any existing code, and to make it have as minimal a footprint as possible too, so hopefully it doesn't seem too wild of a proposed patch
From Archenoth to ~technomancy/fennel
Oh yeah! (I was the one who wrote it! Ahah) I remember seeing these limitations the last time I referenced the library to talk about this in #fennel~ I wonder if there's a better way to implement it? (Or maybe even a better place?) (Actually, where would I even need to look if there was?)
From Archenoth to ~technomancy/fennel
So! A topic I noticed a few times in the IRC channel (once that I started, even~) was about adding something like Scheme's `let` form (https://wiki.call-cc.org/man/5/Module%20scheme#iteration), or Clojure's `loop` + `recur` (https://clojuredocs.org/clojure.core/loop) into Fennel! The tl;dr version of the idea is that the `fn` form in Fennel has an optional name, so both (fn [<args>] <body>) ...and... (fn <name> [<args>] <body>)