Skip to content

[WISH] Lay explanation how this magic works - maybe a blog post? #30

@ngortheone

Description

@ngortheone

Hey @hirrolot,

I was trying to read the implementation of the metalang99 but steam started going out of my ears.
The problem is 100% or receiving end - I lack understanding of C macros and also functional principles you've applied.

I really enjoyed your last blog post "Fueled Evaluation for Decidable Type Checking" for its clarity of thought.
It would be really great to have a similar article that explains metalang99 for smallbrain grug [1].

In particular these questions are interesting:

  • What knowledge of C preporcessor is required even to start understanding Metalang99?
  • How does it really work?
  • What is CPS and why was it a solution? Were there any alternatives to a chosen mechanism?
  • How does CPS solve macro recursion limitation?
  • How to read metalang99 internals? How to teach it to someone else?
  • Can I write some other useful abstraction with it? How to approach such a task?

The knowledge is only good if we can re-transmit and reproduce it. Metalang99 probably goes above the head of the average developer.

Thanks a lot!

[1] https://grugbrain.dev/

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions