O Grupo de Computação Técnica da Microsoft anunciou o projeto open source Python Tools for Visual Studio (PTVS). O PTVS melhora a base de código do IronPython Tools para o Visual Studio (introduzido no IronPython 2.7) e adiciona suporte a CPython e a clusters, além de integração com novos módulos como NumPy e SciPy. Outras características anunciadas para o PTVS incluem:
- Edição avançada de código, Intellisense, pesquisa por referências, REPL
- Depuração local e remota de clusters
- Profiling com diversas visualizações
- Computação paralela interativa através do REPL IPython integrado
- Suporte a clusters HPC e MPI, incluindo suporte a depuração
O anúncio do projeto causou inicialmente algumas dúvidas, especialmente com relação às diferenças entre o IronPython Tools e o Python Tools. A Microsoft esclareceu que o PTVS melhora o código de seu antecessor e que o novo projeto foi planejado como um substituto. Devido ao momento escolhido para o lançamento do PTVS (que está atualmente em beta), não foi possível fazer o lançamento juntamente com o IronPython 2.7. As equipes dos dois projetos, no entanto, irão trabalhar juntas para fazer com que o PTVS se torne a principal ferramenta na próxima grande release do IronPython.
Dino Viehland, engenheiro de software da Microsoft, falou o seguinte sobre o projeto:
O PTVS mantém todos os recursos que existiam no IronPython Tools para Visual Studio e adiciona muitas novas características. Foi adicionado o suporte a REPLs, bem como a depuração em CPython e em outras implementações. Adicionamos ainda funcionalidades de profiling em CPython e o suporte a múltipas versões da linguagem (da 2.5 até a 3.2).
Mas estamos mesmo focados numa área específica: a Computação de Alto Desempenho. Para nosso primeiro beta, concentramos esforços para possibilitar dois cenários: a computação em lote (batch) via MPI e a computação interativa via IPython. Para a computação em lote, adicionamos suporte a publicação e execução no cluster através de um simples cenário "F5". Se você preferir não executar programas no cluster, poderá disparar processos múltiplos também na máquina local. Para o desenvolvimento interativo, estamos focados na última versão do IPython (.11+). Nela, uma nova arquitetura foi projetada do zero para suportar a computação paralela e interfaces gráficas REPL alternativas.
A versão RTM (final) do PTVS está prevista para o segundo semestre de 2011.