LibreLogo

LibreLogo è un ambiente di programmazione semplice simile a Logo, con la grafica della tartaruga vettoriale, adatto all'insegnamento del computer (programmazione ed elaborazione testi), la tipografia digitale e il disegno grafico. Visitate http://www.numbertext.org/logo/librelogo.pdf.

Barra degli strumenti di LibreLogo

La barra degli strumenti di LibreLogo (Visualizza - Barre degli strumenti - Logo) contiene le icone per il movimento della tartaruga, per l'avvio e il blocco del programma, per inizializzare e pulire lo schermo e per l'evidenziazione/traduzione della sintassi, oltre a una barra di immissione (riga di comando).

Icone di movimento tartaruga

Sono l'equivalente dei comandi Logo “FORWARD 10”, “BACK 10”, “LEFT 15”, “RIGHT 15”. Se fate clic su una delle icone verrà scorsa la pagina e posizionato il fuoco alla posizione della tartaruga.

Eseguire un programma Logo

Fate clic sull'icona "Avvia un programma Logo" per eseguire il testo (o soltanto la parte selezionata) del documento Writer come un programma LibreLogo. In un documento vuoto viene scritto ed eseguito in un programma di esempio.

Fate clic sull'icona "Stop" per fermare l'esecuzione del programma.

Inizializza

Fate clic sull'icona “Inizializza” per inizializzare la posizione e le impostazioni della tartaruga.

Pulisci schermo

Fate clic sull'icona “Pulisci schermo” per rimuovere, dal documento, gli oggetti di disegnati.

Editor di programma/evidenziatore di sintassi/traduttore

L'icona "Bacchetta magica" imposta un layout di 2 pagine per l'editing del programma, estende e converte in maiuscolo i comandi Logo nel documento Writer. Modificate la lingua del documento (tramite Impostazioni della lingua - Lingue - Occidentale) e fate clic su questa icona per tradurre il programma Logo nella lingua prescelta.

Riga di comando

Premete Invio nella riga di comando per eseguire il suo contenuto. Per fermare il programma usate l'icona “Ferma".

Tenete premuto il tasto Invio per ripetere la riga di comando, per esempio, sulla sequenza di comando che segue:

 FORWARD 200 LEFT 89

Per azzerare la riga di comando fate triplo clic al suo interno o premete Ctrl-A per selezionare i comandi precedenti, poi digitate i nuovi comandi.

Interfaccia utente grafica delle impostazioni di base della tartaruga

La figura della tartaruga di LibreLogo è un oggetto di disegno a dimensione normale fissa. Potete posizionarla e ruotarla normalmente, utilizzando il mouse e l'icona Ruota della barra degli strumenti delle proprietà degli oggetti di disegno. Potete modificare le impostazioni dello spessore linea, del colore linea e del colore area della tartaruga per impostare gli attributi PENSIZE, PENCOLOR e FILLCOLOR di LibreLogo.

Modifica del programma

I disegni e i programmi LibreLogo usano lo stesso documento Writer. La superficie dove LibreLogo disegna si trova nella prima pagina del documento Writer. Per ottenere un layout di programmazione a due pagine più comodo, potete inserire un'interruzione di pagina prima dei programmi LibreLogo e impostare la dimensione del carattere e dell'ingrandimento: la pagina sinistra (la prima) conterrà il disegno, la pagina destra (la seconda) sarà riservata ai programmi LibreLogo.

Linguaggio di programmazione LibreLogo

LibreLogo è un linguaggio di programmazione simile a Logo facilmente traducibile, localizzato in varie lingue dalle comunità di lingua LibreOffice. È compatibile con i vecchi sistemi Logo, per i casi di semplici programmi Logo utilizzati nel campo dell'educazione, per es.

 TO triangolo :dimensione
REPEAT 3 [
FORWARD :dimensione
LEFT 120
]
END

triangolo 10 triangolo 100 triangolo 200

Differenze rispetto al linguaggio di programmazione Logo

Altre caratteristiche di LibreLogo

Comandi di LibreLogo

Sintassi di base

Maiuscole/minuscole

I comandi e le costanti di colore non distinguono tra maiuscole e minuscole:

 PRINT “Hello, World!”
stampa “Hello, World, di nuovo!”

Le variabili dei nomi distinguono tra le maiuscole e le minuscole:

 a = 5
A = 7
PRINT a
PRINT A

Linee di programma

Le linee di un programma LibreLogo corrispondono a paragrafi nel documento LibreOffice Writer. Una linea di programma può contenere più comandi:

 PRINT “Hello, World!” PRINT “LibreLogo”

Commenti

Su una linea, tutto ciò che segue il punto e virgola è un commento:

 ; alcuni commenti
PRINT 5 * 5 ; alcuni commenti

Interrompere le righe del programma in più paragrafi

È possibile dividere una linea di programma in più paragrafi tramite l'uso del carattere "~" (tilde) alla fine della riga:

 PRINT “Questo è un messaggio di avviso ” + ~
“molto lungo”

Movimento della tartaruga

FORWARD (fd)

 FORWARD 10 ; sposta avanti di 10pt (1pt = 1/72 di pollice)
FORWARD 10pt ; vedere sopra
FORWARD 0.5poll ; sposta avanti di 0.5 pollici (1 pollice = 2.54 cm)
FORWARD 1" ; vedere sopra
FD 1mm
FD 1cm

BACK (bk)

 BACK 10 ; sposta indietro di 10pt

LEFT (lt)

 LEFT 90 ; ruota la tartaruga di 90 gradi in senso antiorario
LEFT 90° ; vedere sopra
LT 3h ; vedere sopra (posizione orologio)
LT any ; ruota in una posizione casuale

RIGHT (rt)

 RIGHT 90 ; gira di 90 gradi in senso orario

PENUP (pu)

 PENUP ; la tartaruga si sposterà senza disegnare

PENDOWN (pd)

 PENDOWN ; la tartaruga si sposterà disegnando

POSITION (pos)

 POSITION [0, 0] ; ruota la tartaruga e la sposta verso l'angolo superiore sinistro
POSITION PAGESIZE ; ruota e sposta verso l'angolo inferiore destro
POSITION [PAGESIZE[0], 0] ; ruota e sposta verso l'angolo superiore destro
POSITION ANY ; ruota e sposta in una posizione casuale

HEADING (seth)

 HEADING 0 ; gira verso nord
HEADING 12h ; vedere sopra
HEADING [0, 0] ; gira verso l'angolo superiore sinistro
HEADING ANY ; gira in una posizione casuale

Altri comandi della tartaruga

HIDETURTLE (ht)

 HIDETURTLE ; nasconde la tartaruga (fino al comando SHOWTURTLE)

SHOWTURTLE (st)

 SHOWTURTLE ; mostra la tartaruga

HOME

 HOME ; riporta la posizione della tartaruga alle condizioni iniziali

CLEARSCREEN (cs)

 CLEARSCREEN ; rimuove gli oggetti di disegno dal documento

FILL e CLOSE

 FILL ; chiude e riempie la forma della linea o dei punti attivi
CLOSE ; chiude la forma della linea attiva o unisce i punti attivi

Esempio: riempire un triangolo equilatero:

 FORWARD 50 LEFT 120 FORWARD 50 FILL

Esempio: disegnare un triangolo equilatero:

 FORWARD 50 LEFT 120 FORWARD 50 CLOSE

Impostazioni della penna

PENSIZE (ps)

 PENSIZE 100 ; lo spessore linea è di 100 punti
PENSIZE ANY ; equivale a PENSIZE RANDOM 10

PENCOLOR/PENCOLOUR (pc)

 PENCOLOR “red” ; imposta il colore della penna a rosso (per nome di colore, vedere le constanti di colore)
PENCOLOR [255, 255, 0] ; imposta il colore giallo (elenco RGB)
PENCOLOR 0xffff00 ; imposta il colore giallo (codice esadecimale)
PENCOLOR 0 ; imposta il colore nero (0x000000)
PENCOLOR ANY ; colore casuale
PENCOLOR [5] ; imposta il colore rosso (in base all'identificatore di colore, vedere le costanti di colore)
PENCOLOR “invisibile” ; colore penna invisibile per le forme senza contorno visibile
PENCOLOR “~rosso” ; imposta il colore rosso casuale

PENTRANSPARENCY

 PENTRANSPARENCY 80 ; definisce la trasparenza del colore della penna attiva all'80%

PENCAP/LINECAP

 PENCAP “none” ; senza estremità linea aggiuntiva (predefinito)
PENCAP “round” ; estremità linea arrotondata
PENCAP “square”; estremità linea quadrata

PENJOINT/LINEJOINT

 PENJOINT "rounded" ; giunzione linea arrotondata (impostazione predefinita)
PENJOINT “miter” ; giunzione linea appuntita
PENJOINT “bevel” ; giunzione linea smussata
PENJOINT “none” ; senza linea di giunzione

PENSTYLE

 PENSTYLE “solid” ; linea piena (impostazione predefinita)
PENSTYLE “dotted” ; linea a punti
PENSTYLE “dashed” ; linea tratteggiata

; modello personalizzato di punti–trattini specificato da una lista comprendente i seguenti argomenti:
; – numero dei punti contigui
; – lunghezza del punto
; – numero dei trattini contigui
; – lunghezza di un trattino
; – distanza dei punti/trattini
; – tipo (facoltativo):
; 0 = i punti sono rettangoli (impostazione predefinita)
; 2 = i punti sono quadrati (le lunghezze e le distanze sono relative alla dimensione della penna)

PENSTYLE [3, 1mm, 2, 4mm, 2mm, 2] ; ...––...––...––

Impostazioni di riempimento

FILLCOLOR/FILLCOLOUR (fc)

 FILLCOLOR “blue” ; riempie col colore blu, vedere anche PENCOLOR
FILLCOLOR “invisible” CIRCLE 10 ; una circonferenza vuota
FILLCOLOR [“blue”, “red”] ; gradiente tra il rosso e il blu
FILLCOLOR [[255, 255, 255], [255, 128, 0]] ; tra il bianco e l'arancione
FILLCOLOR [“blue”, “red”, 1, 0, 0] ; imposta un gradiente assiale (con la rotazione richiesta e l'impostazione dei bordi), valori possibili: 0-5 = gradienti: lineare, assiale, radiale, ellittico, quadrato e rettangolare
FILLCOLOR [“red”, “blue”, 0, 90, 20] ; lineare con il bordo del 20%, ruotato di 90 gradi dall'attuale direzione della tartaruga
FILLCOLOR [“red”, “blue”, 0, 90, 20, 0, 0, 200, 50] ; intensità dal 200% al 50% di intensità
FILLCOLOR [ANY, ANY, 2, 0, 0, 50, 50] ; gradiente radiale tra due colori casuali e 50-50% orizzontale e verticale posizione del centro

FILLTRANSPARENCY

 FILLTRANSPARENCY 80 ; imposta la trasparenza dell'attuale colore all'80%
FILLTRANSPARENCY [80] ; imposta il gradiente lineare di trasparenza da 80% a 0%
FILLTRANSPARENCY [80, 20] ; imposta il gradiente lineare di trasparenza da 80% a 20%
FILLTRANSPARENCY [80, 20, 1, 90] ; imposta il gradiente di trasparenza assiale ruotato di 90 gradi rispetto all'attuale direzione della tartaruga
FILLTRANSPARENCY [80, 20, 2, 0, 20, 50, 50] ; imposta il gradiente di trasparenza radiale dall'80% all'esterno al 20% all'interno con il 20% sui bordi e con 50-50% la posizione orizzontale e verticale del centro

FILLSTYLE

 FILLSTYLE 0 ; riempie senza tratteggio (impostazione predefinita)
FILLSTYLE 1 ; tratteggio singolo nero (orizzontale)
FILLSTYLE 2 ; tratteggio singolo nero (45 gradi)
FILLSTYLE 3 ; tratteggio singolo nero (-45 gradi)
FILLSTYLE 4 ; tratteggio singolo nero (verticale)
FILLSTYLE 5 ; tratteggio incrociato rosso (45 gradi)
FILLSTYLE 6 ; tratteggio incrociato rosso (0 gradi)
FILLSTYLE 7 ; tratteggio incrociato blu (45 gradi)
FILLSTYLE 8 ; tratteggio incrociato blu (0 gradi)
FILLSTYLE 9 ; triplo tratteggio blu
FILLSTYLE 10 ; tratteggio singolo largo nero (45 gradi)

; tratteggio personalizzato in base a una lista con i seguenti argomenti:
; – stile (1 = singolo, 2 = doppio, 3 = triplo tratteggio)
; – colore
; – distanza
; – gradi

FILLSTYLE [2, “green”, 3pt, 15°] ; tratteggio incrociato verde (15 gradi)

Disegno di oggetti

CIRCLE

 CIRCLE 100 ; disegna un cerchio (diametro = 100pt)

ELLIPSE

 ELLIPSE [50, 100] ; disegna un'ellisse con assi di 50 e 100
ELLIPSE [50, 100, 2h, 12h] ; disegna un settore ellittico (dalla posizione delle ore 2 a quella delle ore 12)
ELLIPSE [50, 100, 2h, 12h, 2] ; disegna un segmento ellittico
ELLIPSE [50, 100, 2h, 12h, 3] ; disegna un arco ellittico

SQUARE

 SQUARE 100 ; disegna un quadrato (dimensione = 100pt)

RECTANGLE

 RECTANGLE [50, 100] ; disegna un rettangolo (50×100pt)
RECTANGLE [50, 100, 10] ; disegna un rettangolo con angoli arrotondati

POINT

 POINT ; disegna un punto di dimensione e colore della penna

CLOSE può unire gli ultimi punti, FILL può riempire la forma definita dai punti. Per esempio, è facile disegnare una stella “semplice” partendo dal suo centro:

 PENUP
REPEAT 5 [
FORWARD 80
POINT
BACK 80
RIGHT 36
FORWARD 50
POINT
BACK 50
RIGHT 120
] FILL

LABEL

 LABEL “testo” ; stampa il testo alla posizione della tartaruga
LABEL 'testo' ; vedere sopra
LABEL "testo ; vedere sopra (solo per parole singole)

TEXT

 CIRCLE 10 TEXT “testo” ; imposta il testo dell'oggetto di disegno corrente

Impostazioni del tipo di carattere

FONTCOLOR/FONTCOLOUR

 FONTCOLOR “green” ; imposta il colore del carattere

FONTFAMILY

 FONTFAMILY “Linux Libertine G” ; imposta il tipo di carattere (famiglia)
FONTFAMILY “Linux Libertine G:smcp=1” ; imposta anche le caratteristiche del carattere (maiuscoletto)
FONTFAMILY “Linux Libertine G:smcp=1&onum=1” ; maiuscoletto + vecchio aspetto

FONTSIZE

 FONTSIZE 12 ; imposta la dimensione dei caratteri a 12 punti

FONTWEIGHT

 FONTWEIGHT “bold” ; imposta il carattere grassetto
FONTWEIGHT “normal” ; imposta lo spessore normale

FONTSTYLE

 FONTSTYLE “italic” ; imposta la variante corsiva
FONTSTYLE “normal” ; imposta la variante normale

PICTURE (pic)

PICTURE è per

Raggruppamento delle forme

 ; PICTURE [ comandi_LibreLogo ]
PICTURE [ FORWARD 100 CIRCLE 100 ] ; forma raggruppata simile a un albero

Vedere anche “Gruppo” nella Guida di LibreOffice Writer.

 TO albero posizione 
PENUP POSITION posizione HEADING 0 PENDOWN
PICTURE [ FORWARD 100 CIRCLE 100 ] ; forma raggruppata simile a un albero
END

PICTURE [ albero [230, 400] albero [300, 400] ] ; forme raggruppate in una forma raggruppata

Iniziare forme di una nuova linea

 PICTURE ; inizia la forma di una nuova linea
FORWARD 10 PICTURE FORWARD 10 ; due forme di linea

Salvataggio di immagini SVG

 PICTURE “esempio.svg” [ CIRCLE 5 ] ; salva il disegno come un'immagine SVG nella cartella utente
PICTURE “Desktop/example.svg” [ FORWARD 100 CIRCLE 5 ] ; vedere sopra, con un percorso relativo
PICTURE “/home/user/example.svg” [ CIRCLE 5 ] ; percorso assoluto per Unix/Linux
PICTURE “C:\example.svg” [ CIRCLE 5 ] ; percorso assoluto per Windows

Salvataggio di animazioni SVG/SMIL (disegni con comandi SLEEP)

 PICTURE “animazione.svg” [ CIRCLE 5 SLEEP 1000 CIRCLE 99 ] ; salva come una animazione SVG/SMIL (vedere anche SLEEP)
PICTURE “animazione2.svg” [ CIRCLE 5 SLEEP 1000 CIRCLE 99 SLEEP 2000 ] ; come sopra, ma usando SLEEP dopo l'ultimo oggetto del ciclo: dopo 2 secondi l'animazione SVG riparte nei browser che supportano SMIL

Riferimento al bordo sinistro

Usate il comando PICTURE per mantenere il riferimento delle posizioni e delle forme di linea al bordo sinistro di Writer:

 PICTURE [ CIRCLE 20 POSITION [-100, 100] CIRCLE 20 ]

Cicli

REPEAT

 ; REPEAT numero [ comandi ]

REPEAT 10 [ FORWARD 10 LEFT 45 CIRCLE 10 ] ; ripete 10 volte
 ; il numero è facoltativo

REPEAT [ POSITION ANY ] ; ciclo infinito

REPCOUNT

Variabile del ciclo (anche nei cicli FOR e WHILE).

 REPEAT 100 [ FORWARD REPCOUNT LEFT 90 ]

FOR IN

Ciclo per gli elementi delle liste:

 FOR i IN [1, 5, 7, 9, 11] [
FORWARD i
LEFT 90
]

Ciclo per i caratteri di una stringa:

 FOR i IN “text” [
LABEL i
FORWARD 10
]

WHILE

 WHILE TRUE [ POSITION ANY ] ; ciclo infinito
WHILE REPCOUNT <= 10 [ FORWARD 50 LEFT 36 ] ; come REPEAT 10 [ ... ]

BREAK

Ferma il ciclo.

 REPEAT [ ; ciclo infinito
POSITION ANY
IF REPCOUNTARIP = 100 [ BREAK ] ; equivalente a REPEAT 100 [ ... ]
]

CONTINUE

Passa all'iterazione successiva del ciclo.

 REPEAT 100 [
POSITION ANY
IF REPCOUNT % 2 = 0 [ CONTINUE ]
CIRCLE 10 ; disegna cerchi una posizione sì e una no
]

Condizioni

IF

 ; IF condizione [ blocco vero ]
; IF condizione [ blocco vero ] [ blocco falso ]

IF a < 10 [ PRINT “Piccolo” ]
IF a < 10 [ PRINT “Piccolo” ] [ PRINT “Grande” ]

AND, OR, NOT

Operatori logici.

 IF a < 10 AND NOT a = 5 [ PRINT “0, 1, 2, 3, 4, 6, 7, 8 o 9” ]
IF a < 10 AND a != 5 [ PRINT “0, 1, 2, 3, 4, 6, 7, 8 o 9” ] ; vedere sopra

Funzioni

TO, END

Nuova parola (o funzione).

 TO triangolo
REPEAT 2 [ FORWARD 100 RIGHT 120 ] FILL
END

REPEAT 10 [ triangolo PENUP POSITION ANY PENDOWN ]

OUTPUT

Restituisce il valore della funzione.

 TO letteracasuale
OUTPUT RANDOM “qwertzuiopasdfghjklyxcvbnm”
END

PRINT letteracasuale + letteracasuale + letteracasuale ; stampa una stringa formata da tre caratteri casuali

STOP

Termina la procedura.

 TO esempio numero
IF numero < 0 [ STOP ]
PRINT SQRT numero ; stampa radice quadrata
]

esempio 100
esempio -1 ; senza risultato ed errore
esempio 25

Variabili predefinite

ANY

Valori casuali predefiniti di colori, ecc.

 PENCOLOR ANY ; colore casuale della penna

TRUE

Valore logico.

 WHILE TRUE [ POSITION ANY ] ; ciclo infinito
PRINT TRUE ; stampa vero

FALSE

Valore logico.

 WHILE NOT FALSE [ POSITION ANY ] ; ciclo infinito
PRINT FALSE ; stampa falso

PAGESIZE

 PRINT PAGESIZE ; stampa una lista contenente le dimensioni di pagina in punti, per es. [595.30, 841.89]

PI/π

 PRINT PI ; stampa 3.14159265359

Input/Output

PRINT

 PRINT “testo” ; stampa “testo” in una finestra di dialogo
PRINT 5 + 10 ; stampa 15

INPUT

 PRINT INPUT “Input valore?” ; chiede e stampa una stringa da una finestra di dialogo
PRINT FLOAT (INPUT “Primo numero?”) + FLOAT (INPUT “Secondo numero?”) ; calcolatrice semplice

SLEEP

 SLEEP 1000 ; attende per 1000 ms (1 sec)

GLOBAL

Imposta come globali le variabili usate nelle procedure.

 GLOBAL informazioni
informazioni = “LibreLogo”

TO esempio
PRINT informazioni
GLOBAL informazioni ; quando vogliamo modificare il valore
informazioni = “nuovo valore per la variabile globale”
END

esempio
PRINT informazioni

Funzioni

RANDOM

 PRINT RANDOM 100 ; numero in virgola mobile casuale (0 <= x < 100)
PRINT RANDOM “testo” ; lettera casuale del “testo”
PRINT RANDOM [1, 2] ; elemento casuale della lista (1 o 2)

INT

 PRINT INT 3.8 ; stampa 3 (parte intera di 3.8)
PRINT INT RANDOM 100 ; numero intero casuale (0 <= x < 100)
PRINT INT “7” ; converte la stringa in numero intero

FLOAT

 ; converte la stringa in un numero con la virgola
PRINT 2 * FLOAT “5.5” ; stampa 11.0

STR

 ; converte in stringa il numero
PRINT “Risultato: ” + STR 5 ; stampa “Risultato: 5”
PRINT 10 * STR 5 ; stampa 5555555555

SQRT

 PRINT SQRT 100 ; stampa 10, la radice quadrata di 100

SIN

 PRINT SIN 90 * PI/180 ; stampa 1.0 (seno di 90° in radianti)

COS

 PRINT COS 0 * PI/180 ; stampa 1.0 (coseno di 0° in radianti)

LOG10

 PRINT LOG10 100 ; stampa 2.0 (che è il logaritmo in base 10 di 100)

ROUND

 PRINT ROUND 3.8 ; stampa 4 (arrotondamento di 3.8)
PRINT ROUND RANDOM 100 ; numero intero casuale (0 <= x <= 100)

ABS

 PRINT ABS -10 ; stampa 10, valore assoluto di -10

COUNT

 PRINT COUNT “testo” ; stampa 5, il numero di caratteri di “testo”
PRINT COUNT [1, 2, 3] ; stampa 3, dimensione della lista

SET

 ; Converte la lista in un insieme Python
PRINT SET [4, 5, 6, 6] ; stampa {4, 5, 6}
PRINT SET [4, 5, 6, 6] | SET [4, 1, 9] ; stampa {1, 4, 5, 6, 9}, unione
PRINT SET [4, 5, 6, 6] & SET [4, 1, 9] ; stampa {4}, intersezione
PRINT SET ([4, 5, 6, 6]) - SET [4, 1, 9] ; stampa {5, 6}, differenza
PRINT SET [4, 5, 6, 6] ^ SET [4, 1, 9] ; stampa {1, 5, 6, 9}, differenza simmetrica

RANGE

 ; generazione di una lista di numeri naturali in stile Python
PRINT LIST RANGE 10 ; print [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
PRINT LIST RANGE 3 10 ; print [3, 4, 5, 6, 7, 8, 9]
PRINT LIST RANGE 3 10 3 ; print [3, 6, 9]

FOR i IN RANGE 10 50 10 [ ; loop for [10, 20, 30, 40]
FORWARD i
LEFT 90
]

LIST

 ; rimuove gli elementi ripetuti da una lista, tramite la conversione da lista a insieme e da insieme a lista 
PRINT LIST (SET [1, 3, 5, 5, 2, 1]) ; stampa [1, 3, 5, 2]

TUPLE

Conversione in ennupla Python (lista non modificabile)

 PRINT TUPLE [4, 5]

SORTED

Restituisce un elenco ordinato.

 PRINT SORTED [5, 1, 3, 4] ; stampa [1, 3, 4, 5]

SUB

Sostituisce le sequenze di caratteri utilizzando le espressioni regolari.

 PRINT SUB (“t”, “T”, “testo”) ; stampa “TesTo”, rimpiazzando “t” con “T”
PRINT SUB (“(.)”, “\\1\\1”, “testo”) ; stampa “tteessttoo”, raddoppiando tutti i caratteri

SEARCH

Cerca le sequenze di caratteri tramite l'uso di espressioni regolari.

 IF SEARCH (“\p”, "parola") [ PRINT “Lettera nella parola.” ]

FINDALL

Trova tutte le sequenze di caratteri nella stringa immessa che corrispondono all'espressione regolare data.

 PRINT FINDALL(“\w+”, “Cani, gatti.”) ; stampa [“Cani”, “gatti”], l'elenco delle parole.

MIN

 PRINT MIN [1, 2, 3] ; stampa 1, l'elemento minore della lista

MAX

 PRINT MAX [1, 2, 3] ; stampa 3, l'elemento maggiore della lista

Costanti di colore

 PENCOLOR “SILVER” ; imposta per nome
PENCOLOR [1] ; imposta per identificatori
PENCOLOR “~SILVER” ; colore argento casuale

Identificatore

Nome

0

BLACK

1

SILVER

2

GRAY/GREY

3

WHITE

4

MAROON

5

RED

6

PURPLE

7

FUCHSIA/MAGENTA

8

GREEN

9

LIME

10

OLIVE

11

YELLOW

12

NAVY

13

BLUE

14

TEAL

15

AQUA

16

PINK

17

TOMATO

18

ORANGE

19

GOLD

20

VIOLET

21

SKYBLUE

22

CHOCOLATE

23

BROWN

24

INVISIBLE


Sosteneteci!