monolang
mono is a low level language for audio expressions that compiles to wasm
npm i monolang -g
|
pnpm add monolang -g
|
yarn global add monolang
|
API
# CompilerErrorCauses
src/causes.ts#L1
# CompilerErrorCause
src/causes.ts#L3
# InvalidErrorCause
src/causes.ts#L15
# ReferenceErrorCause
src/causes.ts#L6
# get_pos
(offset, useNeedle)
src/compiler.ts#L119 # read_at
(pos, elementOffset)
src/compiler.ts#L160 # read_at_pos
(pos, elementOffset)
src/compiler.ts#L152 # write
(type, index, value)
src/compiler.ts#L51 # write_at_pos
(pos, elementOffset, value)
src/compiler.ts#L143 # CompilerError
src/compiler.ts#L16 # captureStackTrace
(targetObject, constructorOpt)
# Module
src/compiler.ts#L411
# write
(type, index, value)
src/compiler.ts#L51 # create
(value, group, source)
# VM
src/linker-service.ts#L82
# constructor
({ blockSize, inputChannels, outputChannels, sampleRate })
src/linker-service.ts#L107 # createMonoBuffer
(id, pos, size)
src/linker-service.ts#L175 # setSampleBuffer
(index, buffer, range)
src/linker-service.ts#L247 # setSampleBufferRange
(index, range)
src/linker-service.ts#L279 # compile
(root, scope_record, includes, init_body, fill_body, types, step)
src/compiler.ts#L588 Credits
- decarg by stagas – decorator based cli arguments parser
- everyday-utils by stagas – Everyday utilities
- json-objectify by stagas – Like JSON.stringify but without the stringify part.
- lexer-next by stagas – lexer for recursive descent parsers
- rfdc by David Mark Clements – Really Fast Deep Clone
- serialize-whatever by stagas – Serialize and deserialize whatever.
- tinypratt by stagas – a tiny pratt parser implementation
- wat-compiler by stagas – webassembly wat text format to binary compiler
Contributing
All contributions are welcome!