ML is a general-purpose functional programming language developed by Robin Milner and others in the early 1970s at the University of Edinburgh, whose syntax is inspired by ISWIM. It has roots in the LISP language, and has been characterized as "LISP with types". Historically, ML stands for MetaLanguage: it was conceived to develop proof tactics in the LCF theorem prover (whose language, pplambda, a combination of the first-order predicate calculus and the simply-typed polymorphic lambda calculus, had ML as its metalanguage). It is known for its use of the Hindley–Milner type system, whose type inference algorithm can automatically assign the types of most expressions without requiring explicit type annotations. Additionally, the use of this algorithm ensures type safety—there is a formal p

Property Value
dbo:abstract
  • ML is a general-purpose functional programming language developed by Robin Milner and others in the early 1970s at the University of Edinburgh, whose syntax is inspired by ISWIM. It has roots in the LISP language, and has been characterized as "LISP with types". Historically, ML stands for MetaLanguage: it was conceived to develop proof tactics in the LCF theorem prover (whose language, pplambda, a combination of the first-order predicate calculus and the simply-typed polymorphic lambda calculus, had ML as its metalanguage). It is known for its use of the Hindley–Milner type system, whose type inference algorithm can automatically assign the types of most expressions without requiring explicit type annotations. Additionally, the use of this algorithm ensures type safety—there is a formal proof that a well-typed ML program does not cause runtime type errors. (en)
  • ML es un lenguaje de programación de propósito general de la familia de los lenguajes de programación funcional desarrollado por Robin Milner y otros a finales de los años 1970 en la Universidad de Edimburgo. ML es el acrónimo inglés de metalenguaje dado que fue concebido como el lenguaje para desarrollar tácticas de demostración en el sistema LCF (El lenguaje para el cual ML era metalenguaje es pplambda, una combinación del cálculo de predicados de primer orden y el lambda-cálculo polimórfico sencillamente tipificado). Frecuentemente se clasifica a ML como un lenguaje funcional impuro dado que permiteprogramar imperativamente con efecto colateral, a diferencia de otros lenguajes de programación funcional, tales como Haskell. Entre las características de ML se incluyen evaluación por valor, álgebra de funciones, manejo automatizado de memoria por medio de recolección de basura, polimorfismo parametrizado, análisis de estático de tipos, inferencia de tipos, tipos de datos algebraicos, llamada por patrones y manejo de excepciones. Esta combinación particular de conceptos hace que sea posible producir una de los mejores compiladores actualmente disponibles. En la actualidad varios lenguajes de la familia ML están disponibles, principalmente Standard ML (SML) y Ocaml (Ocaml contiene la sintaxis de ML como un subconjunto). Varias ideas aparecidas en ML han influido el diseño de otros lenguajes, tales como Cyclone y Nemerle. Los lenguajes de la familia ML se aplican principalmente en diseño y manipulación de lenguajes de programación (compiladores, analizadores, demostradores de teoremas), así como en bioinformática, sistemas financieros, protocolos de sincronización, etc. (es)
  • Meta Language (ML) beschreibt eine Familie funktionaler Programmiersprachen mit statischer Typisierung, Polymorphie, automatischer Speicherbereinigung und im Allgemeinen strenger Auswertung. ML ist allerdings keine rein funktionale Sprache wie Haskell, sondern erlaubt an manchen Stellen auch imperative Konstrukte und Wirkungen, beispielsweise für Dateizugriffe. ML wurde 1973 von Robin Milner an der Universität Edinburgh als Teil eines Theorem-Beweis-Programms LCF (Logic of Computable Functions) entwickelt, welches automatisiert die Korrektheit von Programmen beweisen sollte. Seither hat sich ML zu einer vollständigen und eigenständigen Programmiersprache entwickelt, die insbesondere im wissenschaftlichen Umfeld verwendet wird. Die Sprache wird an einigen Universitäten als primäre Programmiersprache gelehrt. (de)
  • ML (contraction de Meta Language) est un langage de programmation généraliste fonctionnel. (fr)
  • ML è un linguaggio di programmazione funzionale general purpose sviluppato dall'equipe di Robin Milner presso l'Università di Edimburgo alla fine degli anni 70, con una sintassi ispirata ad ISWIM. Storicamente, ML sta per MetaLanguage (metalinguaggio) visto che era nato per la verifica formale attraverso il theorem prover LCF (il linguaggio di cui ML rappresentava il livello meta era pplambda, una combinazione di calcolo dei predicati del primo ordine e lambda-calcolo polimorfico debolmente tipizzato). Tra i linguaggi di programmazione funzionali è tra i più noti per il suo utilizzo dell'algoritmo di inferenza dei tipi di Hindley-Milner, che riesce ad inferire quasi tutti i tipi senza bisogno di dichiarazioni. ML viene definito come linguaggio funzionale impuro, perché a differenza di altri linguaggi funzionali, come ad es. Haskell, consente la programmazione imperativa, e pertanto anche effetti collaterali. Le caratteristiche principali di ML sono le seguenti: valutazione delle espressioni con chiamata per valore, gestione automatica della memoria attraverso un meccanismo di garbage collection, polimorfismo parametrico, tipizzazione statica, inferenza dei tipi, tipi di dati algebrici, pattern matching e gestione delle eccezioni.La combinazione di tutte queste caratteristiche ha dato vita ad uno dei migliori compilatori disponibili . A differenza di Haskell, ML usa un meccanismo di valutazione rapido (immediato): tutte le sottoespressioni che formano una espressione sono sempre valutate (ad eccezione delle espressioni condizionali). Come conseguenza non si possono creare liste infinite.Tuttavia, la valutazione pigra (lazy evaluation) può essere simulata, e quindi anche la creazione di liste infinite, attraverso l'utilizzo di funzioni anonime. Sono nati diversi linguaggi a partire da ML; tra questi i più popolari sono SML (Standard ML, del 1990) e Ocaml (Objective Caml). ML ha anche influenzato molti altri linguaggi, soprattutto quelli sviluppati in ambito accademico (ad es. F#, Cyclone e Nemerle). ML è particolarmente adatto alle applicazioni teoriche come il progetto e lo sviluppo di linguaggi (compilatori, analizzatori, dimostratori di teoremi) ma ha trovato applicazione anche in ambito di bioinformatica, analisi finanziarie, ecc. (it)
  • ML(えむえる、Meta-Language)は、関数型言語のひとつである。現代風の関数型言語としては歴史が古いほうで、型推論機能などを持つが、デフォルトの評価戦略は遅延評価ではなく先行評価で、書き換えが可能なレコード型を持つなど、いわゆる「純粋関数型」でない特徴や機能を持つ。 (ja)
  • ML is een functionele programmeertaal, ontwikkeld door Robin Milner en anderen aan de Universiteit van Edinburgh. ML was oorspronkelijk een afkorting voor Meta Language. Het was bedoeld als de metataal van het redeneerprogramma LCF. ML is, in tegenstelling tot Clean en Haskell, een "onzuivere" functionele taal, in de zin dat ook imperatief programmeren mogelijk is in ML (net zoals in Lisp). De twee meest gebruikte ML-dialecten zijn tegenwoordig Standard ML en OCaml (Objective Caml). De laatste staat bekend als één van de meest efficiënt geïmplementeerde programmeertalen ter wereld, en kan zich meten met C en C++. F# (uitspraak F sharp) van Microsoft is een van OCaml afgeleid ML-dialect. F# is een .NET-taal, wat wil zeggen dat in F# gemakkelijk het .NET-framework kan worden aangesproken. Ook kunnen met F# gemaakte programmaonderdelen aangesproken worden vanuit bijvoorbeeld C# en andersom. Microsoft Visual Studio ondersteunt ook het programmeren met F#. F# is momenteel (maart 2006) in een research-fase. De Universiteit van Saarland in Saarbrücken ontwikkelt momenteel een ML-dialect genaamd Alice, waarin onder andere parallel rekenen (op meerdere processors of machines tegelijk) en constraint programming mogelijk zijn. (nl)
  • Meta Language, ML – rodzina funkcyjnych języków programowania, które charakteryzują się statycznym, silnym typowaniem. Jako jeden z pierwszych języków udostępniał typy polimorficzne. Został zaprojektowany m.in. przez Robina Milnera w roku 1973 i był częścią większego projektu LCF (Logic for Computable Functions). Zadaniem LCF było automatyczne dowodzenie poprawności funkcyjnych programów, języka ML używano właśnie do zapisu tych programów. Stąd też obecnie ML jest stosowany m.in. do automatycznego dowodzenia twierdzeń i poprawności programów, a także szybkiego prototypowania. Rozwinęło się wiele dialektów języka, m.in. Ocaml (włączający do języka elementy programowania obiektowego), Concurrent ML (wspierający programowanie współbieżne) czy Lazy ML (który w odróżnieniu od innych dialektów stosuje leniwą ewaluację). W roku 1984 z inicjatywy Robina Milnera ustandaryzowano język ML tworząc dialekt Standard ML. Istnieje kilkanaście implementacji tego dialektu, m.in. Moscow ML, Stanford ML i SML97. W roku 2000 standard został poprawiony, czego efektem było powstanie ML-2000. (pl)
  • ML é uma linguagem de programação funcional de proposta geral desenvolvida por Robin Milner e outros no final dos anos 1970 na Universidade de Edimburgo, cuja sintaxe foi inspirada pelo ISWIM. É considerada uma linguagem funcional impura, por permitir a programação imperativa, ao contrário de outras linguagens funcionais como Haskell. (pt)
  • ML (Meta Language) — семейство строгих языков функционального программирования с развитой параметрически полиморфной системой типов и параметризуемыми модулями. Подобная система типов была раньше предложена Роджером Хиндли в 1969 году и сейчас часто называется системой Хиндли-Милнера. Языки данного семейства не являются чистыми функциональными языками, так как включают и императивные инструкции. ML преподаётся во многих западных университетах (в некоторых даже как первый язык программирования). (ru)
  • ML是一个通用的函數式編程语言,它是由爱丁堡大学的Robin Milner及他人在二十世纪七十年代晚期开发的。它的语法是从ISWIM得到的灵感。作为元语言的ML是为了帮助在LCF定理证明机中寻找证明策略而构想出来的。(之前的元语言是pplambda,它联合了一阶逻辑演算和有类型的多态的λ演算)。它使用了Hindley-Milner类型推论算法来推测大多数值的类型,而不需要四处使用注解。 ML一般被归为非纯函数式编程语言,因为它允许副作用和指令式编程。这一点和纯函数式编程语言——例如Haskell——很不一样。 ML特性包括:傳值呼叫(Call by value)的求值策略,一级函数,带有垃圾收集的自动内存管理,参数多态,静态数据类型,类型推论,代数数据类型,模式匹配和异常处理。 不像Haskell,ML使用及早求值,也就是说所有的子表达式总是被求值。导致的一个结果是你不能使用无穷表。然而,惰性求值产生的无穷表可以通过使用匿名函数来模拟。 今天在ML家族中有好几种语言:两种主要的方言是Standard ML和Caml,其他的包括F#-针对Microsoft .NET平台的开放研究项目。ML中的思想影响了众多的语言,例如Haskell,Cyclone和Nemerle。 ML的实力大多被用于语言设计和操作(编译器、分析器、定理证明机),但是它作为通用语言也被用于生化,金融系统,和宗谱数据库,一个P2P的客户/服务器程序等等。 (zh)
dbo:designer
dbo:influenced
dbo:influencedBy
dbo:wikiPageExternalLink
dbo:wikiPageID
  • 20607 (xsd:integer)
dbo:wikiPageRevisionID
  • 737478929 (xsd:integer)
dbp:dialects
dbp:paradigm
dbp:typing
dbp:wordnet_type
dct:subject
http://purl.org/linguistics/gold/hypernym
rdf:type
rdfs:comment
  • ML (contraction de Meta Language) est un langage de programmation généraliste fonctionnel. (fr)
  • ML(えむえる、Meta-Language)は、関数型言語のひとつである。現代風の関数型言語としては歴史が古いほうで、型推論機能などを持つが、デフォルトの評価戦略は遅延評価ではなく先行評価で、書き換えが可能なレコード型を持つなど、いわゆる「純粋関数型」でない特徴や機能を持つ。 (ja)
  • ML é uma linguagem de programação funcional de proposta geral desenvolvida por Robin Milner e outros no final dos anos 1970 na Universidade de Edimburgo, cuja sintaxe foi inspirada pelo ISWIM. É considerada uma linguagem funcional impura, por permitir a programação imperativa, ao contrário de outras linguagens funcionais como Haskell. (pt)
  • ML (Meta Language) — семейство строгих языков функционального программирования с развитой параметрически полиморфной системой типов и параметризуемыми модулями. Подобная система типов была раньше предложена Роджером Хиндли в 1969 году и сейчас часто называется системой Хиндли-Милнера. Языки данного семейства не являются чистыми функциональными языками, так как включают и императивные инструкции. ML преподаётся во многих западных университетах (в некоторых даже как первый язык программирования). (ru)
  • ML is a general-purpose functional programming language developed by Robin Milner and others in the early 1970s at the University of Edinburgh, whose syntax is inspired by ISWIM. It has roots in the LISP language, and has been characterized as "LISP with types". Historically, ML stands for MetaLanguage: it was conceived to develop proof tactics in the LCF theorem prover (whose language, pplambda, a combination of the first-order predicate calculus and the simply-typed polymorphic lambda calculus, had ML as its metalanguage). It is known for its use of the Hindley–Milner type system, whose type inference algorithm can automatically assign the types of most expressions without requiring explicit type annotations. Additionally, the use of this algorithm ensures type safety—there is a formal p (en)
  • Meta Language (ML) beschreibt eine Familie funktionaler Programmiersprachen mit statischer Typisierung, Polymorphie, automatischer Speicherbereinigung und im Allgemeinen strenger Auswertung. ML ist allerdings keine rein funktionale Sprache wie Haskell, sondern erlaubt an manchen Stellen auch imperative Konstrukte und Wirkungen, beispielsweise für Dateizugriffe. (de)
  • ML es un lenguaje de programación de propósito general de la familia de los lenguajes de programación funcional desarrollado por Robin Milner y otros a finales de los años 1970 en la Universidad de Edimburgo. ML es el acrónimo inglés de metalenguaje dado que fue concebido como el lenguaje para desarrollar tácticas de demostración en el sistema LCF (El lenguaje para el cual ML era metalenguaje es pplambda, una combinación del cálculo de predicados de primer orden y el lambda-cálculo polimórfico sencillamente tipificado). (es)
  • ML è un linguaggio di programmazione funzionale general purpose sviluppato dall'equipe di Robin Milner presso l'Università di Edimburgo alla fine degli anni 70, con una sintassi ispirata ad ISWIM. Storicamente, ML sta per MetaLanguage (metalinguaggio) visto che era nato per la verifica formale attraverso il theorem prover LCF (il linguaggio di cui ML rappresentava il livello meta era pplambda, una combinazione di calcolo dei predicati del primo ordine e lambda-calcolo polimorfico debolmente tipizzato). Tra i linguaggi di programmazione funzionali è tra i più noti per il suo utilizzo dell'algoritmo di inferenza dei tipi di Hindley-Milner, che riesce ad inferire quasi tutti i tipi senza bisogno di dichiarazioni. (it)
  • ML is een functionele programmeertaal, ontwikkeld door Robin Milner en anderen aan de Universiteit van Edinburgh. ML was oorspronkelijk een afkorting voor Meta Language. Het was bedoeld als de metataal van het redeneerprogramma LCF. ML is, in tegenstelling tot Clean en Haskell, een "onzuivere" functionele taal, in de zin dat ook imperatief programmeren mogelijk is in ML (net zoals in Lisp). (nl)
  • Meta Language, ML – rodzina funkcyjnych języków programowania, które charakteryzują się statycznym, silnym typowaniem. Jako jeden z pierwszych języków udostępniał typy polimorficzne. Został zaprojektowany m.in. przez Robina Milnera w roku 1973 i był częścią większego projektu LCF (Logic for Computable Functions). Zadaniem LCF było automatyczne dowodzenie poprawności funkcyjnych programów, języka ML używano właśnie do zapisu tych programów. Stąd też obecnie ML jest stosowany m.in. do automatycznego dowodzenia twierdzeń i poprawności programów, a także szybkiego prototypowania. (pl)
  • ML是一个通用的函數式編程语言,它是由爱丁堡大学的Robin Milner及他人在二十世纪七十年代晚期开发的。它的语法是从ISWIM得到的灵感。作为元语言的ML是为了帮助在LCF定理证明机中寻找证明策略而构想出来的。(之前的元语言是pplambda,它联合了一阶逻辑演算和有类型的多态的λ演算)。它使用了Hindley-Milner类型推论算法来推测大多数值的类型,而不需要四处使用注解。 ML一般被归为非纯函数式编程语言,因为它允许副作用和指令式编程。这一点和纯函数式编程语言——例如Haskell——很不一样。 ML特性包括:傳值呼叫(Call by value)的求值策略,一级函数,带有垃圾收集的自动内存管理,参数多态,静态数据类型,类型推论,代数数据类型,模式匹配和异常处理。 不像Haskell,ML使用及早求值,也就是说所有的子表达式总是被求值。导致的一个结果是你不能使用无穷表。然而,惰性求值产生的无穷表可以通过使用匿名函数来模拟。 今天在ML家族中有好几种语言:两种主要的方言是Standard ML和Caml,其他的包括F#-针对Microsoft .NET平台的开放研究项目。ML中的思想影响了众多的语言,例如Haskell,Cyclone和Nemerle。 (zh)
rdfs:label
  • ML (programming language) (en)
  • ML (Programmiersprache) (de)
  • Meta Lenguaje (es)
  • ML (langage) (fr)
  • ML (linguaggio di programmazione) (it)
  • ML (プログラミング言語) (ja)
  • ML (programmeertaal) (nl)
  • Meta Language (pl)
  • ML (linguagem de programação) (pt)
  • ML (ru)
  • ML语言 (zh)
owl:sameAs
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
foaf:name
  • ML (en)
is dbo:influenced of
is dbo:influencedBy of
is dbo:knownFor of
is dbo:wikiPageDisambiguates of
is dbo:wikiPageRedirects of
is dbp:family of
is foaf:primaryTopic of