Ottobre è passato in fretta. Durante l’espansione della libreria di supporto AbraLib è stata trovato un motivo per alcune piccole modifiche al linguaggio Abra per renderlo più semplice da usare. Inoltre AbraLib è stata ripulita e sono state stabilite alcune best practice/modelli iniziali.

L’interprete è stato ulteriormente ampliato per gestire correttamente le variabili di stato, ed è stato creato un primo Qubic Dispatcher che può inviare i dati degli eventi tra fonti di dati esterne ed entità Qubic interne rappresentate dalle funzioni di Abra. Il nostro prossimo passo sarà un sistema di plug-in che ci permette di collegare qualsiasi tipo di sorgente dati in base alle necessità.

Un’ulteriore espansione dell’interprete è una prima versione del generatore di codice sorgente Verilog che sarà utilizzato per generare il codice per gli FPGA. Il codice generato è lontano dal poter essere utilizzato, ma ora che si ha un punto di partenza facilmente modificabile sarà possibile fare rapidi progressi una volta che si inizierà a testare effettivamente gli FPGA.

AbraLib è stata ulteriormente ampliata. Per prima cosa è stata aggiunta la funzione di divisione intera mancante. Poi un insieme di funzioni aritmetiche preliminari in virgola fissa ed in virgola mobile. Le funzioni in virgola mobile, in particolare, evidenziano la versatilità di Abra. Il codice è molto generico, ma è possibile adattare le dimensioni dei tipi a virgola mobile esattamente alle proprie esigenze non eguagliato da nessun altro linguaggio esistente. Le dimensioni della mantissa e dell’esponente possono essere specificate separatamente, indipendentemente l’una dall’altra. Ecco alcuni esempi di tipi a virgola mobile di AbraLib:

type TinyFloat {
  mantissa [Tiny] // +/- 9,841
  exponent [Tiny] // +/- 3^9,841
}
type Float {
  mantissa [Int]  // +/- 3,812,798,742,493
  exponent [Tiny] // +/- 3^9,841
}
type HugeFloat {
  mantissa [Int2]  // +/- 29,074,868,501,520,029,845,195,084
  exponent [Tiny2] // +/- 3^193,710,244
}

L’importanza della community

Questo mese è aumentato il coinvolgimento della nostra community. Ben75 ha continuato ad aggiornare il suo evidenziatore di sintassi IntelliJ per abbinare i nostri cambiamenti di sintassi e ne ha esteso le funzionalità con e.g. rinominare le entità e saltare alle definizioni/usi delle entità. Si è spinto fino a mettere in evidenza le dichiarazioni di import non utilizzate. Sta facendo tutto questo nel suo tempo libero solo per divertimento. Si è anche rivelato una grande cassa di risonanza per tutte le idee che ci sono venute in mente per migliorare il linguaggio e ne ha anche suggerito alcune delle sue.

All’inizio di questo mese abbiamo inviato una sfida alla comunità nel canale #qubic su Discord per aiutarci a costruire la compilazione di LLVM JIT nell’interprete. Il nostro noto amico MicroHash di Qubic-Lite ha accettato questa sfida ed è riuscito a trovare una compilazione JIT funzionante in tempo record!

Questo ha evidenziato ancora una volta la sua capacità di fare le cose velocemente e bene. La qualità del suo codice è superba, e la quantità di input di cui aveva bisogno da parte del team Qubic per fare le cose era ridicolmente minima. Questo ha contribuito alla determinazione nel cercare di farlo salire a bordo. Si segnala che dal 1° novembre MicroHash è entrato a far parte del team di Qubic!

Questi sono solo 2 dei nostri grandi membri della community. Il team Qubic è a conoscenza del fatto che siete tutti desiderosi di andare a giocare con Abra per capirne le possibilià. Probabilmente saranno messe in campo altre sfide nel prossimo futuro, dove potrete contribuire a plasmare la direzione del nuovo linguaggio di programmazione per l’Internet of Things. Per aiutarvi in questo, si sta finalizzando la documentazione.

Documentazione di Abra

È stata aggiornata ed ampliata la serie sul modello di calcolo Qubic che era in fase di sviluppo. Al momento si sta lavorando alla sesta parte di una serie di post di un blog che verrà rilasciato non appena sarà abbastanza autoconsistente. Attualmente sono presenti le seguenti parti (n.d.t. qualcuno si offre per aiutarmi a tradurre?):

  • Parte 1: Abra: un linguaggio funzionale per il flusso di dati
  • Parte 2: Abra entità di base del linguaggio di programmazione
  • Parte 3: Funzioni ed espressioni di Abra
  • Parte 4: Le operazioni di base di Abra
  • Parte 5: Mettere insieme il tutto attraverso esempi
  • Parte 6: Il Dispatcher Qubic

L’obiettivo è quello di rilasciare questa documentazione in combinazione con una versione stabile dell’interprete Abra. Siate certi che il team Qubic è gung-ho per coinvolgerci tutti. Grazie per la vostra pazienza in questo. È risaputo che si tratta di un lungo processo, ma visti i risultati varrà sicuramente la pena di aspettare!


Il testo originale in lingua inglese si trova qui: https://blog.iota.org/qubic-status-update-november-3rd-2018-5362e4f61d6a


Da oggi è possibile dare il vostro supporto su Patreon https://www.patreon.com/antonionardella

Per ulteriori informazioni in italiano o tedesco trovate i miei contatti a questa pagina.
Se avete trovato utile la mia libera traduzione, accetto volentieri delle donazioni 😉

IOTA:
QOQJDKYIZYKWASNNILZHDCTWDM9RZXZV9DUJFDRFWKRYPRMTYPEXDIVMHVRCNXRSBIJCJYMJ9EZ9USHHWKEVEOSOZB
BTC:
1BFgqtMC2nfRxPRge5Db3gkYK7kDwWRF79

Non garantisco nulla e mi libero da ogni responsabilità.


Also published on Medium.