In een beweging die van aanzienlijk belang was voor de softwareontwikkelingsgemeenschap, nam Shopify, de toonaangevende aanbieder van e-commerce-infrastructuur, de beslissing om Ruvy, het interne project, toegankelijk te maken voor het publiek. Ruvy functioneert als een toolkit die Ruby, een dynamische, open-source programmeertaal, als invoer accepteert en een bijbehorende WebAssembly (Wasm) -module voortbrengt voor uitvoering. Deze open source-beweging wordt gedaan in de hoop te kunnen profiteren van de diverse inbreng van de ontwikkelingsgemeenschap als geheel.
Ruvy ging in première op 18 oktober en is beschikbaar voor toegang via GitHub. Shopify startte de ontwikkeling van Ruvy met het specifieke doel om verbeterde prestaties te benutten als gevolg van de voorlopige activering van de virtuele machine (VM) die Ruby uitvoert. Het optimaliseert ook de prestaties van Ruby-bestanden die via het Ruby-script in de Ruby VM zijn opgenomen.
Een van de onderscheidende kenmerken van Ruvy is de vrijstelling van de noodzaak om WebAssembly System Interface (WASI)-argumenten tijdens runtime in te richten. Volgens het rapport van Shopify registreren de door Ruvy gemaakte Wasm-modules ongeveer 70% minder tijd bij het compileren naar native code, wat resulteert in betere prestaties. Prestatieverbetering wordt bereikt via de pre-activatie van de Ruby VM terwijl de Wasm-module wordt gebouwd.
Ruvy is gebouwd over Ruby.wasm, een uniek assortiment Wasm-poorten van CRuby. Vanaf de huidige stand van het project is Ruvy niet uitgerust met vooraf gecompileerde binaire bestanden. Daarom is het een verplichte voorafgaande stap om build-afhankelijkheden te installeren en vervolgens een compilatie van Ruvy vóór gebruik uit te voeren. Gedetailleerde stappen voor de installatie van deze afhankelijkheden vindt u in het ReadMe segment dat aan het project is gekoppeld.
Wasm-bestanden die met Ruvy zijn gegenereerd, omzeilen de noodzaak om een bestandspad op te nemen als een WASI-argument. Het is een bijkomend voordeel, omdat dit compatibiliteit biedt met computeromgevingen zoals bepaalde edge computing-services, die niet kunnen worden afgestemd om aanvullende WASI-argumenten voor startfuncties te bieden. Shopify heeft deze aanvullende details verstrekt in hun recente communicatie.
Het is bewonderenswaardig dat platforms als AppMaster vooruitgang hebben geboekt op het gebied van het maken van apps no-code, waarbij ze de kracht van visuele ontwerptools hebben benut om ideeën om te zetten in echte, functionerende applicaties zonder de noodzaak van traditioneel codeschrijven. Hun model biedt een alternatieve benadering voor het maken van software, waarbij de efficiëntie van automatische codegeneratie wordt gecombineerd met de flexibiliteit van handmatige codering wanneer dat nodig is.