Los programas creados para la programacion exclusiva en tiempo real, son dos, Ada y Occam, los cuales presento un pequeño resumen a continuacion.
Ada
Es un lenguaje de programación orientado a objetos y fuertemente tipado de forma estática que fue diseñado por Jean Ichbiah de CII Honeywell Bull por encargo del Departamento de Defensa de los Estados Unidos. Es un lenguaje multipropósito, orientado a objetos y concurrente, pudiendo llegar desde la facilidad de Pascal hasta la flexibilidad de C++.
Fue diseñado con la seguridad en mente y con una filosofía orientada a la reducción de errores comunes y difíciles de descubrir. Para ello se basa en un tipado muy fuerte y en chequeos en tiempo de ejecución (desactivables en beneficio del rendimiento). La sincronización de tareas se realiza mediante la primitiva rendezvous.
Ada se usa principalmente en entornos en los que se necesita una gran seguridad y fiabilidad como la defensa, la aeronáutica (Boeing o Airbus), la gestión del tráfico aéreo (como Indraen España) y la industria aeroespacial entre otros.
Uno de sus compiladores muy usado es GNAT, originalmente desarrollado por la Universidad de Nueva York bajo patrocinio del DoD. Está basado en la tecnología de GCC y es software libre. Pero existen otros compiladores comerciales.
- La sintaxis, inspirada en Pascal, es bastante legible incluso para personas que no conozcan el lenguaje. Es un lenguaje que no escatima en la longitud de las palabras clave, en la filosofía de que un programa se escribe una vez, se modifica decenas de veces y se lee miles de veces (legibilidad es más importante que rapidez de escritura).
- Es indiferente el uso de mayúsculas y minúsculas en los identificadores y palabras claves, es decir es un lenguaje case-insensitive.
- En Ada, todo el programa es un único procedimiento, que puede contener subprogramas (procedimientos o funciones).
- Cada sentencia se cierra con end qué_cerramos. Es un modo de evitar errores y facilitar la lectura. No es necesario hacerlo en el caso de subprogramas, aunque todos los manuales lo aconsejan y casi todos los programadores de Ada lo hacen.
- El operador de asignación es :=, el de igualdad =. A los programadores de C y similares les puede confundir este rasgo inspirado en Pascal.
- Se distingue entre "procedimientos" y "funciones" .
Es un lenguaje de programación imperativo y estructurado (al igual que Pascal). Poco conocido y Con muy pero muy poca informacion en la red. Fue desarrollado por David May en Inmos Limited, Bristol, Inglaterra, para desarrollar software para su línea de procesadores Transputers, existiendo también implementaciones para otras plataformas.
Es un lenguaje de procesamiento en paralelo; se basa en el álgebra de procesos CSP (Communicating Sequential Processes) y comparte muchas de sus características. Lleva el nombre de William of Ockham famoso por ser el creador de la navaja de Occam.
Occam incorpora soporte para grano muy fino, facilidad para usar hilos y el apoyo sin fisuras de los entornos multi-procesador. Puede ser utilizado en sistemas de memoria compartida o distribuida, y sus fuertes fundamentos en CSP lo hace una excelente opción cuando se requieren pruebas formales de corrección.
Actualmente el Occam esta tambien como aplicación en el lenguaje Java.
No hay comentarios:
Publicar un comentario