Haml (HTML Abstraction Markup Language) es un motor de plantillas diseñado para simplificar y agilizar la creación de documentos HTML. Se utiliza principalmente en el desarrollo web, particularmente dentro de Ruby on Rails y otros marcos de trabajo basados en Ruby, aunque existen implementaciones para otros lenguajes. Haml tiene como objetivo reducir la cantidad de código repetitivo y verboso típicamente asociado con HTML mediante el uso de una sintaxis concisa y elegante basada en la indentación. En lugar de cerrar etiquetas explícitamente, Haml se basa en la indentación para definir la estructura del documento HTML. Esto conduce a un código más limpio, legible y fácil de mantener. Haml también admite características como variables, bucles y declaraciones condicionales, lo que permite a los desarrolladores crear plantillas dinámicas y reutilizables. Fomenta los principios DRY (Don't Repeat Yourself) al permitir la definición de componentes reutilizables y parciales. Los archivos Haml generalmente se preprocesan en el lado del servidor para generar HTML estándar, que luego se envía al navegador del cliente. La extensión '.haml' indica que el archivo contiene código Haml que debe ser procesado por un motor Haml antes de que pueda ser renderizado como HTML.