ML Definition & Meaning

ML, short for Meta Language, is a general-purpose functional programming language. It’s statically scoped, meaning that a variable always refers to its top-level environment. ML can be referred to as an impure functional language because it allows side effects, which most functional programming languages do not allow. A side effect is when a procedure changes a variable from outside its scope.

Like most programming languages, ML uses eager evaluation, so an expression is evaluated as soon as it’s bound to a variable. This is in direct opposition to lazy evaluation. However, lazy evaluation can still be achieved through the use of closures. ML is used for meta-programming, or writing programs that manipulate other programs. ML is known for its use of the Hindley-Milner type system, which automatically assigns the types of most expressions without requiring explicit type annotations and ensures type safety. ML is also used for:

  • Scientific applications
  • Theorem providers
  • Analyzers, compilers, and programming languages
  • Financial systems applications
  • Bioinformatics and genealogical databases

Features of ML

ML is a strictly-typed language, meaning that a well-typed language will not cause runtime type errors. It features an automatic memory management system through garbage collection, so memory is automatically allocated and freed by the compiler. Parametric polymorphism is supported, meaning a single polymorphic function can be written to take a parameter of any compatible type. Other features include:

  • First-class functions
  • Static typing
  • Type interference
  • Pattern matching for functional arguments
  • Exception handling
  • Algebraic data types

ML is also the abbreviation for machine learning, a type of data analysis that uses algorithms to learn from data.






Abby Dykes
Abby Dykes
Abby Dykes is a newly-graduated writer and editor for websites such as TechnologyAdvice.com, Webopedia.com, and Project-Management.com. When she’s not writing about technology, she enjoys giving too many treats to her dog and coaching part-time at her local gym.

Top Articles

Huge List Of Texting and Online Chat Abbreviations

From A3 to ZZZ we list 1,559 text message and online chat abbreviations to help you translate and understand today's texting lingo. Includes Top...

How To Create A Desktop Shortcut To A Website

This Webopedia guide will show you how to create a desktop shortcut to a website using Firefox, Chrome or Internet Explorer (IE). Creating a desktop...

The History Of Windows Operating Systems

Microsoft Windows is a family of operating systems. We look at the history of Microsoft's Windows operating systems (Windows OS) from 1985 to present...

Hotmail [Outlook] Email Accounts

  By Vangie Beal Hotmail is one of the first public webmail services that can be accessed from any web browser. Prior to Hotmail and its...

Supply Chain Definition &...

A supply chain is a network between an organization and its suppliers to...

Relational Database Definition &...

A relational database stores and connects data in tables and columns, emphasizing the...

Common Business-Oriented Language (COBOL)...

What is COBOL? COBOL stands for Common Business-Oriented Language. It is a 60-year-old programming...