The Future of Modular Execution Layers

30 May 2024 · 28:37

Dino, a co-founder of Fluent, explains blended execution: a single Layer 2 network that natively runs apps built for different virtual machines, starting with the Ethereum Virtual Machine (EVM) and WebAssembly (Wasm), with support for Solana's SVM in progress. He describes how Fluent grew from a Wasm-based ZK rollup, why making EVM and Wasm contracts call each other well proved hard, and why users should not have to switch wallets or bridge. The benefits he highlights are shared liquidity and users across ecosystems, and apps that mix languages, such as Rust libraries alongside existing EVM code. He expects many blended networks rather than one chain, and outlines plans for a public devnet and possibly a public testnet in the fall.

Speakers

Topics

Transcript

welcome back to the rollup today we had a great conversation with one of our good friends Dino from fluid we talked about their recently announced Blended execution design we we talked about why this is a very important design transition for the VM environment from a single execution environment moving towards a multi-threaded execution environment we talked about why fluent made this choice and what Dino sees as the progression of modular execution layers Dino's been pioneering the modular push since the earliest of days so we really value his opinions and we enjoyed learning and understanding from him at a high level what this means and what you can expect from fluent and the execution layer going forward we hope

you guys enjoy this video Let's Jump Right In after a word from our lovely [Music] sponsors cartey is your home for app specific rollups at the Forefront of developing new tools and platforms that enhance the capabilities of blockchain Technology ctei enables applications that are flexible and built to scale build on a full Linux environment and use traditional software libraries but in blockchain development go to cars.io that's cy. to learn more about building your own app chain today welcome back to the rollup today

we have Dino from fluent of course here with Rob we're talking more along the lines of this broader modular thesis what I kind of consider now to be these subcategories of the modular thesis kind of emerging um and different teams working on specific parts of the stack and kind of perfecting their design so uh today we're going to talk about uh fluence Blended execution model um and kind of what this entails and how they are going to bring this to to the market and kind of how it works of course we have Rob uh the hooded Bandit today GM sir poon as well GM sir down but good to be here boys always fun welcome Dino um yeah I mean you guys

have pushed this Blended uh thing like I'm not even sure what it is yet like we we're going to dive in we're gonna get the first glance first inside look so um yeah why don't you tell the people kind of like uh a little bit about yourself and and generally like how you came to this uh Blended realization sure um yeah so as you said Dina one of the co-founders of of fluent and yeah we're building the first Blended execution Network um and the way to think about Blended execution networks um are very simple blockchains that natively support apps from different ecosystems so I'll unpack that in a bit but that's kind of like the the succinct definition of it um it could be useful to just like talk to how we got

here I know I came on the Pod maybe like a half year ago or maybe even more at this point and the focus was more around or the discussion was more about around a web assembly and that's um just to be really like clear about it like that is still at the core of kind of what we're doing but instead of being the whole story now I think it's like part of like a a bigger story and like a bigger um kind of vision that that we grew into um and so would it be helpful I just kind of walked through kind of like how we got from there to here definitely I I have you in my books as a web assembly Cloud app Maxi so I would love to understand this for sure well the the background part of it yeah maybe I can

just rehash that for a second to explain the the the Cloud app Maxi part um I I spent before getting into crypto I spent um quite a number years in in web 2 just around Dev tooling and Cloud infastructure um so always kind of looked at it through that lens about like you know building better developer experiences and tools to help them do things they couldn't do easily before or even just making things kind of like more performant or agile or whatever just been an infrastructure guy and so got um actually like pretty crypto pilled like right away by like ethereum and rollups like I know that's kind of weird but like I actually just dove in past like the the D gen part and I've kind of been like backfilling that just

because like you clearly need to like know a lot about um the market but that that's really how I got into the space so um started doing some work for um actually like polygon a few other kind of rollup projects whether like later stage and earlier stage and then last year right around this time started flu so just like quickly explain the cloud part but um yeah I think since the last time we talked uh well last time we talked we had probably just shipped our um private devet to um and that was very wasm focused you hear this like web assembly thing and um what web assem reason why web assembly is very interesting is because um it allows programmers to build with like tools

that come from web 2 so you know if you support um well web assembly is this is this runtime right and so um when you support smart contracts in languages that compile down to web assembly that lets let's just say rust or C++ or or something like this um it lets developers bring the millions of libraries that are already written in those languages and actually run them on chain in a verifiable way and that obviously has has a lot of repercussions um uh especially like I'll say like an extra degree of composability like within that sandbox right because like you don't have to there's just that many millions of libraries that like you don't have to write yourself I mean this is just like how Tech works like the

advantages of of having like more tools in the toolbox just compounds and so we've always found web assembly very interesting and that is where this project started so it started off as like a ZK rollup that had a web assembly um you know base and then so we we were working on that we were focused on Rust as a language um and we got the devet show up around around the turn of this year and what we and then what we decided to do is um introduce like make it evm compatible and we had this design kind of set from like before that but what we started to work on was the actual like interupt between the evm contracts and the wasin contracts because in our heads it's just like that's that would be the most powerful thing and what we found is like that's

actually a really hard problem to solve and we it wasn't super clear at the time because a lot of people do throw around the hey we're like this VM any M where that VM and and evm but like when we actually kind of dug into it we're like it's it's it's not that hard to do like a like a very okay job with it but it's like really hard to do like a really good job with it and so we kind of went honestly back in the lab for like a few months and said let's actually solve this like truly solve this because we haven't found anybody else who's who did um and then what we and we ended up you know three or four iterations later honestly found a pretty elegant design that lets um you know the evm apps the apps that would have been deployed to an

evm environment get deployed to this wasm environment similarly the evm uh sorry the wasm apps get deployed to the wasm environment for those apps to actually be able to like call each other for the exper developer experience to be very seamless um for users we like the thing is actually evm compatible in a way that like developers don't have to switch wallets when they're trying to to use like you know evm apps versus wasm apps it's all just you use metamask and like or whatever and whatever even compatible wallet and that's it um and that's how I guess then we so actually then we started realizing that the approach that we we built was actually quite scalable like because we architected it from the ground up that way which we can we can get into some of

like the elements that like make make that possible but um what we realized is oh is actually kind of scalable like we can add more VMS like pretty easily and then you know we we clearly at the same time like salana is is getting like more and more powerful and popular and um you know more and more svm apps are are being developed like look about it like what did Phantom just hit like one of like the top downloaded um wallets or actually apps in the App Store and so clearly their ecosystem has reached like incredible esape velocity so we said okay well wouldn't it be cool if we could actually kind of extend build on this idea and make an an environment um where the evm wasm um and svm apps can

all kind of play together nicely and happy to of course talk through like why that's interesting but that's kind of how we got here that's where I think we're headed is uh is how that how ultimately those all those all fit together right and and this is what the Blended thesis is made of uh this is like where it came from was the initial design to deploy these evm apps on AUM iteration um and then you realize that that is scalable and generalizable to a bunch of other ecosystems that you can deploy apps and so how did yeah like how did that that come about um what kind of gave you that impression that it was scalable and then now realizing that you

can you can uh apply this type of design to multiple different ecosystems what's the power what's the significance of of the this new Blended architecture yeah so so let me let me like go a little a step further and kind of contrast that with how most the l2s are and the execution environments are are built today and then how people have tried to I'll say do like work more or less workarounds to what what we ended up kind of Designing from the ground up to be a blended execution environment navigating multiple blockchains can be complex and cumbersome let's say you want to deposit into a lending Market on polygon because they have the best rates but you only have funds on optimism so you bridge your funds to polygon only to realize that you need madic to pay for

gas maybe use a centralized exchange or you ask a friend to pay for the gas but only then can you finish your transaction in a chain abstracted future powered by connects this is not the situation you can connect your wallet to any dap from any chain with all the complexities of swapping bridging and depositing all completely abstracted behind the scenes head over to connect. network that's connect. Network to learn more about connect chain abstraction toolkit [Music] so I would I would call the most of the L2 or the most of the existing execution

environments um single execution networks right so it's like it it is a you have the state machine that natively supports apps from one VM like one state transition function or or more specifically a VM um and that's great and and I would say the vast majority of l2s are are built this way and blockchains are built this way um but what we've seen over the past year has been this like really impressive momentum around the alt VM thesis right like you guys are well aware of it you see kind of like clips and movement and and a lot of these guys like gaining um gaining Steam and and people are getting very interested in broadening like the design space of the execution layers um and we I mean that that's we see that as well I

mean it's it's once you reach a point where um you kind of solve more or less like solve like the hardest of the scaling problems like what's where does a developer's attention go like okay I have enough of it now now I want to do more with with that block space and so like over the past year you know all these alt VMS popping up and like all for good reason right like wasum as we talked about before has this like very accessible environment where you know people can come with knowledge of languages that are from like Web Two there's also kind of the fact that even if you are like a web 3 native you know you get more tools in the toolbox we talked about that um move is doing some really movement the movement guys like especially but um just the move VM in

general with for formal verification and parallelization so there's like you know svm with with parallelization and and like the ability to to write in Rust smart contracts and then also just that's on the technical side even just the ecosystem side as I said like that that's that's been very very compelling and so basically like each of these like alt BMS have compelling attributes um and for the single execution Network like how things have existed up until today you basically have to Tre like you kind of have to trade them off in like a pretty meaningful way like if we wanted to just like Goa hog into um wasm apps only and have a single wasm execution Network well we're we're trading off like all the evm user base all the SPM like apps like you're kind of just like

you know isolating yourself in a way and so we just think that it's much more compelling to be able to actually blend these things together and clearly so so other people have been you noticing this recently as well right I mean this is this is this is like a seems like a very Natural Evolution but the way people have tried to solve the problem so far we we found very suboptimal where like since if something's not designed from the ground up to be able to like natively support these apps and again like we can go a level like deeper at some point and talk more about like how we enable it but if it's not designed in that kind of way and you really just have like a single execution Network that it natively only supports one you can kind of retrofit things on there um

but it's going to be clunky like users have to actually switch wallets to use it there's different like tokens that you have to use on one what what kind of actually even though it's like one network it feels like two networks like you have to bridge from one experience to the other and it just there's a reason why you know some of these Solutions like haven't gotten a lot of traction and I think I think that um once you actually make that experience frictionless um I I think you see some very different behavior and and we're certainly um we're seeing a lot of excitement for it but yeah it it does really have to do with the fact that we still have this wasm base and we've kind of like architected the system from the ground up with with a couple like very interesting like Innovations um there's

like compatibility contracts that basically support the um kind of interop between the different um apps uh in different languages and across different VMS um and then there's this like special like ZK tree that we developed as well that that helps make sure things like stay in Balance um and so yeah that that's that's kind of how we see the evolution I guess from single execution networks to what are now um Blended execution networks right okay I think that there's a there's some definitely some more uh in the weeds kind of questions but I think just kind of like staying out um for the most part trying to think about how this could work like in practice and maybe thinking about

like what the future of execution layers would then look like thinking on this on this paradigm Blended um yeah maybe you could give us some examples of kind of applications which could be Blended across uh various execution environments and like you know how that would look whe whether it be apps on different rollups kind of all you know with different implementations or apps on a single rollups with code bases from different kind of like uh coding languages or execution environments or um you know like kind of how that practically would would look and then maybe also can can get into some of the future of execution environments as well perfect yeah let me talk to um something I I meant to mention before but uh then

then I think got sidetracked um which is like why should anybody care about this like what what are what are the kind of like benefits and that clearly ties into you know what you could build with it as well and then I'll I'll talk to how we see like different execution networks Blended execution networks popping up over time because one thing that I want to make really clear is like we don't see this as kind of like a you know we don't look at our environment even though I'm talking about like single state machine that can support different apps we don't look at it as like we're not trying to eat everybody's lunch we're not going to support all the VMS like we want to make we want other people to blend other things on other networks so we can get to that um so why

why should anybody care about this right like what are the benefits of thing um we we put it into two buckets typically um the first bucket is just diversity of of ecosystems um and and we did you know talk about or unification of ecosystems rather um where you know you can have this the for example like 10 best evm apps and the 10 best svm apps actually sitting in the same place to share liquidity um share user base right like all of a sudden you have apps from either of these environments that get to actually just by default like dip into kind of the the full user base of the other environment there's kind of like new types of apps that they their app has access to now that they would never get on a single execution network of you

know of its origin VM kind of thing so I think we look at it as like an execution point I guess for each of these ecosystems um and I think there's some pretty cool like emergent things that happen when when you put them all in like a a single state um and then the other is the diversity of tooling like I think that this is where it ties into your question of like what can be what can be built with this um and it's uh the mo some of the more like interesting cases I'll mention um are you guys familiar with like the autonomous World kind of like thesis like I'm not saying specific to games but the idea that you know you might have one developer who builds The Primitives of a certain game or kind of like The lowlevel Primitives

of of a world or what doesn't really matter of a social media application and then what is the core thing to the like autonomous world like thesis is that you would have you know other developers like coming in and kind of like composing on top of your thing this isn't much different than just like the composability you see in defi but usually think about it as like you know one distinct app composing with another distinct app but I think what what's very interesting is if you can almost like create apps like across using multiple different uh languages from potentially multiple different kind of like VM Origins um you know so maybe the the core part maybe you're building a DEX and you're trying to innovate it on um using some Rust libraries and so

maybe like you want to use like erc20 tokens and you know copy and paste like a decent amount of like an existing Des because it's open source and you can but you do want to innovate and like pick up something in Rust to innovate like where it makes the most sense and then I I'd call that like a blended app basically and so when things get that seamless to actually um kind of compose you know tools together and you have this like vast diverse set of tools to actually use in this one place I think you get pretty awesome experiences that emerge um and the the other thing is I mean if even let me let me just like relate that to like the way even like web 2 works right in the past Maybe last time I came on here we talked about the the wasm

example too where you know when wasm wasm gets put in the browser and you get um extra flexibility you you couldn't get before and that's how for example like I think I probably mentioned figma so like figma comes in and says okay the best way to program this this application because we need it to be like very performant in real time in the browser is by using both not just JavaScript but using both JavaScript and C++ and so you you can start to see that same thing that same kind of like thesis that we have within just a wasm environment just expanding across multiple different environments and more languages and I think it's it's the same type of idea um you even see this existing in like the ml world today

right like like what are all these machine learning models they're kind of like python rappers around lower level C++ libraries so like that's just like how people build today and we're just trying to like you know make that easier to do on on on an L2 um and the to answer your second question around how we kind of see the future of execution environments I mean yeah to emphasize we we don't see this as kind of like you know a collapse back into like one big fat State machine that like has all the applications and you fluid winds are everybody like that's just that's not how we see it we see it as just like a better way to design execution environments and the same way you might

I mean if you have a thesis for a thousand or a million rollups well we would like to see we share that Vision uh we would just like to see it be you know a million Blended execution networks instead of a million single execution networks and each of those can be just like hyper customized for their own um for their own needs um and so that's that's generally how we see it fuel achieves Higher throughput by utilizing a novel utxo based approach that allows for parallelized execution this design significantly EX accelerates transaction processing which enables fuel to handle vastly more transactions than non-p parallelized systems thanks to advancements introduced by Fuel

ethereum rollups are set to be more powerful than ever before and fuel is not just enhancing etherium rollups it's redefining them making them faster more scalable and more adaptable to meet the needs of modern applications and developers go to fuel. network that's fuel. Network to learn how to build on the rollup OS there's a a lot of chatter around chain abstraction these days and so what you know what what you kind of mentioned with like these rappers around lower level languages I'm starting to think of like these chain abstraction protocols as doing similar and and there's a lot of nuance in the chain abstraction world

so I don't want to like say that everyone's kind of just rapping and and trying to compose and orchestrate liquidity across different places but it seems like what you guys are doing at the execution level is very very based very low level and is going to approach chain abstraction at a much more fundamental uh in a in a much more fundamental way so I'm curious like how would you say this impacts the end user does it mean we're switching chains less like chain abstraction would have you think does it does it mean that we're we're bridging less you know ultimately what what is the impact of a blended execution environment I think you spoke to a lot of how the Blended execution environments impact the developers

experience how would you say that it impacts the user experience so yeah it's it's a good question um I'll talk to just the typical user pre I guess chain abstraction and then post chain abstraction so um and clearly that's like you know whatever like it'll evolve over time but um an easy way to think about the value prop to users is um that there experience doesn't have to change whether they're going to use an app across these these these different um you know VM origins or whatever you want to call it um and I think that that ends up being like a very um kind of big unlock where you know you can no matter what kind of pops up um it could just be

deployed on on fluent it could be a new SPM app it could be new evm app um and the developer experience is is all the same now the interesting part about BL right like we're not trying to prescribe and this kind of ties to the multi rollup thing like we're not trying to prescribe that our evm compatible execution environment that supports you know svm wasm and evm apps is like the way to go we're not trying to basically say like uh the only way to go we're not trying to say like oh well we're optimizing for evm uh tooling and that's it we would love to see somebody else optimize um an experience around I don't know move or svm or whatever if you have kind of like Blended execution networks that um you know optimize for different

things um for that user base I feel like it ends up being like a a much much better experience than kind of the workaround solutions that still try to get the benefits of multiple apps in one place but make the users bridge between what should just be one network or kind of switch wallets or stuff like that no one wants to do that no one's going to end up doing that it kind of like defeats the purpose of of trying to support apps from those different ecosystems to begin with because it's kind of disjoint so that's the where we look at the value of like Blended today if you look out into the kind of future of like how these things can can Evol you know how these execution environments could could look with like fully Blossom chain abstraction I still don't think it like changes all that

much for for developers because I feel like at the end of the day we're trying to abstract everything away from users but developers will end up um you know carrying where things are running right every hop is extra either like latency every hop is extra risk like so there are reasons I see it on like a full trade-off space of like what matters to developers and I don't actually see that changing post or whatever with a train attracted world that said I do think that for the developer experience you're right I mean sorry the user experience you're right and that the user might not necessarily need to think about Blended execution networks like at all and that will just be like hopefully actually hopefully the user is not aware of it at all like hopefully this is all developer

infrastructure and um you know whether that ends up creating less like chains that you're you're deploying things to or not I I don't know I mean my my bul like I think there's going to be like thousands or millions of these things optimized in like pretty amaz like incredible ways for like so many different use cases so I it's kind of hard for me to clearly yeah I I I don't know that one but hopefully a user is blissfully unaware of this yeah yeah I think I think most would be in an ideal state so um it's kind of tough to make speculative predictions of the future but it's important to like think on it and kind of figure out like as a builder I I imagine in and you know I've done this throughout just various

entrepreneurial things you have to kind of take a bet on where you think the future is going and figure out how to align that right and align your product in that and I think this has been an important step for what you guys are doing um you know with this with this Blended execution now kind of speaking on to that point um kind of to to wrap up with the thought of um going forward you guys have now kind of changed a direction a bit or at least narrowed in your focus how has this affected your timeline uh previously and kind of what is your updated timeline for the community yep totally so like I said we had shipped a a private devnet our first private devet and then you know we are re architected things a little bit and

now we actually just maybe last week or so we we enabled um the wasum and evm app support like in full that is like working now we're feeling good about it so we'll we'll start onboarding some more um devs to the private devnet uh over the next month and then pretty soon after we we hope to ship a public devet to to let more people in um and then a public test net maybe sometime in the fall um we're also uh trying to we're also working on the the svm part of it now that's like a little bit behind since we started that more Rec recently but um it's it's looking good so far I'm not exactly sure when that would get like integrated into the the L2 for people to start using but we you know we're running a bunch of of tests with

it now so that'll lag a little bit behind um and yeah so I would give it maybe like a month or so before we're uh we're opening things up to devs awesome man feeling bullish thank you for your time and congrats on the re repositioning and just the the focus of the of your company to kind of you know just think about okay what does this ecosystem need and how can we provide that um and yeah excited to do another podcast and six months or a little less and see where the developments have taken us and um yeah again thanks for your time yeah thank you guys always fun and uh you know maybe we can jump back on I'll probably I think we were talking

about this offline I'll bring on Demetri and we can kind of do a a proper technical dive we're catching up on all that documentation right now but starting next week we're going to be uh sharing a lot more info so I'm I'm excited and happy to jam with you guys on that sounds great looking forward to it