Sukūriau programavimo kalbą naudodamas Claude Code
komentarai
Mewayz Team
Editorial Team
Kibirkštis: kodėl verta kurti naują kalbą?
Kiekvienas kūrėjas tam tikru momentu atsitrenkia į sieną. Kuriate sudėtingą sistemą, o esami įrankiai, nors ir galingi, jaučiasi veikiantys prieš unikalią projekto logiką. Tai buvo mano patirtis kuriant naują Mewayz modulį. Mums reikėjo labai specifinės, konkrečiai domenui skirtos kalbos (DSL), kad supaprastintume naudotojų darbo eigą, bet nieko nėra, kuris būtų visiškai tinkamas. Idėja buvo bauginanti: sukurkite programavimo kalbą nuo nulio. Tada atradau Claude Code.
Klodas Kodas: Kūrybos antrasis pilotas
Claude Code nėra tik kodo generatorius; tai mąstantis partneris atliekant sudėtingas programinės įrangos inžinerijos užduotis. Jo gebėjimas suprasti aukšto lygio sąvokas, argumentuoti apie architektūrą ir generuoti sintaksiškai teisingą kodą keliose paradigmose padarė jį puikiu varikliu šiam ambicingam projektui. Man nereikėjo pradėti nuo tuščio failo. Vietoj to pradėjau nuo pokalbio:
"Man reikia sukurti paprastą, interpretuojamą kalbą, skirtą verslo darbo eigoms automatizuoti. Ji turėtų būti skaitoma ne programuotojams, bet pakankamai galinga, kad galėtų apdoroti duomenų transformacijas. Nuo ko pradėti?"
Claude'o atsakymas buvo struktūrinis kontūras, apimantis lekserius, analizatorius ir abstrakčiuosius sintaksės medžius, kartu su kodų pavyzdžiais Python. Šios gairės bauginantį iššūkį pavertė valdomu, žingsnis po žingsnio vykstančiu procesu.
Kūrimo procesas: nuo koncepcijos iki kompiliatoriaus
Kadangi Klodas Kodas buvo mano vadovas, kūrimo procesas vyko skirtingais, logiškais etapais. Atrodė, kad vyresnysis architektas budėtų visą parą.
- Sintaksės apibrėžimas: aprašiau norimą kalbos jausmą – tokius raktinius žodžius kaip „automatizuoti“, „paleisti“ ir „transformuoti“, o Claude'as pateikė kelias gramatikos parinktis, padėdamas išvengti dviprasmybių.
- Lexer ir analizatoriaus kūrimas: Claude'as sugeneravo pradinį kodą, skirtą įvesties tekstui suskaidyti į prieigos raktus (leksinė analizė), o tada sukurti analizavimo medį (sintaksės analizė). Atsiradus klaidai, galėjau įklijuoti klaidą ir savo kodą, o Klodas pasiūlys tikslius pataisymus.
- Vertėjo kūrimas: tai buvo esmė. Claude'as padėjo man sukurti vykdymo logiką, paaiškindamas skirtingas vertinimo strategijas ir sugeneruodamas kodą, kuris eitų sintaksės medį ir vykdytų komandas.
- Testavimas ir tobulinimas: pateikiau pavyzdinius scenarijus savo vertėjui, o Claude'as padėjo man parašyti išsamius bandomuosius atvejus ir pagerinti klaidų tvarkymą.
Šis pasikartojantis pokalbių kūrimas buvo neįtikėtinai efektyvus. Jis atspindėjo modulinę, kūrimo bloko filosofiją, kurią mes palaikome Mewayz, kur sudėtingos sistemos kuriamos iš tiksliai apibrėžtų, sąveikaujančių komponentų.
Integravimas su „Mewayz and the Payoff“
Paskutinis veiksmas buvo šios naujos kalbos integravimas į Mewayz platformą kaip specialų modulį. Kalba, kurią pavadinome „FlowScript“, leidžia vartotojams vizualiai vilkti ir nuleisti elementus, kurie apačioje sukuria švarų, skaitomą kodą. Tai įgalina mūsų klientus automatizuoti sudėtingus verslo procesus, nereikalaujant kūrėjų komandos. Tikrasis pelnas buvo sukurtas naudojant galingą AI, pvz., Claude'ą, kuriant įrankį, kuris savo ruožtu padaro galingas technologijas prieinamesnes kitiems.
💡 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 →Programavimo kalbos kūrimas nebėra kompiuterių mokslų daktarų ir didelių technologijų įmonių žygdarbis. Su dirbtinio intelekto antraisiais pilotais, tokiais kaip Claude Code, kliūtis kurti pasirinktinius, specialiai sukurtus įrankius buvo žymiai sumažinta. Šis projektas įrodė, kad programinės įrangos kūrimo ateitis yra ne tik kodo rašymas, bet ir protingas dirbtinio intelekto sutvarkymas, kad būtų sukurtos pagrindinės sistemos, kurios ateityje suteiks energijos verslui. Tiems, kurie nori peržengti savo projektų įmanomų ribų ribas, nebekyla klausimas „Ar galiu tai sukurti? bet „Kaip greitai galiu pradėti pokalbį?“