Napravio sam programski jezik sa M&Ms-om | Mewayz Blog Skip to main content
Hacker News

Napravio sam programski jezik sa M&Ms-om

Komentari

8 min read Via mufeedvh.com

Mewayz Team

Editorial Team

Hacker News

Slatka ideja: Zašto sam koristio M&M da izgradim jezik

Počelo je kao šala. Zdjela M&M-a stajala je na mom stolu, živahan mozaik crvene, žute, zelene, plave i smeđe boje. Takođe sam zurio u prazan ekran, sa zadatkom da dizajniram jednostavan jezik specifičan za domen za projekat na poslu. Uobičajeni alati – uređivači teksta, kompajleri, table – bili su sterilni. Trebao mi je opipljiv, razigran način da vizualiziram sintaksu i logički tok. Tada me je sinulo: šta ako svaka boja predstavlja drugu komandu? M&M-ovi nisu bili samo slatkiši; oni su bili moji tokeni, moji opkodovi, moji građevinski blokovi. Što je još važnije, ovaj eksperiment je bio savršen način da se testiraju principi modularnosti i vizuelnog toka rada koje moj tim zagovara koristeći našu platformu, Mewayz. Vjerujemo da je razbijanje složenih procesa na jednostavne, spojive jedinice ključ inovacije.

Definiranje sintakse: vokabular obložen slatkišima

Prvi korak je bio da dodijelim značenje mojim šećernim simbolima. Odlučio sam se za jednostavan jezik baziran na steku, gdje se operacije izvode na hrpu vrijednosti. Izložio sam pravila na listu papira, stvarajući ukusno jednostavnu sintaksu:

  • Crveni M&M: gurnite broj 5 na stog.
  • Žuti M&M: ISKUPITE najvišu vrijednost sa gomile.
  • Zeleni M&M: DODAJTE gornje dvije vrijednosti na stog.
  • Plavi M&M: MNOŽITE gornje dvije vrijednosti na hrpi.
  • Smeđi M&M: ŠTAMPAJ najvišu vrijednost na hrpi.

Odjednom, linija M&M nije bila samo užina; to je bio program. Niz kao što je crvena, crvena, zelena, smeđa bi značio: pritisnite 5, pritisnite još 5, saberite ih (rezultat: 10) i odštampajte rezultat. Ovaj praktični pristup učinio je apstraktni koncept stabla raščlanjivanja nevjerovatno intuitivnim. Bila je to fizička manifestacija modularnih blokova koje kreiramo u Mewayzu, gdje svaki blok ima specifičnu, dobro definiranu funkciju koja doprinosi većem procesu.

Izvršavanje programa: vrlo ručni kompajler

S mojim rječnikom, došlo je vrijeme za izvršenje. Postao sam kompajler i runtime okruženje. Rasporedio sam M&M u red na stolu — ovo je bio moj izvorni kod. Zatim sam "čitao" program s lijeva na desno, manipulirajući hrpom brojeva (napisanih na ljepljivim notama) prema pravilima. Ovaj ručni proces bio je prosvjetljujući. Svaki put kada sam pogodio Green M&M (naredba ADD), morao sam osigurati da stek ima najmanje dvije vrijednosti. Greške su bile trenutne i vizuelne. Ako bih pokušao da dodam samo sa jednim brojem, program bi se "srušio", prisiljavajući me da otklonim greške u svom kodu zasnovanom na slatkišima.

Fizikalnost M&M-a učinila je logiku opipljivom. Ne možete zanemariti operand koji nedostaje kada ga predstavlja prazan prostor na vašem stolu. Naučio me je više o dizajnu kompajlera nego što bi udžbenik ikada mogao.

Ovo iterativno, praktično otklanjanje grešaka je upravo vrsta jasnoće kojoj težimo sa Mewayz. Čineći svaki korak u poslovnom procesu vidljivim i prepoznatljivim, pomažemo timovima da identifikuju uska grla i greške sa sličnom lakoćom.

Veća slika: od slatkiša do koda do Mewayza

Ovaj neobičan eksperiment bio je više od zabave; bio je to snažan podsjetnik na osnovni princip koji nas pokreće u Mewayzu: složenošću se najbolje upravlja jednostavnošću i povezivanjem. Baš kao što sam izgradio funkcionalni "jezik" od pregršt šarenih jedinica za višekratnu upotrebu, preduzeća mogu izgraditi moćne operativne sisteme od naših modularnih blokova. Svaki M&M imao je jedan posao, a njihova kombinacija je stvorila pojavno, složeno ponašanje.

💡 DID YOU KNOW?

Mewayz replaces 8+ business tools in one platform

CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.

Start Free →

Projekat je pokazao da su najbolji sistemi, bilo da su programski jezik ili poslovni OS, izgrađeni na temelju malih, interoperabilnih dijelova. Mewayz pruža platformu za povezivanje jedinstvenih "M&M" vašeg poslovanja—bilo da se radi o CRM modulu, alatu za upravljanje projektima ili prilagođenom analitičkom bloku—u kohezivnu, efikasnu i slatko uspješnu cjelinu. Cilj nije prekomplikovati; to je da se pojednostavi dajući vam osnovne građevne blokove za rast.

Često postavljana pitanja

Slatka ideja: Zašto sam koristio M&M da izgradim jezik

Počelo je kao šala. Zdjela M&M-a stajala je na mom stolu, živahan mozaik crvene, žute, zelene, plave i smeđe boje. Takođe sam zurio u prazan ekran, sa zadatkom da dizajniram jednostavan jezik specifičan za domen za projekat na poslu. Uobičajeni alati – uređivači teksta, kompajleri, table – bili su sterilni. Trebao mi je opipljiv, razigran način da vizualiziram sintaksu i logički tok. Tada me je sinulo: šta ako svaka boja predstavlja drugu komandu? M&M-ovi nisu bili samo slatkiši; oni su bili moji tokeni, moji opkodovi, moji građevinski blokovi. Što je još važnije, ovaj eksperiment je bio savršen način da se testiraju principi modularnosti i vizuelnog toka rada koje moj tim zagovara koristeći našu platformu, Mewayz. Vjerujemo da je razbijanje složenih procesa na jednostavne, spojive jedinice ključ inovacije.

Definiranje sintakse: vokabular obložen slatkišima

Prvi korak je bio da dodijelim značenje mojim šećernim simbolima. Odlučio sam se za jednostavan jezik baziran na steku, gdje se operacije izvode na hrpu vrijednosti. Izložio sam pravila na listu papira, stvarajući ukusno jednostavnu sintaksu:

Izvršavanje programa: vrlo ručni kompajler

S mojim rječnikom, došlo je vrijeme za izvršenje. Postao sam kompajler i runtime okruženje. Rasporedio sam M&M u red na stolu — ovo je bio moj izvorni kod. Zatim sam "čitao" program s lijeva na desno, manipulirajući hrpom brojeva (napisanih na ljepljivim notama) prema pravilima. Ovaj ručni proces bio je prosvjetljujući. Svaki put kada sam pogodio Green M&M (naredba ADD), morao sam osigurati da stek ima najmanje dvije vrijednosti. Greške su bile trenutne i vizuelne. Ako bih pokušao da dodam samo sa jednim brojem, program bi se "srušio", prisiljavajući me da otklonim greške u svom kodu zasnovanom na slatkišima.

Veća slika: od slatkiša do koda do Mewayza

Ovaj neobičan eksperiment bio je više od zabave; bio je to snažan podsjetnik na osnovni princip koji nas pokreće u Mewayzu: složenošću se najbolje upravlja jednostavnošću i povezivanjem. Baš kao što sam izgradio funkcionalni "jezik" od pregršt šarenih jedinica za višekratnu upotrebu, preduzeća mogu izgraditi moćne operativne sisteme od naših modularnih blokova. Svaki M&M imao je jedan posao, a njihova kombinacija je stvorila pojavno, složeno ponašanje.

Svi vaši poslovni alati na jednom mjestu

Prestanite žonglirati s više aplikacija. Mewayz kombinuje 208 alata za samo 49 USD mjesečno — od inventara do HR-a, rezervacije do analitike. Za početak nije potrebna kreditna kartica.

Isprobajte Mewayz besplatno →
.

Try Mewayz Free

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

Start managing your business smarter today

Join 6,208+ businesses. Free forever plan · No credit card required.

Ready to put this into practice?

Join 6,208+ 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