Lambda
Entities
Simple Types
Record Types
Access Types
Subprograms
Description
Abst
function Abst (Parameter : String; Func_Body : Term) return Term
Parameters
- Parameter
- Func_Body
Return Value
Appl
function Appl (Func : Term; Argument : Term) return Term
Parameters
- Func
- Argument
Return Value
beta
function beta (T : Term) return Term
Parameters
- T
Return Value
Expression
type Expression is not null access all Term;
From
function From (Input : String) return Term
Parameters
- Input
Return Value
My_Put_Image
procedure My_Put_Image
(Output : in out Ada.Strings.Text_Buffers.Root_Buffer_Type'Class;
T : Term)
Parameters
- Output
- T
Substitution
function Substitution (T : Term; Var : String; Rep : Term) return Term
Parameters
- T
- Var
- Rep
Return Value
Term
type Term (Kind : Term_Kind) is record
case Kind is
when Variable =>
Name : Ada.Strings.Unbounded.Unbounded_String;
when Abstraction =>
Parameter : Ada.Strings.Unbounded.Unbounded_String;
Func_Body : Expression;
when Application =>
Func : Expression;
Argument : Expression;
end case;
end record;
Record fields
- Kind
- Name
- Parameter
- Func_Body
- Func
- Argument
Term_Kind
type Term_Kind is (Variable, Abstraction, Application);
Enumeration Literal
- Variable
- Abstraction
- Application
Vari
function Vari (Name : String) return Term
Parameters
- Name
Return Value