Tionndadh ùr de chànan prògramadh Nim 0.20

thachair sgaoileadh cànan prògramadh siostam Nis 0.20.0. Bidh an cànan a’ cleachdadh clò-sgrìobhadh statach agus chaidh a chruthachadh le Pascal, C ++, Python agus Lisp san amharc. Tha còd stòr Nim air a chur ri chèile ann an riochdachadh C, C ++, no JavaScript. Às deidh sin, tha an còd C / C ++ a thig às air a chur ri chèile ann am faidhle so-ghnìomhaichte a’ cleachdadh inneal-cruinneachaidh sam bith a tha ri fhaighinn (clang, gcc, icc, Visual C ++), a leigeas leat coileanadh a choileanadh faisg air C, mura toir thu aire do na cosgaisean ruith. an neach-cruinneachaidh sgudail. Coltach ri Python, bidh Nim a’ cleachdadh indentation mar delimiters bloc. Thathas a’ toirt taic do dh’ innealan metaprogramming agus comasan airson cànanan a tha sònraichte don àrainn (DSLn) a chruthachadh. Còd a ' phròiseact air a thoirt seachad fo chead MIT.

Faodar beachdachadh air an naidheachd Nim 0.20 mar thagraiche airson a’ chiad sgaoileadh 1.0 seasmhach, a’ toirt a-steach grunn atharrachaidhean eadar-obrachaidh a dh’ fheumar gus a’ chiad mheur seasmhach a chruthachadh a bheir suidheachadh a’ chànain. Thathas a’ bruidhinn air dreach 1.0 mar sgaoileadh taic seasmhach, fad-ùine a bhios cinnteach gun cùm e co-chòrdalachd air ais ann am pàirt seasmhach a’ chànain. Air leth, bidh modh deuchainneach aig an inneal-cruinneachaidh cuideachd far an tèid feartan ùra a leasachadh a dh’ fhaodadh co-fhreagarrachd a bhriseadh air ais.

Am measg nan atharrachaidhean a chaidh a mholadh ann an Nim 0.20 tha:

  • Tha “Chan eil” a-nis na ghnìomhaiche aon-thaobhach, i.e. chan eil abairtean mar “asert (not a)” ceadaichte a-nis agus chan eil ach “sert not a” ceadaichte;
  • A’ comasachadh sgrùdaidhean teann airson àireamhan iomlan agus fìor àireamhan a thionndadh aig an ìre cruinneachaidh, i.e. bidh an abairt "const b = uint16(-1)" a-nis ag adhbhrachadh mearachd, leis nach urrainn -1 a thionndadh gu seòrsa slàn-shìnte gun ainm;
  • Thathas a’ toirt seachad dì-phapadh tuples airson caochladairean seasmhach agus lùb.
    Mar eisimpleir, a-nis faodaidh tu sònrachaidhean a chleachdadh mar 'const (d, e) = (7, "ochd")" agus "airson (x, y) ann am f";

  • Cho fad ‘s a chaidh hashes agus bùird a thòiseachadh gu bunaiteach. Mar eisimpleir, às deidh dhut “var s: HashSet[int]” ainmeachadh faodaidh tu “s.incl(5)) a chuir an gnìomh sa bhad, a dh’ adhbhraich mearachd roimhe seo;
  • Fiosrachadh mearachd nas fheàrr airson duilgheadasan co-cheangailte ris a’ ghnìomhaiche “cùis” agus clàr-amais raon taobh a-muigh chrìochan;
  • Tha e toirmisgte fad a’ bhùird atharrachadh rè ath-aithris.

Source: fosgailtenet.ru

Cuir beachd ann