OCaml

Caml programlama dilinin uzantısı

OCaml, Fransız Ulusal Bilişim ve Uygulamaları Araştırma Kurumunda (INRIA) Xavier Leroy tarafından geliştirilen, ücretsiz ve özgür bir lisans altında sunulan, ML programlama dilleri ailesine mensup, hem yorumlanan hem de derlenip doğal makine koduna dönüştürülebilen gelişmiş bir fonksiyonel programlama dilidir.

OCaml
ParadigmasıMultiparadigmalı: fonksiyonel, imperatif, moduler,[1] nesne yönelimli
TasarımcıXavier Leroy, Jérôme Vouillon, Damien Doligez, Didier Rémy, Ascánder Suárez
GeliştiriciInria
Kararlı sürüm5.2.1[2] Bunu Vikiveri'de düzenleyin (18 Kasım 2024 (41 gün önce) (18 Kasım 2024))
Tür disipliniÇıkarımsanan, statik, güçlü, yapısal
EtkilendikleriC, Caml, Modula-3, Pascal, Standard ML
EtkiledikleriATS, Coq, Elm, F#, F*, Haxe, Opa, Rust,[3] Scala
Uygulama diliOCaml, C
PlatformuIA-32, x86-64, Power, SPARC, ARM 32-64, RISC-V
İşletim sistemiCross-platform: Linux, Unix, macOS, Windows
LisansLGPLv2.1
Olağan dosya uzantıları.ml, .mli
Web sitesiocaml.org Bunu Vikiveri'de düzenleyin
AilesiML: Caml

Özellikleri

değiştir
  • Fonksiyonel (fonksiyonlar birinci sınıf değerdir),
  • Soyut (kapalı ve çokşekilli) cebirsel tipler,
  • Doku tanımı (pattern-matching),
  • Statik tip kontrolü (çalışma esnasında tip hatalarına yol açabilecek programları reddederek engeller),
  • Özgüdümlü hafıza yönetimi,
  • Özgüdümlü tip hesaplaması (çoğu zaman değişkenlerin tiplerini belirtmek gereksizdir),
  • Güçlü önişleme sistemi (camlp4),
  • PowerPC, x64 ve x86 platformları için makine dilinde program üretimi,
  • İşlemciden bağımsız bytecode üretimi,
  • Yacc ve Lex benzeri sözdizim çözümleyici üreticileri,
  • Etiketli işlev argümanları,
  • C ve diğer dillerle kolayca bağlanabilme,
  • Komple UNIX sistem çağrıları desteği,
  • GTK ve GTK2 desteği

İlgili bağlantılar

değiştir

Kaynakça

değiştir
  1. ^ "Modules". 29 Ağustos 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 22 Şubat 2020. 
  2. ^ "OCaml 5.2.1 Release Notes". Erişim tarihi: 18 Aralık 2024. 
  3. ^ "Influences - The Rust Reference". The Rust Reference. 26 Ocak 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 31 Aralık 2023. 

Dış bağlantılar

değiştir