Crystal 0.34.0 ထွက်ရှိသည်။

Crystal ၏ ဗားရှင်းအသစ် ထွက်ရှိထားပြီး၊ Ruby syntax ဖြင့် စုစည်းထားသော ပရိုဂရမ်းမင်းဘာသာစကား၊ I/O လုပ်ဆောင်ချက်များအားလုံးသည် အညီအမျှဖြစ်ပြီး၊ multithreading အတွက် ပံ့ပိုးမှုဖြစ်သည့် “built-in” event loop ဖြင့် runtime ၏ အဓိကအင်္ဂါရပ်များမှာ၊ စုစည်းမှုအတွင်း အလံတစ်ခုက ဖွင့်ထားသောကြောင့်) နှင့် C ရှိ စာကြည့်တိုက်များဖြင့် အလွန်ရိုးရှင်းပြီး အဆင်ပြေသော လုပ်ဆောင်မှု။

ဗားရှင်း 0.34.0 မှစတင်၍ ဘာသာစကားသည် ၎င်း၏ပထမဆုံးအစစ်အမှန်ဖြန့်ချိမှုဆီသို့ (ဆိုလိုသည်မှာ ဗားရှင်း 1.0) သို့ တရားဝင်စတင်လာသည်။

Crystal ဗားရှင်းအသစ်တွင် အရေးပါမှုအစီအစဥ်အလိုက် အောက်ပါပြောင်းလဲမှုများနှင့် တိုးတက်မှုများ ပါဝင်သည်-

  • လော့ဂ်အင်အသစ်တစ်ခုကို API သို့ ပေါင်းထည့်လိုက်ပါပြီ။ တုံး၎င်းသည် အဟောင်းနှင့်မတူဘဲ မတူညီသော နောက်ခံများထံ မက်ဆေ့ချ်များ ပေးပို့နိုင်ပြီး “ရင်းမြစ်” ပေါ်မူတည်၍ ဤမက်ဆေ့ချ်များကို ကွဲပြားစွာ စစ်ထုတ်နိုင်သည်။

  • C ဖွံ့ဖြိုးတိုးတက်မှုကမ္ဘာမှ အစွန်းအထင်းများ၊ Errno и WinErrorI/O primitives များအတွက် အသုံးပြုထားသော၊ ခြွင်းချက် အထက်တန်းအဆင့်ကြောင့် အတိတ်၏အရာတစ်ခုဖြစ်လာသည် IO::အမှား (သို့သော်၊ Errno အသုံးပြုခြင်းကို မည်သူမျှ မတားမြစ်သေးပါ။)

  • အော်ပရေတာမှ else nil ၏ အလိုအလျောက်အစားထိုးမှုကို ဖယ်ရှားခဲ့သည်။ ကိစ္စ/အချိန်/အခြား. ဆော့ဖ်ဝဲရေးသားသူသည် အကိုင်းအခက်များထဲမှ တစ်ခုကို မတော်တဆ ကျော်သွားခြင်းမှ ကာကွယ်ရန်အတွက် ၎င်းကို လုပ်ဆောင်သည်။ အခါ, enums နှင့် Union မှအမျိုးအစားများကိုဖြတ်သန်းခြင်းကဲ့သို့သောအဆုံးအဖြတ်ဆိုင်ရာကိစ္စရပ်များအပေါ်ကိုက်ညီသောအခါ။ ဆိုလိုသည်မှာ ရိုးရိုးရှင်းရှင်းပြောရလျှင် ဤကုဒ်သည် နောက်ထပ်တစ်ခုမသတ်မှတ်ဘဲ အလုပ်မဖြစ်တော့ပါ။ အခါ, (အခါ Char) သို့မဟုတ် အလုပ်များ အခြားသူ- ဌာနခွဲများ

a=1|| 'x' || "ဖူ"
ဖြစ်ရပ်တစ်ခု
Int32 တုန်းကပေါ့။
#…
ဘယ်အချိန်မှာ String လဲ။
#…
အဆုံး

  • Compiler ရွေးချယ်မှု disable_overflow မရနိုင်တော့ပါ။ ပြည့်လျှံနေသော လုပ်ဆောင်ချက်များအတွက် &+, &-, &* နည်းလမ်းများကို အသုံးပြုပါ။

  • Array#fill ယခု ကျည်ဆံထက် ပိုမြန်လေလေ၊

  • Manager of shards (packages) ဟုခေါ်သော ရှေ့နောက်၊ shardsယခု CocoaPods (Swift) နှင့် Builder (Ruby) တွင်တွေ့ရသော ပိုမိုမြန်ဆန်ပြီး ထိရောက်သော Molinillo မှီခိုကျေနပ်မှု အယ်လဂိုရီသမ်ကို အသုံးပြုပါသည်။

  • ပံ့ပိုးကူညီမှု တို့ကို ထည့်သွင်းခဲ့သည်။ LLVM 10သီအိုရီအရ ကျွန်ုပ်တို့အား ကုန်ထုတ်စွမ်းအား၊ တည်ငြိမ်မှု အစရှိသည်တို့ကို တိုးမြင့်စေမည်ဖြစ်သည်။

... နှင့်အခြားများစွာသော၊ ကျွန်ုပ်၏ပုဂ္ဂလဒိဋ္ဌိအမြင်အရ သိသာထင်ရှားသောတိုးတက်မှုနည်းပါးပါသည်။

Crystal သည် LLVM တွင်တည်ဆောက်ထားသောဘာသာစကားဖြစ်ပြီး၊ ၎င်းသည်၎င်း၏ဘာသာပြန်ဆိုထားသော "ညီအစ်ကိုများ" ထက် တစ်ခါတစ်ရံပိုမိုမြန်ဆန်၊ ပိုမိုရိုးရှင်းကာ တိုတိုတုတ်တုတ်ရေးသားနိုင်စေကာ တစ်ချိန်တည်းမှာပင် ရလဒ်အနေဖြင့် အတော်လေးမြန်သော binary ကိုရရှိမည်ဖြစ်သည်။ Golang နှင့် နှိုင်းယှဉ်ပါက ၎င်း၏ လုံးဝပြည့်စုံသော OOP၊ ယေဘူယျ ပံ့ပိုးမှု၊ နှင့် အလွန်ရိုးရှင်းပြီး နားလည်နိုင်သော syntax ကြောင့် ထင်ရှားသည်။ ၎င်း၏ရည်ရွယ်ချက်သည် Nim နှင့်အလွန်ဆင်တူသည်၊ သို့သော်တစ်ချိန်တည်းမှာပင်၎င်းသည်၎င်း၏ API arsenal တွင်ပါ ၀ င်သောကြောင့်၎င်း၏ API arsenal တွင်ကောင်းမွန်စွာမှတ်တမ်းတင်ထားသော၊ အဆင်ပြေပြီးအရည်အသွေးမြင့်ကိရိယာများစွာကိုလက်တွေ့ကျသော "ဒီမှာနှင့်ယခု" တွင်ရှင်းလင်းစွာအာရုံစိုက်ထားသည်။ ဘာသာစကား developer များနှင့်ထို့ကြောင့်အလွန်တည်ငြိမ်။

source: linux.org.ru

မှတ်ချက် Add