La rivoluzione dell'Open Hardware

Ecco una interessante tesi di laurea su Arduino --> 浙江中達精密部件股份有限公司
Download --> http://camillomiller.com/arduino/download.html

Spero che l'autore non si offenda se ho pubblicato il link al sito. :cold_sweat:

Spiegalo che il linguaggio è di tipo compilato e che il compilatore è gcc compilato come cross compiler per architettura AVR e che questo si chiama avr-gcc e dai il link, e spiega che il compilatore compila solo C/C++ e asm attraverso l'assembler "as" e il liguaggio scelto dal team Arduino è il C++ perchè è un linguaggio ad oggetti e che il team ha creato un framework che con la complicità del C++ rendono la programmazione più semplice ecc.

Creo linguaggio compilato chiamato wiring allora devo creare anche il compilatore wiring.
Creo il linguaggio interpretato python allora devo creare anche l'interprete, e visto che python interpreta solo alla prima esecuzione dove crea dei file bytecode che al secondo avvio vengono eseguiti.

Non lo so forse sono io che ho questa convinzione distorta, ma se crei un linguaggio compilato hai anche scritto un compilatore, sei crei un frammework non metti mano al compilatore.

Ciao.

Mauro, ti riferisci a cosa? Non ho letto la tesi. Che l'autore afferma che il linguaggio di Arduino è il Wiring?
Sì, allora è un'affermazione sbagliata perché in realtà non è un linguaggio. Ma secondo me non è neanche un framework perché in realtà non c'è nulla di nuovo, essendo appunto C++. Secondo me è un'estensione del linguaggio C++ che permette di interfacciarsi ad un determinato hardware. Difatti per creare una lib non segui regole specifiche come nel caso di un framework, ma usi le stesse regole del C++.

Si mi riferisco proprio al fatto che non è menzionato gcc, e che si tirano in ballo le librerie senza spiegare cosa sono ecc.

L'impronta del framework c'è, perchè il main è integrato nella libreria statica, e nel main si fanno cose non proprio consuete, poi c'è il preprocessore di wiring (ora è il caso di dirlo) che impedisce la programmazione modulare semplificando le cose al programmatore novello. Il preprocessore wiring potrebbe anche processare macro che abilitano o disabilitano i flags di avr-gcc.

Sempre grazie al preprocessore wiring si può fare in modo che un file .png presente nel pc venga convertito in binario e scritto nel programma, tutto in automatico. Quindi un inizio di framework c'è. Il problema è la superficialità delle persone che scrivono grandi castronerie perchè non sanno cosa in realtà accade e come fai a sintetizzare (e semplificare) ciò che non sai?

Poi qualcuno mi ha fatto notare che io "esagero", mentre io invece sento di contenermi (tanto) al fine di mantenere un clima mite e disteso che porta sempre vantaggi reciproci.

Sempre contenendomi dico che il rischio di formare persone disinformate che credono di essere infomate si è concretizzato, il web è pieno di str..ate una più una meno cosa importa.

Però posso comprendere la confusione di una persona che volendo fare sul serio cerca informazioni per evitare di scrivere str..ate, (mica questa persona per forza deve essere un programmatore C/C++ e altri linguaggi) e nella rete trova dieci versione contrastanti, di cui alcune provenienti da fonti considerate attendbili, cosa fa costui allora non scrive la tesi? Sbagliato, la scrive perchè la tesi verte su altri argomenti nei quali può essere molto preciso e dettagliato.

Quindi la colpa di chi é?
La mia perché, avrei risparmiato tempo, se non avessi sollevato il problema illo tempore. :stuck_out_tongue:

Ciao.