Trace task (costruire il grafico di una funzione) - pagina 6

 
jartmailru:
In realtà, la combinazione lexer + parser è un classico del genere.
Non posso consigliare su lex/flex/bison/ant-lr (non so nemmeno i loro nomi ;-D)-.
Ho scritto specificamente fatto a mano.

Un libro sull'argomento: http://www.piter.com/book.phtml?978546900378

Lo raccomando :)

 
jartmailru:
Scegliere i mezzi di attuazione sbagliati indica mancanza di professionalità.

Solo se è la scelta di un implementatore (in questo caso, un programmatore professionista).

Diversi specialisti (professionisti) risolvono lo stesso compito in modi diversi. Un saldatore salderà una maniglia a una parte metallica del cancello, un falegname avviterà a una parte in legno, un fabbro avviterà a qualsiasi...

 
tara:

Ecco un frammento della rivista:

Bene, ci siamo quasi. Sono qui:

2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->->-2->->-3->->->-> IN dispari
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>-2->> IN decomposizione
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>-2->>-3->>-4->>> IN dispari
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>-2->-3->>>> IN decomposizione
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>-2->-3->>>> IN anche
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>-2->> IN decomposizione
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>-2->-3->>> IN dispari
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>-2->> IN decomposizione
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->->-2->->-3->->-4->->-5->->->-> IN dispari
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->->-2->->-3->->-4->->>> in decomposizione
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->->-2->->-3->->-4->>>> IN anche
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->->-2->->-3->->->->> IN decomp
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>-2->-3->>>> IN anche
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>-2->> IN decomposizione
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>-2->-3->>> IN dispari
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>-2->> IN decomposizione
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>> IN OnStart

La parentesi di uscita può essere omessa. Ma dovrebbe esserlo.

File:
calltest.mq5  2 kb
 
lea:

Un libro sull'argomento: http://www.piter.com/book.phtml?978546900378
Lo raccomando :)

Oh, le cose a cui la gente non pensa per evitare di fare soldi...
 
sergeev:

1. Durante il parsing - le chiamate saranno rilevate da sole. Chi è con chi e da dove...

2. Quindi questa è l'unica idea di soluzione completa finora.


1. Non sarà rilevato. Se chiamato per condizione, sarà rilevato solo a RunTime.

2. :-)) Dipende da ciò di cui avete bisogno. L'albero delle espressioni all'ingresso del compilatore e lo stack delle chiamate in fase di esecuzione sono oggetti molto diversi. No?

 
jartmailru:
Oh, la gente penserà a tutto pur di non fare soldi...
+1
 
MetaDriver:

1. Non sarà rilevato. Se chiamato per condizione, sarà rilevato solo a RunTime.

2. :-)) Dipende da ciò di cui avete bisogno. L'albero delle espressioni all'ingresso del compilatore e lo stack delle chiamate in fase di esecuzione sono oggetti molto diversi. No?

1. Sì.

2. Sì.

Ma il modo dà almeno una certa struttura al codice, senza cambiare il codice stesso.
 

Devo ancora finalizzare questo compito. Mi assicurerò di riportare i risultati nel codebase.
Quindi se avete qualche idea per una soluzione al problema, per favore postate in questo thread.

 
sergeev:

Devo ancora finalizzare questo compito. Mi assicurerò di riportare i risultati nel codebase.
Quindi se avete qualche idea per la soluzione in base alla condizione, per favore postate in questo thread.

Non sarai in grado di mantenerela verginità . :-)

Saggezza ::= La capacità di distinguere il possibile dall'impossibile.

Tenere nel rimorchio l'ultima versione possibile. Dà nella scheda "Esperti" più o meno quello che è stato chiesto (solo stampe dal basso verso l'alto)


Nel registro, la direzione è esattamente quella giusta. Dall'alto in basso.
File:
calltrace.mq5  2 kb