ML (programming language) (original) (raw)

About DBpedia

ML és un llenguatge de programació funcional desenvolupat per Robin Milner i altres a finals del 1970 a la Universitat d'Edimburg amb una sintaxi inspirada en el llenguatge abstracte que ha donat lloc a una família de llenguatges. Històricament les sigles ML es refereixen a MetaLlenguatge. És conegut per l'ús que fa de l'algorisme d'inferència de tipus .

Property Value
dbo:abstract ML és un llenguatge de programació funcional desenvolupat per Robin Milner i altres a finals del 1970 a la Universitat d'Edimburg amb una sintaxi inspirada en el llenguatge abstracte que ha donat lloc a una família de llenguatges. Històricament les sigles ML es refereixen a MetaLlenguatge. És conegut per l'ús que fa de l'algorisme d'inferència de tipus . (ca) 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)‏ (اختصار لغة ميتا) هي لغة برمجة وظيفية عامة الأغراض. ظهرت سنة 1973 (ar) Η ML είναι μια συναρτησιακή γλώσσα προγραμματισμού γενικής χρήσης, που αναπτύχθηκε από τον Ρόμπιν Μίλνερ και άλλους στο τέλος της δεκαετίας του 1970 στο πανεπιστήμιο του Εδιμβούργου. Ξεκίνησε ως μέτα-γλώσσα (εξού και το όνομα Meta-Language) για διαδραστικές αποδείξεις στο σύστημα Edinburgh LCF (τα αρχικά για "Logic for Computable Functions" - λογική για υπολογίσιμες συναρτήσεις) και εξελίχθηκε σε γενικής χρήσης γλώσσα προγραμματισμού για να καλύψει τις ανάγκες αυτής της εφαρμογής. Τα συναρτησιακά στοιχεία της γλώσσας είναι εμπνευσμένα από την ISWIM και την GEDANKEN, αλλά διαφέρει στον χειρισμό των τύπων, ενώ άλλα στοιχεία της γλώσσας είναι εμπνευσμένα από τη Lisp and την POP2. Το συγκεκριμένο σύστημα αποδείξεων του LCF ήταν το PPLambda, που είναι συνδυασμός του (first-order predicate calculus) και του πολυμορφικού λογισμού λάμδα με απλούς τύπους (simply-typed polymorphic lambda-calculus). Αλλά, σύμφωνα με τον Ρόμπιν Μίλνερ, σχεδόν οποιδήποτε επαγωγικό σύστημα θα είχε οδηγήσει στις ίδιες βασικές αρχές της γλώσσας. Η ML είναι γνωστή για τη χρήση του αλγόριθμου Χίντλεϋ-Μίλνερ για την εξαγωγή τύπων (type inference), που μπορεί να συνάγει αυτόματα τους τύπους των περισσοτέρων εκφράσεων της γλώσσας, χωρίς να χρειάζεται σαφείς προσδιορισμούς τύπων από τον προγραμματιστή. Είναι μία από τις λίγες γλώσσες προγραμματισμού με αυστηρή απόδειξη ότι όλα τα προγράμματα που περνάνε τον έλεγχο τύπων, δεν έχουν σφάλματα κατά την εκτέλεση. (el) ML (angle Meta Language) estas ĝeneralcela funkcia programlingvoj. Ĝi radikas el Lisp, kaj taksitas kiel “Lisp kun tipoj”. Ĝi famas pro sia uzo de plurforma , kiu aŭtomate asignas la tipojn de la plejmulto de sen postuli eksplicitajn tipnotojn, kaj certigas tipsekurecon – estas formala pruvo, ke bontipa ML-programo ne kaŭzas dumrulajn tiperarojn. ML provizas modelkongruigon por funkciargumentoj, , , kaj . Ĝi forte uzatas ĉe programlingva esplorado kaj estas unu el la malmultaj lingvoj tute specifigitaj kaj kontrolitaj per uzo de . Ĝiaj tipoj kaj modelkongruadoj igas ĝin bonsitua kaj ofte uzata por operacii sur aliaj formalaj lingvoj, kiel ĉe , kaj . (eo) 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 y el lambda-cálculo polimórfico sencillamente tipificado). Frecuentemente se clasifica a ML como un lenguaje funcional impuro dado que permite programar imperativamente con efecto colateral, a diferencia de otros lenguajes de programación funcional, tales como Haskell. Entre las características de ML se incluyen , , manejo automatizado de memoria por medio de recolección de basura, polimorfismo parametrizado, , inferencia de tipos, tipos de datos algebraicos, y manejo de excepciones. Esta combinación particular de conceptos hace que sea posible producir una de los mejores compiladores actualmente disponibles[1]. En la actualidad varios lenguajes de la familia ML están disponibles, principalmente Standard ML (SML) y (Ocaml contiene la sintaxis de ML como un subconjunto). Varias ideas aparecidas en ML han influido el diseño de otros lenguajes, tales como y . 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) ML (Meta Language) is a general-purpose functional programming language. It is known for its use of the polymorphic Hindley–Milner type system, which automatically assigns the types of most expressions without requiring explicit type annotations, and ensures type safety – there is a formal proof that a well-typed ML program does not cause runtime type errors. ML provides pattern matching for function arguments, garbage collection, imperative programming, call-by-value and currying. It is used heavily in programming language research and is one of the few languages to be completely specified and verified using formal semantics. Its types and pattern matching make it well-suited and commonly used to operate on other formal languages, such as in compiler writing, automated theorem proving, and formal verification. (en) ML (contraction de Meta Language) est un langage de programmation généraliste fonctionnel. (fr) ML은 범용 프로그래밍 언어의 일종이다. 프로그래밍 언어 분야의 핵심 연구 성과들을 잘 반영하면서도 실용적인 언어로 알려져 있다. 특히, 안전한 타입 시스템을 갖추고 있어 프로그램을 실행하는 중에 나올 수 있는 타입 에러를 실행하기 전에 미리 모두 찾아준다. 힌들리-밀너(Hindley-Milner) 타입 추론 시스템을 구현하여 자바와 같은 길고 불편한 자료형(타입) 표기 없이도 변수들의 자료형을 추론할 수 있다. ML은 하스켈과 같은 순수한 함수형 언어와 같이 함수가 자유롭게 사용될 수 있으면서도, 메모리 상태를 변화시키는 함수를 허용하는 함수형 프로그래밍 언어의 모습도 갖추고 있다. 이 때문에 함수형 언어이면서 순수하지 않은 함수형 언어로 분류한다. 그밖에 ML에는 이런 특징이 있다. * 메모리 재활용(garbage collection)을 통해서 자동으로 메모리를 관리한다. * 함수의 다형성(polymorphic functions)을 지원하여 타입과 상관 없이 실행할 수 있는 함수를 정의할 수 있다. * 대수적 자료형(algebraic data type)을 지원하여 상위에서 자료구조를 표현할 수 있다. * 값들의 패턴 매칭을 통해 간편하게 조건문을 만들 수 있다. * 간단하고 강력한 예외 시스템으로 프로그램의 실행흐름을 편리하게 기획할 수 있다. ML 프로그래밍 시스템은 다양한 종류가 있다. (Standard ML)과 이 가장 널리 알려진 것이며, F# 등 다른 언어들도 존재한다. 한국에서 개발된 ML 프로그래밍 시스템으로는 KAIST에서 개발하였고 현재는 서울대에서 확장·관리하고 있는 nML이 있다. ML의 기본 아이디어는 C#, 자바, 하스켈, , 등 많은 언어에 영향을 미쳤다. ML은 주로 프로그래밍 언어의 실행기(interpreter)나 번역기(compiler), 프로그램 분석기 등을 개발하고 다루는 데 사용하지만, ML은 본래 범용 프로그래밍 언어이므로 생물정보학, 금융 전산망, P2P 클라이언트/서버 프로그램 등의 개발에도 사용한다. (ko) 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 een 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#. De in Saarbrücken ontwikkelt momenteel een ML-dialect genaamd Alice, waarin onder andere (op meerdere processors of machines tegelijk) en mogelijk zijn. (nl) ML è un linguaggio di programmazione funzionale general purpose sviluppato dall'équipe di Robin Milner presso l'Università di Edimburgo alla fine degli anni 70, con una sintassi ispirata ad . Storicamente, ML sta per MetaLanguage (metalinguaggio) visto che era nato per la verifica formale attraverso il theorem prover (il linguaggio di cui ML rappresentava il livello meta era , 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 inserire quasi tutti i tipi senza bisogno di dichiarazioni. (it) ML(えむえる、Meta-Language)は、関数型言語のひとつである。現代風の関数型言語としては歴史が古いほうで、型推論機能などを持つが、デフォルトの評価戦略は遅延評価ではなく先行評価で、書き換えが可能なレコード型を持つなど、いわゆる「純粋関数型」でない特徴や機能を持つ。 (ja) 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 . É considerada uma linguagem funcional impura, por permitir a programação imperativa, ao contrário de outras linguagens funcionais como Haskell. (pt) ML är ett allmänt funktionellt programspråk som utvecklades av med flera i slutet av 1970-talet vid University of Edinburgh, vars syntax inspirerats av . Historiskt står ML för metalanguage (engelska: "metaspråk") eftersom det utvecklades som stödspråk för . ML är känt för sitt bruk av Hindley-Milners , som kan härleda datatypen hos de flesta i ett program. Detta är i kontrast med de nödvändiga utförliga deklarationerna som kritiserats i språk som Java. Ibland kallas ML även för SML(Standard ML). (sv) ML (Meta Language) — семейство строгих языков функционального программирования с развитой параметрически полиморфной системой типов и параметризуемыми модулями. Подобная система типов была раньше предложена в 1969 году и сейчас часто называется системой Хиндли-Милнера. Языки данного семейства в большинстве своём не являются чистыми функциональными языками, так как включают и императивные инструкции (но есть исключения — например, Manticore). ML преподаётся во многих западных университетах (в некоторых даже как первый язык программирования). (ru) ML(Meta Language:元语言),是一个函数式、指令式的通用的编程语言,它著称于使用了多态的Hindley–Milner类型推论。ML能自动的指定多数的类型,不要求显式的类型标注,而且能够确保类型安全,已经正式证明了有良好类型的ML程序不会导致运行时间类型错误。 ML提供了对函数实际参数的模式匹配、垃圾回收、指令式编程、传值调用和柯里化。它被大量的用于编程语言研究之中,并且是全面规定了的和使用形式语义验证了的少数语言之一。它的类型和模式匹配使得它非常适合并且经常用于在其他形式语言上进行操作,比如在编译器构造、自动化定理证明和形式验证中。 (zh) ML (Meta Language) — сімейство строго типізованих мов функціонального програмування з розвиненою поліморфною системою типів і модулями що параметризуються. Подібна система типів була раніше запропонована Роджером Гіндлі у 1969 році і зараз[коли?] часто називається системою Гіндлі-Мілнера. Мови даного сімейства не є чистими функціональними мовами, тому що включають і імперативні інструкції. ML викладається у багатьох західних університетах (в деяких навіть як перша мова програмування). (uk)
dbo:designer dbr:Robin_Milner dbr:University_of_Edinburgh
dbo:influenced dbr:Scala_(programming_language) dbr:Coq dbr:Rust_(programming_language) dbr:Clojure dbr:Elm_(programming_language) dbr:Miranda_(programming_language) dbr:Standard_ML dbr:C++ dbr:Cyclone_(programming_language) dbr:Erlang_(programming_language) dbr:F_Sharp_(programming_language) dbr:Haskell_(programming_language) dbr:Idris_(programming_language) dbr:Kotlin_(programming_language) dbr:Nemerle dbr:OCaml dbr:Opa_(programming_language) dbr:F*_(programming_language)
dbo:influencedBy dbr:ISWIM
dbo:wikiPageExternalLink https://smlfamily.github.io/sml97-defn.pdf https://github.com/SMLFamily/Successor-ML http://mlton.org http://smlnj.org https://cakeml.org http://msdn.microsoft.com/en-us/fsharp/default.aspx https://web.archive.org/web/20100218004857/http:/msdn.microsoft.com/en-us/fsharp/default.aspx https://www.cs.cmu.edu/~rwh/isml/book.pdf
dbo:wikiPageID 20607 (xsd:integer)
dbo:wikiPageLength 13744 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID 1106423335 (xsd:integer)
dbo:wikiPageWikiLink dbr:Call-by-value dbr:Robin_Milner dbr:Scala_(programming_language) dbr:Tail_call dbr:Jeffrey_D._Ullman dbr:Dependent_ML dbc:ML_programming_language_family dbr:Currying dbr:University_of_Edinburgh dbr:Infinite_descending_chain dbr:Interface_(Java) dbr:.NET_Framework dbc:Functional_languages dbr:Coq dbr:Rust_(programming_language) dbr:Generic_programming dbr:Clojure dbr:Closure_(computer_science) dbr:CoffeeScript dbr:Elm_(programming_language) dbr:Miranda_(programming_language) dbr:Multi-paradigm_programming_language dbr:Linear_time dbr:Lisp_(programming_language) dbr:Mads_Tofte dbr:Call_stack dbr:Standard_ML dbr:Static_typing dbr:Functional_programming dbr:PAL_(programming_language) dbr:Parametric_polymorphism dbr:Polymorphism_(computer_science) dbr:Automated_theorem_proving dbr:C++ dbr:TypeScript dbr:Type_system dbr:Garbage_collection_(computer_science) dbr:Eager_evaluation dbr:Lazy_ML dbr:Lazy_evaluation dbr:Logic_for_Computable_Functions dbr:ATS_(programming_language) dbc:Procedural_programming_languages dbr:Cyclone_(programming_language) dbr:Data_type dbr:ECMAScript dbr:Erlang_(programming_language) dbr:Exception_handling dbr:F_Sharp_(programming_language) dbr:First-order_logic dbr:Formal_semantics_of_programming_languages dbr:Formal_verification dbr:Haskell_(programming_language) dbr:Hindley–Milner_type_system dbr:API dbc:Academic_programming_languages dbc:Pattern_matching_programming_languages dbc:Statically_typed_programming_languages dbr:Lambda_calculus dbr:Lawrence_Paulson dbr:Bioinformatics dbc:Programming_languages_created_in_1973 dbr:ISWIM dbr:Idris_(programming_language) dbr:Kotlin_(programming_language) dbr:Nemerle dbr:OCaml dbr:Opa_(programming_language) dbr:Recursion_(computer_science) dbr:Pattern_matching dbr:Robert_Harper_(computer_scientist) dbr:Scope_(computer_science) dbr:Type_inference dbr:F*_(programming_language) dbr:Factorial dbr:Imperative_programming dbr:Evaluation_strategy dbr:First-class_function dbr:Strong_typing dbr:Quadratic_time dbr:Side-effect_(computer_science) dbr:Purely_functional_language dbr:General_purpose_programming_language dbr:Algebraic_data_types dbr:Compiler_writing dbr:Expression_(programming)
dbp:date 2010-02-18 (xsd:date)
dbp:designer Robin Milner and others at the University of Edinburgh (en)
dbp:dialects dbr:Standard_ML dbr:F_Sharp_(programming_language) dbr:OCaml
dbp:influenced dbr:Scala_(programming_language) dbr:Coq dbr:Rust_(programming_language) dbr:Clojure dbr:Elm_(programming_language) dbr:Miranda_(programming_language) dbr:Standard_ML dbr:C++ dbr:Cyclone_(programming_language) dbr:Erlang_(programming_language) dbr:F_Sharp_(programming_language) dbr:Haskell_(programming_language) dbr:Idris_(programming_language) dbr:Kotlin_(programming_language) dbr:Nemerle dbr:OCaml dbr:Opa_(programming_language) dbr:F*_(programming_language)
dbp:influencedBy dbr:ISWIM
dbp:name ML (en)
dbp:paradigm dbr:Generic_programming dbr:Multi-paradigm_programming_language dbr:Functional_programming dbr:Imperative_programming
dbp:typing dbr:Static_typing dbr:Type_inference dbr:Strong_typing
dbp:url https://web.archive.org/web/20100218004857/http:/msdn.microsoft.com/en-us/fsharp/default.aspx
dbp:wikiPageUsesTemplate dbt:! dbt:Authority_control dbt:Cite_book dbt:ISBN dbt:Infobox_programming_language dbt:More_citations_needed dbt:Other_uses dbt:Reflist dbt:Section_link dbt:Short_description dbt:Snd dbt:Start_date_and_age dbt:Webarchive dbt:Programming_languages
dbp:wordnet_type http://www.w3.org/2006/03/wn/wn20/instances/synset-programming_language-noun-1
dct:subject dbc:ML_programming_language_family dbc:Functional_languages dbc:Procedural_programming_languages dbc:Academic_programming_languages dbc:Pattern_matching_programming_languages dbc:Statically_typed_programming_languages dbc:Programming_languages_created_in_1973
gold:hypernym dbr:Language
rdf:type owl:Thing dbo:Language schema:Language wikidata:Q315 wikidata:Q9143 yago:Abstraction100002137 yago:ArtificialLanguage106894544 yago:Communication100033020 yago:Language106282651 yago:ProgrammingLanguage106898352 yago:WikicatFunctionalLanguages dbo:ProgrammingLanguage yago:WikicatProgrammingLanguages yago:WikicatProgrammingLanguagesCreatedIn1973 yago:WikicatProgrammingLanguagesCreatedInThe1970s
rdfs:comment ML és un llenguatge de programació funcional desenvolupat per Robin Milner i altres a finals del 1970 a la Universitat d'Edimburg amb una sintaxi inspirada en el llenguatge abstracte que ha donat lloc a una família de llenguatges. Històricament les sigles ML es refereixen a MetaLlenguatge. És conegut per l'ús que fa de l'algorisme d'inferència de tipus . (ca) أم أل (بالإنجليزية: ML)‏ (اختصار لغة ميتا) هي لغة برمجة وظيفية عامة الأغراض. ظهرت سنة 1973 (ar) ML (angle Meta Language) estas ĝeneralcela funkcia programlingvoj. Ĝi radikas el Lisp, kaj taksitas kiel “Lisp kun tipoj”. Ĝi famas pro sia uzo de plurforma , kiu aŭtomate asignas la tipojn de la plejmulto de sen postuli eksplicitajn tipnotojn, kaj certigas tipsekurecon – estas formala pruvo, ke bontipa ML-programo ne kaŭzas dumrulajn tiperarojn. ML provizas modelkongruigon por funkciargumentoj, , , kaj . Ĝi forte uzatas ĉe programlingva esplorado kaj estas unu el la malmultaj lingvoj tute specifigitaj kaj kontrolitaj per uzo de . Ĝiaj tipoj kaj modelkongruadoj igas ĝin bonsitua kaj ofte uzata por operacii sur aliaj formalaj lingvoj, kiel ĉe , kaj . (eo) 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'équipe di Robin Milner presso l'Università di Edimburgo alla fine degli anni 70, con una sintassi ispirata ad . Storicamente, ML sta per MetaLanguage (metalinguaggio) visto che era nato per la verifica formale attraverso il theorem prover (il linguaggio di cui ML rappresentava il livello meta era , 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 inserire quasi tutti i tipi senza bisogno di dichiarazioni. (it) 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 . É considerada uma linguagem funcional impura, por permitir a programação imperativa, ao contrário de outras linguagens funcionais como Haskell. (pt) ML är ett allmänt funktionellt programspråk som utvecklades av med flera i slutet av 1970-talet vid University of Edinburgh, vars syntax inspirerats av . Historiskt står ML för metalanguage (engelska: "metaspråk") eftersom det utvecklades som stödspråk för . ML är känt för sitt bruk av Hindley-Milners , som kan härleda datatypen hos de flesta i ett program. Detta är i kontrast med de nödvändiga utförliga deklarationerna som kritiserats i språk som Java. Ibland kallas ML även för SML(Standard ML). (sv) ML (Meta Language) — семейство строгих языков функционального программирования с развитой параметрически полиморфной системой типов и параметризуемыми модулями. Подобная система типов была раньше предложена в 1969 году и сейчас часто называется системой Хиндли-Милнера. Языки данного семейства в большинстве своём не являются чистыми функциональными языками, так как включают и императивные инструкции (но есть исключения — например, Manticore). ML преподаётся во многих западных университетах (в некоторых даже как первый язык программирования). (ru) ML(Meta Language:元语言),是一个函数式、指令式的通用的编程语言,它著称于使用了多态的Hindley–Milner类型推论。ML能自动的指定多数的类型,不要求显式的类型标注,而且能够确保类型安全,已经正式证明了有良好类型的ML程序不会导致运行时间类型错误。 ML提供了对函数实际参数的模式匹配、垃圾回收、指令式编程、传值调用和柯里化。它被大量的用于编程语言研究之中,并且是全面规定了的和使用形式语义验证了的少数语言之一。它的类型和模式匹配使得它非常适合并且经常用于在其他形式语言上进行操作,比如在编译器构造、自动化定理证明和形式验证中。 (zh) ML (Meta Language) — сімейство строго типізованих мов функціонального програмування з розвиненою поліморфною системою типів і модулями що параметризуються. Подібна система типів була раніше запропонована Роджером Гіндлі у 1969 році і зараз[коли?] часто називається системою Гіндлі-Мілнера. Мови даного сімейства не є чистими функціональними мовами, тому що включають і імперативні інструкції. ML викладається у багатьох західних університетах (в деяких навіть як перша мова програмування). (uk) Η ML είναι μια συναρτησιακή γλώσσα προγραμματισμού γενικής χρήσης, που αναπτύχθηκε από τον Ρόμπιν Μίλνερ και άλλους στο τέλος της δεκαετίας του 1970 στο πανεπιστήμιο του Εδιμβούργου. Ξεκίνησε ως μέτα-γλώσσα (εξού και το όνομα Meta-Language) για διαδραστικές αποδείξεις στο σύστημα Edinburgh LCF (τα αρχικά για "Logic for Computable Functions" - λογική για υπολογίσιμες συναρτήσεις) και εξελίχθηκε σε γενικής χρήσης γλώσσα προγραμματισμού για να καλύψει τις ανάγκες αυτής της εφαρμογής. (el) 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 (Meta Language) is a general-purpose functional programming language. It is known for its use of the polymorphic Hindley–Milner type system, which automatically assigns the types of most expressions without requiring explicit type annotations, and ensures type safety – there is a formal proof that a well-typed ML program does not cause runtime type errors. ML provides pattern matching for function arguments, garbage collection, imperative programming, call-by-value and currying. It is used heavily in programming language research and is one of the few languages to be completely specified and verified using formal semantics. Its types and pattern matching make it well-suited and commonly used to operate on other formal languages, such as in compiler writing, automated theorem proving, an (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 y el lambda-cálculo polimórfico sencillamente tipificado). (es) ML은 범용 프로그래밍 언어의 일종이다. 프로그래밍 언어 분야의 핵심 연구 성과들을 잘 반영하면서도 실용적인 언어로 알려져 있다. 특히, 안전한 타입 시스템을 갖추고 있어 프로그램을 실행하는 중에 나올 수 있는 타입 에러를 실행하기 전에 미리 모두 찾아준다. 힌들리-밀너(Hindley-Milner) 타입 추론 시스템을 구현하여 자바와 같은 길고 불편한 자료형(타입) 표기 없이도 변수들의 자료형을 추론할 수 있다. ML은 하스켈과 같은 순수한 함수형 언어와 같이 함수가 자유롭게 사용될 수 있으면서도, 메모리 상태를 변화시키는 함수를 허용하는 함수형 프로그래밍 언어의 모습도 갖추고 있다. 이 때문에 함수형 언어이면서 순수하지 않은 함수형 언어로 분류한다. 그밖에 ML에는 이런 특징이 있다. ML 프로그래밍 시스템은 다양한 종류가 있다. (Standard ML)과 이 가장 널리 알려진 것이며, F# 등 다른 언어들도 존재한다. 한국에서 개발된 ML 프로그래밍 시스템으로는 KAIST에서 개발하였고 현재는 서울대에서 확장·관리하고 있는 nML이 있다. ML의 기본 아이디어는 C#, 자바, 하스켈, , 등 많은 언어에 영향을 미쳤다. (ko) 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 in Saarbrücken ontwikkelt momenteel een ML-dialect genaamd Alice, waarin onder andere (op meerdere processors of machines tegelijk) en 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. (pl)
rdfs:label أم أل (لغة برمجة) (ar) ML (ca) ML (Programmiersprache) (de) ML (γλώσσα προγραμματισμού) (el) ML (programlingvo) (eo) ML (lenguaje de programación) (es) ML (langage) (fr) ML (linguaggio di programmazione) (it) ML (programming language) (en) ML (프로그래밍 언어) (ko) ML (プログラミング言語) (ja) ML (programmeertaal) (nl) Meta Language (pl) ML (linguagem de programação) (pt) ML (ru) ML (programspråk) (sv) ML (uk) ML语言 (zh)
owl:sameAs freebase:ML (programming language) yago-res:ML (programming language) wikidata:ML (programming language) dbpedia-an:ML (programming language) dbpedia-ar:ML (programming language) dbpedia-ca:ML (programming language) dbpedia-de:ML (programming language) dbpedia-el:ML (programming language) dbpedia-eo:ML (programming language) dbpedia-es:ML (programming language) dbpedia-fa:ML (programming language) dbpedia-fi:ML (programming language) dbpedia-fr:ML (programming language) dbpedia-he:ML (programming language) dbpedia-hr:ML (programming language) dbpedia-hu:ML (programming language) dbpedia-it:ML (programming language) dbpedia-ja:ML (programming language) dbpedia-ko:ML (programming language) dbpedia-nl:ML (programming language) dbpedia-no:ML (programming language) dbpedia-pl:ML (programming language) dbpedia-pt:ML (programming language) dbpedia-ru:ML (programming language) dbpedia-sh:ML (programming language) dbpedia-sr:ML (programming language) dbpedia-sv:ML (programming language) http://tg.dbpedia.org/resource/ML dbpedia-tr:ML (programming language) dbpedia-uk:ML (programming language) dbpedia-zh:ML (programming language) https://global.dbpedia.org/id/51iCo
prov:wasDerivedFrom wikipedia-en:ML_(programming_language)?oldid=1106423335&ns=0
foaf:isPrimaryTopicOf wikipedia-en:ML_(programming_language)
foaf:name ML (en)
is dbo:influenced of dbr:Lisp_(programming_language) dbr:ISWIM
is dbo:influencedBy of dbr:Caml dbr:Bosque_(programming_language) dbr:Ur_(programming_language) dbr:Orc_(programming_language) dbr:Claire_(programming_language) dbr:Clojure dbr:Miranda_(programming_language) dbr:Cool_(programming_language) dbr:F_Sharp_(programming_language)__F#__1 dbr:Standard_ML dbr:Pict_(programming_language) dbr:C++ dbr:C_Sharp_(programming_language) dbr:ATS_(programming_language) dbr:Alice_(programming_language) dbr:ParaSail_(programming_language) dbr:Haskell dbr:Ceylon_(programming_language) dbr:Lean_(proof_assistant) dbr:Idris_(programming_language) dbr:Kotlin_(programming_language) dbr:Nemerle
is dbo:knownFor of dbr:Lawrence_Paulson
is dbo:wikiPageDisambiguates of dbr:ML
is dbo:wikiPageRedirects of dbr:ML_(language) dbr:ML_programming_language dbr:Ml_programming_language dbr:ML_language
is dbo:wikiPageWikiLink of dbr:Caml dbr:Amiga_programming_languages dbr:Scala_(programming_language) dbr:School_of_Informatics,_University_of_Edinburgh dbr:Enumerated_type dbr:List_of_computer_scientists dbr:List_of_functional_programming_topics dbr:Metalanguage_(disambiguation) dbr:MLisp dbr:Tail_call dbr:Principal_type dbr:Printf_format_string dbr:Binary_tree dbr:Bosque_(programming_language) dbr:Declarative_programming dbr:Alias_analysis dbr:List_of_University_of_Edinburgh_people dbr:Currying dbr:Ur_(programming_language) dbr:Value_restriction dbr:Visual_Studio dbr:Dynamic_compilation dbr:Incremental_compiler dbr:Index_of_computing_articles dbr:Let_expression dbr:Library_of_Congress_Classification:Class_Q_--_Science dbr:List_of_programming_language_researchers dbr:List_of_programming_languages dbr:List_of_programming_languages_by_type dbr:Nuprl dbr:ML_(language) dbr:ML_programming_language dbr:"Hello,_World!"_program dbr:Colon_(punctuation) dbr:Comparison_of_programming_languages_(functional_programming) dbr:Concurrent_ML dbr:Conditional_(computer_programming) dbr:Constant_(computer_programming) dbr:SPARC dbr:Generalized_algebraic_data_type dbr:Generational_list_of_programming_languages dbr:Generic_programming dbr:Orc_(programming_language) dbr:Claire_(programming_language) dbr:Clojure dbr:Miranda_(programming_language) dbr:Monad_(functional_programming) dbr:Cool_(programming_language) dbr:Operational_semantics dbr:Anonymous_function dbr:Arity dbr:Lisp_(programming_language) dbr:Lua_(programming_language) dbr:Luca_Cardelli dbr:MacroML dbr:Mads_Tofte dbr:Callback_(computer_programming) dbr:Standard_ML dbr:Strict_programming_language dbr:Closure_(computer_programming) dbr:Comparison_of_parser_generators dbr:Comparison_of_programming_languages_(syntax) dbr:Compiled_language dbr:Computer_program dbr:Funarg_problem dbr:Function_object dbr:Functional_programming dbr:Harry_Mairson dbr:Hope_(programming_language) dbr:Operator_overloading dbr:Parameter_(computer_programming) dbr:Parametric_polymorphism dbr:Partial_application dbr:PhoX dbr:Pict_(programming_language) dbr:Polymorphism_(computer_science) dbr:Programming_language_theory dbr:Microsoft_and_open_source dbr:Mutual_recursion dbr:C++ dbr:CLU_(programming_language) dbr:C_Sharp_(programming_language) dbr:Timeline_of_programming_languages dbr:Type_signature dbr:Type_system dbr:Type_theory dbr:Garbage_collection_(computer_science) dbr:Lambda_cube dbr:List_of_CLI_languages dbr:Logic_for_Computable_Functions dbr:ALGOL dbr:ATS_(programming_language) dbr:Algebraic_data_type dbr:Alice_(programming_language) dbr:Cyclone_(programming_language) dbr:Daniel_P._Friedman dbr:Exclamation_mark dbr:F_Sharp_(programming_language) dbr:ParaSail_(programming_language) dbr:History_of_programming_languages dbr:History_of_software dbr:Kent_Recursive_Calculator dbr:Lennart_Augustsson dbr:Matthew_Flatt dbr:Protocol_(object-oriented_programming) dbr:Qualification_principle dbr:Relational_operator dbr:HOL_(proof_assistant) dbr:Harlequin_(software_company) dbr:Haskell dbr:Haxe dbr:Hindley–Milner_type_system dbr:Asterisk dbr:At_sign dbr:Ceylon_(programming_language) dbr:John_C._Reynolds dbr:Lawrence_Paulson dbr:Lean_(proof_assistant) dbr:Syntactic_sugar dbr:Higher-order_programming dbr:Modern_C++_Design dbr:Modular_programming dbr:System_F dbr:Aspect-oriented_programming dbr:Assignment_(computer_science) dbr:C_Sharp_3.0 dbr:ISWIM dbr:Idris_(programming_language) dbr:Kotlin_(programming_language) dbr:Metalanguage dbr:Michael_J._C._Gordon dbr:Milner_Award dbr:Nemerle dbr:OCaml dbr:Categorical_abstract_machine dbr:Self-reference dbr:ML dbr:Pattern_matching dbr:Scope_(computer_science) dbr:Unit_type dbr:Variable_(computer_science) dbr:Wide-spectrum_language dbr:Type_inference dbr:Expression-oriented_programming_language dbr:Extended_ML dbr:F*_(programming_language) dbr:FL_(programming_language) dbr:ICFP_Programming_Contest dbr:Programming_language dbr:Evaluation_strategy dbr:First-class_citizen dbr:First-class_function dbr:XML_transformation_language dbr:Product_type dbr:Outline_of_C++ dbr:Outline_of_software_engineering dbr:ProgramByDesign dbr:Tagged_union dbr:Ternary_conditional_operator dbr:Ml_programming_language dbr:ML_language
is dbp:family of dbr:Caml dbr:Ur_(programming_language) dbr:Concurrent_ML dbr:Standard_ML dbr:F_Sharp_(programming_language) dbr:OCaml
is dbp:influenced of dbr:ISWIM
is dbp:influencedBy of dbr:Caml dbr:Bosque_(programming_language) dbr:Ur_(programming_language) dbr:Orc_(programming_language) dbr:Miranda_(programming_language) dbr:Cool_(programming_language) dbr:Standard_ML dbr:Pict_(programming_language) dbr:C++ dbr:ATS_(programming_language) dbr:Alice_(programming_language) dbr:F_Sharp_(programming_language) dbr:ParaSail_(programming_language) dbr:Ceylon_(programming_language) dbr:Lean_(proof_assistant) dbr:Idris_(programming_language) dbr:Kotlin_(programming_language) dbr:Nemerle
is foaf:primaryTopic of wikipedia-en:ML_(programming_language)