Ada es un lenguaje con un sistema de tipos muy robusto y flexible, diseñado para garantizar la seguridad y fiabilidad del software.
Es conocido por su riguroso control de tipos y su capacidad para definir tipos personalizados. A continuación veremos los tipos de datos que maneja Ada.
Tipos de datos que maneja Ada
- Tipos escalares.
- Tipos de Datos Compuestos.
- Tipos de Datos de Acceso.
- Tipos Enumerados.
- Tipos de Datos de Tiempo.
- Tipos de Datos de Subtipo.
- Tipos de Datos Protegidos.
- Tipos Derivados.
- Tipos de Datos Discriminados.
- Tipos de Datos de Tareas (Tasks).
Tipos escalares
Integers (enteros), Reales, Booleanos y de tipo caracter (Character).
subtype Small_Int is Integer range 1 .. 100;
type Real_Type is digits 10;
type Fixed_Type is delta 0.01 range -100.0 .. 100.0;
Bool_Value : Boolean := True;
Char_Value : Character := 'A';
Tipos de Datos Compuestos
Arrays, String y registros (Record).
type Int_Array is array (1 .. 10) of Integer; Greeting : String := "Hello"; type Person is record Name : String(1 .. 20); Age : Integer; end record;
Tipos de Datos de Acceso
Apuntadores (access).
type Int_Ptr is access Integer;
Tipos Enumerados
Los queermiten definir un conjunto de valores discretos que un tipo puede tomar (enumerations).
type Days is (Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday);
Tipos de Datos de Tiempo
Ada incluye tipos para manejar valores de tiempo y fechas, con soporte para intervalos y operaciones aritméticas sobre tiempo.
type Day_Duration is range 0.0 .. 86400.0; -- Duración de un día en segundos
Tipos de Datos de Subtipo
subtype Positive_Int is Integer range 1 .. Integer'Last;
Tipos de Datos Protegidos
Permiten definir variantes de tipos existentes con restricciones adicionales, como un rango específico de valores.
protected type Shared_Counter is procedure Increment; function Get_Value return Integer; private Counter : Integer := 0; end Shared_Counter;
Tipos Derivados
Permiten crear un nuevo tipo basado en un tipo existente, heredando sus características pero con la posibilidad de añadir restricciones o comportamientos específicos.
type Positive_Speed is new Integer range 0 .. 200;
Tipos de Datos Protegidos
Utilizados en programación concurrente para garantizar acceso seguro a datos compartidos entre múltiples tareas.
protected type Shared_Counter is procedure Increment; function Get_Value return Integer; private Counter : Integer := 0; end Shared_Counter;
Tipos de Datos Discriminados
Son registros que contienen campos opcionales, donde la estructura puede variar en función de un discriminante.
type Shape (Filled : Boolean) is record X, Y : Integer; case Filled is when True => Color : Color_Type; when False => null; end case; end record;
Tipos de Datos de Tareas (Tasks)
Representan tareas concurrentes en Ada, permitiendo definir procesos que pueden ejecutarse en paralelo.
task type Worker is entry Start_Work; end Worker;
Estos son los tipos de datos que maneja el lenguaje de programación Ada.
Enlaces:
https://ada-lang.io/https://alquimistadecodigo.blogspot.com/2024/09/ada-un-lenguaje-de-programacion-del-que.html
Comentarios
Publicar un comentario