<!>Sound Change Appliers (2015-01-11 14:21:30)
Sound Change Appliers
Anthologica Universe Atlas / Forums / Miscellaneria / Sound Change Appliers / <!>Sound Change Appliers (2015-01-11 14:21:30)

? Morrígan Witch Queen of New York
posts: 303
, Marquise message
I have a serious question concerning how the SCA is started and runs:
Basic - user provides input,  output, and rule file at startup
Enhanced - user only provides rule file; input and outputs are specified within the rules

The current situation leaves us with an uncomfortable state of affairs,  for technical reasons. The problem is that in "basic" mode, the whole rule file is parsed before loading the lexicon, so if the user messes about with normalization or segmentation flags, it's possible for the lexicon to be loaded using the wrong settings, if the user is not very careful.

I'm wondering what all of  you might prefer I do. I could remove basic mode entirely, since personally I feel like it's a lot easier to just use load statements than have to modify a batch  or shell file. Alternatively, I could change basic mode to restrict the ability to change segmentation and normalization settings.

At the very least, I think I will reduce the number of segmentation/normalization options, mostly because the majority are not necessary.  When using intelligent segmentation (the new manual will have an appendix on this), it's best to use  Canonical Decomposition1. When using no segmentation, there is really no reason to use normalization at all; it's really best to leave all inputs just as they are.

If  I make these changes, the number of options (and potential for difficulty) is reduced and it is much easier to flag on the command line. This seems like the best compromise and is what I will work toward doing soon.

Other news: I refactored the state-machine code and should be able to introduce negative conditions soon. At the very least, one will be able to negate single characters, if not entire groups.

Additionally, I'm fairly close changing the SCA to optionally use features. Unlike IPA Zounds, you will be able to mix literals like a and features like [-voiced;+continuant], since the former can simply be converted to the latter internally.

_________________________
1. Canonical Composition works too, but there's really no reason to use it.