Lenguaje de programación interpretado en Scheme Racket.
- Identificadores: Son secuencias de caracteres alfanuméricos que comienzan con una letra.
- Definiciones: Permiten crear (o ligar) variables a valores.
- Expresiones: las estructuras sintácticas son una expresión y todas las expresiones producen un valor.
- Primitivas booleanas: <, >, <=, >=, ==, ! =, ==, and, or, not. Estas primitivas son binarias y permiten evaluar expresiones para generar un valore booleano
- Primitivas aritméticas: +, −, ∗, %, /, add1, sub1.
- Primitivas sobre cadenas: length, concat. *Condicionales: Son estructuras para controlar el flujo de un programa. Estos condicionales son sencillos del tipo if-else.
- Locales: Estos se utilizan para definir nuevas ligaduras.
- Definición/invocación de procedimientos: el lenguaje debe permitir la creación/invocación de procedimientos que retornan un valor al ser invocados. Estos procedimientos no son recursivos.
- Asignación: Los valores de las variables pueden mutar sus valores durante la ejecución de un programa.
- Secuenciación: El lenguaje deber permitir expresiones para la creación de bloques de instrucciones.
- Ciclos for: el lenguaje debe permitir la definición de una estrutura de repetición tipo for
- Ciclos while: el lenguaje debe permitir la definición de una estrutura de repetición tipo while
- Estructuras: Las estructuras de datos son datos que contienen un número no determinado dentro de tipos de datos básicos. Un buen ejemplo son las estructuras en C.
// Este ejemplo ignora los tipos
struct Book {
title;
author;
age;
};
strcbook = Book (
"El ultimo guerrero",
"Mario Castañeda",
2003
);
// acceder a parametros
strctbook.title;
// cambiar parametros
strucbook.title = "El nuevo emperador";
- Ciclos for
- Ciclos while
Estructuras de datos.
- Creación.
- Acceso a los campos.
- Modificación de los campos.
Proyecto realizado utilizando la librería SLLGEN de Dr. Racket