Lëshimi i gjuhës së programimit OCaml 4.14.2

Ka është i disponueshëm një version i ri i gjuhës së programimit OCaml 4.14.2, që mbështet konceptet e programimit funksional, imperativ dhe objekt-orientuar, dhe është fokusuar në krijimin e programeve të sigurta dhe të besueshme. Gjuha aplikon tipizimin statik, mbledhjen e mbeturinave, tipet që parandalojnë mbushjen e tamponëve, kontrollin dhe analizën statike në fazën e përpunimit. Kodi i mjetit për gjuhën OCaml shpërndahet nën licencën LGPL.

Ndryshimet në versionin e ri:

  • NĂ« ambientin e ekzekutimit:
    • Shtuar prototipat nĂ« definicionet dhe deklaratat nĂ« stilin e funksioneve C.
    • PĂ«r primitivat pĂ«rdoren prototipa tĂ« rreptĂ«.
    • PĂ«r macOS, Ă«shtĂ« ndalur pĂ«rdorimi i «-flat-namespace».
    • Siguruar kontrolli qĂ« Bool_val(v) tĂ« ketĂ« tipin bool nĂ« C++;
  • NĂ« sistemin e ndĂ«rtimit:
    • Lejohet pĂ«rdorimi i njĂ« rruge me hapĂ«sira si gojĂ« pĂ«r instalim.
    • PĂ«r OpenBSD >= 7.3, gjatĂ« lidhjes Ă«shtĂ« aktivizuar flag-u «-no-execute-only».
    • Lejohet qĂ« seksionet e kodit tĂ« mbeten tĂ« lexueshme. Kjo Ă«shtĂ« e nevojshme pĂ«r marshalimin e mbylljeve.
    • NdĂ«rprerĂ« integrimin e rrjedhĂ«s sĂ« kontrollit pĂ«r OpenBSD >= 7.4 pĂ«r tĂ« eliminuar problemet me instrukcionet e paligjshme nĂ« disa CPU.
  • Korrigjimet e gabimeve:
    • GjatĂ« llogaritjes sĂ« mesazheve tĂ« larta pĂ«r gabime pĂ«r aplikacione funksionale dhe inkluzione, nuk shtohen barazitete jo konsistente.
    • Korrigjimi i pĂ«rpunimit tĂ« pasaktĂ« tĂ« injektivitetit pĂ«r tipet private rekurzive.
    • Korrigjimi i pĂ«rjashtimit tĂ« papranuar Ctype.Escape nĂ« disa programe tĂ« pasakta qĂ« formojnĂ« tipe rekurzive.
    • Korrigjimi i compact_allocate pĂ«r tĂ« evituar raste patologjike qĂ« sjellin kompresim shumĂ« tĂ« ngadalshĂ«m.
    • Aktivizimi automatik i fma tĂ« emuluar pĂ«r Visual Studio 2019+, duke lejuar konfigurimin ose me CPU tĂ« pre-Haswell/pre-Piledriver ose tĂ« ekzekutojĂ« nĂ« VirtualBox. Rishikuar paritetin me portet e tjera Windows, tani nuk Ă«shtĂ« e nevojshme tĂ« specifikohet shprehimisht opsioni «—enable-imprecise-c99-float-ops».
    • Korrigjimi nĂ« caml_unregister_frametable.
    • Riinicializimi mĂ« i arsyeshĂ«m i mutex-Ă«ve tĂ« I/O pas fork().
    • Eliminimi i ndarjes sĂ« pĂ«rmasave tĂ« tabelĂ«s sĂ« kadrove nĂ« sisteme amd64 BSD (OpenBSD, FreeBSD, NetBSD) qĂ« dĂ«mton mbĂ«shtetjen pas vendosjes.
    • Korrigjimi i fix-modulo-cons pĂ«r kompilimin e shprehjeve «try-with», «&&» dhe «||».
    • NdĂ«rtimi i drejtpĂ«rdrejtĂ« i skedarĂ«ve ekzekutivĂ« jo-PIE nĂ« arkitekturĂ«n 32-bit x86.
    • Korrigjimi i problemit me moskalimin e bibliotekave tĂ« pĂ«rsĂ«ritura pĂ«r lidhĂ«sin gjatĂ« kompilimit tĂ« ocamlc.opt dhe gjatĂ« pĂ«rdorimit tĂ« systhread.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster