برنامه نویسی

MiniLang – انجمن DEV

لینک Github

جانشین نوع C که مستقیماً در پلتفرم‌های مختلف کامپایل می‌شود.

انگیزه

این زبان برای نزدیک طراحی شده است ویژگی های ج را مطابقت دهید همراه با برخی سربار صفر بهبود کیفیت زندگی که در یک زبان مدرن، با حفظ آن، می‌یابید سهولت یادگیری زبان (در حدود 10 دقیقه یا کمتر از طریق QUICKSTART.md). علاوه بر این، نوع سیستم است سختگیرتر از ج، که از اشکالات (نقص) رایج زبان c جلوگیری می کند. ایمنی حافظه همچنین یک نگرانی اولیه است. در مورد سازگاری c، زبان این است سازگاری دوطرفه با c (c را می توان در ML استفاده کرد، ML را می توان در c استفاده کرد).

ویژگی های خاص زبان

  • ساخته شده است
  • بولین ها
  • منابع
  • اعداد صحیح با طول ثابت
  • نشانگرهای با طول ثابت
  • استنتاج تایپ کنید
  • Heredocs
  • نام مستعار
  • به تعویق انداختن
  • واردات
  • فضاهای نام
  • ماکروهای بهداشتی
  • اضافه بار عملکرد
  • نحو فراخوانی تابع یکنواخت (UFCS)
  • عبارات چند خطی

امکانات

  • نوین
  • تالیف شد
  • به شدت تایپ شده است
  • اضافه بار عملکرد
  • سیستم ماکرو بهداشتی
  • C سازگاری دو طرفه
  • نحو فراخوانی تابع یکنواخت (UFCS)
  • با قابلیت یادگیری و استفاده آسان
  • منحنی یادگیری مسطح

نمونه ها

سلام دنیا

# From samples/helloworld/src/main.ml:
import "stdlib/print"

fun main: int32
    print "Hello World!"
    ret 0
end
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

رشته (UFCS)

# From samples/str-ufcs/src/main.ml:
import "stdlib/print"
import "stdlib/string"

fun main: int32
    # Is equivalent to:
    # print(concat(str("Hello "), str("World!")))
    (str("Hello ").
        concat(str("World!")).
        print)
end
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

FizzBuzz

# From samples/fizzbuzz/src/main.ml:
import "stdlib/print"

fun fizz_buzz(num: int64): void
    let idx = 1

    while idx 
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا