Tarefa de rastreamento (construção de um gráfico de função) - página 6

 
jartmailru:
Na verdade, a combinação lexer + parser é um clássico do gênero.
Não posso aconselhar sobre lex/flex/bison/ant-lr (nem sequer sei seus nomes ;-D)-.
Eu escrevi especificamente feito à mão.

Um livro sobre o assunto: http://www.piter.com/book.phtml?978546900378

Eu recomendo :)

 
jartmailru:
Escolher o meio errado de implementação indica falta de profissionalismo.

Somente se for a escolha de um implementador (neste caso, um programador profissional).

Diferentes especialistas (profissionais) resolvem o mesmo problema de maneiras diferentes. Um soldador soldará um puxador a uma parte metálica do portão, um carpinteiro o parafusará a uma parte de madeira, um serralheiro o parafusará a qualquer um deles...

 
tara:

Aqui está um trecho da revista:

Certo. Quase lá. Aqui estou eu:

2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->->-2->->->-3->->->-> IN odd
2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->>-2->> EM decomposição
2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->>-2->>>-3->>-4->>> IN odd
2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->>-2->-3->>>> EM decomposição
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>-2->-3->>>> IN even
2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->>-2->> EM decomposição
2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->>-2->-3->> IN odd
2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->>-2->> EM decomposição
2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->->-2->->->-3->->->-4->->->-5->->->-> IN odd
2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->->-2->->->-3->->->-4->->> EM decomposição
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->->-2->->->-3->->->-4->>> IN even
2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->->-2->->->-3->->->->> EM decomposição
2011.01.23 02:22:31 RetTest (NZDUSD,M10) >-1->>-2->-3->>>> IN even
2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->>-2->> EM decomposição
2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->>-2->-3->> IN odd
2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->>-2->> EM decomposição
2011.01.23 02:22:31 RetTeste (NZDUSD,M10) >-1->>> EM INÍCIO

O suporte de traço de saída pode ser omitido. Mas deveria ser.

Arquivos anexados:
calltest.mq5  2 kb
 
lea:

Um livro sobre o assunto: http://www.piter.com/book.phtml?978546900378
Eu recomendo :)

Oh, as coisas que as pessoas não pensam para evitar ganhar dinheiro...
 
sergeev:

1. Quando a análise - chamadas serão detectadas por eles mesmos. Quem está com quem e de onde...

2. portanto, esta é a única idéia de solução completa até agora.


1. Não será detectado. Se chamado por condição, ele só será detectado em RunTime.

2. :-)) Isso depende do que você precisa. A árvore de expressão na entrada do compilador e a pilha de chamadas em tempo de execução são objetos bem diferentes. Não?

 
jartmailru:
Oh, as pessoas pensarão em qualquer coisa para não ganhar dinheiro.
+1
 
MetaDriver:

1. Não será detectado. Se chamado por condição, ele só será detectado em RunTime.

2. :-)) Depende do que você precisa. A árvore de expressão na entrada do compilador e a pilha de chamadas em tempo de execução são objetos bem diferentes. Não?

1. Sim.

2. Sim.

Mas o caminho dá pelo menos alguma estrutura ao código, sem alterar o código em si.
 

Eu ainda preciso finalizar esta tarefa. Não me esquecerei de informar os resultados na base de código.
Portanto, se você tiver alguma idéia para uma solução do problema, por favor, poste neste tópico.

 
sergeev:

Eu ainda preciso finalizar esta tarefa. Não me esquecerei de informar os resultados na base de código.
Portanto, se você tiver alguma idéia para uma solução de acordo com a condição, por favor, poste neste tópico.

Você não será capaz de mantera virgindade . :-)

Sabedoria ::= A capacidade de distinguir o possível do impossível.

Mantenha no trailer a última versão possível. Fornece na guia "Especialistas" praticamente o que foi pedido (apenas impressões de baixo para cima)


No registro, a direção é exatamente a correta. De cima para baixo.
Arquivos anexados:
calltrace.mq5  2 kb
 
MetaDriver:


Solução encontrada!

https://www.mql5.com/ru/forum/3031/page1#comment_43919

Razão: