💾 Archived View for thrig.me › blog › 2023 › 02 › 25 › buggy-jbose.gmi captured on 2024-06-16 at 13:09:21. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-11-14)

-=-=-=-=-=-=-

Buggy Jbose

This is likely the sort of problem that Lojban could solve, but I concluded way back in 2004 that Lojban was for people smarter than me.

gemini://the-brannons.com/muddy/

Alas, no. Lojban has several problems, not the least of which is the limited crew with competence. Another difficulty can be shown by example,

    .i le crino cu fengu sipna

which a grammar parser validates thusly

    (i {<le crino KU> cu <[fengu sipna] VAU>})

but a translation back to English may run something like one of

    the green furiously slept
    the green furiously sleeps
    the green furiously will sleep

as there is no tense information, so the statement could be any of past, present, future. (Translation can be difficult.) Regardless, the statement is nonesense. To this a hypothetical lojbanic listener might respond "ki'a", which is something like "huh?" or "wtf" in English. Likewise, if a protocol specification were butchered, one might respond with "ki'a", or possibly "na go'i" if one spots a logical contradiction. In that case you have the same problem as in English: how should the protocol be rewritten to not include something that is confusing or causes Spock's eyebrow to climb. (There is an entire chapter on negation in "The Complete Lojban Language".) And if you rewrite the protocol, do any of the implementations need fixing?

A better idea might be to include a copious amount of example code, and to have a very robust test suite that new implementations can be run against. This may still leave fiddly bits that are difficult to test, especially for complicated protocols. Regardless, all this code could be a lot of work to write, debug, document, secure, and maintain.

Ain't no free lunch.

Might help to keep the protocol as simple as possible.

One can also be vague in Lojban. This probably has no place in a protocol specification, but is included here to additionally contradict the semi-mythical notion that if only I could write in Lojban that would magically make my prose grokkable (assuming a universe of frictionless spherical sofybakni who all know Lojban) as often expressed by those who hang around the entrance to the Caves of Lojban and wonder how deep it goes (za'o) and whether their insurance policy covers Balrogs (na go'i).

    .i le tirxu zo'u berti
    (i {<[le tirxu KU] zo'u> <berti VAU>})

zo'u is a topic marker, which English does not really have. A translation could be "Tiger: North" or "on the subject of Tiger, North" or possibly 虎北. But what does that mean? Is there a tiger to the North of me I should be worried about? Is it about a Siberian tiger? Or some random tiger that is going to, or coming from the North, or one that has had "north" painted on it's side? Who knows!

Granted, Lojban does distinguish between someone who is named Nobody and nobody, which means δυσσεύς would need to find some other clever trick. But there remain plenty of ways to be vague, contradictory, or just plain wrong in Lojban, even when the prose passes a grammar parser.

    .i zu'i co'e fa'o

tags #lojban