الدوال
تعريف دالة
sad
دالة جمع(أ، ب)
ارجع أ + ب
نهاية
متغير ناتج = جمع(3، 5)
اطبع(ناتج) # 8الوسائط الافتراضية
sad
دالة رحّب(اسم، تحية = "مرحباً")
اطبع_سطر(تحية + " يا " + اسم + "!")
نهاية
رحّب("أحمد") # مرحباً يا أحمد!
رحّب("سارة"، "أهلاً") # أهلاً يا سارة!الدوال المجهولة (لامدا)
sad
متغير مربع = لامدا(س) ارجع س * س نهاية
اطبع(مربع(4)) # 16
اطبع(مربع(7)) # 49sad
# لامدا متعددة الأسطر
متغير مرشّح = لامدا(قائمة، شرط)
متغير نتيجة = []
لكل عنصر في قائمة
إذا (شرط(عنصر))
نتيجة.أضف(عنصر)
نهاية
نهاية
ارجع نتيجة
نهاية
متغير أرقام = [1، 2، 3، 4، 5، 6، 7، 8، 9، 10]
متغير زوجية = مرشّح(أرقام، لامدا(ن) ارجع ن % 2 == 0 نهاية)
اطبع(زوجية) # [2، 4، 6، 8، 10]الدوال كقيم
sad
دالة نفّذ_دالتين(د1، د2، قيمة)
ارجع د2(د1(قيمة))
نهاية
دالة ضاعف(ن) ارجع ن * 2 نهاية
دالة أضف_عشرة(ن) ارجع ن + 10 نهاية
اطبع(نفّذ_دالتين(ضاعف، أضف_عشرة، 5)) # 20الدوال المتكررة (Recursive)
sad
دالة عاملي(ن)
إذا (ن <= 1)
ارجع 1
نهاية
ارجع ن * عاملي(ن - 1)
نهاية
اطبع(عاملي(5)) # 120
اطبع(عاملي(10)) # 3628800الدوال غير المتزامنة
sad
غير_متزامن دالة جلب_بيانات(رابط)
متغير رد = انتظر طلب_http(رابط)
ارجع رد.النص()
نهاية
غير_متزامن دالة الرئيسية()
متغير بيانات = انتظر جلب_بيانات("https://api.example.com/data")
اطبع_سطر(بيانات)
نهايةإرجاع قيم متعددة
sad
دالة قسمة_مع_باقي(أ، ب)
ارجع [أ / ب، أ % ب]
نهاية
متغير نتائج = قسمة_مع_باقي(17، 5)
اطبع("الحاصل: " + نتائج[0]) # 3
اطبع("الباقي: " + نتائج[1]) # 2التالي: التحكم في التدفق ←