=> Re: "Pitfalls of structure editors" | In: s/programming
Why would one want to 'avoid metaprogramming'? It's by far the best part, and IMHO lack of it makes languages wimpy.
=> ๐ stack
2024-11-21 ยท 8 weeks ago
=> ๐ stack ยท Nov 21 at 20:00:
As a sometimes Lisp programmer who recognizes that the point of Lisp is metaprogramming, I don't see how calling a procedure locally or worse yet, marshaling across some boundary, is even remotely comparable to metaprogramming. We must be using different definitions...
However, having tried and failing to make a structure editor for CL a few different ways, I agree that it's metaprogramming in Lisp makes it extremely hard to figure out the bindings. Because macros can inject symbols into the middle of code, a superpower.
Emacs, much as I don't really like it, with some extensions, does make a decent semistructured environment, mostly due to the mostly uniform usage and semantics of parentheses in Lisp.
=> ๐ stack ยท Nov 21 at 21:07:
Read "let over lambda" - a few chapters are online and there are pdfs floating around. It has changed my life.
=> ๐ undefined [OP] ยท Nov 22 at 08:24:
Yeah, lisp is really the best case scenario for these kind of things since the syntax is just a direct representation of the ast. Though that simplicity comes with restrictions on that very ast: one of the reasons you don't have explicit typing in lisp, for example, is not that you can't do it, it's that it would be a pain to write and deal with so people just through inertia end up rolling with a worse system. And, as you've said, the macros break that uniformity anyway.
Pitfalls of structure editors โ The tools for a structure-aware editing have existed for a long time in IDEs and things like tags, cscope and lsps as of late, as well. However, the editors fully commited to this kind of mindset haven't really been done well before. Here, I'll list some of the reasons I myself have found while trying to design one, later abondoning the project. Also, while I am myself pessimistic of this idea, it would be interesting to hear other perspectives, or inspire...
=> ๐ฌ undefined ยท 5 comments ยท 2024-11-21 ยท 8 weeks ago This content has been proxied by September (ba2dc).Proxy Information
text/gemini; charset=utf-8