Nooca cusub ee luqadda barnaamijka Nim 0.20

dhacay siidaynta luuqada programming-ka Nim 0.20.0. Luqadda waxay isticmaashaa qorida static waxaana la abuuray iyadoo maskaxda lagu hayo Pascal, C++, Python iyo Lisp. Koodhka isha Nim waxa lagu soo ururiyey C, C++ ama matalaad JavaScript. Ka dib, natiijada C/C++ code waxaa lagu soo ururiyay fayl la fulin karo iyadoo la adeegsanayo isku-dubarid kasta oo la heli karo (clang, gcc, icc, Visual C ++), kaas oo kuu ogolaanaya inaad ku guulaysato waxqabadka ku dhow C, haddii aadan xisaabta ku dareynin kharashka socodka qashin ururiyaha. Si la mid ah Python, Nim waxay u isticmaashaa soo gelista sidii xannibaadayaal. Aaladaha metaprogramming-ka iyo awoodaha lagu abuurayo luqadaha gaarka ah ee domain (DSLs) waa la taageerayaa. Koodhka mashruuca la keenay hoos shatiga MIT.

Siideynta Nim 0.20 waxaa loo tixgalin karaa inuu yahay musharraxa siideynta 1.0 ee xasiloon ee ugu horreysa, oo ay ku darayso dhowr isbeddel oo wada shaqeyn-jabin ah oo loo baahan yahay si loo sameeyo laanta ugu horreysa ee xasilloon taasoo geli doonta xaaladda luqadda. Nooca 1.0 waxaa loo tixgaliyaa inuu yahay mid xasilloon, siideynta taageerada muddada-dheer taas oo loo dammaanad qaadi doono in la sii wado ku- wanagsanaanta gadaal-u-dhac ee qaybta xasilan ee luqadda. Si gooni ah, isku-dubariduhu wuxuu sidoo kale lahaan doonaa qaab tijaabo ah oo la heli karo kaas oo sifooyin cusub oo laga yaabo inay jebiyaan iswaafajinta dib loo horumarin doono.

Waxaa ka mid ah isbeddelada lagu soo jeediyay Nim 0.20:

  • "Maya" hadda had iyo jeer waa hawlwadeen aan caadi ahayn, i.e. tibaaxaha sida "sheeg (ma a)" hadda lama oggola oo kaliya "sheeg ma a" waa la oggol yahay;
  • La sahlay hubinta adag ee beddelka tirooyinka iyo tirooyinka dhabta ah ee marxaladda isku-ururinta, i.e. odhaahda "const b = uint16(-1)" waxay hadda keeni doontaa khalad, maadaama -1 aan loo rogi karin nooc isugeyn aan saxiixin;
  • Baakadaha tuples ee joogtada ah iyo doorsoomayaasha loop ayaa la bixiyaa.
    Tusaale ahaan, hadda waxaad isticmaali kartaa shaqooyinka sida 'const (d, e) = (7, "sided")' iyo "loogu talagalay (x, y) ee f";

  • La siiyay bilowga hashes iyo miisaska caadiga ah. Tusaale ahaan, ka dib markaad ku dhawaaqdo "var s: HashSet[int]" waxaad isla markiiba fulin kartaa "s.incl(5)", taas oo hore u keentay qalad;
  • Macluumadka khaladka ee la hagaajiyay ee dhibaatooyinka la xidhiidha hawlwadeenka "kiiska" iyo tusmada soo diyaarsan ee ka baxsan xadka;
  • Beddelidda dhererka miiska inta lagu jiro soo-celinta waa mamnuuc.

Source: opennet.ru

Add a comment