Caml (original) (raw)
Caml (originally an acronym for Categorical Abstract Machine Language) is a multi-paradigm, general-purpose programming language which is a dialect of the ML programming language family. Caml was developed in France at INRIA and ENS. Caml is statically typed, strictly evaluated, and uses automatic memory management. OCaml, the main descendant of Caml, adds many features to the language, including an object layer.
Property | Value |
---|---|
dbo:abstract | Caml (originally an acronym for Categorical Abstract Machine Language) is a multi-paradigm, general-purpose programming language which is a dialect of the ML programming language family. Caml was developed in France at INRIA and ENS. Caml is statically typed, strictly evaluated, and uses automatic memory management. OCaml, the main descendant of Caml, adds many features to the language, including an object layer. (en) Caml (Originalmente un acrónimo para Categorical Abstract Machine Language, en español Lenguaje Máquina Abstracto Categórico) es un dialecto de la familia del lenguaje ML, desarrollado en INRIA y anteriormente en la Escuela Normal Superior de París. Como muchos descendientes de ML, Caml es un lenguaje de tipado estático, evaluación estricta, y utiliza administración de memoria automática. La primera implementación de Caml en Lisp fue apodada "CAML pesado" debido a los requisitos de memoria y CPU relativos a su sucesor "Caml Light", aquello fue implementado en C por Xavier Leroy y Damien Doligez.Además de una reescritura completa, "CAML Special Light" añadió un potente sistema de módulos al núcleo del lenguaje. Actualmente, la implementación principal de Caml es , el cual añade muchas características nuevas al lenguaje, entre ellas una capa de objeto. (es) Caml (prononcé camel, signifie Categorical Abstract Machine Language) est un langage de programmation généraliste conçu pour la sécurité et la fiabilité des programmes. Il se prête à des styles de programmation fonctionnelle, impérative et orientée objet. C'est de plus un langage fortement typé. Le style fonctionnel rapproche le langage Caml de l’écriture mathématique, notamment grâce à la récursivité et au filtrage par motif (pattern matching). Ce dernier, particularité de la famille ML, offre une syntaxe au cas par cas claire et lisible, et est aussi utilisé dans le rattrapage des exceptions, en particulier pour la gestion des erreurs. Le typage fort rend l’usage sûr mais moins souple pour le programmeur. Enfin, Caml pratique l’inférence de types pour déterminer automatiquement le type des variables et expressions et permet la généricité. Descendant du langage ML, le Caml est développé depuis 1985 par les équipes Formel puis Cristal de l'Inria et l'a notamment été pendant cinq ans par le professeur Guy Cousineau (université Paris Diderot). La variante active de Caml est OCaml. Par rapport à l'ancienne variante Caml Light, aujourd'hui obsolète, elle ajoute de nombreuses fonctionnalités, comme un système de modules beaucoup plus poussé et le support de la programmation orientée objet (reposant sur le duck typing) dont elle tire son nom. (fr) CAML (Categorical Abstract Machine Language) è una versione del linguaggio di programmazione ML sviluppata in Francia presso l'INRIA e l'École Normale Supérieure (ENS). La sua prima implementazione, in Lisp, è stata soprannominata Heavy CAML per la richiesta di ingenti risorse computazionali in confronto al suo successore CAML Light, implementato in C da Xavier Leroy and Damien Doligez. Oltre alla completa riscrittura, CAML Light aggiunge al precedente nucleo del linguaggio un potente sistema di modularizzazione. Dal 1995, è stato aggiunto anche il trattamento degli oggetti e da allora il nome del linguaggio è mutato in OCaml. (it) Caml, acrónimo de "Categorical Abstract MetaLanguage", é um dialeto da família de linguagens de programação do ML, desenvolvida pelo INRIA e pela École Normale Supérieure. Como todos os descendentes do ML, Caml é uma linguagem de tipagem estática, de avaliação estrita (strict evaluation) e usa gerenciamento automático de memória. A primeira implementação Caml, feita em Lisp, foi apelidada de "Heavy CAML" (CAML pesado) por causa dos requisitos de CPU e memória excessivos se comparados com seu sucessor, o Caml light (Caml leve), que foi implementado em linguagem C por e . Além de ser completamente reescrito, o CAML special Light acrescentou um poderoso sistema de módulos na base da linguagem. Atualmente a principal implementação do Caml é o Objective Caml, que acrescenta várias novas funcionalidades à linguagem, incluindo uma camada de orientação a objetos. (pt) Caml — это объектно-ориентированный язык программирования, разработанный для создания более безопасных и защищенных программ. Caml очень близок Standard ML, а если быть точнее, то является его диалектом, но полная совместимость отсутствует. Аббревиатура произошла от Categorical Abstract Machine Language (язык категориальной абстрактной машины). Сам язык очень прост в изучении, сохраняя при всём этом утончённую выразительность и строгость. Является обязательным курсом в некоторых учебных заведениях по информатике. (ru) Caml(英語:Categorical Abstract Machine Language:範疇抽象機語言),是一種函數式、指令式的程式語言。最早由法國的INRIA和ENS联合的Formel项目發展出來,是ML语言的两种方言之一,現在主要由INRIA負責維護與發展。Caml是一种语言规范;它早期有过几个实现,目前除了仍然活跃的OCaml,发布于2002年的Caml Light是Caml的另一个实现。 (zh) Caml (скорочення від англ. Categorical Abstract Machine Language) — діалект мови програмування ML, розроблений в INRIA та ENS. Як і всі діалекти ML, Caml є мовою програмування зі статичною типізацією, строгим порядком обчислень, та використовує автоматичне керування пам'ятю. Перша реалізація Caml була здійснена на мові програмування Лісп, та мала неформальну назву «Важкий CAML» через порівняно високі вимоги до кількості наявних ресурсів у порівнянні з наступником — мовою програмування , реалізовану на мові програмування Сі Ксавієром Лероєм та Дамієном Доліґезом. На поточний момент, найпоширенішою реалізацією Caml є Objective Caml, який додає багато нових можливостей до початкового варіанту мови, включаючи і механізми об'єктно-орієнтованого програмування. (uk) |
dbo:designer | dbr:Gérard_Huet dbr:Xavier_Leroy dbr:Ascánder_Suárez dbr:Guy_Cousineau_(computer_scientists) dbr:Michel_Mauny dbr:Pierre_Weis |
dbo:influenced | dbr:OCaml |
dbo:influencedBy | dbr:ML_(programming_language) |
dbo:latestReleaseDate | 2002-01-26 (xsd:date) |
dbo:latestReleaseVersion | 0.75 |
dbo:thumbnail | wiki-commons:Special:FilePath/Caml.gif?width=300 |
dbo:wikiPageExternalLink | https://dx.doi.org/10.1145/800055.802037 http://pauillac.inria.fr/cousineau-mauny/main.html |
dbo:wikiPageID | 2362118 (xsd:integer) |
dbo:wikiPageLength | 8053 (xsd:nonNegativeInteger) |
dbo:wikiPageRevisionID | 1048863909 (xsd:integer) |
dbo:wikiPageWikiLink | dbc:ML_programming_language_family dbr:Currying dbr:Cross-platform dbr:General-purpose_programming_language dbr:Object-oriented_programming dbr:École_Normale_Supérieure dbr:French_Institute_for_Research_in_Computer_Science_and_Automation dbr:Multi-paradigm_programming_language dbr:Damien_Doligez dbr:Lisp_(programming_language) dbr:ML_(programming_language) dbr:Static_typing dbr:Automatic_memory_management dbr:C_(programming_language) dbr:Type_system dbr:Haar_wavelet dbr:Eager_evaluation dbr:Discrete_wavelet_transform dbr:File:Caml.gif dbr:Functional_programming_language dbr:Machine_epsilon dbr:Gérard_Huet dbc:Programming_languages dbc:Programming_languages_created_in_1985 dbr:INRIA dbr:Integer dbr:OCaml dbr:Categorical_abstract_machine dbr:Xavier_Leroy dbr:Pattern_matching dbr:Type_inference dbr:Imperative_programming dbr:Strongly-typed_programming_language dbr:Ascánder_Suárez dbr:Guy_Cousineau_(computer_scientists) dbr:Michel_Mauny dbr:Pierre_Weis |
dbp:designer | dbr:Gérard_Huet dbr:Xavier_Leroy dbr:Ascánder_Suárez dbr:Guy_Cousineau_(computer_scientists) dbr:Michel_Mauny dbr:Pierre_Weis |
dbp:family | dbr:ML_(programming_language) |
dbp:influenced | dbr:OCaml |
dbp:influencedBy | dbr:ML_(programming_language) |
dbp:latestReleaseDate | 2002-01-26 (xsd:date) |
dbp:latestReleaseVersion | 0.750000 (xsd:double) |
dbp:logo | dbr:File:Caml.gif |
dbp:name | Caml (en) |
dbp:operatingSystem | dbr:Cross-platform |
dbp:paradigm | dbr:Multi-paradigm_programming_language dbr:Functional_programming_language dbr:Imperative_programming |
dbp:typing | dbr:Static_typing dbr:Type_inference dbr:Strongly-typed_programming_language |
dbp:wikiPageUsesTemplate | dbt:OCaml dbt:About dbt:Citation_needed dbt:Infobox_programming_language dbt:Official_website dbt:Reflist dbt:Short_description dbt:Start_date_and_age dbt:URL |
dbp:wordnet_type | http://www.w3.org/2006/03/wn/wn20/instances/synset-programming_language-noun-1 |
dbp:year | 1985 (xsd:integer) |
dct:subject | dbc:ML_programming_language_family dbc:Programming_languages dbc:Programming_languages_created_in_1985 |
gold:hypernym | dbr:Dialect |
rdf:type | owl:Thing dbo:Language dbo:Software schema:Language wikidata:Q315 wikidata:Q9143 yago:Abstraction100002137 yago:ArtificialLanguage106894544 yago:Communication100033020 yago:Language106282651 yago:ProgrammingLanguage106898352 dbo:ProgrammingLanguage yago:WikicatProgrammingLanguages yago:WikicatProgrammingLanguagesCreatedIn1985 |
rdfs:comment | Caml (originally an acronym for Categorical Abstract Machine Language) is a multi-paradigm, general-purpose programming language which is a dialect of the ML programming language family. Caml was developed in France at INRIA and ENS. Caml is statically typed, strictly evaluated, and uses automatic memory management. OCaml, the main descendant of Caml, adds many features to the language, including an object layer. (en) Caml — это объектно-ориентированный язык программирования, разработанный для создания более безопасных и защищенных программ. Caml очень близок Standard ML, а если быть точнее, то является его диалектом, но полная совместимость отсутствует. Аббревиатура произошла от Categorical Abstract Machine Language (язык категориальной абстрактной машины). Сам язык очень прост в изучении, сохраняя при всём этом утончённую выразительность и строгость. Является обязательным курсом в некоторых учебных заведениях по информатике. (ru) Caml(英語:Categorical Abstract Machine Language:範疇抽象機語言),是一種函數式、指令式的程式語言。最早由法國的INRIA和ENS联合的Formel项目發展出來,是ML语言的两种方言之一,現在主要由INRIA負責維護與發展。Caml是一种语言规范;它早期有过几个实现,目前除了仍然活跃的OCaml,发布于2002年的Caml Light是Caml的另一个实现。 (zh) Caml (Originalmente un acrónimo para Categorical Abstract Machine Language, en español Lenguaje Máquina Abstracto Categórico) es un dialecto de la familia del lenguaje ML, desarrollado en INRIA y anteriormente en la Escuela Normal Superior de París. Como muchos descendientes de ML, Caml es un lenguaje de tipado estático, evaluación estricta, y utiliza administración de memoria automática. Actualmente, la implementación principal de Caml es , el cual añade muchas características nuevas al lenguaje, entre ellas una capa de objeto. (es) Caml (prononcé camel, signifie Categorical Abstract Machine Language) est un langage de programmation généraliste conçu pour la sécurité et la fiabilité des programmes. Il se prête à des styles de programmation fonctionnelle, impérative et orientée objet. C'est de plus un langage fortement typé. (fr) CAML (Categorical Abstract Machine Language) è una versione del linguaggio di programmazione ML sviluppata in Francia presso l'INRIA e l'École Normale Supérieure (ENS). La sua prima implementazione, in Lisp, è stata soprannominata Heavy CAML per la richiesta di ingenti risorse computazionali in confronto al suo successore CAML Light, implementato in C da Xavier Leroy and Damien Doligez. Oltre alla completa riscrittura, CAML Light aggiunge al precedente nucleo del linguaggio un potente sistema di modularizzazione. (it) Caml, acrónimo de "Categorical Abstract MetaLanguage", é um dialeto da família de linguagens de programação do ML, desenvolvida pelo INRIA e pela École Normale Supérieure. Como todos os descendentes do ML, Caml é uma linguagem de tipagem estática, de avaliação estrita (strict evaluation) e usa gerenciamento automático de memória. Atualmente a principal implementação do Caml é o Objective Caml, que acrescenta várias novas funcionalidades à linguagem, incluindo uma camada de orientação a objetos. (pt) Caml (скорочення від англ. Categorical Abstract Machine Language) — діалект мови програмування ML, розроблений в INRIA та ENS. Як і всі діалекти ML, Caml є мовою програмування зі статичною типізацією, строгим порядком обчислень, та використовує автоматичне керування пам'ятю. Перша реалізація Caml була здійснена на мові програмування Лісп, та мала неформальну назву «Важкий CAML» через порівняно високі вимоги до кількості наявних ресурсів у порівнянні з наступником — мовою програмування , реалізовану на мові програмування Сі Ксавієром Лероєм та Дамієном Доліґезом. (uk) |
rdfs:label | Caml (en) Caml (es) Caml (fr) CAML (it) Caml (pt) Caml (ru) Caml (zh) Categorical Abstract Machine Language (uk) |
owl:sameAs | freebase:Caml yago-res:Caml wikidata:Caml dbpedia-az:Caml dbpedia-es:Caml dbpedia-fi:Caml dbpedia-fr:Caml dbpedia-it:Caml dbpedia-nn:Caml dbpedia-no:Caml dbpedia-pt:Caml dbpedia-ru:Caml dbpedia-tr:Caml dbpedia-uk:Caml dbpedia-zh:Caml https://global.dbpedia.org/id/BFbS |
prov:wasDerivedFrom | wikipedia-en:Caml?oldid=1048863909&ns=0 |
foaf:depiction | wiki-commons:Special:FilePath/Caml.gif |
foaf:homepage | http://caml.inria.fr |
foaf:isPrimaryTopicOf | wikipedia-en:Caml |
foaf:name | Caml (en) |
is dbo:influencedBy of | dbr:OCaml |
is dbo:knownFor of | dbr:Gérard_Huet |
is dbo:wikiPageDisambiguates of | dbr:CAML |
is dbo:wikiPageRedirects of | dbr:CaML dbr:Caml_Light dbr:Catagorical_Abstract_Machine dbr:Categorical_Abstract_Machine_Language |
is dbo:wikiPageWikiLink of | dbr:CAML dbr:List_of_programming_languages dbr:Generational_list_of_programming_languages dbr:French_Institute_for_Research_in_Computer_Science_and_Automation dbr:Standard_ML dbr:Comparison_of_programming_languages_by_type_system dbr:Functional_programming dbr:Notepad++ dbr:List_of_French_inventions_and_discoveries dbr:Gérard_Huet dbr:Lambda_calculus dbr:Classe_préparatoire_aux_grandes_écoles dbr:OCaml dbr:Camlp4 dbr:Categorical_abstract_machine dbr:CaML dbr:Caml_Light dbr:Catagorical_Abstract_Machine dbr:Categorical_Abstract_Machine_Language |
is dbp:influencedBy of | dbr:OCaml |
is dbp:knownFor of | dbr:Gérard_Huet |
is foaf:primaryTopic of | wikipedia-en:Caml |