Hacker News new | ask | show | jobs
by hzhou321 3253 days ago
There is the basic programming language, which provides a set of instructions that computer would do; then there is the meta-language (e.g. macros, templates) that provides instructions to compose instructions. I have come to realize that the functional programming essentially is the latter part.

For example, I have a meta language in which we can define a box and unbox:

    subcode: box_a
        instructions that un-boxes a type ...
        BLOCK
        instructions that boxes a type ...

    subcode: box_b
        instructions that un-boxes b type ...
        BLOCK
        instructions that boxes b type ...

    main_code:
        &call box_a
            &call box_b
                your code

That is a verbose version of J's under adverb with my meta-layer that I can use in any languages (C, Python, ...).