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

Add Vyper #270

Open
fubuloubu opened this issue Jul 12, 2020 · 2 comments
Open

Add Vyper #270

fubuloubu opened this issue Jul 12, 2020 · 2 comments
Labels
discussion Discussion about an issue or topic

Comments

@fubuloubu
Copy link

Summary

Add the Vyper smart contracting language to Ethereum Studio

Motivation

The Vyper compiler is meant to be an easy-to-use, safety-first compiler for Ethereum smart contracts that is friendly to newcomers. Ethereum Studio is a beautiful browser IDE that a lot of newcomers may first explore Ethereum with. Seems like a match made in heaven!

Describe alternatives you've considered

N/A

Additional context

As far as I can tell, this may be difficult to do until we add an emscripten release process: vyperlang/vyper#1953. This front end appears to be fully client-side, so would be difficult to integrate otherwise without leveraging Docker. I could be wrong though, please correct me!

However, how this would be integrated in a user-friendly way ("there are options for smart contracts???") may be another issue to resolve. Based on file extension? Configurable setting? Ask the user which they like the look of better on their first visit?

@javier-tarazaga
Copy link
Contributor

Hi @fubuloubu,

Thanks for the suggestion! Yes, you are right that all code it is currently compiled in the client. Long time ago, we started with remote execution environments using docker but is something we never finished (not even close), as we were also thinking to provide coding environments for Truffle, etc.

I had a quick glance at how Remix implemented this but I could not get the remote environment to compile the example ballot.vy and Remix is not giving any clues on why 🤷‍♂️

Do you have any timeline for vyperlang/vyper#1953? I think could be a great addition but implementing this will also carry a few extra work. @samajammin any thoughts?

Apart from adding support in the tool itself, this will require to create examples using Vyper. Most of them are really simple though except the NFT which is a bit more complicated.

@javier-tarazaga javier-tarazaga added the discussion Discussion about an issue or topic label Jul 15, 2020
@fubuloubu
Copy link
Author

We have examples, including an NFT one, so hopefully that would help.

Pretty sure Remix just had a server that would make calls using vyper-json, so definitely not going to work here.

I don't have an explicit timeline for vyperlang/vyper#1953 because it's a project outside of a bunch of maintenance work that needs to get done, but the ultimate plan there is to build something and release it on NPM, which should make integrating much more trivial here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion Discussion about an issue or topic
Projects
None yet
Development

No branches or pull requests

2 participants