Haml(HTML 抽象标记语言,HTML Abstraction Markup Language)是一个模板引擎,旨在简化和优化 HTML 文档的创建过程。它主要应用于 Web 开发中,尤其是在 Ruby on Rails 和其他基于 Ruby 的框架内,尽管也存在适用于其他语言的实现。Haml 旨在通过使用基于缩进的简洁而优雅的语法,减少通常与 HTML 相关的重复和冗长代码。Haml 不依赖于显式关闭标签,而是依靠缩进来定义 HTML 文档的结构。这使得代码更清晰、更易读,更易于维护。Haml 还支持变量、循环和条件语句等特性,使开发人员能够创建动态和可重用的模板。它通过允许定义可重用组件和部分(partials)来倡导 DRY(不要重复自己,Don't Repeat Yourself)原则。Haml 文件通常在服务器端进行预处理以生成标准的 HTML,然后发送到客户端浏览器。'.haml' 扩展名表示该文件包含 Haml 代码,需要在被渲染为 HTML 之前由 Haml 引擎进行处理。