Med siste oppdatering, blekk! 3.0 programmeringsspråk oppnår paritet med rust

With Latest Update, ink! 3.0 Programming Language Achieves Parity With Rust

Annonse


 

 

Paritetsteknologier, selskapet bak Polkadot blockchain, har annonsert en nøkkeloppdatering til sitt rustbaserte blekk! Programmeringsspråk for å skrive smarte kontrakter.

Den nye oppdateringen, blekk! 3.0, er designet for å lage blekk! se ut og føles mye mer som Rust-programmeringsspråket det er basert på. Den kommer nå med alle de samme funksjonene som Rust-programmerere er kjent med, noe Parity sier vil være til stor hjelp når det kommer til å skrive, oppdatere og resonnere med komplekse smarte kontrakter. 

blekk! er det mest brukte programmeringsspråket av utviklere i Polkadot- og Substrate-økosystemene, da det er et av de beste for å skrive effektiv, høy ytelse Web Assembly (Wasm) smarte kontrakter, som er et alternativ til Ethereums soliditetsbaserte smarte kontrakter. Med blekk! kan utviklere skrive smarte kontrakter for blokkjeder ved å bruke Substrate-rammeverkets Contracts-pallett – en nøkkelbyggestein for Polkadot-kompatible blokkjeder. 

blekk! er basert på Rust fordi sistnevnte er et ekstremt effektivt programmeringsspråk som prioriterer korrekthet, forhindrer programvarefeil og har et omfattende fellesskap som inkluderer støtte fra firmaer som Amazon Web Services, Google og Microsoft. Så det betyr blekk! drar nytte av den nøyaktig samme korrekthetsgarantien Rust har, så vel som eventuelle forbedringer Rust-fellesskapet legger til gjennom sine konstante oppdateringer av det språket. 

I en blogginnlegg, Paritet sa blekket! 3.0-oppdateringen var et tidkrevende forsøk som innebar omskriving av alle hovedkomponentene, inkludert å endre syntaksen til bedre kartkode fra blekk! til den genererte Rust-koden. Det var verdt innsatsen skjønt. Med ink!s syntaks nå mer eller mindre identisk med Rust, får utviklere tilgang til nøyaktig samme verktøy, som rust-analyzer og Clippy, som er tilgjengelig på språket de er mest kjent med. 

Annonse


 

 

Nye funksjoner i blekk! 3.0

Det er langt fra det eneste som er endret i blekk!. Den nye versjonen gir den etterlengtede egenskapsstøtten som lar utviklere definere sine helt egne egenskapsdefinisjoner, og deretter implementere disse med blekk! smarte kontrakter. Med dette kan utviklere definere delte smarte kontraktsgrensesnitt til forskjellige implementeringer, sa Parity, som er spesielt nyttig for fellesskapsdefinerte smarte kontraktstandarder. 

Andre forbedringer i blekk! 3.0 inkluderer mindre kontraktsstørrelser, noe som fører til høyere ytelse og lavere gassavgifter, og tillegg av Delegate Calls, som gir smarte kontrakter en måte å videresende samtaler de mottar til en annen kontrakt. Dette vil gjøre det mulig for utviklere å implementere Proxy Upgrade Patterns for flere smarte kontrakter, blant annet, sa Parity. 

Den nye funksjonen for kjedeforlengelser gjør det i mellomtiden mulig for utviklere å ringe Substrate-paller direkte fra en smart kontrakt og få tilgang til det rike økosystemet av utviklerverktøy. 

Vent, det er mer! 

Samt blekk! 3.0, sa Parity at de har gjort noen forbedringer på Contracts-paletten som tar sikte på å øke parachain-ytelsen, sammen med nye funksjoner som lover bedre samtaler og ytelse på tvers av kontrakter. Med `cargo-contract` 1.0. sa Parity at utviklere vil finne det mye enklere å skrive mer kompleks logikk i sine smarte kontrakter. 

`cargo-contract` er et utviklerverktøy som kan brukes til å bygge, teste og distribuere ink!-baserte kontrakter. Den nye versjonen legger til tre kommandolinjegrensesnittkommandoer som gjør det enklere å samhandle med smarte kontrakter på kjeder – nemlig last opp, instansier og ring! Dette, sa Parity, gjør livet mye enklere ettersom det betyr at utviklere ikke lenger trenger å klikke gjennom et nettlesergrensesnitt for å samhandle med slike kontrakter, i stedet for å gjøre det direkte fra kommandolinjen. I fremtiden vil dette også muliggjøre skripting og integrasjoner i utviklingsmiljøer for kontinuerlig integrasjon, sa Parity. 

En annen ny funksjon for 'lastekontrakt' er dens evne til å automatisk sjekke kildekoden for programmatiske og stilistiske feil og gi varsler når vanlige feil blir funnet. Parity sa at målet med dette er å sakte bygge en samling av lining-regler for blekk! smarte kontrakter, veileder utviklere til å redusere gasskostnader, lage mindre smarte kontraktsfotavtrykk og korrigere API-bruksmønstre samtidig som sikkerhetssårbarheter identifiseres. 

Substrates Contracts-pall, som er utførelsesmiljøet for Wasm-baserte smarte kontrakter, får også en oppdatering. For eksempel har statens husleiemekanisme som brukes til å håndtere statlig oppblåsthet blitt erstattet av en funksjon for automatisk innkreving av depositum. Før dette var smarte kontrakter pålagt å alltid ha nok saldo til å betale for lagringen deres, ellers ville de bli deaktivert til noen kom for å gjenopplive den. Så å eliminere dette reduserer mye byrde for utviklere, sa Parity. 

Med automatisk innkreving av depositum betales lagringskostnadene av den som ringer til hver smartkontrakt i motsetning til selve kontrakten. Den som ringer betaler et depositum, så opprettes ny lagringsplass som et resultat av samtalen. Parity forklarte at denne mekanismen vil eliminere enhver mulighet for at smarte kontrakter blir inaktive. Likevel sa Parity at kontraktsforfattere fortsatt bør jobbe for å bruke så lite lagring som mulig ved å lage måter å fjerne lagring når det ikke lenger er nødvendig, for å holde lagringskostnadene nede. 

Kilde: https://zycrypto.com/with-latest-update-ink-3-0-programming-language-achieves-parity-with-rust/