Skip to content
  • Akim Demaille's avatar
    context: de-sugar the name of the labelsets · 540ac513
    Akim Demaille authored
    Currently we still support names such as "lal_char, b" internally,
    although "lal" does not make much sense (but "letterset" does), and
    "_char" is absurd, as it actually parameterize the "lal" part.
    
    So instead of "lal_char(abc)", work with "letterset<char(abc)>", which
    make more sense.  It is (still) unfortunate that we don't have a nice
    concrete syntax for our types, but it was a mistake to design a broken
    syntax which pleases neither the user, nor the implementation.
    
    So now accept "lal_char(abc)" as a backward compatibility feature, but
    record "letterset<char(abc)>" instead.
    
    * vcsn/alphabets/char.hh (sname): Your name is "char_letter", not "char".
    * vcsn/alphabets/setalpha.hh: Honor the basic letter type name.
    * vcsn/labelset/letterset.hh: Your name is "letterset".
    Use use the name of the letter type we use instead of hard coding it again
    here.
    * vcsn/labelset/wordset.hh: Likewise.
    
    Improve the dyn support.
    
    * vcsn/dyn/type-ast.hh (letterset, wordset): Rename their "alphabet" into
    "generators".
    Provide them with a "letter_type".
    * lib/vcsn/dyn/context-parser.cc, lib/vcsn/dyn/context-printer.cc,
    * lib/vcsn/dyn/signature-printer.cc: Adjust.
    
    Adjust the test suite.
    540ac513