What's this?

'A tiny MML parser' is a C library for parsing MML(Music Macro Language).
It can be easily integrated into the very small embedded systems such as Arduino and mbed.


  • Really simple.
    • The API has only three functions.
    • It consists of only three small modules.
  • Highly portable.
    • Compatible with C89.
    • No dependencies. (even libc!)
    • No dynamic memory allocation. (no need a operating system!)
  • Small code foot print.
    • 2KB memory on a ARM Cortex-M0 processor with -Os flag for arm-none-eabi-gcc.
  • Wide range support.
    • Support user defined event.
    • Support nested repeat signs.
    • Support double (and more) sharp and flat.
    • Support multiple dotted note.
    • Support triplet note.
    • Support dynamic tick management.
  • High quality implementation with a unit test.