Hume (programming language): Difference between revisions

Content deleted Content added
m compound modifier
 
Line 32:
}}
[[File:HumeStatue-Edinburgh2006.jpg|thumb|Hume Statue in Edinburgh]]
 
'''Hume''' is a functionally based programming language developed at the [[University of St Andrews]] and [[Heriot-Watt University]] in [[Scotland]] since the year 2000. The language name is both an acronym meaning 'Higher-order Unified Meta-Environment' and an honorific to the 18th-century philosopher [[David Hume]]. It targets [[real-time computing]] [[embedded system]]s, aiming to produce a design that is both highly abstract, and yet allows precise extraction of time and space execution costs. This allows guaranteeing the bounded time and space demands of executing programs.
 
Hume combines [[functional programming]] ideas with ideas from [[finite -state automata]]. Automata are used to structure communicating programs into a series of "boxes", where each box maps [[Input/output|inputs to outputs]] in a [[pure function|purely functional]] way using high-level pattern-matching. It is structured as a series of levels, each of which exposes different machine properties.
 
== Design model ==