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

Port to JavaScript #58

Open
jyn514 opened this issue Mar 2, 2018 · 5 comments
Open

Port to JavaScript #58

jyn514 opened this issue Mar 2, 2018 · 5 comments
Assignees
Labels
feature new feature to add waiting on Needs different issue to be closed first
Milestone

Comments

@jyn514
Copy link
Collaborator

jyn514 commented Mar 2, 2018

To avoid heavy-duty hosting like Heroku, it would be nice to have this in native JavaScript. This will also have the benefit of allowing us to host on Github Pages, which only supports static sites.

Waiting on #57 and #54 #51.

@jyn514 jyn514 added the feature new feature to add label Mar 2, 2018
@jyn514 jyn514 added this to the Web app milestone Mar 2, 2018
@charlesdaniels
Copy link
Owner

charlesdaniels commented Mar 2, 2018 via email

@z2oh
Copy link
Collaborator

z2oh commented Mar 5, 2018

I'd be happy to tackle this once the spec is written.

Options are write it to Rust and use WASM (which is cooler and will result in a much faster execution time) or write it in JS. Assuming adequate library support, this shouldn't take too long to rewrite in JS. In fact, I imagine less time would be spent rewriting it than configuring a transplier to work (though transpilation has the added benefit of generating the js code as part of a build step, meaning only one code implementation needs to be maintained.)

However, manually porting the implementation to another language should provide a good test on the robustness of the spec.

@jyn514
Copy link
Collaborator Author

jyn514 commented Mar 8, 2018

I would love to see this in Rust. What would a WASM compiler look like? The advantage would be now that it's in both JS, Rust, and Python :D

@jyn514 jyn514 mentioned this issue Mar 10, 2018
@jyn514 jyn514 added the waiting on Needs different issue to be closed first label Mar 10, 2018
@charlesdaniels
Copy link
Owner

I am in favor of Rust as well. The only libraries we should need would be base64, bz2, gzip, and any other compression algorithms we support... I don't think the list is very long, and all of these have C implementations we can link against even if Rust does not have native ports.

@jyn514
Copy link
Collaborator Author

jyn514 commented Mar 10, 2018

(and sha256)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature new feature to add waiting on Needs different issue to be closed first
Projects
None yet
Development

No branches or pull requests

3 participants