Visualizzazione post con etichetta yarpp.function. Mostra tutti i post
Visualizzazione post con etichetta yarpp.function. Mostra tutti i post

getCurrentDirectory

RC=getCurrentDirectory()

Include file

libreria: <system.cmh>
file: <system\getdirna.cmh>

Dipendenze

getInterpreterName()

Descrizione

Ritorna il nome della directory corrente.

Input

Nessuno

Output

La funzione ritorna una stringa contenente il nome della directory corrente oppure

ERROR: si e' verificato un errore.

Note

[Home] [Index] [Usage] [Environment variable] [pre-processor] [funzioni] [debug]

getEnvironmentName

RC=getEnvironmentName()

Include file

libreria: <system.cmh>
file: <system\getenvna.cmh>

Dipendenze

getOperatingSystemName()
getInterpreterName()

Descrizione

Ritorna il nome della variabile ENVIRONMENT da usare nelle Rexx BuiltIn function a seconda dell''interprete Rexx e del sistema operativo in uso.

Input

Nessuno

Output

La funzione ritorna una stringa contenente l'identificatico dell'environment Rexx:

DOSENVIRONMENT
ENVIRONMENT
OS2ENVIRONMENT
SYSTEM

ERROR: si e' verificato un errore.

Note

Qualora si debbano introdurre altri tipi di interprete Rexx e di Sistemi Operativi questa funzione andrà modificata.

[Home] [Index] [Usage] [Environment variable] [pre-processor] [funzioni] [debug]

getInterpreterName

RC=getInterpreterName()

Include file

libreria: <system.cmh>
file: <system\getintna.cmh>

Dipendenze

Nessuna

Descrizione

Ritorna il nome dell'interprete Rexx usando la PARSE Version.

Input

Nessuno

Output

La funzione ritorna una stringa contenente l'identificatico dell'interprete Rexx:

REGINA per il Regina Rexx
REXXSAA per l'IBM Rexx

ERROR: si e' verificato un errore.

Note

Qualora si debbano introdurre altri tipi di interprete Rexx questa funzione andrà modificata.

[Home] [Index] [Usage] [Environment variable] [pre-processor] [funzioni] [debug]

getOperatingSystemName

RC=getOperatingSystemName()

Include file

libreria: <system.cmh>
file: <system\getopsys.cmh>

Dipendenze

Nessuna

Descrizione

Ritorna il nome identificativo del Sistema Operativo.

Input

Nessuno

Output

La funzione ritorna una stringa contenente l'identificatico del sistema operativo.

oppure

ERROR: si e' verificato un errore.

Note

Nessuna

[Home] [Index] [Usage] [Environment variable] [pre-processor] [funzioni] [debug]

getSystemTimeStamp

RC=getSystemTimeStamp()

Include file

libreria: <time.cmh>
file: <time/getsysts.cmh>

Dipendenze

Nessuna

Descrizione

Ritorna il time stamp di sistema al momento della chiamata.

Input

Nessuno

Output

La funzione ritorna una stringa di 16 caratteri contenente il time-stamp di sistema nel formato:
yyyymmddhhnnsscc

dove:

yyyy
l'anno su quattro cifre
mm il mese su due cifre
dd il giorno su due cifre
hh l'ora in formato 24h su due cifre
nn i minuti su due cifre
ss i secondi su due cifre
cc i centesimi di secondo su due cifre

oppure

ERROR: si e' verificato un errore.

Note

Nessuna

[Home] [Index] [Usage] [Environment variable] [pre-processor] [funzioni] [debug]

I mattoncini di YARPP :)

YARPP è scritto facendo uso di una serie di funzioni elementari che ho sviluppato nel tempo e richiede YARPP stesso per essere generato. Nel capitolo "Building Yarpp" sarnno descritte in dettaglio la modalita di "generazione" di YARPP a partire dall'ultima release di se stesso.

Nella scrittura delle routine elementari ho cercato di seguire alcune regole per avere un codice "pulito". Le principali regole sono le seguenti:
  • tutte le routine sono strutturate come Rexx Procedure e quindi le variabili sono locali alle routine stesse;
  • l'uso delle Rexx Procedure che è stato fatto è quello delle funzioni. Ogni azione elementare è fatta con una funzione e funzioni più complesse sono "costruite" a partire da quelle elementari;
  • all'interno del codice ci sono statement di inclusione condizionale delle eventuali altre routine necessarie;
  • essendo il Rexx quasi un linguaggio non tipizzato, si è fatto uso nella definizione delle variabili della notazione ungherese;
  • ogni funzione è documentata con una scheda che ne riassume le caratteristiche, ne indica le modalità di chiamata e ne specifica i valori ritornati ed il loro significato;
  • ogni funzione è in grado di produrre un livello di debug che al minimo mostra i valori in ingresso ed i valori ritornati. (per alcune funzioni veramente elementari questo non e' vero);
  • ho sviluppato un classe di funzioni specifiche per il debug. Con l'utilizzo di tali funzioni è possibile implementare livelli crescenti di debug (da 1 a 9) e registrare l'output ance su file.
  • ho cercato, dove possibile, di:
    • rendere sicuro l'input;
    • rendere sicuro l'output;
    • rendere sicuri i dati trattati;
    • rendere sicuri gli algoritmi;
Nonostante tutto sono cosciente che si può essere sicuri solo della non scorrettezza di un programma, ma non della sua correttezza.

Con l'occasione, man mano che pubblicherò il codice lo rivedrò per ripulirlo.
Ogni commento, suggerimento, critica sono graditi e saranno tenuti in seria considerazione.

Vedremo ora quali sono le funzioni definite per YARPP.

[Home] [Index] [Usage] [Environment variable] [pre-processor] [funzioni] [debug]