ballercat / walt

:zap: Walt is a JavaScript-like syntax for WebAssembly text format :zap:
https://ballercat.github.io/walt/
MIT License
4.64k stars 122 forks source link

CLI 'wrap' command needs to build smaller files. #164

Open ballercat opened 5 years ago

ballercat commented 5 years ago

Problem

walt-cli package when linking multiple .walt files together can "wrap" the modules in a stand-alone JS module. The resulting module is too large because it serialized the dependency tree with the AST information encoded directly into the output, resulting in a massive amount of js.

Encoding the dependencies into the file is done to ensure the module can be used stand-alone in browser or node. Only the opcodes objects should be necessary for each module.

Goal

Patch the cli wrap function to result in a stripped down version of the modules (without AST information) which can still build but only include the bare minimum buffers in the resulting JS module.

Notes