En mi trabajo diario, yo y otros en mi equipo escribimos muchos modelos de hardware en Verilog-AMS, un lenguaje soportado principalmente por vendedores comerciales y algunos proyectos de simuladores de código abierto. Una cosa que haría que apoyar el código de cada uno sea más útil sería un LINTER que verificaría nuestro código en busca de problemas comunes y ayudaría a imponer un estilo de formato de código compartido. Por supuesto, quiero ser capaz de agregar mis propias reglas y, después de probar su utilidad para mí, promoverlas al resto del equipo. No me importa hacer el trabajo que tiene que hacerse, pero de Por supuesto, también quiero aprovechar el trabajo de otros proyectos existentes.¿Cómo escribir un linter?
¿Tener la sintaxis de idioma permitida en un formato yacc o bison me da una ventaja? o debería simplemente chupar cada declaración de lenguaje en una cadena perl, y usar la coincidencia de patrones para encontrar las cosas que no me gustan?
(. La mayoría de los errores de sintaxis y de compilación son fácilmente atrapados por las herramientas comerciales .. pero tenemos algunas de nuestras propias extensiones)
Parece interesante. – jbdavid