Hope (programovací jazyk) - Hope (programming language)

Hope je malý funkční programovací jazyk vyvinutý v 70. letech na University of Edinburgh . To předchází Miranda a Haskell a je současný s ML , také vyvinutý na univerzitě. Naděje byla odvozena z NPL , jednoduchého funkčního jazyka vyvinutého Rodem Burstallem a Johnem Darlingtonem v jejich práci na transformaci programu. NPL a Hope jsou pozoruhodné tím, že jsou prvními jazyky s hodnocením podle vzorce a algebraickými datovými typy .

Naděje byla pojmenována po siru Thomasovi Hopeovi (asi 1681–1771), skotskému zemědělskému reformátorovi, po němž byl pojmenován také Hope Park Square v Edinburghu, kde se v době vývoje naděje nacházelo oddělení umělé inteligence.

Jazykové podrobnosti

Faktoriální program v Hope je:

dec fact : num -> num;
--- fact 0 <= 1;
--- fact n <= n*fact(n-1);

Změna pořadí klauzí nemění význam programu, protože Hopeova shoda vzorů vždy upřednostňuje konkrétnější vzory před méně konkrétními. Výslovná prohlášení typu v Hope jsou povinná; v Hope není možnost použít algoritmus odvození typu.

Naděje poskytuje dvě integrované datové struktury: n-tice a seznamy.

Implementace

První implementace Hope byla přísná , ale od té doby existují líné verze a přísné verze s línými konstruktory. British Telecom zahájil s Imperial College projekt implementace přísné verze. První vydání bylo kódováno Thanosem Vassilakisem v roce 1986. Další vydání byly kódovány Markem Tasngem z British Telecom. Nástupnický jazyk Hope + (vyvinutý společně mezi Imperial College a International Computers Limited (ICL)) přidal poznámky, aby diktoval buď přísné nebo líné hodnocení.

Výukový program Rogera Baileyho Hope v vydání BYTE ze srpna 1985 odkazuje na tlumočníka pro IBM PC DOS 2.0.

Reference

externí odkazy