Soplang Syntax
Soplang syntax waa mid fudud, nadiif ah, oo Somali-first ah—halkan ka bar bilowga iyo dareenka luuqadda.
Soplang Syntax
Soplang syntax waxaa loo qaabeeyey in ay noqoto mid cad, kooban, oo si sahlan loogu fahmo af-Soomaali. Waxay isticmaashaa ereyo Soomaali ah si ay u metesho fikradaha barnaamijyada caanka ah, taas oo ka dhigaysa koodhku mid dabiici ah oo la akhrin karo.
Hello World
Tani waa barnaamijka ugu fudud ee Soplang. Waxay adeegsanaysaa shaqada-dhexdeeda qor() si ay u muujiso wax soo saar.
hello-world.sop
qor("Hello, Adduun!")
Structure
Barnaamijyada Soplang waxay ka kooban yihiin qaybahaan:
- Declarations – adigoo adeegsanaya
door,abn,jajab,qoraal,bool,teed,walax, amamadoor - Functions – adigoo adeegsanaya
hawl,celi - Control flow – adigoo adeegsanaya
haddii,haddii_kale,ugudambeyn,dooro,kuceli,intay, iwm. - Classes – adigoo adeegsanaya
qaab,dhaxal,cusub,nafta - Error handling & modules –
fasax/qaboiyokeen - Built-ins – sida
qor(),gelin(),nooc()
Blocks waxaa lagu qeexaa laalaabyo ({}) koodhkuna wuxuu ku socdaa khad-khad.
Comments
Faallooyinka (comments) lama fuliyo. Soplang waxay taageertaa faallo hal sadar ah (//) iyo faallo sadarro badan ah (/* ... */).
// Faallo hal sadar ah /* Faallo sadarro badan ah */ qor("Faallooyinka lama fuliyo") // faallo dhamaadka sadarka
Basic Rules
- Hal amar sadarkiiba: amar kasta wuxuu ku dhammaadaa dhamaadka sadarka. Semicolon (
;) lama isticmaalo — waa khalad parser. - Blocks:
{}ayaa lagu xiraa jirkahaddii,kuceli,intay,hawl, iwm. Indentation-ku waa akhris-wanaag oo keliya. - Shuruudaha: shuruudaha
haddii,intay, iyodoorowaxay galaan qaansooyin(). - Xarfaha waa kala duwan yihiin (case-sensitive):
magaciyoMagacwaa laba doorsoome oo kala duwan. - Strings: waxaad isticmaali kartaa
"..."ama'...'. Ma jiraan escape sequences ("\n"si toos ah ayuu u daabacmaa) iyo string interpolation midna — isticmaal+si aad isugu xirto. - Isku-xirka
+: marka mid ka mid ah dhinacyadu yahay string, qiimaha kale wuxuu si toos ah isugu beddelaa qoraal.
door a = "Salaan" door b = 'Salaan' qor(a == b) // run door Magac = "Ali" door magac = "Xasan" qor(Magac + " iyo " + magac) // Ali iyo Xasan qor("Tirada: " + 5) // Tirada: 5
Example Program
Tusaalahan waxa uu akhriyaa gelinta isticmaalaha kadibna wuu salaamaa. Waxa uu ka kooban yahay: qeexid hawl (function), doorsoome, iyo built-ins.
example.sop
hawl salaan(magac) { qor("Asalaamu calaykum, " + magac) } door magaca = gelin("Magacaaga qor: ") salaan(magaca)
File Extension
Faylasha il-koodhka Soplang waxay adeegsadaan kordhinta .sop. Waxaad ku ordi kartaa CLI ama REPL-ka Soplang:
run.sh
soplang file.sopSyntax-kan waxa uu ku barayaa qulqulka iyo dareenka Soplang: fudayd, muujin, iyo Somali-first.