├── .github └── workflows │ └── ci.yml ├── .gitignore ├── .vscode └── settings.json ├── README.md ├── netlify.toml ├── package.json ├── packages ├── benchmark │ ├── compiler.js │ ├── package.json │ └── wrapper.js ├── compiler │ ├── .gitignore │ ├── CHANGELOG.md │ ├── build │ │ └── parser.js │ ├── fixtures │ │ ├── 27_super_goats - neon country frequent flier program.milk │ │ ├── Cope - Cartune (extrusion machine) [fixed].milk │ │ ├── Flexi - piercing - pastel - 3d.milk │ │ ├── bdrv_flexi_va_ultramix_148_oblivion_notifier.milk │ │ ├── errors │ │ │ ├── assign_non_identifier.eel │ │ │ ├── assign_to_buffer_too_many_args.eel │ │ │ ├── assign_to_buffer_zero_args.eel │ │ │ ├── assign_to_non_buff_function_call.eel │ │ │ ├── parse_error.eel │ │ │ ├── too_few_arguments.eel │ │ │ ├── too_many_arguments.eel │ │ │ ├── undefined_function.eel │ │ │ ├── undefined_function_multiline.eel │ │ │ └── undefined_function_with_comments.eel │ │ ├── md_youtube_broadcast_yourself.json │ │ ├── youtube_broadcast_yourself.milk │ │ ├── youtube_broadcast_yourself_per_frame.eel │ │ └── youtube_broadcast_yourself_per_pixel.eel │ ├── package.json │ ├── rollup.config.js │ ├── src │ │ ├── __tests__ │ │ │ ├── __snapshots__ │ │ │ │ └── errorsUtils.test.ts.snap │ │ │ ├── errorsUtils.test.ts │ │ │ ├── integration.test.js │ │ │ ├── javaScriptCompiler.test.ts │ │ │ └── preProcessor.test.ts │ │ ├── astUtils.js │ │ ├── compiler.ts │ │ ├── constants.ts │ │ ├── emitter.ts │ │ ├── encoding.ts │ │ ├── errorUtils.ts │ │ ├── ieee754.ts │ │ ├── index.ts │ │ ├── javaScriptEmitter.ts │ │ ├── loader.ts │ │ ├── parser.ts │ │ ├── preProcessor.ts │ │ ├── shims.ts │ │ ├── types.ts │ │ ├── utils.ts │ │ └── wasmFunctions.ts │ ├── tools │ │ ├── __tests__ │ │ │ ├── binary.test.ts │ │ │ ├── prettyPrinter.test.js │ │ │ └── wasm.test.js │ │ ├── benchmark │ │ │ ├── patchGlobal.js │ │ │ └── performance.js │ │ ├── buildParser.js │ │ ├── buildTestPreset.js │ │ ├── countUssages.js │ │ ├── milkdropGlobals.js │ │ ├── parseMilk.js │ │ ├── prettyPrinter.js │ │ └── testCases.ts │ └── tsconfig.json └── playground │ ├── .env │ ├── .gitignore │ ├── README.md │ ├── craco.config.js │ ├── index.html │ ├── package.json │ ├── public │ ├── favicon.ico │ ├── logo192.png │ ├── logo512.png │ ├── manifest.json │ └── robots.txt │ ├── src │ ├── App.css │ ├── App.jsx │ ├── hooks.js │ ├── index.css │ ├── index.jsx │ ├── logo.svg │ ├── placeholder.test.js │ ├── serviceWorker.js │ └── setupTests.js │ └── vite.config.js ├── pnpm-lock.yaml └── pnpm-workspace.yaml /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .netlify 3 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/README.md -------------------------------------------------------------------------------- /netlify.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/netlify.toml -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/package.json -------------------------------------------------------------------------------- /packages/benchmark/compiler.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/benchmark/compiler.js -------------------------------------------------------------------------------- /packages/benchmark/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/benchmark/package.json -------------------------------------------------------------------------------- /packages/benchmark/wrapper.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/benchmark/wrapper.js -------------------------------------------------------------------------------- /packages/compiler/.gitignore: -------------------------------------------------------------------------------- 1 | fixtures/mega 2 | .cache/ 3 | dist/ -------------------------------------------------------------------------------- /packages/compiler/CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/CHANGELOG.md -------------------------------------------------------------------------------- /packages/compiler/build/parser.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/build/parser.js -------------------------------------------------------------------------------- /packages/compiler/fixtures/27_super_goats - neon country frequent flier program.milk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/fixtures/27_super_goats - neon country frequent flier program.milk -------------------------------------------------------------------------------- /packages/compiler/fixtures/Cope - Cartune (extrusion machine) [fixed].milk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/fixtures/Cope - Cartune (extrusion machine) [fixed].milk -------------------------------------------------------------------------------- /packages/compiler/fixtures/Flexi - piercing - pastel - 3d.milk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/fixtures/Flexi - piercing - pastel - 3d.milk -------------------------------------------------------------------------------- /packages/compiler/fixtures/bdrv_flexi_va_ultramix_148_oblivion_notifier.milk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/fixtures/bdrv_flexi_va_ultramix_148_oblivion_notifier.milk -------------------------------------------------------------------------------- /packages/compiler/fixtures/errors/assign_non_identifier.eel: -------------------------------------------------------------------------------- 1 | assign(10 - 2, 10); -------------------------------------------------------------------------------- /packages/compiler/fixtures/errors/assign_to_buffer_too_many_args.eel: -------------------------------------------------------------------------------- 1 | megabuf(2, 3) = 10; -------------------------------------------------------------------------------- /packages/compiler/fixtures/errors/assign_to_buffer_zero_args.eel: -------------------------------------------------------------------------------- 1 | megabuf() = 10; -------------------------------------------------------------------------------- /packages/compiler/fixtures/errors/assign_to_non_buff_function_call.eel: -------------------------------------------------------------------------------- 1 | abs(10) = 10; -------------------------------------------------------------------------------- /packages/compiler/fixtures/errors/parse_error.eel: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/fixtures/errors/parse_error.eel -------------------------------------------------------------------------------- /packages/compiler/fixtures/errors/too_few_arguments.eel: -------------------------------------------------------------------------------- 1 | x = pow(1); -------------------------------------------------------------------------------- /packages/compiler/fixtures/errors/too_many_arguments.eel: -------------------------------------------------------------------------------- 1 | x = pow(1, 2, 3); -------------------------------------------------------------------------------- /packages/compiler/fixtures/errors/undefined_function.eel: -------------------------------------------------------------------------------- 1 | x = noexist(); -------------------------------------------------------------------------------- /packages/compiler/fixtures/errors/undefined_function_multiline.eel: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/fixtures/errors/undefined_function_multiline.eel -------------------------------------------------------------------------------- /packages/compiler/fixtures/errors/undefined_function_with_comments.eel: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/fixtures/errors/undefined_function_with_comments.eel -------------------------------------------------------------------------------- /packages/compiler/fixtures/md_youtube_broadcast_yourself.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/fixtures/md_youtube_broadcast_yourself.json -------------------------------------------------------------------------------- /packages/compiler/fixtures/youtube_broadcast_yourself.milk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/fixtures/youtube_broadcast_yourself.milk -------------------------------------------------------------------------------- /packages/compiler/fixtures/youtube_broadcast_yourself_per_frame.eel: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/fixtures/youtube_broadcast_yourself_per_frame.eel -------------------------------------------------------------------------------- /packages/compiler/fixtures/youtube_broadcast_yourself_per_pixel.eel: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/fixtures/youtube_broadcast_yourself_per_pixel.eel -------------------------------------------------------------------------------- /packages/compiler/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/package.json -------------------------------------------------------------------------------- /packages/compiler/rollup.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/rollup.config.js -------------------------------------------------------------------------------- /packages/compiler/src/__tests__/__snapshots__/errorsUtils.test.ts.snap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/__tests__/__snapshots__/errorsUtils.test.ts.snap -------------------------------------------------------------------------------- /packages/compiler/src/__tests__/errorsUtils.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/__tests__/errorsUtils.test.ts -------------------------------------------------------------------------------- /packages/compiler/src/__tests__/integration.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/__tests__/integration.test.js -------------------------------------------------------------------------------- /packages/compiler/src/__tests__/javaScriptCompiler.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/__tests__/javaScriptCompiler.test.ts -------------------------------------------------------------------------------- /packages/compiler/src/__tests__/preProcessor.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/__tests__/preProcessor.test.ts -------------------------------------------------------------------------------- /packages/compiler/src/astUtils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/astUtils.js -------------------------------------------------------------------------------- /packages/compiler/src/compiler.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/compiler.ts -------------------------------------------------------------------------------- /packages/compiler/src/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/constants.ts -------------------------------------------------------------------------------- /packages/compiler/src/emitter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/emitter.ts -------------------------------------------------------------------------------- /packages/compiler/src/encoding.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/encoding.ts -------------------------------------------------------------------------------- /packages/compiler/src/errorUtils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/errorUtils.ts -------------------------------------------------------------------------------- /packages/compiler/src/ieee754.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/ieee754.ts -------------------------------------------------------------------------------- /packages/compiler/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/index.ts -------------------------------------------------------------------------------- /packages/compiler/src/javaScriptEmitter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/javaScriptEmitter.ts -------------------------------------------------------------------------------- /packages/compiler/src/loader.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/loader.ts -------------------------------------------------------------------------------- /packages/compiler/src/parser.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/parser.ts -------------------------------------------------------------------------------- /packages/compiler/src/preProcessor.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/preProcessor.ts -------------------------------------------------------------------------------- /packages/compiler/src/shims.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/shims.ts -------------------------------------------------------------------------------- /packages/compiler/src/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/types.ts -------------------------------------------------------------------------------- /packages/compiler/src/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/utils.ts -------------------------------------------------------------------------------- /packages/compiler/src/wasmFunctions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/src/wasmFunctions.ts -------------------------------------------------------------------------------- /packages/compiler/tools/__tests__/binary.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/tools/__tests__/binary.test.ts -------------------------------------------------------------------------------- /packages/compiler/tools/__tests__/prettyPrinter.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/tools/__tests__/prettyPrinter.test.js -------------------------------------------------------------------------------- /packages/compiler/tools/__tests__/wasm.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/tools/__tests__/wasm.test.js -------------------------------------------------------------------------------- /packages/compiler/tools/benchmark/patchGlobal.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/tools/benchmark/patchGlobal.js -------------------------------------------------------------------------------- /packages/compiler/tools/benchmark/performance.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/tools/benchmark/performance.js -------------------------------------------------------------------------------- /packages/compiler/tools/buildParser.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/tools/buildParser.js -------------------------------------------------------------------------------- /packages/compiler/tools/buildTestPreset.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/tools/buildTestPreset.js -------------------------------------------------------------------------------- /packages/compiler/tools/countUssages.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/tools/countUssages.js -------------------------------------------------------------------------------- /packages/compiler/tools/milkdropGlobals.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/tools/milkdropGlobals.js -------------------------------------------------------------------------------- /packages/compiler/tools/parseMilk.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/tools/parseMilk.js -------------------------------------------------------------------------------- /packages/compiler/tools/prettyPrinter.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/tools/prettyPrinter.js -------------------------------------------------------------------------------- /packages/compiler/tools/testCases.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/tools/testCases.ts -------------------------------------------------------------------------------- /packages/compiler/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/compiler/tsconfig.json -------------------------------------------------------------------------------- /packages/playground/.env: -------------------------------------------------------------------------------- 1 | SKIP_PREFLIGHT_CHECK=true 2 | -------------------------------------------------------------------------------- /packages/playground/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/.gitignore -------------------------------------------------------------------------------- /packages/playground/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/README.md -------------------------------------------------------------------------------- /packages/playground/craco.config.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /packages/playground/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/index.html -------------------------------------------------------------------------------- /packages/playground/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/package.json -------------------------------------------------------------------------------- /packages/playground/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/public/favicon.ico -------------------------------------------------------------------------------- /packages/playground/public/logo192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/public/logo192.png -------------------------------------------------------------------------------- /packages/playground/public/logo512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/public/logo512.png -------------------------------------------------------------------------------- /packages/playground/public/manifest.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/public/manifest.json -------------------------------------------------------------------------------- /packages/playground/public/robots.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/public/robots.txt -------------------------------------------------------------------------------- /packages/playground/src/App.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/src/App.css -------------------------------------------------------------------------------- /packages/playground/src/App.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/src/App.jsx -------------------------------------------------------------------------------- /packages/playground/src/hooks.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/src/hooks.js -------------------------------------------------------------------------------- /packages/playground/src/index.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/src/index.css -------------------------------------------------------------------------------- /packages/playground/src/index.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/src/index.jsx -------------------------------------------------------------------------------- /packages/playground/src/logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/src/logo.svg -------------------------------------------------------------------------------- /packages/playground/src/placeholder.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/src/placeholder.test.js -------------------------------------------------------------------------------- /packages/playground/src/serviceWorker.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/src/serviceWorker.js -------------------------------------------------------------------------------- /packages/playground/src/setupTests.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/src/setupTests.js -------------------------------------------------------------------------------- /packages/playground/vite.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/packages/playground/vite.config.js -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /pnpm-workspace.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/captbaritone/eel-wasm/HEAD/pnpm-workspace.yaml --------------------------------------------------------------------------------