Guhertoya nû ya zimanê bernameyê Nim 0.20

pêk hat serbestberdana zimanê bernamesaziya pergalê Nim 0.20.0. Ziman tîpkirina statîk bikar tîne û di hişê Pascal, C++, Python û Lisp de hate afirandin. Koda çavkaniyê Nim di nav nûneriyek C, C++, an JavaScript de tête berhev kirin. Dûv re, koda C/C++ ya ku tê encamdan bi karanîna her berhevkarek berdest (clang, gcc, icc, Visual C++) di pelek îcrakar de tê berhev kirin, ku dihêle hûn performansa nêzî C-yê bi dest bixin, ger hûn lêçûnên xebitandinê hesab nekin. berhevkarê çopê. Mîna Python, Nim wekî veqetandina blokan veqetandinê bikar tîne. Amûr û kapasîteyên metaprogramkirinê yên ji bo afirandina zimanên taybetî yên domainê (DSL) têne piştgirî kirin. Koda projeyê peyda kirin di bin lîsansa MIT.

Daxuyaniya Nim 0.20 dikare wekî berendamek ji bo yekem serbestberdana 1.0 ya stabîl were hesibandin, ku gelek guhertinên têkbir-veguheztinê yên ku hewce ne ji bo damezrandina şaxa yekem a stabîl a ku dê rewşa zimên pêk bîne vedihewîne. Guhertoya 1.0 wekî serbestberdana destekek bi îstîqrar, dirêj-dirêj tête binav kirin ku dê were garantî kirin ku lihevhatina paşverû di beşa stabîlkirî ya ziman de biparêze. Ji hev veqetandî, berhevkar dê di heman demê de modek ceribandinê jî hebe, ku tê de dê taybetmendiyên nû werin pêşve xistin ku dibe ku lihevhatina paşverû binpê bikin.

Di nav guhertinên ku di Nim 0.20 de têne pêşniyar kirin ev in:

  • "Ne" naha her gav operatorek yekane ye, yanî. bêjeyên wek “bibêjin(ne a)” niha nayên destûr kirin û tenê “dibêjin ne a” destûr tê dayîn;
  • Di qonaxa berhevkirinê de ji bo veguheztina jimareyên bêkêmasî û hejmarên rastîn kontrolên hişk çalak kirin, ango. îfadeya "const b = uint16(-1)" niha dê bibe sedema xeletiyekê, ji ber ku -1 nikare bibe celebek bênîşan;
  • Ji bo domdar û guhêrbarên lûkê venekirina tupleyan tê peyda kirin.
    Mînakî, niha hûn dikarin peywirên wekî 'const (d, e) = (7, "heşt")" û "ji bo (x, y) di f" de bikar bînin;

  • Destpêkirina xwerû ya haşe û tabloyan peyda kir. Mînakî, piştî ragihandina "var s: HashSet[int]" hûn dikarin tavilê "s.incl(5)" bikin, ku berê bû sedema xeletiyek;
  • Agahdariya çewtiyê ya çêtirîn ji bo pirsgirêkên têkildarî operatorê "doz" û navnîşa rêzê ya derveyî sînor;
  • Guhertina dirêjahiya tabloyê di dema dubarekirinê de qedexe ye.

Source: opennet.ru

Add a comment