Propriul tău limbaj de programare în 3 minute: 7 linii de cod și fără vrăjitorie
Destul să înveți limbajele altora — scrie-l pe al tău în 7 linii și 3 minute, chiar dacă nu ești Larry Wall.

Ții minte senzația când un nou limbaj promite să-ți rezolve toate problemele, dar de fapt doar muți bug-uri dintr-o sintaxă în alta? Matt Might (același care explica lucruri complexe cât se poate de simplu) a arătat în 2010 cum să implementezi un limbaj de programare complet în doar 7 linii de cod și 3 minute. Spoiler: nu e clickbait, ci magie pură în stil SICP.
Articolul e un must-read pentru cei sătui de soluții „overengineered” și care vor să înțeleagă cum funcționează interpretoarele pe dinăuntru. Autorul ia un set minim: calcul lambda, câteva reguli și le transformă într-un limbaj funcțional. Fără parsere, generatoare de cod sau mii de linii de boilerplate — doar esența.
Desigur, într-un astfel de limbaj nu vei scrie un serviciu de producție (decât poate pentru generat concedii medicale în 1C). Dar e o modalitate ideală să înțelegi cum funcționează closure-urile, recursivitatea și evaluarea leneșă. Mai ales când la code review explici unui junior de ce funcția lui returnează undefined — exact atunci îți prinde bine să știi ce e sub capotă.
Comentariul echipei METABYTE: Noi, desigur, nu recomandăm să scrieți producție într-un limbaj din 7 linii — decât dacă producția voastră încape în aceleași 7 linii. Dar înțelegerea modului de funcționare a interpretoarelor ajută enorm la dezvoltarea DSL-urilor și a instrumentelor personalizate de automatizare. Iar timpul economisit la debug mai târziu compensează cele 3 minute de citit acest articol.
URMATORUL PAS
Ti-a placut abordarea?
Aplicam aceleasi principii in proiectele clientilor: AI, automatizari, produse care nu se sting dupa lansare.