Nouvo vèsyon lang pwogramasyon Nim 0.20

pran plas lage langaj pwogramasyon sistèm lan Nim 0.20.0. Lang lan sèvi ak sezisman estatik e li te kreye ak Pascal, C++, Python ak Lisp nan tèt ou. Kòd sous Nim konpile nan yon reprezantasyon C, C++, oswa JavaScript. Imedyatman, kòd C/C++ ki kapab lakòz yo konpile nan yon dosye ègzèkutabl lè l sèvi avèk nenpòt du ki disponib (clang, gcc, icc, Visual C++), ki pèmèt ou reyalize pèfòmans tou pre C, si ou pa pran an kont depans pou kouri. pèseptè fatra a. Menm jan ak Python, Nim itilize endentasyon kòm delimiter blòk. Zouti metaprogramasyon ak kapasite pou kreye lang espesifik domèn (DSL) yo sipòte. Kòd pwojè apwovizyone anba lisans MIT.

Lage Nim 0.20 la ka konsidere kòm yon kandida pou premye lage 1.0 ki estab, ki enkòpore plizyè chanjman entèoperabilite ki nesesè pou fòme premye branch ki estab ki pral komèt eta lang lan. Yo fè konnen vèsyon 1.0 kòm yon sipò ki estab, alontèm ki pral garanti pou kenbe konpatibilite bak nan pati estabilize lang lan. Separeman, du a pral gen tou yon mòd eksperimantal ki disponib nan ki nouvo karakteristik ki ka kraze konpatibilite bak yo pral devlope.

Pami chanjman ki pwopoze nan Nim 0.20 yo se:

  • "Pa" se kounye a toujou yon operatè inèr, i.e. ekspresyon tankou "assert(not a)" yo pa pèmèt kounye a epi sèlman "assert not a" yo pèmèt;
  • Pèmèt chèk strik pou konvèsyon nonm antye ak nimewo reyèl nan etap konpilasyon an, i.e. ekspresyon "const b = uint16(-1)" kounye a pral lakòz yon erè, paske -1 pa ka konvèti nan yon kalite nonb siy;
  • Yo bay debalaj tuple pou konstan ak varyab bouk.
    Pou egzanp, kounye a ou ka itilize devwa tankou 'const (d, e) = (7, "uit")" ak "pou (x, y) nan f";

  • Bay inisyalizasyon default nan hash ak tab. Pou egzanp, apre yo fin deklare "var s: HashSet[int]" ou ka imedyatman egzekite "s.incl(5)", ki te deja mennen nan yon erè;
  • Amelyore enfòmasyon sou erè pou pwoblèm ki gen rapò ak operatè "ka" ak endèks etalaj andeyò limit;
  • Chanje longè tab la pandan iterasyon entèdi.

Sous: opennet.ru

Add nouvo kòmantè