Not a natural language among them

I remember running into a well-meaning person who heard the linguistics lecturer use the term “natural language” and tried to object that no language or dialect is actually more natural — that is, “better” in some way, or more suited to learning — than any other. Which is something that audience would not disagree with, in general, among the set of languages they were discussing. (Which of course, were just those natural languages.)

But of course there are several ways some communication system or notation system can be called a language but is not a natural language. Roy’s list includes two major types, and misses a couple other categories. (But we don’t get to hear if he has command of other natural languages.)

Here’s an amusing talk I ran across recently, which may be fun for those with either practical programming experience in a few different computer languages or anyhow a reading/browsing acquaintance with them.

32 Comments

  1. I generally get better translation results from “Bing” rather than “Google” (YMMV: please, let’s not discuss the “quality” issue here), but one thing in Bing’s interface that I find inexcusable is that they waste space on “Klingon”, but do not bother to include “Latin” (which Google did not offer until recently, either).

  2. Devoted Star Trek fans should skip this comment…

    <acidic screed mode ON>
    First, if the Star Trek scriptwriters need a tool to produce their artificial made-up sounds, they should set that up on their own internal network, and not on a global search engine. Second, when Tolkien invented his “elvish” languages, at least he set up a rational alphabet to represent the sounds (even varying it to reflect different pronunciation systems). The authors of “Klingon” did not want a rational system, they wanted something jarring, which looks as nasty as Klingon body armor or weapons. Upper and lowercase Latin letters are used for completely different “Klingon” sounds, making the system very difficult to learn. It’s even worse than Heinlein’s “Martian”, with its unpronounceable “jjj”s, “kkk”s, and “rrr”s. The result is a nice “in” joke, but not anything that anyone really needs (unless, of course, you are a Star Trek scriptwriter).
    </acidic screed mode OFF>

  3. Sorry, Powers, the pre-comic text got out of hand, probably because I was not correctly focussed on my point. And probably didn’t arrive at it cleanly, even after that much huffing and puffing.

    The joke of course is that a “normal” answer to a semi-interested question about “What other languages do you know?” would likely be a list (long or short) of pretty familiar names of actual natural languages; but Roy’s response departs from the “normal” in a way fitting to his character — not only does he include non-natural languages (of two main classes), but that’s all he lists, omitting any natural languages at all. But I got distracted by worrying that someone might object to the term “natural language” and got stuck in writing out a defense (that the objections come from a simple misunderstanding of the semi technical term).

    I see how you might have a complaint that the pre-comic text (and for that matter the post title) could give away the joke. But it isn’t a CIDU, and there isn’t meant to be a puzzle or mystery. Still, I understand how you’d prefer to engage with the comic and its joke point directly first.

    Also there was a strategic writing/layout dilemma, which I didn’t solve very nicely, but which might clarify a bit. I ran across that talk about the worst programming language. Then, having decided to include it in this post as a video embed, I needed to give it a bit of intro, and the text space between the comic and the video was needed for an intro to the video, and all remarks on the comic got tossed up above it … unfortunately..

    So … what did you think of the video?

  4. @Kilby, yes, that would be one of the types of non-natural language that is not represented in Roy’s list.

  5. So … what did you think of the video?

    Too long. I come here for comic sized snippets, and comments. To be presented with an hour-long video is wrong. Even if I watch it at 1.75 speed (about the fastest I can usually tolerate), that’s still (… and now I have gone off on a tangent thinking about how to calculate the actual time, and how just off the top of my head I see no clear way to quickly do it other than estimate…) over half an hour (I had to estimate regardless, because the real number is just messy). You can’t expect anyone to actually consider the material and comment on it in the real time that comments happen here. So either you (me) ignore the video entirely, or you skim it, possibly missing the salient point, or you come back and revive a dead thread long after no one’s interested anymore (Douglas Adams describing a receding thunderstorm as someone reviving an argument hours after it’s over by going, “And another thing…!”). And if I devote the hour (or even the 34.2857 minutes), will I regret or even resent it at the end as not being worth it? And what is this obsession some people have with having to have a video or at least audio of something I could read in a fraction of the time? Give me transcripts!

    Look, I’ve already made way too long of a comment, just exacerbating the problem!

    And I actually already have an actual comment on the video, despite all my bitching so far:
    Much as I hate canned laughter, I dislike the way this video is filmed: He is before a live audience, so we need to hear the live audience. Spare an extra mic to cover the room. As it is, it just seems like all his jokes are dying painful deaths up there, or he is some kind of insensate masochist, who keeps to his [pause for laughter] cues come hell or high water. Either way, it is distracting for anyone watching. There are usually two (major) versions of any Tom Lehrer song: one recorded in front of a live audience, and one recorded in the studio. The material tends to be similar enough for you to recognize its primacy (he was not ad-libbing the whole thing), but there is enough playing the audience for you to get the feel that he was indeed aware of and amplified by having a live audience; yet he was sure enough of his materiel that in the studio it doesn’t feel (too) awkward when he rushes from one laugh line to the next, because putting a pause in would have been worse. There are some TV studio recordings of Noel Coward that are just unwatchable for the cringe-i-ness of watching him perform to the dead camera — he needs an audience.

  6. OK, Roy has not listed any actual human-spoken languages, the likes of French, German, Russian, Japanese …. Do we know why this omission?

    — He just has not studied, or picked up enough to get by, of any of these.
    — He does have some mastery of one or more of these, but his nerd impulse sends him down the paths of computer languages and entertainment languages.

    I somewhat doubt (a) ; not that there aren’t a lot of highly intelligent and talented people who remain essentially monolingual, but Roy makes it clear he can and did learn enough of say Klingon to have a fluent conversation. And he considers learning others of this sort, “but who has time?”. But would he not see the professional and/or nerd/entertainment value of being able to communicate with other professionals or fans in their real languages?

  7. And another thing…!

    So yes, thank you for the talk, it was hilarious! (You have to be a programmer.)

  8. Aside @Mitch:
    That’s the thing, I don’t think they were failed — I think he killed the room, but they mic’d him so directionally obsessively that you can’t hear any of it.

  9. I enjoyed the first 20-30 minutes, mostly because of his spot-on criticisms of languages that I knew well enough to appreciate. I lost interest when the languages and/or technical quirks became too obscure. I could empathize with his diatribe against a compiler that failed because of the wrong “kind” of whitespace†, but using that as the basis to construct six different types of insidious whitespace traps was simply tedious.

    P.S. † – I once spent a subjective eternity searching for a compilation error in a Fortran program, and did not find it until I tried to explain the code to a housemate (who was not a programmer). The cause was using the ‘wrong’ kind of “quote” mark. It wouldn’t have been possible on the cardpunch machines we had in high school, but on the terminals we had in college it was all too easy.

  10. but using that as the basis to construct six different types of insidious whitespace traps was simply tedious

    Except that the language this comes from is not some obscure footnote from the 70s, this is Python, arguably the most popular language there is right now. Given its high profile, this stupidity of the language deserves the detailed roasting he gives it. The best part was using specific whitespace to encode comments, which was simply brilliant. (It also touches on the tab vs spaces holy-war, so it’s just brilliant all around.)

  11. I designed and implemented a programming language for my PhD dissertation, so I was interested in the video – which I’ve seen before. My problem with it was that he spent too much time creating a bad language rather than focusing on the bad parts of real languages. When he did do that, it was better.
    Still, not as good as Prof. Dijkstra’s analysis of bad languages in SIGPlan notices in the 1970s. Funnier and shorter.

  12. The programming language that I used at all that I liked the least was Prolog. That isn’t a real evaluation of its quality. It was very different than anything else I’d ever used and I didn’t understand it well. It was part of the Comparative Languages course I took. The professor didn’t really understand it well either and had trouble explaining it, so the experience was poor. In reality, it probably would have been good for me to learn it more thoroughly as I was getting an MSCS.

    Currently I’m working on a computer game. This has been kicking around in my head for years. For some reason, I hadn’t realized that there were game development systems. Of course there are. Anyway, I got started using the Godot platform. Their native scripting language is based on Python. However, with a bit of work, you can connect it up to a C# IDE and use that, so I’m going with it.

  13. In a job interview I did answer the question “What other languages do you know” with “Fortran, BASIC, PL/I…” I had been a computer programmer for several years and I was interviewing for a job as a computer programmer. But the interviewer was wondering if I knew French or Japanese or something.

    There was a lot more variety in the form and appearance of computer languages in those days, before somebody or other decided that all computer languages had to be derived from C. Think of Autocoder, Mumps, SNOBOL, LISP. There was also a lot more variety in computer architectures. They didn’t all have eight-bit characters and thirty-two-bit words.

  14. For these long videos, I like the idea of pointing out an especially good part, at 13:42 or whatever. But I understand that doesn’t always work. For the 5 minutes or so that I watched, I thought he was a little hard on COBOL. Businesses used it quite commonly whether he says it or not.

  15. I used a fair amount of LISP during my graduate program, as WUSTL was an AI-focused program. Common LISP is a bit closer to the more familiar languages. “Pure LISP” a different mindset.

  16. Common LISP the book, by Guy Steele, was a wonderfully readable, literate and witty, well-organized, and authoritative work of exposition.

    There was also a fair amount of fandom for the SNOBOL 4 manual.

  17. I would guess most couples can speak their own language which makes no sense to anyone else?

    As in – “Well it sort of looked like that thing we saw at the farmer’s market in PA – the one – you know – up north that we pass when we go to that place near Harrisburg..” And the other person understands.

  18. I started watching the video, but bailed after about 8 minutes. After reading some of the comments here, I decided to give it another chance. There were a few good lines, (way too few for a full hour video), but my overall reaction is still – meh. It did, however, bring to mind a couple of quotes from a real computer scientist, Bjarne Stroustrup.

    “More good code has been written in languages denounced as ‘bad’ than in languages proclaimed ‘wonderful’ — much more.”

    “There are only two kinds of programming languages – the ones people complain about and the ones nobody uses.”

    He also said: “I have always wished for my computer to be as easy to use as my telephone. My wish has come true because I can no longer figure out how to use my telephone.”

  19. For the record, I don’t think the producers of Star Trek had any influence upon Google’s decision to include Klingon in their translation application. While there are not many fluent speakers of the language, they aren’t the primary target of a translation app. Hobbyists and beginners are. And there are a lot of those, so it seems appropriate to include Klingon in a translation app.

  20. Way back in the 1970’s I read an article somewhere, I forget where, proposing (as a joke) COME FROM as a replacement to GOTO. The reason was to help debugging. Back in those days when a program crashed you got a printout showing the state of all the registers and all of core memory. You looked at the program counter and consulted the link map and then you could figure out what line of code went bad. It might be for instance 1510 X = Y / Z and you look up Z in memory and see that it is zero: division by zero error. But why is Z zero? What lines of code were executed before line 1510? Looking at the source you see line 1500 COME FROM 850. Looking at 850 you see Z = HOURS * RATE. Immediately before it you see 840 COME FROM 2010. Line 2010 reads HOURS and RATE from an input card. Problem solved.

    The fix of course is a conditional COME FROM:

    6000 IF HOURS .EQ. 0 OR RATE .EQ. 0 COME FROM 2010
    6010 PRINT “INVALID VALUE FOR HOURS OR RATE”

  21. Meryl A: I forget which well-known computer science writer, in an article about artificial intelligence understanding natural language, wrote about the difficulty of understanding a married couple’s language. He gave as example the following dialog:

    “OK, where is it?”
    “Where’s what?”
    “You know!”
    “Where do you think?”
    “Oh.”

  22. This gives one of the missing categories of things we call languages (sometimes, even if reluctantly) but are not the uncomplicated cases of natural languages.

    BTW, I think of the Pig Latin suffix as being spelled “-ay”. Thinking of just “-a” indicating that syllable reminds me of the years when I had no idea what “Chick-fil-A” was trying to communicate.

  23. @ Mitch – This is the first time that I have seen that uffixsay spelled in any way other than “…ay”.

    P.S. Sandra Boynton produced a hilarious parody of “Pigorian Chant” called “Grunt”. The barnyard animals all chant in real Latin (well, almost always, aside from a few wisecracks, such as the chickens singing “Gloria in Eggshells each Day-O”), but the pigs sing (and even sleep: “Orr-Snay”) in Igpay Atinlay.

  24. Then again there are the things that I still don’t understand when he says them after 49 years of dating and marriage as the words mean something different to me than they do to him – and they are simple things. (None of which are popping into my head right now – a long call just before came on the computer with longtime friend of ours who I have not talked in over in a year so my mind is still a bit crazy from our talk.)

    One that I have learned – and this results from ethnic differences (Italian as opposed to Eastern European & Russian Jewish) – macaroni (or “macs”) means any kind of pasta not elbow macaroni as it did at my house.

    But a good “discussion” is always interesting and well resolved in the end.

    And currently he is learning Pennsylvania Dutch from some fiction books he is reading.

    (Next time we have another confusion of what he said – I can post an example in the strip we are in then if anyone wants.)

Add a Comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s