የክሪስታል ፕሮግራሚንግ ቋንቋ መለቀቅ 1.2

የክሪስታል 1.2 ፕሮግራሚንግ ቋንቋ መለቀቅ ታትሟል፣ ገንቢዎቹ በሩቢ ቋንቋ የመልማትን ምቾት በC ቋንቋ ካለው ከፍተኛ የመተግበሪያ አፈፃፀም ጋር ለማጣመር እየሞከሩ ነው። ምንም እንኳን አንዳንድ የሩቢ ፕሮግራሞች እንደገና ሳይሠሩ ቢሰሩም የክሪስታል አገባብ ቅርብ ነው ፣ ግን ከ Ruby ጋር ሙሉ በሙሉ ተኳሃኝ አይደለም። የማጠናቀሪያው ኮድ በክሪስታል የተፃፈ እና በ Apache 2.0 ፍቃድ ስር ይሰራጫል።

ቋንቋው በኮዱ ውስጥ ያሉ የተለዋዋጮችን እና የሥልት ነጋሪ እሴቶችን በግልፅ መግለጽ ሳያስፈልገው የሚተገበር የማይንቀሳቀስ ዓይነት ማረጋገጫን ይጠቀማል። የክሪስታል ፕሮግራሞች በማክሮ ግምገማ እና በተጠናቀረ ጊዜ በኮድ ማመንጨት ወደ ተፈጻሚነት ባላቸው ፋይሎች ይጠቃለላሉ። በክሪስታል ፕሮግራሞች በ C ቋንቋ የተፃፉ ማሰሪያዎችን ማገናኘት ይፈቀዳል. የኮድ ማስፈጸሚያ ትይዩ የሚከናወነው “ስፓውን” ቁልፍ ቃልን በመጠቀም ነው ፣ይህም የጀርባ ተግባርን ባልተመሳሰል ሁናቴ እንዲያካሂዱ ይፈቅድልዎታል ፣ ዋናውን ክር ሳይገድቡ ፣ ፋይበር (ፋይበር) በሚባሉት ቀላል ክብደት ያላቸው ክሮች መልክ።

መደበኛው ቤተ-መጽሐፍት CSVን፣ YAML እና JSONን ለማስተናገድ የሚረዱ መሳሪያዎችን፣ HTTP አገልጋዮችን ለመገንባት አካላትን እና የዌብሶኬት ድጋፍን ጨምሮ በርካታ አጠቃላይ ተግባራትን ያቀርባል። በእድገት ሂደት ውስጥ በክሪስታል ቋንቋ በይነተገናኝ ኮድ አፈፃፀም የድር በይነገጽ (localhost: 8080 በነባሪ) የሚያመነጨውን “የክሪስታል ጨዋታ” ትዕዛዝ ለመጠቀም ምቹ ነው።

ዋና ለውጦች፡-

  • የአጠቃላይ ክፍል ንዑስ ክፍልን ለወላጅ ክፍል አካል የመመደብ ችሎታ ታክሏል። ክፍል Foo (T); የመጨረሻ ክፍል ባር (ቲ) < Foo (T); መጨረሻ x = ፎ x = ባር
  • ማክሮዎች በ loop ውስጥ ያለውን እሴት ችላ ለማለት የስር ነጥብ መጠቀም ይችላሉ። {% ለ _, v, i በ {1=>2, 3=> 4, 5 => 6} %} p {{v + i}} {% መጨረሻ %}
  • ወደ ማክሮዎች የ"ፋይል_አለ?" ዘዴ ታክሏል። የፋይል መኖር መኖሩን ለማረጋገጥ.
  • መደበኛው ቤተ-መጽሐፍት አሁን ባለ 128-ቢት ኢንቲጀርን ይደግፋል።
  • ሊመረመር የሚችል::የሚለዋወጥ(T) ሞጁል እንደ BitArray እና Deque ላሉ ስብስቦች የላቁ ስራዎችን በመተግበር ላይ። ba = BitArray.new(10) # ba = BitArray[0000000000] ባ[0] = እውነት #ባ = BitArray[1000000000] ባ.አሽከርክር!(-1) # ba = BitArray[0100000000]
  • አንድ የተወሰነ የስም ቦታ ከኤክስኤምኤል ለማውጣት XML::Node#namespace_definition ዘዴ ታክሏል።
  • የ IO#write_utf8 እና URI.encode ዘዴዎች ተቋርጠዋል እና በ IO#write_string እና URI.encode_path መተካት አለባቸው።
  • ለ 32-ቢት x86 አርክቴክቸር ድጋፍ ወደ ሁለተኛው ደረጃ ተወስዷል (ዝግጁ ፓኬጆች ከአሁን በኋላ አይፈጠሩም)። ለ ARM64 አርክቴክቸር ወደ መጀመሪያው የድጋፍ ደረጃ ሽግግር እየተዘጋጀ ነው።
  • ለዊንዶው ፕላትፎርም ሙሉ ድጋፍን ለማረጋገጥ ስራው ቀጥሏል። ለዊንዶውስ ሶኬቶች ድጋፍ ታክሏል.
  • ሁለንተናዊ ፓኬጅ ለ macOS ታክሏል፣ ለሁለቱም x86 ፕሮሰሰር ባላቸው መሳሪያዎች እና በ Apple M1 ቺፕ ላይ ባሉ መሳሪያዎች ላይ ይሰራል።

ምንጭ: opennet.ru

አስተያየት ያክሉ