Re: *mumble* *grumble* sound changes *mutter* (longish)
|From:||Benct Philip Jonsson <bpj@...>|
|Date:||Friday, April 28, 2006, 20:45|
Henrik Theiling skrev:
> Benct Philip Jonsson <bpj@...> writes:
>>I think one useful thing to do, and hopefully easy to
>>program(?), would be to make it possible to define a macro
>>group the members of which will be ignored unless explicitly
>>invoked in the match or context, and into which one could
>>throw stressmarks, lengthmarks, aspiration marks and other
>>character/character sequences that have a
>>"diacritic"/modifier function. That way one can write a
>> g > j / _ '? (i,e)
> My plan is to be able to define and assign abstract properties to
> syllables (or other subdivisions) that the resulting library would
> automatically propagate, i.e., you'd not need to assign diacritics
> (but maybe you'd be allowed to do so), but you could use a property
> name directly. This is a bit of work, but it's generic, and that's
> usually what I like best.
I agree in principle, but how do the properties travel between
steps, or even between steps of different modules, and how do they
get into the output file? At some point one *needs* to get it as
actual characters in a string.
> Indeed, the handling of a lengthening mark is also something that is a
> bit ugly, and I had to use :? after vowels quite often myself. OTOH,
> most of the time, the sound changes were sensitive to vowel length, so
> I wasn't annoyed enough to think about an elegant solution.
I see. However I have somewhat alleviated the situation by
including all the combinations of vowel, lengthmark and stress
mark in the vowel group, so that I can use catch rules like
'V: > _
and groups like "frontvowel" "backvowel" but the vowel group
gets very swollen as a result.
>>BTW your subrule precedence principle is great!
>>I could write the Swedish vowel shift in the order
>>things actually happened:
>> a: > o: -- a: isrounded and raised
>> o (C,V) > _ -- short o is not affected
>> o: > u: -- long o: is raised
>> u > ü -- old u, long or short, is fronted.
>>Without subrule 1 feeding subrule 3, which in turn
>>does not feed subrule 4! Yeah!
> Thanks! :-) This is one major reason I wanted to use something
> different than plain Perl regexps, since such parallel changes often
> occur in natlangs. It is also one reason why the resulting code
> is so slow -- I neglected any code optimisation on purpose so far
> to not distract myself from the primary goal of having something
> I could use. So code optimisations are also on my TODO list.
Roger Mills skrev:
> I may be missing something in all the programming
> discussion, but as to these 4 rules, IIRC in generative
> phonology it's not legitimate to impose conditions like
> "this rule N does NOT feed rule N+..."-- I could be
> wrong, since it's a while since I worked with rule
> writing...(and it may be, when one computerizes a set of
> phono.rules, it's permissible to impose such conditions)
We are fortunately not doing Generative Phonology here,
merely canibalizing the better aspects of its notation
conventions. The need for catch rules is primarily
a artifact of the notation: *if* we had a single
uncompounded character (in the computer sense) for
each long and short vowel we'd need no catch rules.
> To avoid feeding order, these rules would have to be
> ordered just the reverse 4 - 3 - 1 (2 can go anywhere).
> To maintain your 1 -- 3-4 order, the o: output of Rule 1
> has to differ _in some way_ (environment? phonetically
> i.e. some feature or other?) from the o: input to Rule
> 3; similarly the u: output of Rule 3 vis-à-vis input to
> Rule 4.
That's one of my beefs with GP -- actually the major one:
whats the point in having to state things in the reverse
order from what actually happened. No level of abstraction
can make me accept that. BTW the inability to handle
chain shifts was one of the earlest recognized weaknesses
of GP. FWIW you can safely omit the o > _ catch rule
in this case, since all the other subrules explicitly
specify the *long* /o:/. The mention of short /o/ not
being affected is mostly a reminder to myself, since
different things happen to it later in different dialects:
in some it merges with /o/ from shortened /o:/ < /a:/,
in other it becomes /3\/.
> Are you sure that's the actual historical sequence?
> (Asked he, ignorant of Swedish...)
I'm 110% sure it was a push chain, since Danish also
raised-rounded /a:/ and raised /o:/, though not all
the way to /u:/, and /u(:)/ remained in place without
fronting -- Danish just ended up with an extremely
crowded back vowel space (and later an extremely
crowded front vowel space also, since the remaining
[A] and [A:] resulting from its lengthening escaped
frontward, even to [E:]!)
Benct Philip Jonsson -- melroch at melroch dot se
"Maybe" is a strange word. When mum or dad says it
it means "yes", but when my big brothers say it it
(Philip Jonsson jr, age 7)