1/ A few weeks ago, we released a teaser of some work we were doing with #Rust. This initial release implemented most Avalanche types but didn't yet contain what you'd need to build your own VM (particularly logic for communicating with AvalancheGo).
That changes NOW!
twitter.com/_patrickogrady/status/1583572226380427265?s=20&t=Iw6h3xAlC6Znvrg1Hj9U4Q
2/ We just released a HUGE update to avalanche-types-rs that includes the RPCChainVM wrapper (handles communication with AvalancheGo over Protobuf).
**This means you can now write and launch your own VM in #Rust WITHOUT WRITING A SINGLE LINE OF CODE IN A DIFFERENT LANGUAGE.**
3/ This is all possible because AvalancheGo abstracts its core capabilities (networking, consensus, RPC, etc) over gRPC for a VM to utilize however it chooses.
As long as a VM implements AvalancheGo's required protos, the language is up to the creator (just like its logic).
5/ We chose to implement some existing VMs so developers could directly compare these implementations to their Golang counterparts and see exactly how the Rust SDK differs.
Let's dive in to some examples 🔎
6/ [timestampvm-rs] Block Verify:
7/ [spacesvm-rs] Tx Execute:
8/ [spacesvm-rs] Mempool:
9/ We will continue shipping enhancements to this SDK to unlock more functionality out-of-the-box for #Rust devs (just like we do for our #Golang SDKs).
DM me if you end up working on a VM or have ideas for making the SDK even better! 🤓
10/ As always, if you'd like to join us at @avalabsofficial, shoot me a DM or apply online: boards.greenhouse.io/avalabs?gh_src=9a15c6d64us
Some Highlights:
* Data Platform Engineer (Explorer/Analytics)
* Subnet VM Engineer (Novel VMs on Subnets)
* Infrastructure Engineer (Cloud Native)