Faiga fou ole gagana polokalame Nim 0.20

na tupu fa'asa'olotoga gagana polokalame Ole 0.20.0. O le gagana e fa'aogaina le ta'i fa'amau ma fausia ma Pascal, C++, Python, ma Lisp i le mafaufau. Nim source code o lo'o tu'ufa'atasia i se fa'atusa C, C++, po'o le JavaScript. Mulimuli ane, o le taunuuga C / C ++ code ua tuʻufaʻatasia i totonu o se faila faila e faʻaaoga ai soʻo se tuʻufaʻatasiga avanoa (clang, gcc, icc, Visual C ++), lea e mafai ai ona e ausia le faʻatinoga latalata ile C, pe afai e te le amanaʻia le tau o le tamoe. o le ao lapisi. E tutusa ma le Python, e faʻaogaina e Nim le faʻailoga e fai ma poloka poloka. Metaprogramming meafaigaluega ma gafatia mo le fatuina o gagana faʻapitoa (DSLs) e lagolagoina. Laiti Poloketi sapalai i lalo ole laisene MIT.

O le fa'asa'olotoina o le Nim 0.20 e mafai ona va'aia o se sui fa'asa'oloto mo le fa'amalologa muamua 1.0 fa'amautu, e aofia ai le tele o suiga fa'atatau-solia e mana'omia e fausia ai le lala mautu muamua e fa'atino le tulaga o le gagana. Fa'aliliuga 1.0 o lo'o fa'ailoaina ose fa'asa'olotoga, fa'atumauina taimi umi lea o le a fa'amautinoa e fa'amautu le feso'ota'iga i tua i le vaega mautu o le gagana. E ese'ese, o le a maua fo'i se faiga fa'ata'ita'i i le tu'ufa'atasi, lea o le a atia'e ai ni foliga fou e ono malepe ai le fetaui i tua.

O suiga na fa'atu mai ile Nim 0.20, e mafai ona tatou fa'ailoa:

  • "Leai" o loʻo avea nei ma se tagata faʻapitoa, i.e. o fa'amatalaga e pei o le "fa'ailoa (e le o se)" ua le aoga ma na'o le "fa'amaonia le le" ua fa'atagaina;
  • O siaki faigata mo le faaliliuina o numera ma numera moni i le taimi faʻapipiʻi e mafai, i.e. o le faaupuga "const b = uint16(-1)" o le a iu ai i se mea sese, talu ai -1 e le mafai ona liua i se ituaiga numera e le'i sainia;
  • O lo'o tu'uina atu le tatalaina o tuples mo fa'amaumau ma fa'alavelave fa'aletonu.
    Mo se fa'ata'ita'iga, o tofiga e pei o le 'const (d, e) = (7, "valu")' ma le "mo (x, y) i le f" ua mafai nei ona fa'aoga;

  • Tuuina atu le fa'aulufaleina fa'atomuaga o hashes ma laulau. Mo se faʻataʻitaʻiga, a maeʻa ona faʻaalia "var s: HashSet[int]" e mafai ona e faʻatinoina loa le "s.incl(5)", lea na masani ona taʻitaʻia ai se mea sese;
  • Faʻaleleia le faʻamatalaga faʻamatalaga o mea sese mo faʻafitauli e fesoʻotaʻi ma le "case" operator ma le array index out of bounds;
  • E fa'asa ona sui le umi o le laulau a'o fa'ata'ita'i.

puna: opennet.ru

Faaopoopo i ai se faamatalaga