Criar IDE no navegador para gramática própria [fechado]

7

Nós vamos usar nossa nova linguagem de programação. Nós projetamos gramática, json parser e tudo parece funcionar.

O código no meu idioma é transpilado para javascript e interpretado pelo node.js (parte do lado do servidor) e pelo chrome (parte do lado do cliente). Agora estou experimentando o editor Ace como IDE. Possui recursos de destaque e de conclusão de código para gramáticas personalizadas.

Agora estou pensando em depuração. Quais são as possibilidades que tenho para gerenciar os pontos de interrupção no processo do nó conectado e no navegador e há alguma chance de obter valores de variáveis ​​(para o recurso "observar variáveis" no meu IDE)?

E o pilha de chamadas? Provavelmente, existe algum protocolo para comunicação com o nó no modo de depuração, mas como fazê-lo com o navegador para depuração no lado do cliente?

user2106769
fonte
Estou realmente interessado nisso. Não tenho uma resposta, mas agradeceria se você pudesse editar seu progresso em sua pergunta ou se resolvê-lo, responda sua pergunta.
Jerry Jeremiah
sem progresso, essa parte do projeto está em espera agora. Ainda estou interessado neste tópico.
precisa saber é o seguinte
1
qual era o objetivo desse idioma? O que você precisava fazer para que o JS não pudesse fazer efetivamente?
TheCatWhisperer
Dê uma olhada: nodejs.org/api/debugger.html (para ver a etapa do nó e inspecionar); developers.google.com/web/tools/chrome-devtools/javascript (como depurar no chrome, tutorial); developer.chrome.com/devtools/docs/integrating (integre programaticamente ao DevTools). Isso pode ser interessante para o seu projeto.
Emerson Cardoso
Se você encontrar uma maneira de fazer isso, poste uma resposta explicando o que você fez - estou realmente interessado em como será.
Jerry Jeremiah

Respostas:

0

Ré:

mas como fazer isso com o navegador para depuração do lado do cliente?

você pode dar uma olhada nos debugjs do amasad

E também relevante, acredito, existe este breve artigo acadêmico que introduz um "padrão de design de intérprete debuggable" na página / seção 3:

http://www.bergel.eu/download/papers/Berg07d-debugger.pdf

YSharp
fonte