Klong elää selaimessa – WebAssembly herättää klassiset ohjelmointikielet
Koodaaminen ilman asennuksia – selainpohjainen ohjelmointi mullistaa kokeilemisen
Muistatko viimeksi kun halusit kokeilla uutta ohjelmointikieltä? Ensin piti ladata tulkki, säätää ympäristöasetukset ja toivoa että kaikki toimii käyttöjärjestelmäsi kanssa. Tämä vaiva riittää usein siihen, että koko kokeilu unohtuu.
Entä jos voisit vain avata selaimen välilehden ja alkaa koodata?
Selain ohjelmistokeinuna
Tämä on nyt mahdollista Klongin ansiosta. Kyseessä on pieni array-kieli, jonka on luonut Nils M Holm. Joku on kääntänyt Holmin C-tulkin WebAssembly-muotoon ja pakannut sen selaimessa toimivaksi notebook-ympäristöksi. Ei asennuksia. Ei palvelinriippuvuuksia. Vain sinä, selaimesi ja tehokkaat array-operaatiot.
Notebook toimii kuin pienimuotoinen Jupyter: solut jakavat tulkin tilan, voit ajaa ne yksitellen tai yhdessä, ja työsi tallentuu paikallisesti. Voit myös viedä työsi .kg-tiedostoina ja jakaa niitä muiden kanssa.
Miksi array-kielet merkitsevät
Array-ohjelmointikielet kuten Klong, J ja APL ovat ansainneet kulttimaineensa. Ne mahdollistavat monimutkaisten operaatioiden kirjoittamisen hämmästyttävän tiiviisti. Katsotaan vaikka alkulukutarkistinta:
prime::{&/x!:\2+!_x^1%2}
prime(97)
Ei silmukoita. Ei indeksejä. Ei väliaikaisia muuttujia. Koko algoritmi mahtuu yhdelle riville ja toimii kokonaisilla taulukoilla kerralla.
Tämä ajattelutapa – operaatioiden näkeminen datarakenteiden muunnoksina yksittäisten askeleiden sijaan – voi perustavanlaatuisesti muuttaa tapaasi lähestyä ongelmia. Vaikka et koskaan kirjoittaisi tuotantokoodia array-kielellä, nämä henkiset mallit siirtyvät puhtaampaan ja ilmaisuvoimaisempaan koodiin arjessasi.
WebAssembly: suuri tasoittaja
Mielenkiintoisin tekninen tarina tässä on WebAssembly. C-kielisen kielen uudelleenkirjoittamisen JavaScriptiksi sijaan (valtava urakka kielelle jolla on oma tulkkinsa) kehittäjä käänsi olemassaolevan C-toteutuksen suoraan WASM-muotoon. Lopputulos: kevyt silta syöttää lähdekoodin tulkille, kun taas web worker hoitaa suorituksen ja estää runaway-ohjelmat jäädyttämästä selaimen.
Tämä malli yleistyy nopeasti. Vanhat C:llä tai C++:lla kirjoitetut järjestelmät voivat nyt tavoittaa selaimen ilman täydellistä uudelleenkirjoitusta. Se demokratisoi pääsyn tehokkaisiin työkaluihin, jotka muuten jäisivät työpöytäasennusten vangeiksi.
Kokeilun kynnyksen madaltaminen
Kehittäjille jotka ovat kiinnostuneita funktionaalisesta tai array-ohjelmoinnista, selainpohjaiset ympäristöt poistavat suurimman esteen: frictionin. Voit kokeilla lounastauolla, testata tutorialin esimerkkejä ja säilyttää hyödylliset tulokset ilman sitoutumista täyteen kehitysympäristöön.
Tämä saavutettavuus merkitsee. Paras tapa ymmärtää miksi ihmiset rakastavat näitä kieliä on kokea ne itse – ei lukea dokumentaatiota niistä.
Olitpa sitten startup joka tutkii uusia paradigmoja, kehittäjä joka on utelias erilaisista ohjelmointityyleistä, tai vain henkilö joka arvostaa elegantteja ratkaisuja, selainpohjaiset ohjelmointiympäristöt kuten tämä Klong-notebook edustavat sellaista kitkatonta kokeilua, joka auttaa kehittäjäyhteisöä kehittymään.
Joskus paras työkalu uuden oppimiseen on yksinkertaisesti se, jota on helpoin alkaa käyttämään.