Foo.def
is an SDF definition. An SDF definition is stored in a .def file and is just
a bundle of all SDF modules (.sdf) that are imported directly or indirectly from some main module.
An SDF syntax definition is thus a closure of SDF modules.
Foo.meta
contains meta information about a Stratego module Foo.str
. The most common meta information is the syntax
that is used by the Stratego module
Pretty print table. Generated by ppgen.
Parsed pretty print table
.r
is a deprecated file extension for a Stratego module. It has been replaced by .str
.
Abstract syntax definition in RTG.
Foo.sdf
is an SDF module. A syntax definition can be split into several modules,
and these modules can be in separate files. SDF modules use the .sdf file extension. SDF modules
can be packed into an SDF definition with pack-sdf.
Foo.str
is a Stratego module. A Stratego modules can define strategies and rules. A Stratego module can be compiled
with strc or it can be interpreted with stri, part of the StrategoShell.
Foo.tbl
is a parse table for SGLR.
A parse table can be generated from a SDF definition (.def) with sdf2table.
The parse table can be used for parsing by passing it to SGLR with the -p
argument.