Det är en implementering av ML språket, baserat på Caml Ljus dialekt utökas med en komplett klassbaserat systemobjekt och en kraftfull modulsystem i stil med Standard ML.
Mål Caml innefattar två kompilatorer. Man genererar bytekod som sedan tolkas av ett C-program.
Denna kompilatorn körs snabbt, är portabel att väsentligen varje 32 eller 64 bitars Unix-plattform och genererar kompakt kod med måttliga krav minne.
Utförande av genererade program är ganska bra för en bytecoded genomförande.
Denna kompilatorn kan användas antingen som en fristående, batch-orienterade kompilator som producerar fristående program, eller som ett interaktivt, toppnivåbaserat system.
Den andra kompilatorn genererar högpresterande inbyggd kod för ett antal
processorer.
Sammanställning tar längre tid och genererar större kod, men de genererade program ger utmärkta prestanda, samtidigt som man behåller de moderata minneskraven i bytekod kompilatorn.
Mål Caml är den mest populära variant av Caml språket.
Ur språksynpunkt sträcker den kärn Caml språket med en fullfjädrad objektorienterat lager, samt ett kraftfullt modulsystem, alla förbundna med ett ljud, polymorf typ system med typhärledning.
Mål Caml systemet är en industriell styrka genomförandet av detta språk, med hög prestanda infödda-kod kompilator (ocamlopt) för 9 processorarkitekturer (IA32, PowerPC, AMD64, Alpha, Sparc, Mips, IA64, HPPA, StrongARM), samt en bytekod kompilator (ocamlc) och en interaktiv läsning-eval-print slinga (ocaml) för snabb utveckling och bärbarhet.
Mål Caml distributionen inkluderar en omfattande standardbibliotek, en repris debugger (ocamldebug), lexer (ocamllex) och parser (ocamlyacc) generatorer, en pre-processor pretty-skrivare (camlp4) och en dokumentation generator (ocamldoc).
Vad är nytt i den här versionen:
- Uppdaterad till Tcl / Tk 8.6.
- Avvisa flera förklaringar samma metod eller instans variabel i ett objekt.
- Sprid typinformation mot mönstermatchning, även i närvaro av polymorfa varianter.
Vad är nytt i version 4.02.1:
- Uppdaterad till Tcl / Tk 8.6.
- Avvisa flera förklaringar samma metod eller instans variabel i ett objekt.
- Sprid typinformation mot mönstermatchning, även i närvaro av polymorfa varianter.
Vad är nytt i version 3.12.1:
- knoppar fast:
- Oanvända variabler som inte upptäckts i "inkluderar (struktur .. slut)"
- camlp4 reviderade syntax utskrift bugg i översta nivån (redovisas på CAML-lista)
- configure: inte definiera _WIN32 enligt cygwin
- Härdat generisk jämförelse i det fall då två anpassade block jämförs och ha olika uppsättningar av anpassade operationer.
- Härdad jämförelse mellan bigarrays i det fall då de två bigarrays har olika typer.
- Fixat fel automatisk identifiering av expm1 () och log1p ().
- Lägg inte .exe suffix när du installerar ocamlmktop shell script
- ocamldoc: smärre korrigeringar i samband med visningen av ocamldoc alternativ
- Fixat bugg med stora värden i OCAMLRUNPARAM
- Mismatch mellan deklaration och definition av caml_major_collection_slice
- Feature önskemål:
- Lade "-ML-synonymen" och "-mli-synonymen" alternativ för att ocamldep
- Lade "-ocamldoc alternativet att ocamlbuild
- Inkom möjlighet att lägga till alternativ för att ocamlbuild
- Inkom tillgång till aktuella camlp4 tolkare och skrivare
- Förbättrad undervisning val för float operationer på amd64
- Lade till en "usage_string" funktion Arg
- Tillåt med begränsningar för att lägga till en typ ekvation en definition datatyp
- Tillåt att slå samman "before" taggar som andra som
- Tillåt beroendet av filen "_oasis"
- Andra förändringar:
- Ändrad default mindre stackstorleken från 32k till 256k ord.
- Inkom ny operation "compare_ext" till anpassade block, som kallas när man jämför ett eget kvarter värde med ett unboxed heltal.
Vad är nytt i version 3.12.0:
- Spela in mönster av formen {lbl = pat; _} För att markera att inte alla etiketter listas, målmedvetet.
- Varningar nu numrerade och kan tändas och släckas individuellt. Stöds det gamla systemet med bokstäver som hänvisar till uppsättningar av varningar fortfarande.
- Inkom alternativet -strict-sekvens "för att tvinga vänstra delen av sekvens för att ha typ enhet.
- Karta. genomföra funktioner från Set som är vettiga för Map
- Lägg till stöd för infödda dynlink.
- De semantik varning 7 (kod "M", metod override) har ändrats (den upptäcker nu alla åsidosättningar, inte bara upprepade definitioner inuti samma klass kroppen), och det är nu inaktiverad som standard.
Vad är nytt i version 3.11.2:
- Bättre dokumentation för min och max w.r.t. NaN
- ocamlbuild använder fel kompilator för C-filer
- ocamlbuild använder inte rätt konfigurationsinformation
- Under vissa Windows-installationer, höga starttider för Unix lib
- Problem med scanf och CRLF
- ocamlmklib problem under Windows
- BSD problem med socket-adresser, t.ex. i Unix.getnameinfo
- Emission med tolkning av flyt literaler av GNU assembler
- Problem med moduler och privata typer
Krav :
- GNU C-kompilator - gcc
Kommentarer hittades inte