MnL
Workspace

C Control

E Environment

K Kontinuation

Globals

Substitution — literal rewriting

Machine

Environment

Continuation

Right-click an application block ▸ Call-by-Structure / Call-by-Value, or a function ▸ Function value.
MnL icon

MnL

Macaca nigra Language

MnL is a block-based functional programming language.

The project saves workspaces as JSON payloads using the .mnl extension.

Starting from Version 2, the custom Kolintang renderer uses horizontal-notch connector shapes to visually differentiate MnL syntactic categories (expressions, patterns, parameters, identifiers, types, matches, fields).

Version 5.0, build 040726. This build includes the new visualization features, migrating to TypeScript and Blockly 12, and improved performance.

Version 4.0, build 170126. This is the first stable release with the windowing layout to show the call-by-structure and call-by-value semantics.

Version 3.0, build 080125. The initial release of the MnL language to the public.

Version 2.0, build 170323. Introducing the live type inference, and color for encoding type information.

Version 1.0, build 220920. The first stable release of the MnL language.

Save workspace

Choose a file name

Load example

This example

Your workspace already has blocks. Replace them with this example, or merge the example alongside them?