Hacker News

planckforth: Forth vertėjo paleidimas iš ranka parašyto mažo ELF dvejetainio failo

\u003ch2\u003eplanckforth: Forth vertėjo paleidimas iš ranka parašyto mažo ELF dvejetainio failo\u003c/h2\u003e \u003cp\u003eŠi atvirojo kodo „GitHub“ saugykla yra reikšmingas indėlis į kūrėjų ekosistemą. Projektas demonstruoja modernią kūrimo praktiką ir bendradarbiavimo kodavimą...

4 min read Via github.com

Mewayz Team

Editorial Team

Hacker News
\u003ch2\u003eplanckforth: Forth vertėjo paleidimas iš ranka parašyto mažo ELF dvejetainio failo\u003c/h2\u003e \u003cp\u003eŠi atvirojo kodo „GitHub“ saugykla yra reikšmingas indėlis į kūrėjų ekosistemą. Projektas demonstruoja modernią kūrimo praktiką ir bendradarbiavimo kodavimą.\u003c/p\u003e \u003ch3\u003eTechninės savybės\u003c/h3\u003e \u003cp\u003eTikėtina, kad saugykloje yra:\u003c/p\u003e \u003cul\u003e \u003cli\u003eŠvarus, gerai dokumentuotas kodas\u003c/li\u003e \u003cli\u003eIšsami README su naudojimo pavyzdžiais\u003c/li\u003e \u003cli\u003eProblemų stebėjimo ir indėlio gairės\u003c/li\u003e \u003cli\u003eReguliarūs atnaujinimai ir priežiūra\u003c/li\u003e \u003c/ul\u003e \u003ch3\u003eCommunity Impact\u003c/h3\u003e \u003cp\u003eAtvirojo kodo projektai, tokie kaip šis, skatina dalijimąsi žiniomis ir paspartina technines naujoves naudojant prieinamą kodą ir plėtojant bendradarbiaujant.\u003c/p\u003e

Dažniausiai užduodami klausimai

Kas yra plankfortas ir kodėl jis vertas dėmesio?

Planckforth yra projektas, kuris paleidžia visiškai funkcionalų Forth interpretatorių, pradedant nuo ranka parašyto minimalaus ELF dvejetainio failo. Užuot pasikliavę surinkėju ar kompiliatoriumi, visa sistema yra sukurta iš neapdorotų baitų, todėl tai yra ypatinga žemo lygio sistemų programavimo pratimas. Tai parodo, kaip visa programavimo aplinka gali atsirasti beveik iš nieko – tik mažytės dvejetainės dalys ir laipsniškas savęs apibrėžimas.

Kaip planckforth paleidžiama iš mažyčio dvejetainio failo?

Procesas prasideda rankomis sukurtu ELF vykdomuoju failu, kuriame yra tik pačios primityviausios operacijos – simbolio skaitymas, simbolio rašymas ir nedidelė vykdymo kilpa. Iš šių minimalių primityvų sistema apibrėžia naujus žodžius (funkcijas) Forth kalboje, kiekvienas remdamasis paskutiniu. Sluoksnis po sluoksnio jis konstruoja aritmetiką, atminties operacijas, valdymo srautą ir galiausiai visą Forth interpretatorių be išorinių įrankių.

Kam būtų naudinga studijuoti šį projektą?

Kūrėjai, besidomintys kompiliatoriais, interpretatoriais, operacinės sistemos vidiniais elementais arba ELF dvejetainiu formatu, planckforth bus neįkainojami. Tai taip pat puikus šaltinis visiems, kurie domisi Forth arba įkrovos metodais. Jei tyrinėjate tokius kuruojamus kūrėjo įrankius ir atvirojo kodo projektus, kaip šis, „Mewayz“ siūlo prieigą prie 207 modulių, apimančių kūrimo darbo eigą ir technines temas, vos už 19 USD per mėnesį.

Ką galiu sužinoti apie Forth iš šios saugyklos?

Planckforth moko Forthą nuo pat pradžių – tiesiogine prasme. Suprasite, kaip dėklo kalba veikia mašinos lygiu, kaip apibrėžiami ir sudaromi žodžiai ir kaip viduje veikia vertėjo ciklas. Jame pašalinama visa abstrakcija, parodyta neapdorota mechanika už tokių sąvokų kaip žodynas, duomenų krūva ir tiesioginiai žodžiai. „Mewayz“ moduliai gali papildyti šį mokymąsi papildomais kūrėjo ištekliais.

Sukurkite savo verslo OS šiandien

Nuo laisvai samdomų darbuotojų iki agentūrų – „Mewayz“ valdo 138 000 ir daugiau įmonių su 207 integruotais moduliais. Pradėkite nemokamai, atnaujinkite, kai augsite.

Sukurti nemokamą paskyrą →

Try Mewayz Free

All-in-one platform for CRM, invoicing, projects, HR & more. No credit card required.

Start managing your business smarter today

Join 30,000+ businesses. Free forever plan · No credit card required.

Ready to put this into practice?

Join 30,000+ businesses using Mewayz. Free forever plan — no credit card required.

Start Free Trial →

Ready to take action?

Start your free Mewayz trial today

All-in-one business platform. No credit card required.

Start Free →

14-day free trial · No credit card · Cancel anytime