Ini merupakan implementasi dari bahasa ML, berdasarkan dialek Caml Cahaya diperpanjang dengan sistem objek berbasis kelas yang lengkap dan sistem modul yang kuat dalam gaya Standard ML.
Tujuan Caml terdiri dari dua kompiler. Satu menghasilkan bytecode yang kemudian ditafsirkan oleh program C.
Compiler ini berjalan cepat, portabel untuk dasarnya setiap platform 32 atau 64 bit Unix dan menghasilkan kode kompak dengan persyaratan memori moderat.
Kinerja program yang dihasilkan cukup baik untuk implementasi bytecoded.
Compiler ini dapat digunakan baik sebagai standalone, compiler batch-oriented yang menghasilkan program mandiri, atau sebagai sistem level atas berbasis interaktif.
Compiler lainnya menghasilkan kode asli kinerja tinggi untuk nomor
prosesor.
Kompilasi memakan waktu lebih lama dan menghasilkan kode yang lebih besar, tapi program yang dihasilkan memberikan kinerja yang sangat baik, sementara tetap mempertahankan persyaratan memori moderat compiler bytecode.
Tujuan Caml adalah varian yang paling populer dari bahasa Caml.
Dari sudut pandang bahasa, ia meluas bahasa inti Caml dengan lapisan berorientasi objek yang lengkap, serta sistem modul yang kuat, semua dihubungkan oleh suara, sistem jenis polymorphic menampilkan inferensi tipe.
Sistem Caml Tujuan merupakan implementasi industri-kekuatan bahasa ini, menampilkan kode asli kinerja tinggi compiler (ocamlopt) untuk 9 arsitektur prosesor (IA32, PowerPC, AMD64, Alpha, Sparc, Mips, IA64, HPPA, StrongArm), serta compiler bytecode (ocamlc) dan loop interaktif read-eval-print (ocaml) untuk pengembangan cepat dan portabilitas.
Distribusi Caml Tujuan termasuk perpustakaan standar yang komprehensif, debugger ulangan (ocamldebug), lexer (ocamllex) dan parser (ocamlyacc) generator, pra-prosesor cukup-printer (camlp4) dan generator dokumentasi (ocamldoc).
Apa yang baru dalam rilis ini:
- Diperbarui untuk Tcl / Tk 8,6.
- Tolak beberapa deklarasi metode yang sama atau variabel misalnya dalam suatu objek.
- Menyebarkan informasi jenis terhadap pola-pencocokan, bahkan di hadapan varian polimorfik.
Apa yang baru dalam versi 4.02.1:
- Diperbarui untuk Tcl / Tk 8,6.
- Tolak beberapa deklarasi metode yang sama atau variabel misalnya dalam suatu objek.
- Menyebarkan informasi jenis terhadap pola-pencocokan, bahkan di hadapan varian polimorfik.
Apa yang baru dalam versi 3.12.1:
- Buds tetap:
- variabel yang tidak digunakan tidak terdeteksi di "termasuk (struct .. end)"
- camlp4 direvisi bug pencetakan sintaks di level atas yang (dilaporkan CAML-daftar)
- configure: tidak mendefinisikan _WIN32 bawah cygwin
- Hardened perbandingan generik dalam kasus di mana dua blok kustom dibandingkan dan memiliki set yang berbeda dari operasi kustom.
- Hardened perbandingan antara bigarrays dalam kasus di mana dua bigarrays memiliki berbagai jenis.
- Tetap autodetection salah expm1 () dan log1p ().
- Jangan menambahkan akhiran .exe ketika menginstal script ocamlmktop shell
- ocamldoc: perbaikan kecil yang terkait dengan tampilan pilihan ocamldoc
- Fixed bug dengan nilai-nilai yang sangat besar dalam OCAMLRUNPARAM
- Mismatch antara deklarasi dan definisi caml_major_collection_slice
- keinginan Fitur:
- Ditambahkan '-ml-sinonim' dan '-mli-sinonim' pilihan untuk ocamldep
- Ditambahkan '-ocamldoc' pilihan untuk ocamlbuild
- Ditambahkan kemungkinan untuk menambah pilihan untuk ocamlbuild
- Ditambahkan akses ke parser camlp4 saat ini dan printer
- Peningkatan pilihan instruksi untuk operasi mengapung di amd64
- Ditambahkan 'usage_string' fungsi untuk Arg
- Izinkan dengan kendala untuk menambahkan persamaan tipe definisi datatype
- Izinkan untuk menggabungkan 'before' tag seperti yang lain
- Izinkan ketergantungan pada file "_oasis"
- Perubahan lain:
- standar Berubah ukuran tumpukan kecil dari 32k ke 256k kata.
- Ditambahkan operasi baru 'compare_ext' ke blok kustom, disebut ketika membandingkan nilai blok kustom dengan integer tanpa box.
Apa yang baru dalam versi 3.12.0:
- pola Rekam dari bentuk {lbl = pat; _} Untuk menandai bahwa tidak semua label tercantum, sengaja.
- Peringatan sekarang nomor dan dapat dinyalakan dan dimatikan secara individual. Sistem lama dengan huruf mengacu set peringatan masih didukung.
- Ditambahkan pilihan '-strict-urutan' untuk memaksa bagian kiri urutan untuk memiliki jenis unit.
- Peta:. menerapkan fungsi dari Set yang masuk akal untuk Peta li>
- Add dukungan untuk dynlink asli.
- Semantik dari peringatan 7 (kode 'M', metode override) telah berubah (sekarang mendeteksi semua menimpa, bukan hanya mengulangi definisi dalam tubuh kelas yang sama), dan sekarang tidak aktif secara default.
Apa yang baru dalam versi 3.11.2:
- dokumentasi yang lebih baik untuk min dan max w.r.t. NaN
- ocamlbuild menggunakan compiler yang salah untuk file C
- ocamlbuild tidak menggunakan benar konfigurasi informasi
- Dalam beberapa instalasi Windows, kali start-up tinggi untuk lib Unix
- masalah dengan scanf dan CRLF
- masalah ocamlmklib bawah Windows
- BSD masalah dengan alamat socket, misalnya di Unix.getnameinfo
- Masalah dengan parsing dari literal mengambang oleh assembler GNU
- masalah dengan modul dan jenis pribadi
Persyaratan :
- GNU C compiler - gcc
Komentar tidak ditemukan