Lil' Fun Langs' Guts | Mewayz Blog Skip to main content
Hacker News

Lil' Fun Langs' Guts

Nga korero

17 min read Via taylor.town

Mewayz Team

Editorial Team

Hacker News

He aha te Tirohanga i raro i te Tirohanga o nga Reo Papatono Iti Ka pai ake koe hei Kaihanga Kaihanga

Ko nga waahanga rorohiko katoa e whakamahia ana e koe — mai i te CRM e whai ana i o arataki ki te miihini aunoa ka tuku nama i waenganui po — i hangaia me te reo hotaka. Engari kua whakaaro koe he aha te mea ka tohute reo papatono? Ehara i te rauwiringa kaiao nui penei i te Python, i te JavaScript ranei, engari ko nga mea iti, karekau, he tino rerekee ka hangaia e nga kaiwhakawhanake i te wiki hei whakaoti rapanga kotahi, hei ako noa ranei. Ko enei "lil' fun langs" — nga reo taakaro, nga reo motuhake-a-rohe (DSLs), me nga kaiwhakamaori matauranga — kei reira etahi o nga whakaaro tino huatau o te puutaiao rorohiko. Ko te mohio ki o raatau ngakau ehara i te mea ka pai ake koe ki te hanga htaka; ka huri i to whakaaro mo te hanga taputapu, te whakaaunoa i nga rerengamahi, me te hoahoa i nga punaha e tino mahi ana mo te tangata.

He aha te "Lil' Fun Langs"?

Kua ki tonu te ao hootaka i nga reo kaore rawa i kii hei whakakaha i nga kaitoro whakangao, hei tukatuka ranei i nga miriona tauwhitinga. Ko nga reo penei i a Lox (no Robert Nystrom'sCrafting Interpreters), Monkey (mai i Thorsten Ball'sWriting an Interpreter in Go), ara ko nga reo katakata pera i a Brainfuck me Chef kei te noho hei whakaako, hei whakangahau, hei turaki i nga rohe o te tikanga o te "reo". Ko enei reo iti ka wetewete i te uaua o nga mekameka taputapu o te ao, me te whakaatu i nga mahi a te waehere.

Engari ko "lil' fun langs" ehara i te mea iti ki nga mahi ako. Ko nga reo motuhake-a-rohe e kaha ana etahi o nga taputapu pakihi tino whai hua i runga i te maakete. I nga wa katoa ka tuhia e koe he tauira ki roto i te ripanga, tautuhia he ture tātari i roto i to kaihoko imeera, whirihora ranei i tetahi rerenga mahi aunoa i roto i te papaapapa penei i Mewayz, kei te taunekeneke koe me tetahi reo iti kua hangaia. Ko nga waahanga 207 o roto o Mewayz — ko te CRM, ko te nama, ko te HR, ko te whakahaere waka, me te maha atu — ka whakawhirinaki ki nga miihini ture o roto me nga kaikorero korero, he reo iti i hangaia hei hoatu i te mana ki nga kaiwhakamahi me te kore e hiahiatia he tohu putaiao rorohiko.

Ma te mohio ki te ahua o enei reo ka kitea he aha te ahua o etahi taputapu ka rite ki te mamau me tetahi pukapuka kua tuhia ki tetahi atu taha.

Te Lexer: Te Waahi Kupu Ki Nga Ngota

Ko ia reo, ahakoa te iti, ka timata ki te kotahitanga taketake: te tātari kupu, "lexing" ranei. Ka mauhia e te lexer he aho mata o nga tohu — penei i te tapeke = utu * rahinga + taake — ka wawahia ki nga wahanga whai kiko e kiia nei he tohu. Kaore ano te lexer e aro ki te tikanga. Ka tohu noa ko tapeke he tautohu, = he kaiwhakahaere taumahi, price tetahi atu tautohu, * he whakareatanga, me era atu.

Ko te hanga i te kaikorero mo te reo iti he mea miharo. I raro iho i te 100 rarangi o te waehere, ka taea e koe te whakaako i tetahi hotaka kia mohio ki nga nama, nga aho, nga kupu matua, me nga kaiwhakahaere. Ko te ngawari te take — ka akiaki koe ki te whakaaro he aha te huinga iti rawa o "kupu" e hiahiatia ana e to reo. Ka pa ano tenei whakaaro i te wa e hoahoa ana i nga taputapu anga-kaiwhakamahi. I te wa ka tukuna e te miihini miihini a Mewayz te rangatira pakihi iti ki te whakarite ture penei "ka tomuri te nama mo nga ra e 7, tukuna he imeera whakamaumahara," kei te marie te punaha ki te tuku i taua ture ki nga tohu kua oti te mahi. Ko nga atanga pai rawa atu ka ngawari te ahua na te mea i tino whakaaro tetahi ki te ahua o nga waeine whai kiko o te koronga kaiwhakamahi.

Paring: Hurihia nga Tohu Papatahi Hei Rakau Ora

Ka whai tohu koe, me hanga e koe. Ka huri te parsing i te raupapa papatahi o nga tohu ki te Rakau Whakaraupapa Abstract (AST) — he tohu aroākapa e hopu ana i nga hononga i waenga i nga wahanga rereke o te korero. Ko te kupu 3 + 4 * 5 ehara i te raupapa noa o nga tohu e rima; he rakau ka herea ake te whakareatanga i te taapiri, ka puta te 23 hei utu mo te 35.

I konei ka tino ngahau nga mea. Ko nga tikanga whakahiato penei i te heke recursive, i te Paratt parsing ranei he momo miihini huatau e uru ana ki roto i te konae kotahi engari ka taea e koe te hapai i nga wetereo tino miharo. He rite tonu te panui o nga paoro whakaheke whakaheke, he rite tonu ki te korero mo te reo ake — ka rite ia taumahi ki tetahi ture wetereo, e hanga ana i te tuhinga tuhi-whaiaro i roto i te ahua onge i roto i te whanaketanga rorohiko.

Ko nga akoranga mai i te poroporoaki ka toro atu ki tua atu o te hoahoa reo. Ko nga punaha katoa e tukatuka ana i nga whakaurunga - he puka tono me nga awhe ra, he whirihoranga utu me nga ture here, he paipa CRM me te arorau peka - kei te whakaoti rapanga porotiti. Ko nga kaiwhakamahi 138,000+ kei runga i te papaaho a Mewayz ka whakaputa i nga raraunga uaua, hangai ia ra. Ko te mohio me pehea e huri ai nga kaiporoporo i te whakauru rangirua ki roto i te hanganga maamaa ko te rereketanga i waenga i te hanga i tetahi punaha e whakahaere pai ana i nga keehi taha me tetahi ka pakaru i te wa ka uru tetahi ki tetahi ra i runga i te whakatakotoranga ohorere.

Te Kaiwhakamaori: Where Code Comes Alive

Ko te kaiwhakamaori te waahi ka puta te makutu. Ka hikoi i te AST, node ma te node, ka whakahaerete reira. Ka whakahokia e te pona tau tona uara. Ka arotakehia e te node mahi rua ona tamariki maui me te taha matau ka whakakotahi. Ka tirohia e te waea mahi te mahi i roto i tetahi taiao, ka herea nga tautohetohe, ka arotake i te tinana. I roto i te reo takaro, ka 200-300 nga rarangi katoa o te kaiwhakamaori — he iti rawa hei pupuri i to mahunga, engari he kaha ki te whakahaere i nga kaupapa tuturu.

E rua nga huarahi whanui mo te mahi: nga kaiwhakamaori haere-rakau me nga miihini mariko bytecode. He ngawari ake te hunga haere rakau engari he puhoi ake; ka whakawhiti tika i te AST. Ka whakahiatohia e nga Bytecode VM te AST ki te raupapa o nga tohutohu ngawari (penei i te reo huihuinga iti) me te mahi i era, hei utu mo te tauhokohoko i te uaua o te whakatinanatanga kia pai ake ai te mahi. Ko te CPython, te whakatinanatanga Python paerewa, e whakamahi ana i te bytecode VM. Ko Lua, tetahi o nga reo whakaurunga pai rawa atu, i timata i te hoahoa VM e hangai ana ki te rehita i awe i nga miihini keemu puta noa i te ao.

Maramatanga matua: Ehara i te mea ko nga taputapu pakihi tino kaha rawa atu — ko ratou nga mea tino pai "reo" o roto hei whakaatu i nga mea e hiahiatia ana e nga kaiwhakamahi. Ko nga miihini ture katoa, nga punaha ture, me nga kaihanga aunoa he kaiwhakamaori iti kei te huna. Ko te kounga o taua kaiwhakamaori ka whakatau mena ka eke te taputapu mai i te 10 kaiwhakamahi ki te 100,000.

💡 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 →

Taiao me te Awhi: Te Hanganga Huna o te Kawanatanga

Ko tetahi o nga kaupapa tino uaua i roto i te whakatinanatanga reo — me tetahi o nga mea e pa ana ki te rorohiko pakihi — ko te pehea o nga reo e whakahaere ana i nga ahuatanga ma te taiao me te whanui. Ina tuhia e koe he taumahi taurangi i roto i tetahi mahi, kia kaua taua taurangi e pakaru ki waho ka tuhirua i tetahi mea i roto i te whanuitanga o te ao. He ahua marama tenei, engari ki te whakatinana tika me whai hanganga raraunga e kiia ana he riini taiao: he rarangi hono o nga mapi hash e tohu ana ia taumata i te whanuitanga, me nga rapunga taurangi ka haere ki runga i te mekameka kia kitea ra ano he taurite.

Ka kitea tenei tauira ki nga waahi katoa i roto i nga raupaparorohiko i hangaia pai. He rite tonu te mahi a nga whakaaetanga a nga kaiwhakamahi i roto i te papaaapaki pakihi — ka whakatauhia te urunga o te mema o te roopu ma te tirotiro i o raatau whakaaetanga i te tuatahi, katahi ko nga whakaaetanga o tana mahi, katahi ko nga hapa a te whakahaere. Ko te punaha kōwae a Mewayz, e hora ana i nga mea katoa mai i nga wharangi hono-i-koiora ki te tukatuka utu utu katoa, e whakamahi ana i te whirihoranga paparanga e whakaata ana i tenei kaupapa tika. Ka whakatauhia e te kaipakihi nga taunoa-whanui, ka taea e nga kaiwhakahaere tari te whakakore i nga tautuhinga motuhake, ka taea e nga kaiwhakamahi takitahi te whakarite i o raatau ake mokowāmahi - kaore he raruraru.

Ko te he o te awheawhe i roto i te reo papatono ka puta he ngarara. Ko te hee o te whaanui i roto i te turanga pakihi ka paheke nga raraunga, ka piki haere te whakaaetanga, me te ahua o te hepohepo whakahaere e utu moni ana. He rite tonu nga akoranga ki ia taumata tangohanga.

He aha te hanga i te reo iti e ako ana ia koe

Mena kare ano koe i hanga i tetahi reo hootaka iti, koinei ta te wheako e tino whakaakona ana — me te aha he mea nui ahakoa he kaiwhakawhanake koe, he kaiwhakarewa hangarau, he tangata ranei e hiahia ana ki te mohio ki nga taputapu e whakamahia ana e ratou ia ra:

  • Te tika o te whakaaro: Kare e taea e koe te rangirua i te wa e tautuhi ana i te wetereo. Ko nga rangirua katoa i roto i to korerotanga reo ka huri hei bug i roto i to parser. Ka whakawhiti tika tenei ako ki te tuhi i nga waahanga pai ake, nga tuhinga maamaa ake, me nga whakaritenga waahanga tika ake.
  • Te aroha ki nga kaiwhakamahi: Ina hoahoa koe i tetahi reo, kei te hoahoa koe i tetahi atanga mo te whakaaro tangata. Ka ako koe ki te patai: "He aha te tikanga o te kaiwhakamahi te tikanga ki tenei?" — he patai hei akiaki i ia whakatau hua.
  • Whakaaronga mahi: Ka ako koe he aha i tere ai etahi mahi, he puhoi hoki etahi, ehara i te panui i nga tohu tohu engari mai i te kite i te maha o nga mahi a te kaiwhakamaori. Ma tenei ka pai ake koe ki te hoahoa i nga punaha e tauine ana.
  • Patuiro rangatira: Ina he te whakaputanga o to reo, karekau he wahi huna. Karekau he anga hei whakahee, karekau he raruraru putanga whare pukapuka. Ko to arorau, o hanganga raraunga, to algorithm. Ka hangaia e tenei te ahua o nga pukenga patuiro hohonu e wehe ana i nga miihini pai mai i nga tohunga nui.
  • Te maioha mo te tangohanga: Kei te mohio koe he aha nga reo taumata teitei i whiriwhiri ai — he aha te take i kati ai a JavaScript, he aha te take i whiriwhiri ai a Python i te mokowāma nui, he aha te take i noho ai te kaitaki nama a Rust. Ehara enei i te whakatau noa; he otinga enei mo nga tino raruraru ka pa ki a koe i roto i to whakatinanatanga.

Mai i nga Reo Takaro ki te Whakaaunoatanga o te Ao-Tuturu

He iti ake te mokowhiti i waenga i te reo takaro me te miihini whakangao aunoa i te whakaaro o te nuinga. Ko te reo tauira Liquid a Shopify i timata hei punaha tauira ngawari, haumaru, a inaianei kua kaha nga miriona toa toa. Ko te wetereo rerengamahi a GitHub Actions he reo motuhake i hangaia i runga i te YAML. Ko te reo patai a Stripe's Sigma ka taea e nga roopu putea te uiui i nga raraunga utu me te kore e tuhi i te SQL. I timata enei ma te patai a tetahi: "He aha te reo iti rawa, te reo ngawari hei whakaoti i tenei raru motuhake?"

Koia tonu te whakaaro i muri i nga papaaho e whai ana ki te whakakotahi i nga mahi pakihi ki roto i te punaha rauropi kotahi. I te wa e mahi ana a Mewayz ki tetahi kaitoi kore utu e hiahia ana ki te wharangi hono-in-biomehe kamupene rahi-waenganui e whakahaere ana i te utu utu mo nga kaimahi 50 puta noa i ana waahanga 207, ko te wero kei raro he rite tonu ki nga kaihoahoa reo katoa: me pehea koe e hanga ai i tetahi punaha he maamaa noa mo te hunga timatanga engari he kaha mo nga keehi whakamahi uaua? Ko te whakautu, ka kii mai tetahi kaiwhakangungu reo ki a koe, kei te whakatika tika i nga korero o mua — poraka hangahanga iti, tito ka taea e nga kaiwhakamahi te whakakotahi i nga huarahi kaore i whakaarohia e te kaihoahoa.

I te wa e whai ake nei ka whirihora e koe he ture aunoa, ka hanga he papatohu ritenga, ka whakarite ranei i tetahi rerengamahi herenga i roto i tetahi taputapu pakihi, mahara: kei te tuhi koe i tetahi kaupapa i roto i te lil' fun lang. I hangaia e tetahi te whekau o taua reo — tona kaikorero, te korero, me te kaiwhakamaori — kia taea ai to whakaaro. A ko te kounga o a raatau mahi ko te kaha kore e kitea mena he ahua makutu, he pouri ranei to wheako. Ma te mohio ki aua whea, ahakoa i te taumata o te mata, ka homai he mana nui ki a koe: te kaha ki te kite i te miihini i raro i te atanga, ki te matapae kei hea ka pakaru, me te pana atu i nga mea i whakaarohia e nga kaihoahoa.

Hangahia to OS Pakihi i tenei ra

Mai i nga kaikorero korekore ki nga tari tari, ka whakahaerea e Mewayz nga umanga 138,000+ me te 207 kōwae whakauru. Tīmata kore utu, whakapai ake ina tipu koe.

Waihanga Pūkete Koreutu →

Patai Auau

He aha te "lil' fun langs" me te aha me manaaki ahau?

Lil' fun langs he iti, he reo hotaka whakamatautau i hangaia hei tuhura whakaaro motuhake, hei whakaako ranei i nga kaupapa matua. Mai i nga kaiwhakamaori taakaro i tuhia i te wiki ki nga reo motuhake-a-rohe (DSL) i hangaia mo nga mahi whaiti. Ma te mohio ki te pehea e mahi ai koe ka hohonu ake te maarama ki te whakahaere o nga punaha katoa - tae atu ki nga taputapu pakihi e whakawhirinaki ana koe i ia ra. Ma taua mohiotanga ka mohio koe he kaiwhakawhanake koi me te mohio ki te whakatau i a koe e whiriwhiri ana, e hanga ana ranei i nga punaha aunoa.

Me pehea te ako mo te reo o roto ki te awhina i te mahi aunoatanga pakihi?

Ka marama ana koe ki nga ariā penei i te poroporoaki, te arotake, me nga kaiwhakamaori, ka timata koe ki te kite i te mahi aunoatanga. E mohio ana koe ki nga tauira i roto i nga kaihanga rerengamahi, nga miihini tauira, me nga punaha ture. Ka whakamahia e nga papa penei i a Mewayz enei maataapono puta noa i o raatau 207 kōwae kia taea ai e koe te whakahaere aunoa i te nama, nga rerengamahi CRM, me era atu - katoa kaore he tuhi waehere. Ma te mohio ki nga kaupapa matua ka awhina koe ki te pana atu i enei taputapu me te rapu raruraru tere ake.

Me whai tohu tohu rorohiko rorohiko hei hanga reo iti?

Kaore rawa. He maha nga kaiwhakawhanake e hanga ana i o raatau kaiwhakamaori tuatahi i te wiki kotahi ma te whakamahi i nga akoranga me nga kaiarahi tuwhera-puna. Ko nga reo penei i te Python me te JavaScript he ngawari ki te tuhi i te kaikorero taketake, te parser, me te kaitoha. Ko te whainga ehara ko te hanga i te reo whakaputa ka whai ake — ko te ako ma te mahi. Ahakoa he reo tatairangi ngawari e ako ana koe me pehea te wetewete me te whakamahi i nga korero, nga pukenga e whakawhiti tika ana ki te whanaketanga o te ao.

Ka taea e te mohio ki nga DSL te awhina i ahau ki te whiriwhiri taputapu pakihi pai ake?

Tino rawa. He maha nga tüäpapa pakihi ka whakauru i nga reo motuhake-rohe mo nga tauira, whiriwhiringa, me nga ture rerengamahi. Ina mohio koe ki te mahi a nga DSL i raro i te awhi, ka taea e koe te arotake i nga taputapu kia tino arohaehae. Hei tauira, ka tukuna e Mewayz tetahi OS pakihi matawhānui mai i te $19/mo me te arorau aunoatanga i roto i ona waahanga. Ma te mohio ki nga kaupapa DSL ka awhina koe ki te whakamahi i aua ahuatanga, kaua ki te rakuraku i te mata.

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,203+ businesses. Free forever plan · No credit card required.

Ready to put this into practice?

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