// Reading a line from standard input. Try: echo Noor | ./program
import std.io.println;
import std.io.read_line;
import std.text.transform;
def main(): int {
match read_line() with
| result.ok(line) -> {
let name: string = trim(&line);
if (length(name) == 0) {
println("no input");
} else {
let parts: vector string = ["Hello, ", name];
let nothing: string = "";
println(join(&parts, ¬hing));
};
}
| result.err(_) -> { println("no input"); };
return 0;
}// قراءة سطر من الإدخال القياسي. جرّب: echo نور | ./program
استورد std.io.println;
استورد std.io.read_line;
استورد std.text.transform;
عرف الرئيسية(): عدد {
طابق اقرأ_السطر() مع
| نتيجة.نجح(السطر) -> {
دع الاسم: نص = قص_النص(&السطر);
إذا (الطول(الاسم) == 0) {
اطبع_سطر("لا يوجد مدخل");
} وإلا {
دع الأجزاء: متجه نص = ["أهلا يا ", الاسم];
دع لا_شيء_نصي: نص = "";
اطبع_سطر(صل_النصوص(&الأجزاء, &لا_شيء_نصي));
};
}
| نتيجة.خطأ(_) -> { اطبع_سطر("لا يوجد مدخل"); };
أرجع 0;
}
Run it
With the interpreter, without compiling:
./build/sultanc run examples/en/io/read_input.snOr compile it to an executable:
./build/sultanc examples/en/io/read_input.sn -o build/example && ./build/example