Dimittis de lingua programmandi Haxe 4.1

available toolkit emissio Haxe 4.1, quod multi-paradigma altum-gradum programmandi linguae eiusdem nominis cum validis typingibus, compilator crucis et bibliothecae functionum vexillum comprehendit. Project translationem ad C++, HashLink/C, JavaScript, C#, Java, PHP, Python et Luae adiuvat, necnon compilationem ad JVM, HashLink/JIT, Flash et Neko bytecode, cum accessu ad facultates indigenas cuiusque scoporum suggestuum. Compiler codice per distribui sub licentia GPLv2 et bibliotheca vexillum et machinis virtualis Haxe . excultis HashLink ΠΈ neko sub licentia MIT.

Lingua is expressio orientatur validis typing. Objectum ordinatum, genericum et munus programmandi artes adiuvantur. Haxe syntaxin prope ECMAscript and expands eius lineamenta ut typing statice, autotypum illationis, exemplar congruens, generica, iterator-substructio loramenta, AST macros, GADT (genera genera data genera Algebraica), species abstracta, structurae anonymae, definitiones ordinatae simpliciores, locutiones condicionales compilationem, metadata campis applicans. , genera et locutiones, interpolatio chorda ("nomen meum nomen est"), parametri genus ('new Main. ("foo")') et quanto magis.

class Test {
static munus principale () {
final populus = [
"ELISABETHAM" => "Programma";
"Joel" => "Design"
];

for (nomen => officium in populo) {
vestigium ('$nomen$ officium pro vivi!');
}
}
}

Novae lineamenta in versione 4.1;

  • Addidit caudam ipsum recursionis.
  • Unificata API exceptione novam tractationem addidit.
  • Constructio "conare {} capere(e) {}" permittitur ut notae: "conari {} capere(e: haxe.Exception) {}".
  • Addidit SSL coaevus interpres subsidium.
  • Scopum JVM experimentum iam non est consideratum.
  • Pro Lingua Servo Protocollum, subsidium pro "Goto Implementation" et "Invenire references", munera addita sunt.
  • Emendatum nomen variabilium localium temporalium in codice generato. Trans- vacet, " return;" munera sagittae sine pretio redditur.
  • Accessus junctiones (adepto, defaltam) in agris permittuntur (modo getter, mores defaltae assignationis).
  • Patitur incrementum et decrementum operariorum pro agris genera abstracta.
  • Improved inlining of for ansas using anonymous iterators.
  • js: Improved StringMap implementation for ES5.
  • js: Generatio variabilium variabilium optioni compilatoris "-D js-es=6" addita est, generatio ES6 classium emendata est.
  • lua: "StringIterator" optimized erroris tractatio emendatur.
  • php: Optimized "Std.isOfType" pro basi generum.
  • php: Generated vestit nunc efficiendum interfaces "Iterator", "IteratorAggregate", "numerabilis".
  • cs: Added metadata "@:assemblyMeta" et "@:assemblyStrict".
  • python: exsecutionem "__ contains__" addidit ad anonyma obiecta
    et "__getitem", quod sinit uti dictionariis in codice genito.

  • jvm: Insigniter melioris effectus gratiarum actio ad novas functiones typus accessionis et generandi accessiones interfaces in casibus in quibus objecta structurae anonymae adhibentur (prohibitio dynamica proprietas impeditur);
    Dimittis de lingua programmandi Haxe 4.1

Emendationes in bibliotheca vexillum:

  • Adiecit munus "Array. continet".
  • Addidit "Array.keyValueIterator", quod instrumenti ad iterationem key-valorem vestit ("pro (clave => valore in ordinata)").
  • Genus coactionis addidit "haxe.Constraints.NotVoid".
  • Munus "findIndex" et "foldi" classis Lambda additae sunt.
  • "Aditus ordinata" (accessum per "arr[i]") et key-valorem iteratio pro "haxe.ds.HashMap".
  • jvm: Impleta JVM versiones speciales "StringMap", "sys.thread.Lock", "sys.thread.Thread".
  • java/jvm: Adhibentur instrumentorum indigenarum "MD5", "SHA-1" et "SHA-256" pro "haxe.crypto" modulorum.
  • macro: Added "haxe.macro.Context. containsDisplayPosition(pos)".
  • nullsafety: "Strictio" modus nunc quasi filo uno tractatur; addidit "StrictThreaded" modus.
  • "Std.is" has been deprecated in favour of "Std.isOfType".
  • Addidit admonitionem cum variabilibus localibus sine valoribus in clausuris utens.
  • js: "excusatum __js__(code, args)" deprecatur, substituitur "js.Syntax.code(codice, args)".
  • php/neko: "neko.Web" et "php.Web" deprecata sunt et ad "hx4compat" bibliothecam postea movebuntur.

In altera emissio sunt cogitavit:

  • Sarcina procurator improvements haxelib.
  • Asynchronous ratio API fundatur libuv.
  • Coroutines.
  • Declarantes modulares functiones staticas et variabiles classes sine creando (iam in nocturnis aedificationibus in promptu sunt).

Source: opennet.ru