This PR is quite similiar to https://github.com/llvm/llvm-project/pull/182805. We added basic support of attribute definitions in Python-defined dialects, including: - IRDL codegen for attribute definitions - Attr builders like `MyAttr.get(..)` and attr parameter accessors (e.g. `my_attr.param1`) - Use Python-defined attrs in Python-defined operations Assisted by GitHub Copilot.