Fuel, The Fastest Modular Execution Layer | John Adler

25 Jan 2023 · 1:11:18

John Adler joins 0xResearch to explain how Fuel is building an execution layer for the modular blockchain stack. The conversation covers why state growth, not call data, should be the metric rollups optimize for, Fuel's UTXO-based execution model and parallel transaction processing, the tradeoffs of its Sway programming language versus Solidity, and how Fuel captures value within Ethereum's modular future.

Speakers

Topics

Transcript

so we're building towards the future that actually ironically looks more like blockchains did before roll ups arrived which is that state is Ultimate State growth and state size and so on is the ultimate bottleneck that was always the case really it just currently obfuscated by expensive call data and this is a transient thing it will go back very quickly to call data is cheap and uh state is expensive and when we're in that uh when we're in that space in that place uh fuel is well positioned to be way ahead of any other roll-up that isn't actually working towards this all right everyone welcome back to another episode of zero X research presented by Chain analysis and Flipside

today is January 23rd uh and we have a great interview with John Adler who is heavily involved in the blockchain industry as a whole uh but specifically today we're talking about fuel apps which is an execution layer built for a modular blockchain world so super exciting conversation he is insanely smart and intelligent and you can really just tell his passion for blockchain as a whole and it's a great conversation so um you know before we get to that as usual we have our intro segment and we're joined by Ren in Xerox pibbles from the blockworks research team to discuss the latest Market happenings and we like to do this through a segment of Hot Seat cool Throne so Wren I'll kind of throw it over to you who do you got this weekend are they in the hot seat or the cool Throne yeah I got the Wormhole

Explorer in the hot seat so I remember in around February of last year when Pope got exploded for around 300 million dollars at that time which was about 120 000 if the exploiter then bridged about 90 000 worth of if the ethereum mainnet he's been on the move again today he just turned 95 000 if into roughly 95 000 State thief and is now the fifth largest holder of State Thief he's then gone on to file some Diet game set and assault that back to State Thief so he's in a very very leveraged long safety position right now we're not really sure what the end goal is here um it seems like maybe he's bored he just wants to leverage out and degenerate maybe part of him once again

look at it on Ave loan but it's hard to say yeah no this is definitely an interesting one right like you know what every time I see these massive amounts sums of money getting stolen uh the the first question is like all right well how do you gonna get that off chain what are you gonna do with it and the reality is it's not that easy to just take crypto and turn it into dollars or whatever currency of your choosing um without being able to do so without being like regulated uh so the reality reality of the matter is if even if you pull off a massive exploit you're really just kind of Trapped with these Unchained dollars so uh while it's probably something more interesting than you know him just getting bored in my opinion uh it does like beg the question of like all right well what's his game

plan here um but you know at the end of the day it very well just might be a d gen just trying to have some fun on Jane is it lyda's teeth that he's Levering up okay it is yeah I wonder that's interesting because that makes me think maybe he's like purposefully trying to get you know liquidated potentially pull staked ethoff Peg and then you know buy up that discount on his PA so maybe that's one angle I think McCauley uh kind of alluded to something similar so sorry McCauley is on the editorial team so shout out to McCauley but uh I can go ahead and jump into my uh cool Throne of the week this one's pretty easy Circle they just uh released docs over the weekend for cctp which is cross chain transfer portal and they're

describing it as a utility for anyone to permissionlessly go in and uh burn usdc on a source chain and then mint it on a destination chain so you'd always have native or usdc and that's pretty huge in the bridging landscape of things because that's commonly been like one of the biggest hurdles in crypto ux and security so uh to see them making this push forward is is super exciting and honestly I can't imagine there aren't going to be some fee revenue generated off of this maybe I'm wrong but it's once again another bullish Circle development and normally how bridges work is you lock up an asset on the source chain and then you actually mint a wrapped asset on the destination chain so that kind of

creates a huge Target for hackers to to kind of Target the uh the native assets on the source chain because there's so much value just locked up there and you know we've seen billions of dollars of bridge hacks as a result so this will definitely improve security um as well as improving the user experience Xerox research listeners had this one first um actually it was the dydx episode a little over a month ago with uh I kind of got we got when you got the first little sneak peek of that this exact thing becoming live you know I think dydx is going to leverage this and help them get usdc inflows into their protocol um and you know even a couple weeks ago this still wasn't being talked about I actually fired off a tweet that was like this is the most underdiscussed development in defy and today that's no

longer true right this has been kind of the Talk of the Town and rightfully so it seems like a great way to kind of circumvent the bridge risk that we commonly deal with I guess the the drawback or the downside of this is it you know obviously circle is a Fiat back stable coin that's very regulation compliant uh and for like the decentralization Maxis this still might not be attractive to them yeah I am a little concerned on like how permissionless it's going to be um like what if you have to like I don't know I can see like down the road they're like all right you have to kyc if you want to use this bridge like the same way you would want to you adapt to kyc if you were trying to actually cash out on the circle website which I don't know I don't know anyone

who's ever done that personally that's a good point too Pebbles it's like if it becomes super ingrained in the main way to transfer Value Cross chain they kind of have like a Stranglehold on D5 kind of a an angle I hadn't considered and something to definitely keep an eye on going forward because last thing we want is kyc from Avalanche to Solana to back to ethereum like that that just sounds like an absolute nightmare I would say that bridge liquidity would still probably exist but it definitely is a world in which no one would use multi-chained Bridges anymore such as synapse hop because one could basically go from say if to Avalanche by solving if the usdc burning the uscc and inventing it on Avalanche and then

solving that for avaxon Avalanche so maybe it has equilibrium there between Vegas and circle cctp in terms of sort of the slippage that you experience on a decks versus the fees that you would get on a bridge but I do agree that the kyc concern is still instead yeah I mean if this is a very low fee a way to transfer between ecosystems transfer value between these ecosystems I have a hard time believing that this wouldn't become what you know one of the most popular ways to do so uh you know granted the the risk seems low the efficiency seems very high and I think those you know that combination tends to to do very well but to jump back over to a hot seat I've actually got optimism in it this week everyone kind of saw the

charts circulating around of total transactions and activity on chain between arbitrum and optimism and quick shell for the the blockworks research doing account we've got a great dashboard comparing the two but everyone kind of saw these charts circulating around saying how optimism is you know crossed over arbitrum and you know people are you know users are loving uh what's going on on optimism and then their Quest program ended and that we just saw a near crash to zero in terms of on-change activity and like it really just gives Credence to the fact that it appears the entire usage was just truly incentive incentivized hunting and uh you know there's like they're giving away these nfts there's

likely a second uh op airdrop that's related to the activity done in this in these quests and you know the quest ends and we get a straight to zero plummet on on this on these activities so I don't know it's like hard to make of you know what this really is but at the end of the day I think it really just kind of shows you that if you you really need the developers to be building valuable products on your chain if you want the users to stick around yeah I think this is a fair Hot Seat those transaction uh accounts and daily active addresses pretty much halved overnight just because people poor trying to farm you know whatever whether it's the nfts or whether it's a potential future op airdrop I also know like the op tokens like four or 5x off the lows so that's

only driving incentives even further um but yeah I still admire the the optimism Vision you know with bedrock and kind of like a modular stack that they're trying to build out I think it fits really well in line with what ZK syncs doing you know what Stark Net's trying to accomplish and really you see every L2 trying to put together like a an L3 or modular stack strategy so I am bullish on on optimism as a a chain going forward and I think they're going to accomplish some really cool things but uh yeah there's no doubt that not all that activity is actually organic I think one of the larger implications of the drop in transactions and optimism would be for arbitrum I'll become follow the optimism's largest competitor in terms of L2 these days and does not have

a token yet even though everybody's sort of expecting the token at some point so now the question becomes what's your opportunity when the eventually releases open so they do similar air job or farming program or would that perhaps be net negative for the ecosystem as users or Traders using the ecosystem transfer the mental model from I'm here for the good Tech and the cool protocol so I'm only here for the token airdrop and I think that's something that's very important to consider not just for l2s but also just for in general air job programs in the future for different ecosystems and l2s yeah that's a great Point Ryan especially when you consider you know if you look at like the ux between arbitrary and optimism today it's really not that different on the

user's end I think the the way it feels the way it interacts the the time to your transactions for the time it takes for your transaction to be completed it all feels generally the same so the reality is the users aren't going to get you know I haven't met that many people of course there's always the Maxis out there but I haven't met that many people like I'm only using arbitrum because I love the tech as especially when you're comparing between L2 and L2 uh so it really comes down to the the application level and what's there what are people using and you know right now we see things like GM actually leading the way for l2s yeah I think it was Sisyphus I saw on Twitter tweet uh over the weekend like arbitrum like all these other l2s without a token they're not going to be

able to keep up with optimism because they do have a token and that they're wasting time but I view it as completely the other way around like I view like a token allocation is like the protocol's ammunition to like continue to attract users and the longer arbitrum and ZK sync and these other l2s can like maintain a strong Community without a token I think the longer the runway will like ultimately be so sorry sis I do not agree with you on that take I think that's spot on Sam especially when you consider like okay what's the use of what's the utility behind op today okay not much like when it's actually decentralizing the sequencer and playing a key role in the ecosystem and has a value accrual all right well then yeah that's that's probably true but that is

just not where we're at today I wish I mean that brings up a whole another Point around like when are we gonna get actual l2s that use fraud proofs to settle to mainnet as opposed to like just trusting a centralized entity which is the reality uh that we're living in today yeah strong degree there Pebbles I'll kick it over to you for your cool Throne of the week yeah I have Aptos and the cool Throne um I know everyone loved to just like you know take a fat on Afters when it launched because they launched in the middle of a bear Market um but the token is up almost 4X in like a month and now I think the fully diluted ballast like 14 billion so it's like the biggest L1 by FTV right now

um but yeah even through all the fun I mean someone could have just 4X their money right there if they were paying attention um what's also funny about that is there's only 55 mil tvl on the actual chain and one of the biggest uh protocols on there is pancake swap but um go people who longed Aptos good for you it wasn't me yeah definitely um yeah I was pretty early in bridging over there just like one of those moods where I'm just like I'm gonna go you know experiment see what's going on with the full expectation of losing everything uh through not not any large sum of money by any means so through some through some Assets in some coins over there totally forgot about it

apto starts pumping and I go back in check in like a 3-4x on aptoj like I mean I think 50x during a while but that's that's a just the reality of it is I went over there trying to do like legitimate things and like actually see what the chain has to offer but I get over there and there's nothing built it's just you know we launched a chain probably because we have a horribly allocated token and you know investing tokens Can accrue rewards So the faster we get the chain out the more rewards we can get the more money we make um and you know ideally you kind of like get the tech working through a couple test Nets and then get developers building on test Nets and then when you launch you actually have things built uh just seems like a clearly a better way

to operate a blockchain but that's simply not what we got so at the end of the day the price did certainly pump and uh you know I if you go back and look over there you know there really still aren't any legitimate tokens over there everything that's like uh has the most liquidity on chain uh is like your usdc's your your weath pools it's pretty funny because even like the the token is the tokens are a complete mess because all everything you bridge over there there's like a layer zero usdc and a layer zero weath and then there's a wormhole usdc and a wormhole eth like so it's just so fragmented um but at the end of the day if they're in the cool seat because number go up yeah they've got like 50 million of tvl just on dex's so pretty much everyone's

just going over there to swap coins around with each other it's absolutely it's really funny actually but do you guys know what uh valuation investors got in out there because I mean 13 billion fully diluted I'm curious how they're sitting here Shirley 0.0001 so they're they're probably chilling I have no idea what the valuation was I think the last round that happened for Aptos was that a few videos I want to say 3.5 billion though I'm not sure it's actually funny because I didn't realize this up until a few months ago but the after CEO Muhammad I followed like a startup that he did before I thought so it was a shared property ownership on the blockchain he

started that off for a few years already and I don't think that went anywhere until he started Aptos and I think he's basically given up on that project I will say one thing to keep an eye on on Aptos is it's something called like tsunami maybe it's like tsunami Finance but I think they're just trying to be like perps on Aptos but I mean it is a high performance blockchain like maybe they can actually have an on-chain order book and stuff so um they're on like testnet right now but I've been meaning to go over there and uh give that a try in case there's an airdrop or something but I have not been over to Aptos yet like Dan has so I just saw I had to download a new wallet and I just kind of

like sighed I don't know maybe I'll do it at some point I know that's fair I have two new wallets and like half my money was in each of the walls like uh I I can give you some recommendations though one's definitely better than the other um but word of caution I use layers Yoda bridge over there seamless getting there uh but to get back you need one million block confirmations which is roughly three days so now I'm just sitting in Bridge limbo for three days that's absolutely hilarious three and a half days one million block confirms that's absolutely crazy uh Dan I'll kick it over to you for a chart of the day if you're ready yeah I'll get this thing uh shared up on the screen here again we have the we have a bounty running so if you want to go

ahead and you know even work towards answering a specific question uh you get the opportunity to earn some free usdc uh so before we jump into that uh you know again just want to thank Flipside for everything that they do in sponsoring this show as usual we do the flip side dashboard reviews and this is a dashboard built by Jack the guy so another uh common name we're seeing here so shout out to Jack the guy and this one specifically covers uh Cosmos ecosystem voting and it's pretty interesting I thought so if we look at this chart here on the top left uh you know we have a bar chart from you know early in July 21 to current in January 2023 and it kind of just shows you the voter participation on chains throughout the cosmos personally I was expecting

this to be heavily correlated to price action but you see we actually topped out in May and that that kind of gives me a little bit of this interesting feeling or sorry May 2022 um and that's kind of like when we were really in the depths of the bear market and we really hit that second peak in price in November 2021 uh before trending lower but it's almost there's actually a little bit more of an interesting story there is like once price started plummeting you know maybe it was people coming on chain and be like hey like we need to fix things like let's optimize our chain to get uh more valuable or things of that nature uh so I don't know maybe that's the takeaway here but very interesting to see uh you know governance participation really leveled out in between March and may of

2022. that's a super Fair take I feel like Dan because like every other chart in crypto is just down and to the right and I'm really surprised that uh voting participation isn't the same I actually can speak from first-hand experience like I do vote on on protocols that I've been invested in since the highs because I'm like let's try and fix things and make this a little bit better so that that's a this is a cool dashboard I really like it yeah I think they should definitely just like hard code it to a hundred dollars that's what I would do as well and I love it I love it and you know I guess the the most interesting takeaway here is if you look at where we started in voter participation in late 2021 and where we're at now you know we're like five six x off the bottom uh

so it's kind of cool to see just more users in general being interested in participating in on-chain governance so that's kind of like my take away from this but again the only reason we can even see this is because Flipside is offering this free on-chain data super comprehensive covers 17 or so chains now uh and here's a good little tidbit is their decoded logs table is coming live soon it's currently in beta but I've been messing around with it a good bit it's based on ethereum mainnet only right now but it's eventually be rolled out to all evm chains just because of the similarities between how the chains themselves operate but this really enables you to analyze any piece of data that gets recorded in the event logs and

is super super powerful so you know again if you're kind of new to SQL or SQL which is a coding language that you use to build these visualizations it's pretty easy to learn lots of free resources available to do so and again when you kind of have this like motivation to understand on-chain data it just becomes super super easy and flip side really makes that super powerful to make great analysis and I'd like to take a moment to thank our other wonderful sponsor chain analysis they're one of the leading crypto analytics providers that are helping provide the tools to legitimize our industry I mentioned it last week but they just dropped their uh crime report in 2022 that measures the amount of illicit activity that goes on on chain and they found that 0.24 of on-chain activity was related to illicit activity and a lot of

the reason for that is the bridge hacks that we experienced last year as well as the ofac compliance list with uh tornado cash so that's the first uptick we've seen since 2019 but it really does do a good job putting it into perspective no one's really using the stuff to do illicit activity it's a terrible idea it's it's all public like you you shouldn't be doing it uh there if you want to launder funds they also offer some really awesome courses some other research uh and we'll be shared a link to all that in the show notes so thanks again to chain analysis for sponsoring our ship and now here is John Adler from fuel Labs all right welcome back everyone we are joined by John Adler the co-founder of Celestia and fuel we'll be focusing on field today and John also

has done a lot of work uh in the research uh part of the space as it relates to optimistic rollups so thanks for joining us John thanks for having me I'm glad to be here yeah so I wanted to start out just kind of at a high level because fuel is like a modular execution layer and the four uh you know typical job functions of a monolithic uh blockchain are going to be consensus settlement data availability and execution uh why did you choose to Pivot into a modular execution layer and what exactly does field do pivot from what uh weren't you guys starting as a optimistic rollup on ethereum it might be a good time to distinguish what do you mean by just a roll up

versus a modular execution layer uh and then you'll see that maybe it wasn't so much of a pivot as much as it was like just coming into what we wanted to do all along so one analogy I like to use is the analogy between USB and Thunderbolt right like the uh the USB specification says you know there's some serious on foreign here's some form factor and then you can support such and such protocols for instance you can support you know display over USBC you can also support data over USB right uh some USB cables don't have data they're just a power and so on right and that's why if you buy a USB cable if it's just a USB cable it

might not be capable of uh having display to a monitor right it might just be usable for charging your device but Thunderbolt uh is the same thing as USB fundamentally it just USB with all the features enabled and they must be enabled so like if you buy a thunderbolt cable uh then you're guaranteed that you know it will be able to send display through and you will be able to use it for also charging your device etc etc uh of course they're more expensive uh so this is how this is an analogous to how Roll-Ups versus module execution layers work so a roll up is primarily and only uh it only considers the validity of a bridge contract to a

settlement layer that doesn't necessarily have to be a Solomon there but for now for Simplicity let's consider a settlement layer uh and the problem is that this is not the same thing as a light client right and I'll give you an example of why this is uh concretely not as like a hypothetical example but as some Roll-Ups actually do this uh if you want to know that uh some with the draw happened in some roll up or if you want to know that some new block that is posted by the rollout block producer the sequencer is valid you only really need to know that the block header is valid and the block header consists of things like a state route

and some commitment to transactions in a normal blockchain such as Bitcoin or ethereum this commitment to transactions is a Merkle tree but it doesn't have to be right and a lot of Roll-Ups have taken a shortcut off instead of having a Merkle tree why don't you just make it cheaper why don't you just make it one hash right and this cuts down not the amount of work that the roll-up needs to do and you can still have a proof that the state route and the block header are valid and the robot will still function just as it normally does right every block is valid given certain assumptions people can withdraw from there they have all the nice security guarantees that's all good but when it comes time so I've run a light client for this roll up if the roll-up doesn't have a Merkle

tree of transactions you can't actually prove that your transaction was you can't prove that like client so simply that is transaction always included in the block and Satoshi Nakamoto actually had an entire section in the Bitcoin design paper dedicated to spb clients like clients right where he described worker news and Merkle tree to enable like clients if you don't care about my clients you don't need a Merkle tree you don't need a Merkle tree you have the you don't need a Merkle Tree f the of the transactions you technically also don't need a number called trade of the state but that's usually needed for validity stuff uh so that's a problem because I would like to run a light node off my rollup right otherwise well how do I even know if my transaction has been included in a

blog or not I would have to trust someone or I would have to run a full node for that roll up and if the roll up has a very high cost or on a film then now you see why that's a problem so a modular execution layer fundamentally has the nice properties that you would get out of a Roll-Up in other words you're it's you know some blockchain that runs alongside a settlement layer you guarantee that it's valid and all the stuff but it has these additional nice properties guaranteed while in a roll-up they're optional because they're not the focus and one of these nice properties is with a modular execution there you can run an off chain my client and it will run it'll work just like a my client works today on any normal blockchain like Bitcoin or ethereum you'll be able

to get a proof that your transaction was in the block you'll be able to get a proof that the state of some contract was such and such at a particular block and so on and these these properties are not guaranteed by just vanilla roll-ups so a fuel we're building a modular modular execution layer we're not settling for just a roll up we want users to have the maximum security and the maximum flexibility across the whole stack so why are we doing this well I mean there's an answer why we're doing this right and we didn't really pivot away from doing this I would say we didn't call it this when we were building fuel V1 uh but we were building a fuel if you want with all these properties in mind great that's super helpful so I guess if I'm getting this right does it does it

seem like today Roll-Ups are really optimizing to just fit as much transaction data to post to ethereum as possible and you guys are kind of taking the bet that data availability is going to become cheaper over time and really State growth is going to be the main problem yeah so that's a that's a follow-up point and I think it's a very important one and how we design fuel uh you're correct that a lot of Roll-Ups today uh assume and are built under the constraint of very expensive data or call call data as it is called today uh and we're building towards the very near future when you have Solutions like eip4844 prototype shorting uh then full on dank sharding uh potentially

systems like Celestia are eigenlayer that can provide greatly increased data throughput uh for Roll-Ups and we're building towards that very near future instead of the current present and why are we building towards it because we don't want to build a system that's going to become obsolete in a very short period of time and we don't want to force developers and users to spend a bunch of resources and time and so on developing an ecosystem that again will be obsolete in like months not years uh so quite a few Roll-Ups today uh they their economic design and how they charge people for different things on the roll up makes call data very

expensive this is forced developers to rewrite their contracts to use last call data and use more state which is a really perverse incentive because now you have these Roll-Ups that are just taking on state load at a much faster rate uh than ethereum mainnet and ethereum mainnet already has a very big problem with Safe Load it's one of the big bottlenecks and big things that the core client developers have been trying to improve on and that various various protocol changes to the theorem protocol have tried to mitigate and now you have these Roll-Ups that are basically undoing all that work uh that to the evm into the ethereum protocol and they're just letting people go crazy on state

loads and it's really horrific and this will come back to bite them because that's they you can't really discard it you've now kind of locked users into having a system with all the state and if you want to run a phone for this roll up congrats you need to I think which is a huge amount of state and that state is not going to disappear anywhere so we're building towards a future that actually ironically looks more like blockchains did before roll ups arrived which is that state is Ultimate State growth and state size and so on is the ultimate bottleneck that was always the case really it just currently obfuscated by expensive call data and this is a transient thing it will go back very quickly to call data is cheap and uh state is expensive and when we're in

that uh when we're in that space in that place uh fuel is well positioned to be way ahead of any other roll-up that isn't actually working towards this so we jumped right into the the Deep stuff but I guess just to take it back to a little bit of a higher level do you mind kind of going through the different architectures that can be built using feel fuel because I know there is like a bunch of different Plug and Play ways you could you could utilize it yeah so I wouldn't say that there are currently Plug and Play ways but there will be Plug and Play ways in the not too distant future this is a lot of implementation work uh but we aren't as a modular execution layer we aren't Building A system that must be a roll-up that settles to ethereum and only

ethereum that uses only current ethereum mainnet as its source of data availability right we are building modular software in addition to a modular protocol like a modular blockchain uh the software is also modularized in the sense that it is agnostic to the data layer and settlement layer as much as humanly possible and that is generic so it's very easy for someone to modify the software and for instance instead of using ethereum mainnet today for data availability it could use ethereum post eip4844 and that'll be very easy because we didn't take any assumptions into the software and into the fuel protocol that it must use ethereum maina as it exists today other projects are also working

towards similar flavors of this optimism Bedrock for instance is a more generic form of optimism uh is you know they're pre-bedrock work is very heavily uh linked to ethereum mainnet and I just like as all the assumptions they make are around ethereum may not must be the data layer that we use uh their Bedrock is much more generic so I'm excited to see other roller projects also going in the direction of also building modules or software and so just to like dive deeper uh in into that state growth stuff we were just talking about right so what what specifically does fuel doing differently that you know kind of shifts away from that uh the model of

like you know making really cheap call data and into kind of like solving that State issue so there's a few things it does one of them which is going to be very very stupid and obvious is well just don't make holiday expensive I just I just just make call data cheap and more importantly make state rights expensive I did give a talk about this at the ethereum Community Conference uh last year I guess last year because we're in January right now so last year uh and uh I kind of compared the gas schedule uh like the way different instructions and different operations and blockchains are placed I compare that to effectively regulation by the protocol itself in how

it is used and you can actually incentivize and like push people towards using the blockchain in certain ways through this gas schedule so the simplest thing you're going to do is if you want to mitigate steak growth make growing the state more expensive potentially even more expensive than it would be like to physically grow the state make it even more expensive than that so that greatly discourage people from doing that uh at fuel we also have a number of uh given the fact that we can design a virtual machine from scratch and we don't have to be we don't require evm equivalence but rather we can say let's take the evm and let's improve on it uh so it's not exactly from scratch it's

more like a VM based on the evm but with various improvements but it allows us to make these improvements because we're not tied with backwards compatibility and some of the improvements we can make uh are there were various proposals throughout the years and when I was at consensus doing scalability research I was kind of involved in something either directly or tangentially in some of these proposals around stateless ethereum uh you may remember from back in the day it was called the ethereum one point x initiative or was it ethereum One X I forget exactly how they evented it was one point next something uh that was uh trying to make the evm state of us so that full nodes didn't have to store those they they could store like a subset of the state or

potentially even just a state route and we provided witnesses to the state as as part of transactions now that didn't go anywhere because the evm has a bunch of things that make it not work with statelessness but with the fuel VM we designed it such that it would be very conducive to make it stateless because we knew all the constraints and all the issues that say this ethereum kind of ran into and couldn't overcome without major breaking changes to the protocol just for statelessness but you know we don't we don't have backwards compatibility baggage so we say okay let's design the protocol from scratch so it's a it's very easy to make a stateless in the future if we need to so there's various things like that that you know you can have a gas schedule and

you can also have a protocol that's conducive to statelessness which is kind of the ultimate solution to State growth make it so that you just don't store State at all and then yourself the state growth is solved if you can't tell we love data here block reach research and chain analysis the leading blockchain analytics company shares this passion with us we use data to extract Alpha and find the next thing coming in D5 but chain houses is doing the gritty work and building trust in blockchains to onboard the next trillion dollars of capital into the industry we need to grow safe consumer access to cryptocurrency and promote more Financial Freedom with less risk chain analysis has some of the most comprehensive and reliable data in the space and they use this data to power a full Suite of their solutions that can be utilized by industry professionals

Best in Class training and certifications are also led by Chain analysis and some of the brightest Minds in the space if you haven't heard of chain analysis you got to check them out and we'll link to them in the show notes do you mind diving in I guess we'll start with utxo and how that differs from ethereum's account based you know model sure I can talk about utxos how it differs from ethereum and also how it differs from cardano uh because that's another blockchain that you know performs ugxos while also allowing smart contracts and stuff uh and I can also maybe explain how how this is related to bitcoin as well uh so uh ethereum uses accounts for representing user balances and contracts and just

state in general so as an account an account is well there's there could be contract code if there's code but if not it could be like just an eoa an externally owned account which means that uh it's like a private key it's a private public private key pair right which is like just an address uh so it could either be you know an eoa or a contract and then it has some ether balance and it also has a nonce and the only reason you read nonsense is to prevent replay attacks uh it's essentially a way of uniquifying actions that the account takes right so if it's an eoa uh you want to sign over you know you know if the eoa analysis you know you're going to sign

over a transaction says Alice sends five ether to Bob with a unique nonce because if you didn't sign over unique nonce then Bob could just take the signature and replay it and get another five ether and another fight ether right so you need some way of uniquifying this action of sending a five ether uh utxl is work a bit different in the sense that a utxo transaction doesn't well there's a utxo data model doesn't have like these Notions of accounts with amounts right rather every single thing that is sent is its own unique State element so if you have five ether and you send some to Alice and some to Bob you're not incrementing Alice's balanced by let's

say two and Bob's balance by three rather you're giving Alice a two ether coin and Bob a three ether coin and these coins act independently of the other coins they have uh so every single thing is its own independent state element and just by Construction it means you don't need a nonce because every element has a unique ID uh starting from the Genesis of the channel effectively you just kind of have a chain of hashes right and as long as you start from something unique which obviously you do because there's a blockchain done every you know every hash in the chain you know the hash uh just buy the properties of cryptographic hash functions right the hash of something if you just keep hashing a hashing and hashing you should never get

a collision because if you do well then the hash function is not Collision resistant right so I'll just so that's basically how utex or your utxos work is that you just keep hashing the previous things and this the giant like hash onion obviously you can mix some stuff in and so on Burger spy construction that means you don't need a knots which is pretty nice because it means that you can actually fully consume state so like if Alice takes her to Ether coin and sends some to Bob and Charlie she no longer has a coin and the notion that that coin ever existed does not need to be kept track of I heard of Alice completely empties her account on ethereum you still need to keep track of the knots because you don't want to then have someone you know

replay her earlier transactions after she reloads her balance uh so you in the in the accounts data model you kind of always need to keep track of the nons and utxos you don't which is nice but that's maybe a bit minor right it's not like the most big thing oh okay we keep track of a nonsense big deal right the really important thing with utxos is that they enable you very easily to do parallel transaction execution because you can just look at two transactions and you can say if they touch utxos or if they touch state that is completely disjoint then they can be executed in parallel right there's no dependence between the transactions therefore you don't need a total ordering they don't need to be executed one after the other you can actually get them at the same time because there's a

partial order right right and this is a very powerful because modern computers haven't really gotten much faster in single threaded performance but they have like a shitload more cores than they did 10 years ago right so they have way more multi-threader performance not so much single threaded performance let's leverage those extra cores that are literally just sitting there like if on an ethereum full now just you know running one full One Core at Full Throttle which is like fine but then the other like you know if you have a 16 core processor the other 15 cores are just sitting there doing nothing that could be validating transactions all right we would like to unlock that uh so utxo has happened to be just baked into the transactions themselves you have to say I'm touching these utxos and

if you know which utxos the transactions touch it's trivial to parallelize execution of transactions and that's there's a few other reasons to use utxos but the main that's one of the main benefits that we effectively get for free and this is different than basically any other any other roll up is that we get parallel transaction execution for free so now I should probably talk about how smart contracts work and how those are different than Bitcoin up or down because it went over kind of the performance benefits that differentiated from ethereum now in terms of smart contracts how is it different than Bitcoin and cardano so Bitcoin has smart contracts uh you know it's a common it's probably it's it's like a common sign that doesn't have a smart contracts it does but its contracts are stateless so

Bitcoin smart contracts do not have access to some state that that can be updated over a period of multiple transactions so for instance a Bitcoin transaction could say could be multi-sec so another not a Bitcoin transaction but rather if I want to be technical the spending condition of the utxo in a transaction could be like a multi-stick right so it could be something completely stateless like two of three signatures from these three public keys right that's stateless you don't need access you don't need anything that crosses multiple transactions right it's just like a multi-sick completely stateless right as long as you can provide two of three signatures from the the set of three public Keys then you know it's

meant to spend the utxl you're all good something like Unison however uniswap is relies on States right it doesn't LP pool and the X and Y the amount of each token actually gets updated after each transaction right and like a subsequent transaction needs to know the effects of a previous transaction in order to actually calculate the price of an asset that's stateful because it relies on some things some state that actually gets updated over multiple transactions uh and that's kind of the main differentiator between how smart contracts on bitcoin and ethereum work now we would like to have stateful transactions like ethereum but we'd like them to also be able to be executed in parallel

and Leverage The Power of utxos right so how does cardano do this the way cardano does it is they effectively have they have a hybrid system and we also do where accounts are sorry where contracts are effectively accounts right and if two transactions touch the same contract right then similar to ethereum those two transactions must be executed one after the other subsequentially and this is reasonable what's unreasonable what's unreasonable about cardano though is that they their system is that users will sign over the effects of a transaction

in their entirety and this is how the this is what you do in Bitcoin right you sign over the whole transaction and its effects and the reason you can do this as a user very easily is because all the utxos are status right all the spending conditions are stateless so it doesn't matter what anyone else does the effects of a transaction in Bitcoin will not change the transaction could be it could become invalid if someone double spends one of the utxos that are being spent by that transaction but the other than that the effects of the transaction will always be the same in Bitcoin from the time that you sign up to the end of the universe the death of the universe they'll be the same because transactions are status right there's spending conditions rather stateless in Bitcoin and cardano they're not and in ethereum

they're not right if I make a trade on uniswap the amount I get okay the um that's maybe a bad example because technically the amount I get thanks to Mev Bots will always be like the the lowest the video sets right or rather the highest slippage and the worst price but okay like that aside right the the amount I get from the trade right depends on the actual amounts in the pool and that depends on other transactions so if I assign a transaction I say hey this is the exact result I'm going to get from this trade imagine you you do that on ethereum today right you say you know you set the slippers to zero what's going to happen to your transaction it's going to revert

right like 100 guaranteed like it's not like you know 99 is 100 guaranteed your sign your transaction right you said slippage to literally the zero it's gonna revert right uh because someone else did you know they they moved they did a trade before you right the chance that you get in first exactly as soon as you sign it's almost zero right someone else gets another transaction then they move the price a little bit your slip Edge is non-zero right and then your trans your transaction over it and that's basically what happens in cardano except instead of reverting they actually make your whole transaction invalid because in the in their utxo is you have to sign over the effects and if those effects are not actually what happens then the transaction is invalid which basically means you had a system

where users would try to make a swap they would sign a transaction they would send it and they would get back hey the transaction is invalid if you want to try again sign a new transaction that have to go in their Hardware wallet and sign a new transaction and try again then of course you know if there's 10 people using the decks they're going to get back again an error saying hey someone else got in front of you assign the transaction again and there's obviously completely horrific right like there's no way this system will work at any scale whatsoever let alone 10 people you know then now imagine you're scaled up to a thousand people right all trying to make a usdc I guess Ada in that case if if it's on Cardinal Swap all right there's just no there's there's no way this system is

tenable right it's tenable in ethereum because on ethereum you don't sign over the effects you only sign over this is the action I want to take let the effects be what they be right and we as fuel or rather the fuel protocol takes that approach where users do not sign over the effects they sign over the actions and there's actually nothing stopping you from doing this in the utxo model like people don't think that you can do this but it's like you totally can we're all consenting adults and there's nothing stopping you from having a protocol where you just sign over that action but not its effects and let the effects be decided later and that's it like there's no there's no like special secret magic audit Maps literally just we we take utxos users

sign over the actions and away they go uh so this enables the basically The Best of Both Worlds you get the flexibility and ease of use of ethereum another user uses a fuel decks like they would an ethereum decks and they don't you like our utxo system has a bunch of other flexible stuff it is account abstraction it has uh transaction script so there's a bunch of fancy stuff but if you don't use any of that if you use fuel like you use ethereum it is an identical experience to ethereum you just interact with index you sign a transaction once you send it off and it just goes right that's I'm assuming like you know someone doesn't try to like sell market sell you know a million ether then you know you're fine your transaction will just get through right uh and this is different than

systems like cardano and especially well especially Bitcoin because Bitcoin can't even support stateable smart contracts period right uh and so it combines the best for Best of Both Worlds you get the parallel transaction execution and performance from utxos while simultaneously getting the flexibility and ease of use of ethereum so one thing we commonly hear in this space right is there's trade-offs with everything um and and this system almost sounds like there there isn't trade-offs right you're picking like uh the best pieces of both models and kind of combining in into the in those into that this current model and so when I hear that it's like it first of all it's incredibly exciting but but you know do you have any uh in these first two uh beta test sets were there anything that came up they're like okay here you know maybe this portion is

the trade-off that we're gonna have to make for users I mean there have been I mean let's let me see if I can think of a good analogy uh that actually let me think about if I can think of a good analogy that actually has not trade-offs uh I mean it could it could be as simple as you know let's say we have a faster implementation of some cryptography thing right just as secure right like if you have that then there's no downside to just using it right uh like there can be cases where you can have a thing that is strictly better like it's just faster and also just as secure even more secure right uh and the reason for this is that the thing

that you're is the current status quo could just be not great right if it's not great then it's pretty easy to strictly improve it obviously if you're already pushing the bounds of like optimality then it might be hard to find something that is strictly better but like if you're starting if your base is not great it's pretty easy to find something that is a strict Improvement uh and that's basically what we have today is that the evm when it started was very rough it did a whole bunch of Patchwork changes over the years uh that you know were necessary in some ways because of the backwards compatibility baggage requirement because there were contracts live in ethereum and the ethereum community and developers didn't want to

break those contracts right that's kind of like the the social look at the they're like the community like I don't say law but you know the the understanding that it does not break the contracts as much as possible there's a few of that broke but okay as much as possible let's not pick these contracts that's our social contract that's what the word I was looking for social contract uh so there's kind of a requirement on on the evm so this isn't really like the fault of anyone it's more like you know it started very rough because no one knew how to do and how to design a blockchain a VM that was stateful and all the stuff they had a bunch of Patchwork changes and now it's in a state where there's a bunch of things about it that are just sub-optimal and We Know Better from

working on ethereum and the evm itself this isn't like you know some just some random person just shows up out of nowhere right it was never touched blockchain before there's like you know we've been we've made you know many changes to ethereum and we've also made many proposals and not be not like me personally but you know the ethereum community and Developers have made proposals to improve ethereum but they couldn't go in for the one reason that it would break backwards compatibility right and it'll break some contracts you know when you're starting a new chain and then you roll up from scratch you don't have state right your state starts from you have an empty State I change Genesis so you can do whatever you want right and then you can make changes that are strictly better but that are not backwards compatible which I think maybe is the

part where you can say it's maybe not strictly better in the sense that some tools some language features some other stuff may not work out of the box within your system because the new system says okay we're going to make some changes that are explicitly not backwards compatible not backwards compatible they're breaking so your tools won't work and that's kind of where the con is but this importantly is not a protocol thing right it's purely uh well if the tools don't work can you make the tools work all right or can you make better tools but it's not like a fundamental protocol thing like this is like purely just engineering work make either maybe make

the tools work or develop new tools but it's not like a fundamental protocol thing that you know the fundamental trade-off that'll never be fixed it's purely just engineering work so in that sense it's a very good trade-off to make because engineering work can be solved by just working yeah we can definitely dive into that and I also know you guys have spent a lot of time on you know the fuel tool chain itself and like taking the focus of okay well if this is the trade-off then you know let's invest in that and make it um what we believe it can be so can you talk a little too uh not only a backwards compatibility features but but also the work that's gone into the fuel tool chain yeah so perfect perfect not just to the next question which is okay if we can either you know make the existing tools

work which is possible there's no fundamental reason that thing is like solidity and Foundry and hard hat couldn't work with the fuel protocol like fundamentally there's nothing really stopping that but could we do better could we actually build better tooling that works for the fuel protocol on the fuel virtual machine but potentially also for ethereum and the answer to that is yes and that comes in two facets one of them is a new language called sway the other one is sorry a new tool chain centered around Fork the fuel orchestrator but that really has some other extensions so I'll start by discussing the language and why it's

not just a good thing to have but why I think it's needed right uh so surely most of your listeners are familiar with solidity if they haven't written that they've surely heard of it right it's uh it's basically the only language that people can use to write smart contracts for ethereum and ethereum virtual machine Viper I guess is an up-and-coming well it's not up and coming it's actually quite old but you know it's kind of gaining gaining features and stuff without on relatively recently so sure up and coming it's an up-and-coming language as well that a few projects use but by and large the most used Language by like a wide margin is solidity and solidity is not great and I don't

say this just because I like you know have like a personal Vendetta against the language or its authors but rather I've written like a decent amount of solidity and other people on the team have written like a pretty decent amount of solidity uh and it's not a great language and not just because it doesn't look right but because it has a bunch of things in it that aren't safe and that aren't well designed so let me start by describing some things that are unsafe and tell you why if we had any why okay well I'll start by saying here are some things that are unsafe and then you know sway fixes them so he fixes this so one thing that would be unsafe is uh there is a mechanism in the ethereum virtual

machine to get the signer from a signature and the message that they've signed right you can get what is the address that signed this this seems like a pretty reasonable operation right uh you know passing a signature passing here's the message they signed and then you get back an address fantastic but here's the problem the problem is that what happens if for whatever reason because of the cryptography and stuff that you can't actually get the signer of the the what happens you can't get the sign there and this could be there's some like weird cryptography Corner cases but it could also just be that the signature in the message no just don't match up right they're just like gave you just

random garbage I used like someone just feeds some amount of garbage right what other solidity do solidity returns with no indication that there's an error it just Returns the address zero so like 20 bytes worth of zeros and that's all this returns that now here's the thing unless you go in yourself as a developer and read the documentation that hey there's a corner case here there's a case that if the signature is invalid that you're going to get back address zero and you have to check for that then it could be the case that you know if you don't check for that then someone basically anyone in the world could impersonate address zero now imagine if

you use address zero for holding like a bunch of coins that you burned and anyone can impersonate the address Zero by just sending an invalid signature do you see how that would be terrible because then they can just withdraw all the coins of address 0 anywhere in the world can do this by just sending any they just make generate you know some random 65 bytes and now they're still there's still a bunch of coins that were supposed to be burned right but there's nothing in solidity itself that encourage you encourages you or forces you to actually check that case now what does what do modern languages do such as rust and sway is a rust-based language so it takes a lot of inspiration from rust but adds a bunch of blockchain specific features and specifically for the fuel

VM and also the ethereum virtual machine because those two are very similar as first class citizen In First Class citizens in the language which also means that you can have native support from the sway compiler for those features and we'll get to in a second examples of why that you can do something in the sway compiler that you can't do in the rust with a rust program using using the rush compiler so uh where was I going with this so uh in Rust you have a uh you have let's say you have this notion of a result and the result can be one of two things

so results can either be okay or it can be an error right uh and the the the the the the function in sway because sway also has this the function in sway that allows you to recover the signer address does not return an address it returns a result of an address so what that means is if the operation completed successfully and returns an okay result it will contain the address right the address of the signer but if the operation was not successful because the signature was invalid it will it will return an error result

right so it effectively wraps the address and a result and then I'll tell you is this okay or is it an error right so it's additional information and the important part is to get the address you can't just use the address right away you actually have to unwrap it right you have to unwrap it and go into the okay or the error and this is enforced by the type system of the language and the compiler enforces this so you cannot write a sway program that does not try to either unwrap the result or that checks both arms so it has like there's also the track okay is it is it okay or is it an error and you can't write the sway program

that just directly uses the address without doing one of those things while in solidity you can write a solidity program that just directly uses the address and there have been many cases of developers forgetting them to check for address zero so this is something where fundamentally at the language level people can't even deploy such a contracts the compiler will not compile the contract that does not like unwrap the result because it's not valid it's not valid sway right and it wouldn't be valid rust either because it's based on Rust all right so this is an example where the language itself stops you from shooting yourself in the foot you don't have to read any docs you don't have to do anything else you just run you just write sway code and there's no possible way for you to get it wrong and modern languages are built like this

they stop you from shooting yourself in the foot and if you try to shoot yourself in the foot then they stop you from doing it and they give you big warnings or big errors that describe exactly what you're doing wrong right and it should be like a no-brainer to anyone that the best way to stop people from losing a bunch of money is well make sure that developers can't write bad contracts right don't trust the developers to be like 10x coders that can you know just write inline assembly and write a whole contract and assembly and not back any bugs that's crazy that doesn't scale all right that's very unsafe makes a compiler do a bunch of work to make sure that contracts are safe and this is why if you go to the sway repo I'm going to go right here to make

sure I don't get the quote wrong if you go to this way repel this is different than many other blockchains or many other tools and stuff a lot of tools say oh I'm so fast I'm so performant right I'm all that stuff uh if you go to the sway repo the code that it says is empowering everyone to build reliable and efficient smart contracts not fast it's not that the compiler is fast it's not that the contractor right are going to be fast they're going to be reliable and efficient so they're not going to be wasteful and most importantly they're going to be reliable safety is important thing because it doesn't matter how fast your blockchain is if people can't right save some more contracts for it people lose money so what's on what's another example where Sway and one of the reasons we

don't go for rust what's another example of Sway and the compiler providing you additional security guarantees that solidity solidity does not uh there's two of them one of them is payability the other one is re-entrancy let's cover payability first because it's a less exciting one I'll say the most exciting one for last very interesting so payability so what is payability uh it's a keyword that was introduced a few solidity versions back and the developers of the solidity language like the compiler developers had the misguided notion that hey we want people to stop losing ether we don't give a talk about tokens just either right we want people to not lose their ether so what we're going to do is we're going to introduce a new keyword payable if someone says an ABI method is payable

then it can receive ether fantastic but if a method is not payable in other words if they don't include they don't type in location type of list I I actually type with my fingers but okay normal person types of this okay so payable so they don't type payable right which is like I don't know seven characters or something yeah so seven characters so they don't type those seven characters plus the space so eight characters in total until the API method the compiler will actually inject into the runtime byte code that is a you have to deploy it so it costs you to deploy A and B every single user that runs your contract runs that API method needs to execute that code that's a shitload of gas being wasted all the ethereum phone

loads in the world have them execute these checks and they check hey are you trying to send ether to this function if you are then I revert right and this is not good uh it's not good because it increases both the contract bytecode size which is a big problem in ethereum specifically because contract sizes on ethereum are limited in fuel we don't have an unlimited contract size but we have a much larger contract size uh technically up to 64 megabytes modulo some overhead and stuff as opposed to the 24 kilobytes of ethereum so you get a much larger contract so ethereum contract size is a problem because if you have to split up your contract into multiple smaller contracts you can incur much larger overheads by having to call

between contracts instead of just having to do a simple jump within the same contract so it's very bad that Bitcoin size increases with payability because it's very easy to hit the 24 kilobyte limit if the element wasn't there then maybe this wasn't it wouldn't the byte code size wouldn't be so bad but because of that it's a very big problem the bigger problem of course is the runtime cost it means every single user that interacts with their contract not just directly but also indirectly through other contracts has the pay of this cost right and it's ridiculous and what have Optimizer is done they have started well it's ad payable to everything that payable to everything then the compiler isn't generating that runtime code and therefore my contracts are cheaper instead of relying on this code to save users from shooting

themselves in the foot well just let the wallet do it right the wallet should just not let you send ether to like to a just to some particular uh endpoints right that'll all do it or Let The Upfront undo it right just the line the front-end developers right like if you're on the same team just just run in front of developers to not to not lose user funds right that's where the work should be it should not be every single ethereum full node verifying that you know the wallet didn't do its job just wallet do your job right uh and again this only applies to Ether not even tokens uh fuel does support multiple native assets so payability analysis also applies to tokens and fuel not just ether

now the Chariot the icing on the cake or the cherry and the icing whatever you want to call it is that the solidity developer is actually tied a runtime check sorry a runtime like code generation thing with a compile time check these little developers also have in their compiler check that if you try to call a payable function and forward either a compile time or so if you try to call a non-payable function and you try to forward it ether it'll tell you hey you can't do that at compile time and this is a good check because it's free it happens at compile time right users don't have to deploy any code that's a pretty good check right it prevents you from accidentally calling a non-payable function well then sending it ether

but therein lies the problem the problem is that they've tied together this analysis with a payable keyword and they all bundled it together and because optimizers have started putting payable everywhere to uh to avoid like the but the byte code being generated it means that this analysis never actually runs because people just put payable everywhere and of course you can send a payable method ether right so this is an example of a short-sighted feature that just a should never have been introduced without actual product like research and like user and developer research and B they're actually suggestions now to just straight up just remove this because it's useless it's worse than useless it's just as robustity and that's people put a payable everywhere else useless

right with sway we have the payability the compile time payability analysis I mentioned but it happens entirely compile time no runtime and not only that this is supported not just in the language but also supported higher up in the stack such as the SDK and such as the wallet so it's not just something that happens in isolation because uh fuel Labs we developed the entire stack integrated it means that we can have things like the compiler developers talk to the front-end developers and the SDK developers they all talk to each other and they develop features that the whole snap can use and actually does use which is different than the ethereum ecosystem so now want to be entrancy which is the most exciting part which is that every week I go on Twitter every week

re-entrancy what devs do something right there's a new reentracy exploit someone has lost money because of the same thing that the Dow got hacked by people have not learned and be very easy for a custom for a compiler that is configurable because it's like a compiler for a language that you control completely so just solidity or such a sway to check hey are you violating the track effects interaction pattern if you are then you could be vulnerable to the agency right this is like the check effects interaction pattern has been known for years right it should be easy to check and yet Auditors aren't catching it exhaustively right and you could say oh just use Slither just use some like verification tool but you know why are people having re-entrancy issues even to this day because people don't

use slither right uni swap the unicewap router from the unisot lab stand not like somebody or third rate foreign foreign developer that couldn't speak English right the Unison lab stand they had a reinsurancy vulnerability all right the notion of oh just use this such and such third-party tool that's hard to configure et cetera et cetera not well supported not well documented just use a third-party tool is baloney no one does it and that's why the universe that's why the universal router just a few weeks ago was vulnerable was found to be vulnerable to re-entracy because these kind of things need to be built in to the tools by default that you cannot write I don't want to say solitude but you can't you can't like if you can write your smart contract without running

these tools then the tool is useless and that's why reaction is checking is built into this welcome highlighter you cannot write a sway program without this being tracked it is first class like analysis uh as opposed to requiring a third-party tool that may go out of may not go out of support you know may not be supported with the latest release of the language or standard Etc and that you may not even run or may not even know about with sway the analysis is done and it must be done if you want it right Square uh and this way compiler will actually check hey are you violating a track effects or interaction if you are if you're interested you'll warn you potentially could error this is like there's a bit of debate between if it should be a warning or an error because

reentrancy is such a big such a big thing but regardless it will actually analyze and cache this and you couldn't do this if we were using the bus compiler because the bus compiler doesn't know what checkifax interaction is right if all you're doing is just using like the rest if you sorry all you're doing is using the rest language right okay sure you can write an SDK for your rust language and if you use it idiomatically in other words if you don't violate check effects interaction yourself then okay now vulnerable is re-entrancy I mean that is technologically true but it's also useless right because then the compiler isn't doing any work uh and that's what distinguishes this way from Russia and that's why sway is the Premier and safest smart contract language because it takes all of our learnings around how around the specific vulnerabilities of

blockchain programs and blockchain contracts and I can add all the security checks into the compiler so again it's not about oh it's not blazingly fast compiler right the compiler is pretty fast right but our goal is not to write the fastest compiler our goal is to enable reliable and efficient smart contracts and to empower developers to be able to write those well that was a lot I'm definitely going to have to go back through and re-listen to this episode but I do have a question I've got to ask you as someone who comes from the ethereum community first and that's pioneering kind of the modular movement um you know ethereum's core value proposition is like kind of the decentralization ethos so I'm just I hear you talk about trust minimize like clients the ability for users to run full nodes if there are da layers and

you know modular execution layers that can truly decentralize like how do you think ethereum fits in into kind of the modular future yeah so I don't really Envision ethereum going out of style in terms of its settlement layer capabilities uh you know it is still the premier settlement layer for smart digital assets if you want to call it that uh you know it's a programmable digital assets uh there's not really any second best there because Bitcoin doesn't provide you with another programmability uh and there's no reason that ethereum can't Remain the settlement layer for the foreseeable future in terms of data layers I mean ethereum is working uh relentlessly towards improving itself and adding improved data layer capabilities both natively

through things like tank sharding and proto-dank sharding along with uh through the help of third-party uh third-party you know synergistic systems such as eigenlayer Celestia that can either Bridge or you know restaking or what have you to improve this data availability capacity all retaining certain properties of ethereum so it's definitely going to be the Center focus for the foreseeable future for you know not any blockchain that wants to connect to anything reasonable interesting now I just have one more question as it relates to fuel because you've already been so generous with your time but where does the value capture come into play I imagine Mev is going to be pretty prominent in this uh in this architecture but correct me if

I'm wrong yeah so since it is a smart contract platform instead of just a like payments platform then yes there will inevitably be mov and that Mev will be capturable in the form of transaction fees for the block producers or block producers if there's a decentralized block production interesting all right well great um do you want to share with people where they can find you and learn more about fuel yeah so if you want to follow me directly I'm on Twitter at J Adler 0. if you want to follow fewer labs and the work that we're doing you can follow us at fuel Labs underscore uh so Twitter is probably the best place to reach out for either news updates and something like that

uh and yeah we'll also be at East Denver I'll be making a pretty big splash there uh Hinton Alpha League so be sure to check us out there as well great thanks so much John we'll catch you later thank you so much for having me