Wow, e così se ne andò novembre. Il tempo di sicuro vola quando ci si diverte.

Avanzano i lavori sul Qubic Dispatcher. Al momento il lavoro si è concentrato sulle entità limite del sistema che permettono l’interfaccia con il Tangle (ricezione/invio). Si lavora anche al al sistema di plug-in Dispatcher che permetterà a componenti separati di lavorare assieme come entità attraverso il Qubic Computation Model.

Sono stati apportati alcuni nuovi miglioramenti ad Abra. Uno di questi è stata l’aggiunta di costanti in virgola mobile al linguaggio stesso per lavorare insieme alle funzioni in virgola mobile di AbraLib, ora pienamente funzionali. Le funzioni in virgola mobile funzionano così bene che è stato deciso di abbandonare le iniziali funzioni matematiche a virgola fissa di AbraLib. Sono stati anche adattati i tipi di punti flottanti predefiniti per rendere più sensato il raggio d’azione:

type TinyFloat {
  mantissa [Tiny]   // -/+ 9,841
  exponent [Tryte]  // -/+ 3^13
}
type Float {        // slightly larger than IEEE 754 32-bit float
  mantissa [Tiny2]  // -/+ 193,710,244
  exponent [Tryte2] // -/+ 3^364
}
type Double {       // slightly larger than IEEE 754 64-bit double
  mantissa [Tiny4]  // -/+ 75,047,317,648,499,560
  exponent [Tiny]   // -/+ 3^9,841
}
type HugeFloat {
  mantissa [Int2]   // -/+ 29,074,868,501,520,029,845,195,084
  exponent [Tiny2]  // -/+ 3^193,710,244
}

Un altro miglioramento al linguaggio Abra è l’aggiunta di un’operazione di espressione condizionale. Inizialmente si pensava che una tale operazione non sarebbe stata possibile, ma l’analisi della base di codice AbraLib ha mostrato l’emergere di diversi modelli di utilizzo. Introducendo l’operazione di espressione condizionale, uno di questi modelli potrebbe essere espresso implicitamente, migliorando contemporaneamente la leggibilità del codice e diminuendo la quantità di caratteri da digitare. Inoltre, una nuova e fresca ottimizzazione, necessaria per far funzionare bene questa nuova operazione all’interno dei paradigmi del linguaggio Abra, migliorerà automaticamente l’efficienza di qualsiasi codice che utilizzi esplicitamente anche questo modello.

Dal lato della compilazione JIT di LLVM la qualità del codice generato è stata molto migliorata. Lukas Tassanyi (MicroHash) si è preso in carico questa parte, ed ha lavorato molto sui miglioramenti all’interprete. Ha anche ideato una semplice idea di Proof of Concept che si può usare per testare l’intero sistema. Purtroppo, niente spoiler specifici per l’idea. È necessario prima verificarlo.

Dal lato FPGA si è ora in grado di generare praticamente tutto il codice sorgente di Verilog necessario per generare il codice per gli FPGA. Donald sta facendo progressi per poter finalmente caricare il codice in un FPGA per un primo test. Tutto quello che si ottiene da questi test verrà, se necessario, utilizzato per migliorare il codice Verilog generato.

La serie di documentazione Abra è stata ulteriormente modificata per riflettere gli ultimi cambiamenti, e la parte 6 di questa serie, riguardante il Qubic Dispatcher e la sua interazione con il Qubic Computational Model, è ora ampiamente realizzata.

È stato speso del tempo per osservare il sistema a distanza in modo da avere un quadro più chiaro di ciò che può e non può fare al momento. Quando si è all’interno di quella bolla di sviluppo a volte ci si concentra così tanto sulla risoluzione del prossimo problema immediato che si perde la vista d’insieme. Fare un passo indietro ed esaminare quali cambiamenti al sistema o componenti aggiuntivi saranno necessari per raggiungere l’obiettivo finale è un esercizio sano. La discussione interna di alcuni dei risultati di questo esercizio è già iniziata. Una volta resi conto di eventuali correzioni di rotta necessarie, saranno naturalmente comunicate il prima possibile.


Il testo originale in lingua inglese si trova qui: https://blog.iota.org/qubic-status-update-december-3rd-2018-30d233ffce72


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.