Italian community of Lazarus and Free Pascal

Programmazione => Generale => Topic aperto da: Stilgar - Luglio 28, 2013, 10:39:21 pm

Titolo: Idee per il preprocessore
Inserito da: Stilgar - Luglio 28, 2013, 10:39:21 pm

Idee per il preprocessore:
1)si potrebbe fare estendendo quello esistente in modo da utilizzare la filosofia java per gli annotation @annotation(prameters).
I primi che mi vengono in mente sono ad esempio
Codice: [Seleziona]
 {@SuppressWarning("unused parameter")}.
per arrivare a quelli più "complessi"
Codice: [Seleziona]
{@LinkDynamicLibrary("nomefile.a")}.
{@LinkCppObjectFile("nomefile.o")}.
{@LinkCObjectFile("nomefile.o")}.

(Gli ultimi due annotation possibili non ho proprio la minima idea di come realizzarli :p )

2) per ogni categoria/gruppo di annotation racchiuderli in contentitori caricabili dinamicamente (dll/so/dl) per la gestione.
Il compilatore java per vedere la gestione delle annotation usa dei ".class" che vengono caricati al momento dal classloader a gestire dinamicamente le "espansioni" del compilatore.

Alternativamente, evitando i generics introdotti (un abominio per chi arriva dal c++) implementare un preprocessore che sia un template manager a tutti gli effetti.
Sfiga? I sorgenti devono essere sempre disponibili, in modo da poter generare al volo i sorgenti veri da compilare.

Stilgar
PS:
Occhio a provocare la mia fantasia :D Non sempre devo saperle fare le cose per immaginarle/sognarle ;)
Le annotation avrebbero bisogno di supporto anche da parte del core team di freepascal. Mica è una cosa da fare un'oretta alla sera ;)

Titolo: Re: Idee per il preprocessore
Inserito da: Legolas - Luglio 28, 2013, 11:54:02 pm
ROTFL  :D :D :D

Certo che non ti si può accennare niente, che subito parti con la pianificazione  ;D

Beh, io pensavo a qualcosa di mooooolto più semplice, del tipo:

Codice: [Seleziona]
{@rebuild mylibdir/libreria.a}

che esegue il rebuild della libreria partendo dai sorgenti e dal makefile presenti in mylibdir.

A suo tempo avevo pensato a un meccanismo del genere per facilitare la programmazione sul nintendo ds: un preprocessore si sarebbe dovuto occupare, ad esempio, di lanciare grit per convertire al volo le immagini. Poi lasciai perdere, perché decisi di utilizzare i makefile  ::)
Titolo: Re: Idee per il preprocessore
Inserito da: nomorelogic - Luglio 29, 2013, 06:20:37 pm
ragazzi ma...
non è che questa estate è particolarmente calda dalle vostre parti? :D
Titolo: Re: Idee per il preprocessore
Inserito da: xinyiman - Luglio 29, 2013, 06:24:47 pm
hahahahaha già
Titolo: Re: Idee per il preprocessore
Inserito da: Stilgar - Luglio 30, 2013, 02:57:21 am
Uffa.
Si fa molto caldo dalle mie parti ;) Ma sono bruciato di mio.
Oggi ha rinfrescato un pochino :p
Lavorando su molti linguaggi e tecnologie vengo inquinato in molti aspetti.
Quando lavoro con uno strumento sento la mancanza di alcune cose messe a disposizione da un altro ;)

Stilgar