I am bumping this topic to say that the Sophia programming language is awesome!
It’s so much better than Solidity and that alone justifies it’s existence, however, I’d like to share a few suggestions:
build Sophia in a way that it could be useful for other blockchain projects as well, maybe even in ethereum; considering it’s a a good language and open-source, this might happen anyway, but if you lead an effort on it you might attract a portion of the huge eth developer community towards aeternity (if Sophia has extended features on ae, such as state channels/oracles)
build Sophia as a procedural macro in rust; that will practically give you a compiler that can generate WASM/native code without you having to impl a compiler, and it will increase the language’s popularity
using 256 bit sized uints is unnatural and has proved to be a problem in Ethereum, from the point of view that no matter how big your int is, you always have to manage overflows/underflows anyway, but no real hardware is 256bit, so using 256bit word size is expensive .
Currently, we have no plans to work on a rust implementation any time soon (or ever).
One can argue about the word size, I do not think it is a bottleneck in our implementation. Anyway the VM improvements we are working on now will have variable word size and should be much more efficient.
Plus, we just merged today a PR for Minerva release addressing overflow/underflow…
That’s definitely a language to track if you are an upcoming programmer or web developer coming out of school. I also had to experiment when I finished my IT university with Python, Java and all sorts of classic languages. I just have a feeling that if you want to be innovative you should look into languages like Sophia. I got this advice after reading several articles regarding IT career mentoring including https://www.computercareers.org/ that has some great points to know. My dream job would be to become an application architect one day.
@arpunk.chain
I would love to have the Sophia compiler working in Lumen - the problem is that Lumen is still in early stages of development - it misses a lot of pieces in order to get it working on WASM, also there are some missing BIF’s they need to sort out.
That’s the reason why Erlscripten was created - in order for Sophia to run in the browser:
Soon we will publish a more detailed article about the effort.