Skip to content

Latest commit

 

History

214 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KLWNG' [Kalawang] Programming (Formerly Sawa)

Master Piece of Paper (Ryann Kim Sesgundo)


Introduction (English)

I started creating a programming language with the help of Python Programming. In fact, the results were good and I somewhat liked some of them; however, it was merely translation and transliteration, meaning it was still based on Python which is space-sensitive. I asked an AI or Artificial Intelligence something a bit unusual. I replaced the former name Sawa (derived from the Tagalog word for Python) with Kalawang, which is Tagalog for Rust. The result turned out much better for me because it became easier to use—it feels similar to Visual Basic, without needing many spaces or being space-sensitive to run. I created this language not to show off, but simply to test my capabilities and see if I could share BAYBAYIN with more people, not just in literature, but also in the world of technology. In addition, you may mixed-up with the three different syntax/characters, you may use baybayin, english, and tagalog in a single program.

ᜉᜐᜒᜋᜓᜎᜅ᜔ ᜆᜎᜆ

ᜐᜒᜈᜒᜋᜓᜎᜈ᜔ ᜃᜓᜅ᜔ ᜄᜓᜋᜏ ᜈᜅ᜔ ᜁᜐᜅ᜔ ᜏᜒᜃᜅ᜔ ᜉᜅ᜔ ᜉ᜔ᜇᜓᜄ᜔ᜇᜋᜆᜒᜃ ᜐ ᜆᜓᜎᜓᜅ᜔ ᜈᜅ᜔ Python Programming᜶ ᜐ ᜃᜆᜓᜈᜌᜈ᜔᜵ ᜋᜄᜈ᜔ᜇ ᜀᜆ᜔ ᜋᜒᜇ᜔ᜌᜓ ᜈᜄᜓᜐ᜔ᜆᜓᜑᜈ᜔ ᜃᜓ ᜀᜅ᜔ ᜁᜎᜈ᜔ ᜐ ᜇᜒᜐᜓᜎ᜔ᜆ᜵ ᜐᜓᜊᜎᜒᜆ᜔ ᜁᜆᜓ ᜀᜌ᜔ ᜉᜏᜅ᜔ ᜐᜎᜒᜅ᜔ ᜏᜒᜃ ᜀᜆ᜔ ᜐᜎᜒᜅ᜔ ᜆᜒᜆᜒᜄ᜔ ᜎᜋᜅ᜔᜵ ᜁᜊᜒᜄ᜔ᜐᜊᜒᜑᜒᜈ᜔᜵ ᜁᜆᜓ ᜀᜌ᜔ ᜈᜃᜊᜐᜒ ᜉ ᜇᜒᜈ᜔ ᜐ Python ᜈ ᜈᜃ space-sensitive᜶ ᜈᜄ᜔ᜆᜈᜓᜅ᜔ ᜀᜃᜓ ᜈᜅ᜔ ᜋᜒᜇ᜔ᜌᜓ ᜃᜃᜁᜊ ᜐ ᜁᜐᜅ᜔ AIArtificial Intelligence᜶ ᜀᜅ᜔ ᜇᜆᜒᜅ᜔ Sawa ᜈ ᜑᜅᜓ ᜐ ᜆᜄᜎᜓᜄ᜔ ᜈᜅ᜔ Python ᜀᜌ᜔ ᜀᜃᜒᜅ᜔ ᜉᜒᜈᜎᜒᜆᜈ᜔ ᜈ ᜐ Kalawang᜵ ᜆᜄᜎᜓᜄ᜔ ᜁᜆᜓ ᜈᜅ᜔ Rust᜶ ᜋᜐ᜔ ᜋᜀᜌᜓᜐ᜔ ᜉᜇ ᜐ ᜀᜃᜒᜈ᜔ ᜀᜅ᜔ ᜈᜄᜒᜅ᜔ ᜇᜒᜐᜓᜎ᜔ᜆ ᜈᜒᜆᜓ᜵ ᜇᜑᜒᜎ᜔ ᜋᜐ᜔ ᜋᜇᜎᜒ ᜈ ᜐ᜔ᜌᜅ᜔ ᜄᜋᜒᜆᜒᜈ᜔᜵ ᜉᜇ ᜈ ᜐ᜔ᜌᜅ᜔ ᜊᜒᜐᜓᜀᜎ᜔ ᜊᜐᜒᜃ᜔᜵ ᜑᜒᜈ᜔ᜒ ᜃᜁᜎᜅᜈ᜔ ᜈᜅ᜔ ᜋᜇᜋᜒᜅ᜔ spaces ᜂ ᜄᜏᜒᜅ᜔ space-sensitive ᜉᜇ ᜋᜉᜄᜈ᜶ ᜄᜒᜈᜏ ᜃᜓ ᜎᜅ᜔ ᜁᜆᜓᜅ᜔ ᜏᜒᜃ ᜈ ᜁᜆᜓ᜵ ᜑᜒᜈ᜔ᜇᜒ ᜉᜇ ᜋᜄ᜔ᜉᜐᜒᜃᜆ᜔᜵ ᜃᜓᜈ᜔ᜇᜒ ᜄᜓᜐ᜔ᜆᜓ ᜃᜓ ᜎᜅ᜔ ᜐᜓᜊᜓᜃᜒᜈ᜔ ᜀᜅ᜔ ᜀᜃᜒᜅ᜔ ᜃᜃᜌᜈᜈᜈ᜔᜵ ᜃᜓᜅ᜔ ᜃᜌ ᜃᜓ ᜉ ᜊᜅ᜔ ᜁᜊᜑᜄᜒ ᜀᜅ᜔ Baybayin ᜐ ᜋᜇᜋᜒ᜵ ᜑᜒᜈ᜔ᜇᜒ ᜎᜋᜅ᜔ ᜐ ᜎᜒᜁᜆᜒᜇᜆᜓᜇ᜵ ᜃᜓᜅ᜔ ᜑᜒᜈ᜔ᜇᜒ ᜋᜄᜒᜅ᜔ ᜐ ᜋᜓᜈ᜔ᜇᜓ ᜈᜅ᜔ ᜆᜒᜃ᜔ᜈᜓᜎᜓᜑᜒᜌ᜶ ᜇᜄ᜔ᜇᜄ᜔ ᜉ ᜇᜒᜆᜓ᜵ ᜋᜀᜀᜇᜒ ᜋᜓᜅ᜔ ᜉᜄ᜔ ᜑᜎᜓᜑᜎᜓᜁᜈ᜔ ᜀᜅ᜔ ᜆᜆ᜔ᜎᜓᜅ᜔ ᜐᜎᜒᜈ᜔᜵ ᜊᜌ᜔ᜊᜌᜒᜈ᜔ᜁᜅ᜔ᜎᜒᜐ᜔᜵ ᜀᜆ᜔ ᜆᜄᜎᜓᜄ᜔ ᜐ ᜁᜁᜐᜅ᜔ ᜆᜎᜃ᜔ᜐᜈ᜔᜶

Pasimulang talata

Sinimulan kong gumawa ng isang wikang pang programatika sa tulong ng Python Programming. Sa katunayan, maganda at medyo nagustuhan ko ang ilan sa resulta, subalit ito ay pawang saling wika at saling titig lamang, Ibigsabihin, ito ay nakabase pa rin sa Python na naka space-sensitive. Nagtanong ako ng medyo kakaiba sa isang AI o Artificial Intelligence. Ang dating Sawa na hango sa tagalog ng Python ay aking pinalitan na sa Kalawang, tagalog ito ng Rust. Mas maayos para sa akin ang naging resulta nito, dahil mas madali na syang gamitin, para na syang Visual Basic, hindi kailangan ng maraming spaces o gawing space-sensitive para mapagana. Ginawa ko lang itong wika na ito, hindi para magpasikat, kundi gusto ko lang subukin ang aking kakayanan, kung kaya ko pa bang ibahagi ang BAYBAYIN sa marami, hindi lamang sa literatura, kung hindi maging sa mundo ng teknolohiya. Dagdag pa rito, maaari mong pag haluhaluin ang tatlong salin, baybayin, ingles, at tagalog sa iisang talaksan (file).


🚀 Basic Usage & Tutorials / Gabay sa Paggamit [Developer/Contributor]

Kalawang (ᜃᜎᜏᜅ᜔) is a programming language engine written in Rust that supports both standard Tagalog keywords and authentic Unicode Baybayin script (U+1700..U+171F).

📦 Prerequisites & Installation

Option 1: Quick Start with Pre-built Release Binary (No Rust required)

A pre-compiled standalone binary is available in the release/ folder (release/klwng). You can run Kalawang directly without compiling:

# Ensure execution permissions (Linux/macOS)
chmod +x ./release/klwng

# Run Kalawang directly
./release/klwng examples/tagalog/hello.bay

Option 2: Building from Source (Requires Rust)

To build and run Kalawang from source, you need Rust installed (Rust 2024 edition or standard stable rustc/cargo).

  1. Clone the repository and navigate into the project directory:

    git clone https://github.com/RyannKim327/Baybayin-Script-Language.git klwng
    cd klwng
  2. Build the project using Cargo:

    cargo build --release
  3. Run unit tests to verify your setup:

    cargo test

💻 How to Run Kalawang Scripts

Kalawang source code files typically use .bay extensions.

Using the pre-built release binary:

./release/klwng examples/tagalog/hello.bay

Using Cargo (cargo run):

cargo run -- examples/tagalog/hello.bay

Using the compiled binary after cargo build:

./target/release/kalawang examples/tagalog/hello.bay

📖 Keyword Reference Table

Kalawang allows you to write code seamlessly using Latin Tagalog, Baybayin Script, or English:

Feature / Concept Tagalog (Latin) Baybayin Script English Equivalent
Output / Print sabihin, ipaliwanag ᜐᜊᜒᜑᜒᜈ᜔, ᜁᜉᜎᜒᜏᜈᜄ᜔ tell, say, print
Variable Declaration si, ipangalan, ang ᜐᜒ, ᜁᜉᜅᜎᜈ᜔ ᜀᜅ᜔ that
Assignment Operator ay, = ᜀᜌ᜔ is, =
User Input pahingi ᜉᜑᜒᜅᜒ ask
Type Conversion isalin ᜁᜐᜎᜒᜈ᜔ convert
If Condition kung ᜃᜓᜅ᜔ if
Else If Condition okaya, o_kaya, ukaya, u_kaya, malibankung ᜋᜎᜒᜊᜈ᜔ᜃᜓᜅ᜔, ᜂᜃᜌ elseif
Else Condition kundi, kunghindi ᜃᜓᜈ᜔ᜇᜒ, ᜃᜓᜅ᜔ᜑᜒᜈ᜔ᜇᜒ else
While Loop habang ᜑᜊᜅ᜔ while
Return Statement ibalik ᜁᜊᜎᜒᜃ᜔ return
Array / List mga, bilang, [] ᜋᜅ, ᜊᜒᜎᜅ᜔, [] list, array, []
Boolean True tama ᜆᜋ true
Boolean False mali ᜋᜎᜒ false
Equality Comparison aytalagang, ==, === ᜀᜌ᜔ᜆᜎᜄᜅ᜔ isliterally, ==, ===
Not Equal / Inequality hindi, != ᜑᜒᜈ᜔ᜇᜒ not, !=
Comparison Operators <, <=, >, >= <, <=, >, >= <, <=, >, >=
Logical OR Operator o, ||, | or, ||, |
Logical AND Operator at, &&, & ᜀᜆ᜔ and, &&, &
Statement Terminator ; (Semi-Colon) (Single Danda) ;
Section Terminator (Double Danda) (Double Danda) ; / EOF

⚙️ Built-in Functions Reference Table / Talaan ng Karaniwang Tungkulin

Built-in Function Tagalog (Latin) English Equivalent Baybayin Description / Paliwanag
Length / Sukat haba(x), sukat(x), bilang(x) length(x), len(x), count(x), size(x) ᜑᜊ(x), ᜐᜓᜃᜆ᜔(x), ᜊᜒᜎᜅ᜔(x) Returns array length or string character count / Sukat o haba ng array o salita
Append / Idagdag dagdagan(arr, item), idagdag(...), isuksok(...) push(arr, item), append(...), add(...) ᜇᜄ᜔ᜇᜄᜈ᜔(arr, item), ᜁᜇᜄ᜔ᜇᜄ᜔(...), ᜁᜐᜓᜃ᜔ᜐᜓᜃ᜔(...) Appends an item to the array / Nagdaragdag ng elemento sa dulo ng array
Remove / Alisin alisin(arr, [idx]), tanggalin(...) pop(arr, [idx]), remove(...), delete(...) ᜀᜎᜒᜐᜒᜈ᜔(arr, [idx]), ᜆᜅ᜔ᜄᜎᜒᜈ᜔(...) Removes the last item or item at index / Nag-aalis ng elemento mula sa array
Contains / Nandyan nandyan(x, item), mayroon(...), meron(...) contains(x, item), includes(...) ᜈᜈ᜔ᜇ᜔ᜌᜈ᜔(x, item), ᜋᜌ᜔ᜇᜓᜂᜈ᜔(...) Checks if element or substring exists / Sinusuri kung naglalaman ng elemento o salita
Join / Pagsamahin pagsamahin(arr, delim) join(arr, delim) ᜉᜄ᜔ᜐᜋᜑᜒᜈ᜔(arr, delim) Joins array elements into a string / Pinagsasama ang mga elemento bilang string
Reverse / Baligtad baligtad(x) reverse(x) ᜊᜎᜒᜄ᜔ᜆᜇ᜔(x) Reverses array elements or string / Binabaligtad ang ayos ng array o salita
User Input / Pahingi pahingi(prompt) ask(prompt) ᜉᜑᜒᜅᜒ(prompt) Reads line of input from user / Tumatanggap ng input mula sa gumagamit
Type Conversion / Isalin isalin(val, type) convert(val, type) ᜁᜐᜎᜒᜈ᜔(val, type) Converts value to target datatype / Isinasalin ang halaga sa tinukoy na uri ng datos

🏷️ Type Conversion Targets / Mga Uri ng Datos sa Pagsasalin

Datatype Category Tagalog (Latin) English Equivalent Baybayin Description / Paliwanag
Integer / Bilang numero, bilang int, integer ᜊᜒᜎᜅ᜔ Whole integer numbers / Buong bilang
Float / Desimal hatian float, decimal ᜑᜆᜒᜀᜈ᜔ Floating point numbers / Bilang na may hating decimal
String / Salita salita string, str ᜐᜎᜒᜆ Textual string / Salita o teksto
Boolean / Tama o Mali baligtaran, kabilaan bool, boolean ᜊᜎᜒᜄ᜔ᜆᜇᜈ᜔, ᜃᜊᜒᜎᜀᜈ᜔ Boolean values (tama / true o mali / false)
Array / Listahan mga array, list ᜋᜅ Array or list collection / Listahan o koleksyon

🎓 Basic Tutorials / Gabay sa Paggamit

1. Print Functions / Pagpapahayag (Output)

Tagalog: Ang sabihin, o ipaliwanag ay ginagamit upang maglathala o magpakita ng mensahe at datos sa terminal o screen. ᜊᜌ᜔ᜊᜌᜒᜈ᜔: ᜀᜅ᜔ ᜐᜊᜒᜑᜒᜈ᜔᜵ ᜂ ᜁᜉᜎᜒᜏᜈᜄ᜔᜵ ᜀᜌ᜔ ᜄᜒᜈᜄᜋᜒᜆ᜔ ᜂᜉᜅ᜔ ᜋᜄ᜔ᜎᜆ᜔ᜑᜎ ᜂ ᜋᜄ᜔ᜉᜃᜒᜆ ᜈᜅ᜔ ᜋᜒᜈ᜔ᜐᜑᜒ ᜀᜆ᜔ ᜇᜆᜓᜐ᜔ ᜐ ᜆᜒᜇ᜔ᜋᜒᜈᜎ᜔᜶ English: The print, say, or tell keywords are used to display messages and data output to the terminal or screen.

Halimbawa / Example

// Tagalog
sabihin("Kamusta, Mundo!");
ipaliwanag "Mensahe mula sa Kalawang";

// English
print("Hello, World!");
say "Message from Kalawang";

2. Variables / Mga Lalagyanan ng Datos

Tagalog: Ang si, ang, o ipangalan ay ginagamit upang magdeklara ng lalagyanan (variable) para sa iba't ibang uri ng datos tulad ng bilang, salita, boolean, at array. ᜊᜌ᜔ᜊᜌᜒᜈ᜔: ᜀᜅ᜔ ᜐᜒᜀᜅ᜔᜵ ᜂ ᜁᜉᜅᜎᜈ᜔᜵ ᜀᜌ᜔ ᜄᜒᜈᜄᜋᜒᜆ᜔ ᜂᜉᜅ᜔ ᜋᜄ᜔ᜇᜒᜃ᜔ᜎᜇ ᜈᜅ᜔ ᜎᜎᜄ᜔ᜌᜈᜈ᜔ ᜉᜇ ᜐ ᜁᜊ'ᜆ᜔ ᜁᜊᜅ᜔ ᜂᜇᜒ ᜈᜅ᜔ ᜇᜆᜓᜐ᜔ ᜆᜓᜎᜇ᜔ ᜈᜅ᜔ ᜊᜒᜎᜅ᜔᜵ ᜐᜎᜒᜆ᜵ ᜊᜓᜂᜎᜒᜀᜈ᜔᜶ English: The that keywords are used to declare variables that store values such as numbers, strings, booleans, and arrays.

Halimbawa / Example

// Tagalog
si pangalan = "Maynila";
ipangalan edad = 2026;
si suma = 15 + 25;

sabihin pangalan;
sabihin edad;
sabihin suma;

// English
that name = "Manila";
that age = 2026;
that sum = 15 + 25;

print name;
print age;
print sum;

3. Assignment Operators / Pagpapasa ng Nilalaman

Tagalog: Ang ay, o = ay ginagamit upang maglagay o magtalaga ng halaga sa isang variable. ᜊᜌ᜔ᜊᜌᜒᜈ᜔: ᜀᜅ᜔ ᜀᜌ᜔᜵ ᜂ = ᜀᜌ᜔ ᜄᜒᜈᜄᜋᜒᜆ᜔ ᜂᜉᜅ᜔ ᜋᜄ᜔ᜎᜄᜌ᜔ ᜂ ᜋᜄ᜔ᜆᜎᜄ ᜈᜅ᜔ ᜑᜎᜄ ᜐ ᜁᜐᜅ᜔ ᜊᜇᜒᜀᜊ᜔ᜎᜒ᜶ English: The is, or = operators are used to assign or update values stored within variables.

Halimbawa / Example

// Tagalog
si lungsod ay "Maynila";
si taon = 2026;

lungsod ay "Quezon";
sabihin lungsod;

// English
that city is "Manila";
that year = 2026;

city is "Quezon";
print city;

4. User Input / Pagkuha ng Input

Tagalog: Ang pahingi ay ginagamit upang humingi o tumanggap ng datos mula sa gumagamit (user input). ᜊᜌ᜔ᜊᜌᜒᜈ᜔: ᜀᜅ᜔ ᜉᜑᜒᜅᜒ ᜀᜌ᜔ ᜄᜒᜈᜄᜋᜒᜆ᜔ ᜂᜉᜅ᜔ ᜑᜓᜋᜒᜅᜒ ᜂ ᜆᜓᜋᜅ᜔ᜄᜉ᜔ ᜈᜅ᜔ ᜇᜆᜓᜐ᜔ ᜋᜓᜎ ᜐ ᜄᜓᜋᜄᜋᜒᜆ᜔᜶ English: The ask function is used to prompt the user and receive input from the terminal.

Halimbawa / Example

// Tagalog
si pangalan = pahingi("Anong pangalan mo? ");
sabihin ("Kamusta, " + pangalan + "!");

// English
that name = ask("What is your name? ");
print ("Hello, " + name + "!");

5. Type Conversion / Pagpapalit ng Uri ng Datos

Tagalog: Ang isalin ay ginagamit upang baguhin ang uri ng datos (data type) ng isang halaga, tulad ng pagsasalin mula teksto patungong bilang (numero), desimal (hatian), salita (salita), boolean (kabilaan / baligtaran), o listahan (mga/array). ᜊᜌ᜔ᜊᜌᜒᜈ᜔: ᜀᜅ᜔ ᜁᜐᜎᜒᜈ᜔ ᜀᜌ᜔ ᜄᜒᜈᜄᜋᜒᜆ᜔ ᜂᜉᜅ᜔ ᜊᜄᜓᜑᜒᜈ᜔ ᜀᜅ᜔ ᜂᜇᜒ ᜈᜅ᜔ ᜇᜆᜓᜐ᜔ (datatype) ᜈᜅ᜔ ᜁᜐᜅ᜔ ᜑᜎᜄ᜵ ᜆᜓᜎᜇ᜔ ᜈᜅ᜔ ᜉᜄ᜔ᜐᜐᜎᜒᜈ᜔ ᜋᜓᜎ ᜆᜒᜃ᜔ᜐ᜔ᜆᜓ ᜉᜆᜓᜅᜓᜅ᜔ ᜊᜒᜎᜅ᜔᜵ ᜇᜒᜐᜒᜋᜎ᜔᜵ ᜐᜎᜒᜆ᜵ ᜊᜎᜒᜄ᜔ᜆᜇᜈ᜔᜵ ᜃᜊᜒᜎᜀᜈ᜔᜵ ᜂ ᜎᜒᜐ᜔ᜆᜑᜈ᜔᜶ English: The convert built-in function is used to cast or convert a value into a specified target datatype (int, float/decimal, string, bool/boolean, array/list).

Halimbawa / Example

// Tagalog
si teksto = "100";
si bilang_na_numero = isalin(teksto, numero);
si kabuuan = bilang_na_numero + 50;
sabihin ("Kabuuan: " + kabuuan);

si desimal = isalin("3.14", hatian);
si totoo = isalin("tama", kabilaan);

// English
that text = "100";
that parsed_number = convert(text, int);
that total = parsed_number + 50;
print ("Total: " + total);

that decimal_val = convert("3.14", float);
that is_valid = convert("true", kabilaan);

6. Conditionals (If / Else If / Else) / Pagsusuri ng Kondisyon

Tagalog: Ginagamit ang kung, okaya / ukaya / malibankung, at kundi / kunghindi upang magsagawa ng iba't ibang bahagi ng code batay sa katotohanan ng kondisyon. ᜊᜌ᜔ᜊᜌᜒᜈ᜔: ᜄᜒᜈᜄᜋᜒᜆ᜔ ᜀᜅ᜔ ᜃᜓᜅ᜔ᜂᜃᜌ / ᜂᜃᜌ / ᜋᜎᜒᜊᜈ᜔ᜃᜓᜅ᜔᜵ ᜀᜆ᜔ ᜃᜓᜈ᜔ᜇᜒ / ᜃᜓᜅ᜔ᜑᜒᜈ᜔ᜇᜒ ᜂᜉᜅ᜔ ᜋᜄ᜔ᜐᜄᜏ ᜈᜅ᜔ ᜁᜊ'ᜆ᜔ ᜁᜊᜅ᜔ ᜊᜑᜄᜒ ᜈᜅ᜔ code ᜊᜆᜌ᜔ ᜐ ᜃᜆᜓᜆᜓᜑᜈᜈ᜔ ᜈᜅ᜔ ᜃᜓᜈ᜔ᜇᜒᜐ᜔ᜌᜓᜈ᜔᜶ English: Conditional branching uses if, elseif, and else to control program flow based on boolean expressions.

Halimbawa / Example

// Tagalog
si marka = 85;

kung (marka >= 90) {
    sabihin "Napakagaling!";
} okaya (marka >= 75) {
    sabihin "Pumasa!";
} kundi {
    sabihin "Kailangang mag-aral pa.";
}

// English
that grade = 85;

if (grade >= 90) {
    print "Excellent!";
} elseif (grade >= 75) {
    print "Passed!";
} else {
    print "Need to study more.";
}

7. Loops (While Loop) / Paulit-ulit na Pagpapatupad

Tagalog: Ang habang ay ginagamit upang ulit-ulitin ang pagpapatupad ng isang bahagi ng code hangga't totoo ang ibinigay na kondisyon. ᜊᜌ᜔ᜊᜌᜒᜈ᜔: ᜀᜅ᜔ ᜑᜊᜅ᜔ ᜀᜌ᜔ ᜄᜒᜈᜄᜋᜒᜆ᜔ ᜂᜉᜅ᜔ ᜂᜎᜒᜆ᜔-ᜂᜎᜒᜆᜒᜈ᜔ ᜀᜅ᜔ ᜉᜄ᜔ᜉᜉᜆᜓᜉᜇ᜔ ᜈᜅ᜔ ᜁᜐᜅ᜔ ᜊᜑᜄᜒ ᜈᜅ᜔ ᜃᜓᜇᜒ ᜑᜅ᜔ᜄ'ᜆ᜔ ᜆᜓᜆᜓᜂ ᜀᜅ᜔ ᜁᜊᜒᜈᜒᜄᜌ᜔ ᜈ ᜃᜓᜈ᜔ᜇᜒᜐ᜔ᜌᜓᜈ᜔᜶ English: The while loop repeatedly executes a block of code as long as the specified condition remains true.

Halimbawa / Example

// Tagalog
si bilang = 1;

habang (bilang <= 5) {
    sabihin ("Bilang: " + bilang);
    bilang = bilang + 1;
}

// English
that count = 1;

while (count <= 5) {
    print ("Count: " + count);
    count = count + 1;
}

8. Arrays & Lists / Mga Listahan at Koleksyon

Tagalog: Maaaring gumawa ng mga listahan gamit ang bracket [] o ang mga(...) / bilang(...). Sinusuportahan ang pagkuha ng elemento gamit ang positibong index (arr[0]), negatibong lalagayan mula sa dulo (arr[-1]), at pagbabago ng elemento (arr[0] = bago). ᜊᜌ᜔ᜊᜌᜒᜈ᜔: ᜋᜀᜀᜇᜒᜅ᜔ ᜄᜓᜋᜏ ᜈᜅ᜔ ᜋᜅ ᜎᜒᜐ᜔ᜆᜑᜈ᜔ ᜄᜋᜒᜆ᜔ ᜀᜅ᜔ ᜊ᜔ᜇᜃ᜔ᜃᜒᜆ᜔ [] ᜂ ᜀᜅ᜔ ᜋᜅ(...) / ᜊᜒᜎᜅ᜔(...)᜶ ᜐᜒᜈᜓᜐᜓᜉᜓᜇ᜔ᜆᜑᜈ᜔ ᜀᜅ᜔ ᜉᜄ᜔ᜃᜓᜑ ᜈᜅ᜔ ᜁᜎᜒᜋᜒᜈ᜔ᜆᜓ ᜄᜋᜒᜆ᜔ ᜀᜅ᜔ ᜉᜓᜐᜒᜆᜒᜊᜓᜅ᜔ ᜁᜈ᜔ᜇᜒᜃ᜔ᜐ᜔ (arr[0])᜵ ᜈᜒᜄᜆᜒᜊᜓᜅ᜔ ᜎᜎᜄᜌᜈ᜔ ᜋᜓᜎ ᜐ ᜇᜓᜎᜓ (arr[-1])᜵ ᜀᜆ᜔ ᜉᜄ᜔ᜊᜊᜄᜓ ᜈᜅ᜔ ᜁᜎᜒᜋᜒᜈ᜔ᜆᜓ (arr[0] = ᜊᜄᜓ)᜶ English: Arrays and lists can be created using bracket syntax [] or constructors list(...) / array(...). Kalawang supports 0-based indexing (arr[0]), negative indexing from the end (arr[-1]), and in-place element modification (arr[0] = new_value).

Halimbawa / Example

// Tagalog
si mga_prutas = ["mangga", "saging", "pinya"];
si unang_prutas = mga_prutas[0];
si huling_prutas = mga_prutas[-1];

mga_prutas[1] = "bayabas";
sabihin mga_prutas;

// English
that fruits = ["mango", "banana", "pineapple"];
that first_fruit = fruits[0];
that last_fruit = fruits[-1];

fruits[1] = "guava";
print fruits;

9. Built-in Functions / Mga Karaniwang Tungkulin sa Array at String

Tagalog: Mayroong mga built-in functions para sa arrays at strings tulad ng haba/sukat, dagdagan/idagdag, alisin/tanggalin, nandyan/mayroon, pagsamahin, at baligtad. ᜊᜌ᜔ᜊᜌᜒᜈ᜔: ᜋᜌ᜔ᜇᜓᜂᜅ᜔ ᜋᜅ ᜊᜓᜁᜎ᜔ᜆ᜔-ᜁᜈ᜔ ᜉᜓᜈ᜔ᜃ᜔ᜆᜒᜂᜈ᜔ᜐ᜔ ᜉᜇ ᜐ ᜀᜇ᜔ᜇᜌ᜔ᜐ᜔ ᜀᜆ᜔ ᜐ᜔ᜆ᜔ᜇᜒᜅ᜔ᜐ᜔ ᜆᜓᜎᜇ᜔ ᜈᜅ᜔ ᜑᜊ/ᜐᜓᜃᜆ᜔ᜇᜄ᜔ᜇᜄᜈ᜔/ᜁᜇᜄ᜔ᜇᜄ᜔ᜀᜎᜒᜐᜒᜈ᜔/ᜆᜅ᜔ᜄᜎᜒᜈ᜔ᜈᜈ᜔ᜇ᜔ᜌᜈ᜔/ᜋᜌ᜔ᜇᜓᜂᜈ᜔ᜉᜄ᜔ᜐᜋᜑᜒᜈ᜔᜵ ᜀᜆ᜔ ᜊᜎᜒᜄ᜔ᜆᜇ᜔English: Kalawang provides built-in utilities for manipulating arrays and strings: length/len/count/size, push/append/add, pop/remove/delete, contains/includes, join, and reverse.

Halimbawa / Example

// Tagalog
si listahan = [10, 20, 30];

// Haba / Sukat
si kabuuang_sukat = haba(listahan);
sabihin ("Sukat: " + kabuuang_sukat);

// Pagdagdag ng elemento
dagdagan(listahan, 40);
sabihin listahan;

// Pag-alis ng huling elemento
si inalis = alisin(listahan);
sabihin ("Inalis: " + inalis);

// Pagsusuri kung nasa listahan
si meron_ba = nandyan(listahan, 20);
sabihin ("Nandyan ba ang 20: " + meron_ba);

// Pagsasama bilang string
si teksto = pagsamahin(listahan, " - ");
sabihin ("Pinagsama: " + teksto);

// Pagbabaligtad
si binaligtad = baligtad(listahan);
sabihin ("Binaligtad: " + binaligtad);

// English
that items = [10, 20, 30];

// Length / Size
that total_len = length(items);
print ("Length: " + total_len);

// Appending an element
append(items, 40);
print items;

// Removing the last element
that popped = pop(items);
print ("Popped: " + popped);

// Checking presence
that has_twenty = contains(items, 20);
print ("Contains 20: " + has_twenty);

// Joining into a string
that joined = join(items, " - ");
print ("Joined: " + joined);

// Reversing
that reversed_items = reverse(items);
print ("Reversed: " + reversed_items);

10. Operators / Mga Operator

Tagalog: Sinusuportahan ang matimatikong operasyon (+, -, *, /), paghahambing (aytalagang / == / ===, hindi / !=, <, <=, >, >=),at lohikal na operasyon (at / &&, o / ||). ᜊᜌ᜔ᜊᜌᜒᜈ᜔: ᜐᜒᜈᜓᜐᜓᜉᜓᜇ᜔ᜆᜑᜈ᜔ ᜀᜅ᜔ ᜋᜆᜒᜋᜆᜒᜃᜓᜅ᜔ ᜂᜉᜒᜇᜐ᜔ᜌᜓᜈ᜔ (+-*/)᜵ ᜉᜄ᜔ᜑᜑᜋ᜔ᜊᜒᜅ᜔ (ᜀᜌ᜔ᜆᜎᜄᜅ᜔ / == / ===ᜑᜒᜈ᜔ᜇᜒ / ᜶=<<=>>=)᜵ ᜀᜆ᜔ ᜎᜓᜑᜒᜃᜎ᜔ ᜈ ᜂᜉᜒᜇᜐ᜔ᜌᜓᜈ᜔ (ᜀᜆ᜔ / && / ||)᜶ English: Supports arithmetic operations (+, -, *, /), comparison operations (isliterally / == / ===, not / !=, <, <=, >, >=), and logical operators (and / &&, or / ||).

Halimbawa / Example

// Tagalog
si x = 10;
si y = 20;

si suma = x + y;
si ay_pantay = (x aytalagang y);
si lohikal = (x < y) at (y > 15);

sabihin ("Suma: " + suma);
sabihin ("Pantay ba: " + ay_pantay);
sabihin ("Lohikal: " + lohikal);

// English
that x = 10;
that y = 20;

that sum = x + y;
that is_equal = (x isliterally y);
that logical_check = (x < y) and (y > 15);

print ("Sum: " + sum);
print ("Equal: " + is_equal);
print ("Logical: " + logical_check);

Ilan lamang ito sa mga pangkaraniwang magagamit ninyo, para sa karagdagang halimbawa, maaari nyong bisitahin ang mga halimbawang ito.


📂 Example Files

Check out the included examples in the examples/ directory, separated into Tagalog, English, and Baybayin script folders:

  • Tagalog (Latin): examples/tagalog/ (hello.bay, array.bay, boolean.bay, conditional.bay, input.bay, math.bay, onesentence.bay, pattern.bay, test.bay, variables.bay)
  • English: examples/english/ (hello.bay, array.bay, boolean.bay, conditional.bay, input.bay, math.bay, onesentence.bay, pattern.bay, test.bay, variables.bay)
  • Baybayin Script: examples/baybayin/ (hello.bay, array.bay, boolean.bay, conditional.bay, input.bay, math.bay, onesentence.bay, pattern.bay, test.bay, variables.bay)

Run them directly:

# Using pre-built release executable:
./release/klwng examples/tagalog/array.bay

# Or using Cargo:
cargo run -- examples/tagalog/array.bay
cargo run -- examples/english/array.bay
cargo run -- examples/baybayin/array.bay

Behind the project

Human

  • Ryann Kim Sesgundo -> Project initiator

AI Models [From era or Kalawang]

  • ChatGPT -> Generating AGENT.md
  • Anti Gravity -> Code initiator and documentation

About

Salamat sa AI para sa pagtulong sa akin gawin tong laruan. Formerly (Sawa)

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Used by

Contributors

Languages