Irvine Dataflow ( Id ) es un lenguaje de programación paralelo de propósito general , iniciado en la Universidad de California en Irvine en 1975 [1] por Arvind y KP Gostelow. [2] Arvind continuó trabajando con Id en el MIT hasta la década de 1990.
El subconjunto principal de Id es un lenguaje de programación puramente funcional con semántica no estricta . Las características incluyen: funciones de orden superior , un sistema de tipo polimórfico con verificación de tipo estático de estilo Milner con sobrecarga, tipos definidos por el usuario y coincidencia de patrones, y operadores de prefijo e infijo. Condujo al desarrollo del pH, un dialecto paralelo de Haskell .
Los programas de identificación son finos implícitamente paralelos .
La abstracción de la variable de sincronización MVar en Haskell se basa en las estructuras M de Id. [3]
Ejemplos de
type bool = False | Cierto;
Verdadero :: bool -> bool ¿Falso? :: bool -> bool y :: bool -> bool -> bool
Implementaciones
- pHluido
- El sistema pHluid fue una implementación de investigación del lenguaje de programación Id, con planes futuros para un front-end para pH, un dialecto paralelo del lenguaje de programación Haskell, implementado en el Laboratorio de Investigación de Cambridge de Digital. y uso sin fines de lucro. Está dirigido al hardware de estación de trabajo estándar de Unix.
Referencias
- ^ Sharp, JA (1992). Computación de flujo de datos: teoría y práctica . Intelecto, limitado. pag. 125. ISBN 9780893919214. Consultado el 2 de diciembre de 2014 .
- ^ Arvind & KP Gostelow, The Id Report: An Asychronous Language and Computing Machine, Informe técnico TR-114, Departamento de Información y Ciencias de la Computación, Universidad de California, Irvine, septiembre de 1978.
- ^ "Haskell concurrente". Peyton-Jones, Gordon y Finne. POPL 1996
enlaces externos
- Manual de referencia del lenguaje de identificación , Rishiyur S. Nikhil, 1991.
- "Un lenguaje de programación asincrónico para una gran máquina multiprocesador", Arvind et al., TR114a, Dept ISC, UC Irvine, diciembre de 1978