Skip to content

Latest commit

 

History

History
51 lines (46 loc) · 782 Bytes

mercury.grammar.md

File metadata and controls

51 lines (46 loc) · 782 Bytes

syntax grammar

mercury:
    (term end) *

semantic grammar

mercury:
    module_decl
    interface_decl
    export_decl*
    implementation_decl
    implementation_program*
    end_module_decl?

export_decl:
    import_module_decl
    |use_module_decl
    |include_module_decl
    |pred_decl
    |mode_decl
    |func_decl
    |type_decl
    |inst_decl

implementation_program:
    type_decl
    |slover_type_decl
    |pred_decl
    |func_decl
    |inst_decl
    |mode_decl
    |typesclass_decl
    |instance_decl
    |pragma_decl
    |promise_decl
    |initialise_decl
    |finalise_decl
    |mutable_decl
    |import_module_decl
    |use_module_decl
    |include_module_decl
    |function_fact
    |pred_fact
    |function_rule
    |pred_rule
    |user_type_defn