MODULA 2 - CALIGOLA II
MODULE - EXEMPLAR
FROM... IMPORT - EX...
CAPE
TYPE - MODUS
ARRAY OF
- MATRIX+genitivo
CHARACTER - LITTERA
INTEGER - NUMERUS
BEGIN - INCIPIT
END - EXTREMUM
WITH - CUM
PROCEDURE - RATIO
VARIABILE - MUTABILIS
(* I nomi delle variabili possono essere in una qualsiasi lingua. ve lo ricordiamo *)
EXEMPLAR Corpetto;
CAPE IntroForas,FenestraindexIntroForas.Scriptio,Sententia;
MODUS LongaSententia=MATRIX[1.MMM] LITTERAE, ExiguaSententia=MATRIX[I. XXVI] LITTERAE;
NOTAE Apritesto.correzione.createsto,fine,venti,trenta;
MUT voci LongaSententia; x1.x2,y1,y2;
Fenestra AbsolutaeCompositae;
Sfondo.Plano.FSfondo,FPiano.Fenestra Color;
check.Spento.Acceso:BOOLEANUS;
Dfin MATRIX[I..X] LITTERAE;
Fin2: MATRIX[I..X] NUMERORUM;
RATIO Finestre(Indice: NUMERUS);
INCIPIT
CUM Dfin[Indice] FAC
X-I:=x1,X-II:=x2;Y-I:=y1;Y-II:=y2
Recessus:=Sfondo;Planum:=Piano;Occultatum:=Spento;
CursorAccensus:=VERUM;
EXTREMUM; (* CUM *)
Fin2[Indice]:=(Dfin[Indice]);
EXTREMUM Finestre;
RATIO Elimina(parola:ExiguaSententia):ExiguaSententia;
MUT II INTEGRALIS;
pri,ult: LITTERA;
INCIPIT
ll =Sententia.Longitudo(parola)-II;
Sententia.Pars(ult,parola,II,I); (* ult = ultimo carattere parola corrente *)
SI ((ult=',') AN (ult='.') AN (ult='!') AN (ult=' ') AN (ult=':') AN (ult=')') AN (ult=']') AN (ult='”'))
TUM Sententia.Pars(parola,parola,0,II);
EXTREMUM; (* SI *)
REDDIS parola;
EXTREMUM Elimina;
Per chiunque fosse interessato, il Caligola Il è disponibile per il solo PC al seguente indirizzo:
CARRIOLA SOFT
PO BOX 35345234554534
Latina
Costa MMCMLX Sesterzi. Tra le altre novità annunciate dalla stessa software house, saranno presto disponibili al pubblico CICERO BASIC 11V, FEDRO LOGO IX VII e un importante routine-dizionario in Caligola II che traduce automaticamente le versioni dal Latino all'Italiano.