News for hackers. Stuff that matters.
Re:Roll a Lisp in C – Evaluation by sph on Saturday May 07, 2022 @04:27AM (#31293005)
Why would it be hard to implement? (Keep in mind I have never written a lisp so my comment is uneducated)

Quasiquoting means creating a list where some elements are evaluated at runtime. Not dissimilar to string interpolation.

Re:Roll a Lisp in C – Evaluation by KineticLensman on Saturday May 07, 2022 @07:40AM (#31293760)
> Quasiquoting means creating a list where some elements are evaluated at runtime

Take a look at the awesome 'Make A Lisp' (MAL), in particular the section on quoting:

https://github.com/kanaka/mal/blob/master/process/guide.md#s...

This has a fairly good description of what happens during quasi-quoting.

Re:Roll a Lisp in C – Evaluation by kazinator on Saturday May 07, 2022 @02:28PM (#31297154)
I don't recommend this; it is pretty awful, and mostly particular to the internal structure and conventions of its respective project.

The actual Lisp information sources, which are numerous, cover this ground more than adequately; there is no need to turn to the internal documentation of a polyglot mock Lisp.

Re:Roll a Lisp in C – Evaluation by KineticLensman on Saturday May 07, 2022 @03:17PM (#31297629)
> there is no need to turn to the internal documentation of a polyglot mock Lisp

Well, unless you want to be able to say "I have built a self-hosting Lisp from scratch, and I understand what it is doing". Including eval, quoting and tail recursion.

Getting my C# implementation of MAL to interpret itself was one of the most compelling learning experiences in my recent programming history.

Re:Roll a Lisp in C – Evaluation by rags2riches on Saturday May 07, 2022 @05:16PM (#31298684)
That's just how I remember how it went. Up until then, everything just flowed without any big problems.