[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

terminator after JOI



>I object to having to put what is normally an elidable terminator, "ku", in
>between "le nanmu" and "joi le ninmu" just because the parser is too stupid
>to realise that if a "le" follows the "joi" then "joi" must be connecting two
>sumti, not two tanru components. Surely it cannot be difficult to write a
>parsing program using the algorithm:
>
>1. If a descriptor follows the JOI cmavo, then the cmavo is joining two
>sumti. 2. If a brivla follows the JOI cmavo, then the cmavo is joining two
>components of a tanru.
>
>and so on, for all the other grammatical things that can follow a "joi".
>There is no reason why a parsing error should have to result in reading what
>is, IN PRINCIPLE, an unambiguous phrase. So I will just have to formally
>object to --More--
>the Lojban formal grammar in this instance. People should be aided, not
>restrained, by machines.


Your objection is noted, and you aren't the first to do so.  Si
nce we
started with the requirement that the language be LALR1 (i.e. YACCable),

this is NOt a "parsing error" but a "design feature".  No one has proposed
a way to make this work using only single token lookahead, and it may or ma
y
not be possible.  If we had early on had a tool that supported double
lookahead, this might not be needed.

I should note that JOI itself is kind of an aftertthought in the language
design.  JCB had only one such non-logical connective and he arbitra
didn't look
into the semantic nuances that might require it being used both for
connecting sumti and descriptions, so he has that connective either in
one or the other connective group corresponding to A and JA.  We recogn
ized
the need for multiple kinds of such connectives, and moved them out to
a separate selma'o, which alone among connectives can be used EITHER where
an E is used OR where a JE is used.  The alternative was to use two cmavo
for each connective, one for each selma'o.

The wide range of places where JOI can be used makes it darn near impossible
to guarantee that a given usage is unambiguous without the terminator. No one
has come up with a countering ambiguous usage involving JOI followed by LE,
but that does not mean that none exists.  Even if one existed, this is not
the only place where we have had to make an adjustment because of a lack of
two-token lookahead (there are several things in the lexer rather than in
the regular grammar because of this weakness).

IN any event, the handicap of requiring a terminator once in a while where it
might seem extraneous, was for us a relatively low priority.  It may be
aesthetically displeasing to some (and your objection in the final analysis
is probably aesthetic), but it works.  Including an extra, possibly
unnecessary word, is consistent with Zipf's Law design pronciples for
the language if we presume a higher usefulness for logical connection than
for nonlogical connection, so by that reasoning the extra terminator could
even be seen as desirable.  (After all, it is a reasonable assumption that a
logical language will make it easier to say something logical than something
non-logical, given a choice).  Extra terminators also provide extra
redundancy in speech.

But I still note your objection.  Since the language is baselined, there will
of course be no consideration for changing it.

lojbab
----
lojbab                                                lojbab@access.digex.net
Bob LeChevalier, President, The Logical Language Group, Inc.
2904 Beau Lane, Fairfax VA 22031-1303 USA                        703-385-0273
Artificial language Loglan/Lojban: ftp.access.digex.net /pub/access/lojbab
    or see Lojban WWW Server: href="http://xiron.pc.helsinki.fi/lojban/";