Conversation
Edited 1 month ago

okay it’s actually surprising me a lot how quickly I’m getting used to Fennel’s Lisp-like syntax. it’s really not that difficult for me to work with at all anymore, though it’s definitely still unfamiliar enough that it takes me a second to translate what I want to do into Parenthesis Speak

also the lack of type-checking is causing a lot of problems. or really, it’s just making problems much harder to track down and only apparent at runtime. clearly the best solution to this problem is to create a typed version of Fennel that transpiles into Fennel, which can then transpile into Lua

(please don’t actually do that)

1
0
4

anyway here’s my Fennel sandbox repo if anyone is curious what Fennel looks like. it’s probably too Lua-like to appeal to Lisp users and too Lisp-like to appeal to anyone else

but idk I think I kinda like it. it’s aggressively counterintuitive yet very simple

https://gitlab.com/__kasdeya__/learning-fennel

2
0
3

apparently people are working on tooling to add Fennel to the Neovim ecosystem so you can write your Neovim config in a Lisp-like language. that has me hopeful that fennel-ls (a Fennel LSP that Needs Some Work) will continue to improve

0
0
2

@kasdeya Lol, seeing the lambda symbol instead of "lambda" trips me out, but I like it. There are a few things like the square brackets for lambda lists that I'm like, okay well I'm used to the CL way now, but that probably helps a lot for readability and for new people. Glad you are enjoying!

1
0
1

@Shivaekul hehehe - yeah Fennel will also let you type lambda but I thought it was so cool that it let me use λ that I’ve been doing that instead

and also yeah! it helps a lot for me to be able to immediately see where assignment is happening like that. the parenthesis still trip me up a lot but the square brackets definitely help

and thank you! yeah this is the perfect introduction to Lisps for me because everything is extremely simple and I already know how Lua works, and this is basically just a thin layer on top of Lua

1
0
1

@kasdeya It is super cool, although I'm not gonna lie, no idea how to make the symbol XD

Yeah, it's a giant readability help, and tbh that is one of the things that most people struggle a lot with when first writing lisp code too. (Definitely was for me!)

Does sound perfect and I'm glad it is clicking! I still want to learn Lua one of these days, but no brainpower to spare for that atm.

1
0
1

@Shivaekul hehe - I’m using WinCompose which is one of my favorite pieces of Windows software ever. it emulates the functionality of the compose key on Linux, so I can press a configurable key (for me it’s the menu key) followed by a sequence of other keys in order to type special characters

for example I can type a lowercase lambda with [compose]*l (the compose key, then asterisk, the lowercase l) and uppercase lambda is the same except capital L. all of the Greek letters are like that - for example π and Π are *p and *P

a lot of the key sequences are really intuitive, too, like u + " = ü, and you can configure your own sequences - like for me bh is a [b]lue [h]eart: 💙

anyway enough evangelizing it lol. but I do love it a lot

and yeah that’s totally fair! I love that Lua is designed to be {the minimum number of concepts needed in order to be a somewhat comfortable scripting language}. it constantly recycles concepts in new contexts and clever ways so that it’s extremely easy to conceptualize the entire language, and there’s very very little magic… but it’s also Very Painful to work with on Windows unless it’s embedded in something else. and even then it often asks you to reinvent an entire usable standard library from scratch lol. though it’s much much better on Linux, which is why I’m playing with it through WSL

1
0
1

@kasdeya Oh awesome! Not gonna lie, I mostly use linux (and FreeBSD) natively, but that's not functionality I take any advantage of. That is super awesome! Super cool to have so many extra options for communications and expression handy.

Lol, I keep playing with the idea of learning it because of WOW, but every time I've gone looking for something it's been so overwhelming trying to figure out how to apply it within WeakAuras or macros. The Lua part seems manageable, but making it do things has not been a thing I have had much success with XD

1
0
1

@Shivaekul omg yeah one thing that Lua is terrible at is giving you feedback on anything that you’re doing. I had to do so much trial-and-error with TellMeWhen in order to get my very very basic Lua to work - but none of that would’ve been necessary if I just had a decent REPL to explore WoW’s Lua environment

but I hope that you can figure it out eventually, if you want to!

0
0
1