Miranda programming language

E807602

Miranda is a purely functional, non-strict programming language from the 1980s that strongly influenced later languages like Haskell through its elegant type system and list-processing features.

Jump to: Surface forms Statements Referenced by

Observed surface forms (1)

Surface form Occurrences
Miranda 0

Statements (50)

Predicate Object
instanceOf functional programming language
non-strict programming language
programming language
controlStructure recursion instead of loops
countryOfOrigin United Kingdom
dataRepresentation algebraic data types with constructors
decadeOfOrigin 1980s
designedBy David Turner NERFINISHED
developer David Turner NERFINISHED
distributionModel commercial
evaluationStrategy non-strict (lazy) evaluation
firstAppeared 1985
hasKeyword if
otherwise
where
with
historicalSignificance major influence on the design of Haskell
one of the first widely known lazy functional languages
influenced Clean NERFINISHED
Haskell NERFINISHED
Hope+ (later functional languages) NERFINISHED
general design of lazy functional languages
influencedBy Hope (programming language) NERFINISHED
ML (programming language) NERFINISHED
influenceOnHaskell list comprehension notation
syntax
type system design
use of algebraic data types and pattern matching
use of lazy evaluation by default
license proprietary software license
notableFeature clean mathematical semantics
concise syntax for functional definitions
elegant list-processing capabilities
lazy lists as a core abstraction
simple but expressive type system
notableUse teaching functional programming concepts
paradigm functional programming
sideEffectsPolicy discourages side effects
supports algebraic data types
guards in function definitions
higher-order functions
infinite lists
lazy evaluation of data structures
list comprehensions
modules
pattern matching
type inference
targetPlatform Unix-like systems
typeDiscipline static typing
typeSystem polymorphic type system

Referenced by (1)

Full triples — surface form annotated when it differs from this entity's canonical label.

Hindley–Milner type system usedIn Miranda programming language