REBOL

linguaggio di programmazione

REBOL (si pronuncia come rebel, "ribelle" in inglese), acronimo di Relative Expression Based Object Language, è stato catalogato dai propri creatori come un internet messaging language. In breve, si tratta di un linguaggio di programmazione interpretato per computer che integra una serie di supporti per vari servizi internet, che rende semplice la stesura di applicazioni, soprattutto grafiche, internet, tipo e-mail client o web server.

REBOL
linguaggio di programmazione
AutoreCarl Sassenrath
Data di origine1997
Ultima versione2.101.0 (12 dicembre 2012)
Utilizzoprogrammazione di rete
Paradigmifunzionale, imperativa
Tipizzazioneforte
Estensioni comunireb
Influenzato daSelf, Forth, Lisp, Logo[1]
Ha influenzatoJSON, Red
Implementazione di riferimento
LicenzaApache 2.0 e licenza Apache
Sito webwww.rebol.com/ e rebol.com

REBOL è stato creato da Carl Sassenrath, formalmente riconosciuto come il primo sviluppatore di AmigaOS.

Caratteristiche degne di nota modifica

L'interprete REBOL è disponibile per un vasto numero di piattaforme (oltre 40).

Mette a disposizione risorse grafiche ed audio a prescindere dalla piattaforma usata e possiede un proprio toolkit per la gestione del proprio ambiente a finestre.

La comunità REBOL è collegata attraverso il REBOL desktop, una rappresentazione grafica dei file relativi al REBOL immagazzinati su Internet. Lo stesso REBOL desktop è una applicazione REBOL.

REBOL è progettato per maneggiare un gran numero di tipi di applicazioni, ma nello specifico, mira a rendere semplice la distribuzione di oggetti via rete, possiede quindi numerosi specifici tipi di dato dedicati, dalla gestione delle valute a quella degli URL.

Esempi modifica

Hello world: Far apparire la scritta "Hello world!" in una finestra con un pulsante con scritto "Quit" per chiuderla:

Rebol[]
view layout [text "Hello world!" button "Quit" [quit]]

Hello world: Lo stesso di prima con alcune informazioni per spiegare lo script a chi lo legge.

 REBOL [
    Title: "Hello World!"
    File: %hello.r
    Date: 12-January-2002
    Purpose: "Display the words in a window"
    Category: [view VID 1]
 ]

 view layout [text "Hello world!" button "Quit" [quit]]

Questa invece è una semplice applicazione in grado di sfruttare due servizi internet, HTTP e SMTP:

 REBOL [
    Title: "Web Page Emailer"
    File:  %sendwebpage.r
    Date:  12-January-2002
    Purpose: "Get an HTML document from the web and send it through e-mail"
    Category: [web email net 1] 
 ]

 send branko@collin.example read http://www.rebol.com

Licenza modifica

Il codice sorgente dell'interprete REBOL è chiuso, ma non è richiesta una licenza per poterlo usare.

Inglese Italiano
Summary of the end-user license:
  • You can download and copy the software free of charge.
  • You can redistribute the software free of charge.
  • You can use the software for commercial uses.
  • The software is provided "as is" without warranty of any kind.
  • You cannot modify the software or the license.
Riassunto licenza:
  • Puoi scaricare e copiare il software gratuitamente.
  • Puoi ridistribuire il software gratuitamente.
  • Puoi usare il software per fini commerciali.
  • Il software è fornito così come è, senza nessuna garanzia di alcun tipo.
  • Non puoi modificare il software o la licenza.

REBOL è disponibile sul sito ufficiale. Gli interpreti disponibili gratuiti per tutti i sistemi operativi sono fondamentalmente due:

  • rebol/core - interprete solo per riga di comando, senza il supporto grafico. Può anche gestire e manipolare immagini, ma non crea finestre sul desktop
  • rebol/view - interprete con supporto grafico, audio e video.

Esistono inoltre le versioni a pagamento che hanno ulteriori funzioni o adatte a specifici ambiti:

  • rebol/sdk - ambiente di sviluppo completo
  • rebol/command - per sviluppatori professionisti
  • rebol/services - soluzioni commerciali ad hoc

Note modifica

  1. ^ (EN) Goldman, E. e Blanton, J., REBOL: The Official Guide., McGraw-Hill Osborne Media, 2000, ISBN 0-072-12279-X.

Bibliografia modifica

Collegamenti esterni modifica

Controllo di autoritàLCCN (ENsh2001004704 · BNF (FRcb137757382 (data) · J9U (ENHE987007537348205171
  Portale Informatica: accedi alle voci di Wikipedia che trattano di Informatica