Flowmark
A Text Macro Language


Flowmark is a text macro language influenced by TRAC T64, designed to be the base language for a possible typesetting toolset in the future.

For more info please visit GitHub repository.


The following is an example of the factorial function:

\def(Factorial,(\
  \ifeq.int(<1>,0,\
    0,\
    (\ifeq.int(<1>,1,1,(\mult.int(<1>,\call(Factorial,\sub.int(<1>,1))))))\
  )\
));
\init.macro(Factorial);
\print(\call(Factorial,5));

The following is an example of a solution to the Tower of Hanoi problem.

\def.free($,(\print((
))));
\def(Hanoi,\
  (\ifeq.int(<1>,0,,\
    (\ifeq.int(<1>,1,\
      (\print(Move from  to )$),\
      (\call(Hanoi,\sub.int(<1>,1),,,)\
      \print(Move from  to )$\
      \call(Hanoi,\sub.int(<1>,1),,,))\
    ))\
  ))\
);
\init.macro(Hanoi,,from,to,via);
\print(\call(Hanoi,3,A,C,B));

Back