Olá, comunidade DEV! 👋 Estou de volta.
Se você acha que o Classic ASP está morto, deixe-me dizer: ele agora está mais vivo do que nunca.
Recentemente, concluí uma refatoração total da base de código para a versão 2.2 do AxonASP, meu motor em Go de código aberto para VBScript e Classic ASP. O objetivo não era apenas manter o código legado respirando; eu queria expandir os limites do que essa linguagem dos anos 90 pode realmente alcançar em hardware moderno.
Quero compartilhar com vocês algumas das otimizações profundas de engenharia que implementamos por baixo do capô para fazer isso acontecer.
⚡ Zero AST, Bytecode Puro
Nesta reescrita, demos um enorme salto arquitetônico: descartei a Árvore de Sintaxe Abstrata (AST).
Em vez disso, o novo compilador de passagem única (single-pass) emite bytecode diretamente para uma Máquina Virtual baseada em pilha. Ao eliminar a AST, o AxonASP executa scripts com overhead de alocação praticamente zero. O consumo de memória despenca drasticamente e a execução é rápida.
🔄 Pool de VMs no Estilo IIS & Cache Avançado
Para lidar com alta concorrência, implementei um pool avançado de VMs perfeitamente modelado com base na arquitetura original do IIS, mas sustentado pelas goroutines nativas do Go. Além disso, combinei isso com um cache agressivo de scripts e até implementei cache de compilação para execuções dinâmicas (eval, execute e executeglobal). O resultado é que o tempo de processamento de requisições é mais rápido se comparado ao ASP tradicional.
🛠️ Tornando o ASP um Prazer de Escrever Novamente
Velocidade pura é ótimo, mas a experiência do desenvolvedor importa tanto quanto. Não paramos apenas no suporte à biblioteca padrão legada. Injetamos mais de 60 funções personalizadas diretamente no runtime. Agora você tem acesso a manipulação avançada de arrays, manipulação nativa de JSON e ferramentas criptográficas prontas para uso. Isso realmente faz com que escrever ASP seja um prazer novamente.
🧪 Desenvolvimento Guiado por Testes em ASP (Sim, sério)
Diga adeus a scripts quebrados e regressões. Eu queria trazer práticas de desenvolvimento modernas para a linguagem, então construímos o novo executável axonasp-testsuite. Ele permite que você escreva e rode suítes de testes automatizados nativamente, direto nos seus arquivos .asp! O TDD no Classic ASP finalmente é uma realidade.
Se você está curioso sobre como tudo isso funciona, ou se tem uma aplicação legada que deseja resgatar, preparamos um manual completo e abrangente bem dentro do repositório para te ajudar a começar.
O Classic ASP pode ser um pedaço da história da computação retrô, mas com essas otimizações, ele está pronto para a web moderna. Adoraria saber o que vocês acham.
👉 Confira o repositório e o código-fonte aqui: https://github.com/guimaraeslucas/axonasp
Top comments (0)