Clml

From Esolang
Jump to navigation Jump to search
CLML
Designed by MasterWoodie
Appeared in 2023
Memory system Clm-based
Computational class Unknown
Reference implementation None
File extension(s) .clml

CLML (Crazy Layerd Master Language, .clml) is the main language for a CLUVM. It was created by MasterWoodie in 2023

Overview

The language is made up of mainly single-character commands, but also contains a few control structures.
The language was created for CLUVM, a Virtual Machine that uses CLM to store data.

Features

Clml commands are centered around modifying data of elements, as thats all there is to do.
In order to achieve this, data can be moved around between the current element, the active element of the storage layer ("accumulator"), the active element of the pointer layer ("active pointer"), and the cell pointed to by the active pointer ("target element").

Command Description
> move to next element of the current layer
< move to the previous element of the current layer
v if current element is a layer, enter that layer
^ if there is an above layer, exit current layer
# set current path to the value of the accumulator
+ increment current cell
- decrement current cell
~ add the value of the accumulator layer to the current cell
i insert new cell after current element
I insert new layer after current element
p store the current path in the accumulator
P store the value of the active pointer in the accumulator
s store the value of the current element in the accumulator
S store the value of the target element in the accumulator

Examples