La tecnología de verificación de Rust aplicada al código de sistemas de bajo nivel
(github.com/verus-lang)Verus: una herramienta para verificar la corrección del código Rust
- Verus es una herramienta para verificar la corrección del código escrito en Rust.
- El desarrollador escribe la especificación de lo que el código debe hacer, y Verus verifica estáticamente si el código ejecutable en Rust siempre cumple la especificación para todas las ejecuciones posibles del código.
- En lugar de agregar verificaciones en tiempo de ejecución, Verus depende de un solver potente para demostrar que el código es correcto.
- Verus admite actualmente un subconjunto de Rust (en expansión) y, en algunos casos, permite que el desarrollador verifique estáticamente la corrección del código más allá del sistema de tipos estándar de Rust (por ejemplo, la manipulación de punteros crudos).
Estado actual de Verus
- Verus está en desarrollo activo
- Es posible que se rompan o falten funciones, y la documentación sigue siendo incompleta.
- Si vas a probar Verus, debes estar listo para pedir ayuda en Zulip.
Probar Verus
- Para probar Verus desde el navegador, visita Verus Playground.
- Para un desarrollo más complejo, sigue las instrucciones de instalación y revisa los documentos a continuación, comenzando por tutoriales y referencias.
Documentación de Verus
- Tutoriales y referencias
- Documentación API de la biblioteca estándar de Verus
- Guía para verificar código concurrente
- Objetivos del proyecto
- Contribuir a Verus
- Licencia
Contactar, reportar problemas y comenzar una discusión
- Reporta issues, inicia una discusión o únete a Zulip para discutir y recibir ayuda en tiempo real.
- Usa los issues de GitHub para errores (problemas ejecutables) existentes y GitHub Discussions para solicitudes de funciones y conversaciones más abiertas sobre características planificadas.
- Las contribuciones son bienvenidas. Si quieres contribuir con código, revisa los tips para contribuir a Verus.
Opinión de GN⁺
-
Rust es conocido como un lenguaje adecuado para programación de sistemas, que garantiza seguridad y rendimiento; Verus se presenta como un proyecto que puede potenciar aún más esas ventajas de Rust. En particular, su soporte para la verificación de programación concurrente parece muy interesante.
-
Sin embargo, todavía está en una etapa temprana y parece que la sintaxis de Rust compatible es limitada, por lo que parece requerir más desarrollo para usarlo en producción real. Pero, dado que la seguridad del código se garantiza de forma preventiva mediante análisis estático, su potencial de evolución es alto.
-
Aunque aún necesita mejoras como documentación insuficiente y soporte sintáctico limitado por su fase inicial, es probable que llegue a ser un proyecto importante en el ecosistema de Rust a largo plazo. En particular, se espera que su uso sea alto en áreas donde la confiabilidad es crítica, como programación de sistemas o blockchain.
1 comentarios
Comentarios de Hacker News
debug_assertde Rustdebug_assert