Soplang Logo
Soplang

Variables

Baro sida loo isticmaalo variables: door (dynamic), noocyada static (abn, jajab, qoraal, bool, teed, walax), iyo constants (madoor) ee Soplang.

Soplang Variables

Soplang variables waxaa lagu qeexaa erayo Somali-first ah oo ka tarjumaya doorka ama nooca. Tani waxay ka dhigtaa koodhka mid muujin leh oo u fudud barayaasha Af-Soomaaliga.

Dynamic Variables – door

door waa soo gaabinta doorsoome oo loo adeegsado doorsoomayaal dynamically typed.

dynamic_variables.sop

dynamic_variables.sop
door magaca = "Aamina"
door da = 19
door xaqiiqo = run

Doorsoome door ah wuxuu qaadan karaa qiime nooc kasta ah, xitaa marka dambe:

dynamic_reassign.sop
door x = 10
x = "hadda waa qoraal"   // waa la oggol yahay
qor(x)

Declare Once

Magac waxaa la qeexi karaa hal mar oo keliya — xitaa gudaha block (haddii, intay, …). Si aad qiimaha u beddesho, ha ku celin door; si toos ah u qor magac = qiime.

declare_once.sop
door a = 1
a = 2          // sax: beddelid
door a = 3     // Khalad nooc: Magaca 'a' mar hore ayaa la qeexay [E020]

Static Variables

Doorsoomayaasha static waa kuwa si cad loo noocqeeyo (explicit types) si loo helo hufnaan iyo badbaado nooc (type safety).

TypeKeywordStands forExample
Integerabnabyooneabn tirada = 10
Floatjajabjajabjajab qiime = 3.14
Stringqoraalqoraalqoraal magaca = "Soplang"
Booleanboolboolbool sax = run
Listteedteedteed liis = [1, 2, 3]
Objectwalaxwalaxwalax qof = {magac: "Ali"}

Type Checking

Doorsoome static ah wuxuu xafidaa noociisa. Haddii aad siiso qiime nooc kale ah — marka la qeexayo ama marka dambe — Soplang waxay soo saartaa khalad nooc (E022) ka hor inta aan barnaamijka la fulin.

static_type_error.sop
abn tirada = 10
tirada = 20            // sax: weli waa abn
tirada = "labaatan"    // Khalad nooc: 'tirada' waa abn laakin qiimaheeda 'qoraal' ma ahan abn [E022]

Haddii aad rabto in doorsoome kasta uu yeesho nooc cad, isticmaal soplang --strict file.sop. Strict mode wuxuu diidaa door. Eeg CLI & REPL.

Constants – madoor

madoor (soo gaabinta madoorsoome) waxaa loo adeegsadaa qiyamka aan la beddeli karin (immutable).

constants_basic.sop

constants_basic.sop
madoor magaca = "Soplang"

Constants lama u wareejin karo (reassign):

constants_reassign_error.sop

constants_reassign_error.sop
madoor luqad = "Somali"
luqad = "English"  // Khalad nooc: Ma bedeli kartid qiimaha doorsamaha madoor 'luqad' [E020]

madoor waxaa sidoo kale lagu dari karaa nooc static ah, si nooca qiimaha loo hubiyo:

constants_typed.sop

constants_typed.sop
madoor abn SANAD = 2025
madoor PI = 3.14159
qor(SANAD)

On this page