Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Run conjure, minion and savile-row in webassembly #6

Open
stewartmcgown opened this issue Nov 21, 2019 · 0 comments
Open

Run conjure, minion and savile-row in webassembly #6

stewartmcgown opened this issue Nov 21, 2019 · 0 comments

Comments

@stewartmcgown
Copy link
Collaborator

Given the complexity of this project, it may be best to leave it for now. I'll document my progress on it here.

In order to prevent the need for a server running a solver, a local WebAssembly client in the user's browser could be instantiated and used to solve problems. This would require migration of the three main components of this project; Conjure, Minion (at least) and Savile Row, to WebAssembly.

There are plenty of projects out there than can recompile Java and Haskell into WASM, but each share the same downsides - they cannot compile 1:1. For example, TeaVM doesn't support reflection (which savile-row uses). The HaskellWASM compiler supports an even smaller subset of Haskell, so it's unlikely that conjure will be able to be compiled.

If this landscape changes, then maybe this approach has a chance. For now, continue with the docker approach.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant