Noticias Programación

Vim 9 actualiza el lenguaje de programación

Hay una nueva versión importante de Vim, el popular editor de texto, con una nueva versión importante del lenguaje de secuencias de comandos Vim, la secuencia de comandos Vim9, junto con una amplia gama de mejoras menores.


Vim es un editor de texto basado en comandos basado en el editor vi de Unix. Su objetivo es ofrecer la potencia de vi con un conjunto de funciones más completo. Muchos desarrolladores prefieren la simplicidad de un editor de texto configurado para su configuración personal, afirmando ser una codificación más rápida en dicho entorno que los IDE modernos de bloatware.

El principal cambio en Vim9 es el nuevo lenguaje de secuencias de comandos. El equipo de Vim dice que el script de Vim ha crecido con el tiempo, manteniendo la compatibilidad con versiones anteriores, lo que significa que fue necesario mantener las decisiones equivocadas tomadas en el pasado y la necesidad de ser compatible con Vi limita las posibles soluciones. La ejecución es bastante lenta, cada fila se analiza cada vez que se ejecuta.

El objetivo principal del script Vim9 es mejorar drásticamente el rendimiento. Esto se logra compilando los comandos en declaraciones que se pueden ejecutar de manera eficiente. Puede esperar un aumento en la velocidad de ejecución de 10 a 100 veces. Un objetivo secundario era evitar las construcciones específicas de Vim y acercarse a los lenguajes de programación de uso común, como JavaScript, TypeScript y Java.

Esto significa que el script de Vim9 no es 100 % compatible con versiones anteriores. Los desarrolladores de Vim afirman que un ejemplo de esto es la forma en que los argumentos de función están disponibles al crear un diccionario «a:». Esto da como resultado una sobrecarga significativa y, en una función de Vim9, este diccionario no está disponible. Otras diferencias son más sutiles, como la forma en que se manejan los errores.

Como Vim sigue siendo popular por su familiaridad y simplicidad, cambiar el lenguaje de secuencias de comandos será motivo de preocupación, pero el equipo dice que las secuencias de comandos heredadas seguirán funcionando como antes y no hay planes para eliminar la compatibilidad con las secuencias de comandos heredadas.

Otros cambios y mejoras menores incluyen el requisito de que las funciones se definan con def para usar la aceleración y el requisito de que se especifiquen y devuelvan los tipos de argumento.

La continuación de línea ya no requiere una barra invertida, las llamadas a funciones no requieren llamadas, las asignaciones se realizan sin let y las expresiones se evalúan sin eval. El equipo dice que esto hace que un script de Vim9 se parezca mucho más a la mayoría de los lenguajes de programación.

Vim 9 ya está disponible.

vim logo

También puede gustarte...