Coding Tropes.

S.I. Rosenbaum’s Input piece on Thomas Buchler and his Torah program TropeTrainer is fascinating and sad, and I recommend the whole thing; here I’ll excerpt some particularly Hattic bits:

One day — Zucker doesn’t remember exactly when, but it must have been in 1998 or 1999 — Buchler approached him about a project he was working on. He was creating software, he said, that would teach people to chant Torah. […] In the 1970s, home-recorded cassette tapes had been a huge technological innovation in teaching Torah: No longer did students have to study for hours with an older, learned Jewish adult; they could take home a cassette and learn from that. Some rabbis felt that this made the transmission of Torah an automated, machine-based experience; they worried the personal connection between generations would be sacrificed in the name of convenience.

For Buchler, however, the tape wasn’t convenient enough. There had to be a better way than winding and rewinding a cassette, he thought, and as an experienced software engineer he set out to create one. But in order to do so, he first had to learn a code much older than any he was familiar with.

Every written word or short phrase in the Torah is assigned one of a body of musical motifs, known collectively as cantillation or trope in English, or ta’amim in Hebrew. The words of this text had been written down, in the consonant-only Hebrew alphabet, by sometime around 400 to 600 BCE; but as the musical component continued to develop, it remained an entirely oral tradition. As more written texts were added to the Jewish sacred canon, they, too, were set to trope and sung aloud.

Then, in 70 CE, Rome conquered the area that is now Israel and the West Bank, and much of the Jewish population dispersed across the ancient world. As communities became more isolated from each other, the oral tradition of trope began to mutate.

This was a huge problem. Trope are not just melodies — they also function as punctuation, musically joining linguistic clauses or separating them, indicating different kinds of pauses and where verses end. Getting the trope wrong can radically distort the meaning of the text.

Several groups of Jewish scholars, alarmed by this, began working on a solution. What emerged, over several centuries, was a data-storage innovation: a set of marks above and below the letters that indicate both vowels and, crucially, the correct trope for each segment of the text.

The scholars who developed these marks came to be known as Masoretes, from a Hebrew root meaning to pass down — though some argue the term derives from another root, meaning to tie down. The system was refined and standardized in the first half of the 10th century CE by a scribe named Aaron ben Asher, the scion of a long line of Masoretes; ben Asher also composed a detailed system analysis and user’s manual. […]

More than a millennium later, Rabbi Zucker began to meet with Buchler to teach him the trope marks and the musical motifs they encode. “I spent hours and hours building that program with him,” Zucker says. “I taught him the religious side, and he programmed it into that program.” […]

What Buchler needed was a true speech synthesizer, a program that could generate its own sound files from scratch. There was only one option: the DECtalk text-to-speech voice engine. “He wanted the engine because it was the only one that had half a chance of being able to sing the way it needed to sing,” Stacey Schnee tells me.

Schnee, a software engineer in Worcester, Massachusetts, was working at DECtalk’s parent company when Buchler first enquired about the program, around 1999. DECtalk was by then a relatively ancient piece of software. It had been initially developed in the early 1980s by pioneering MIT scientist Dennis Klatt, and had started life as hardware: a standalone box large enough to comfortably support a house cat. The disabled physicist Stephen Hawking was an early adopter; he famously used DECtalk to communicate for the rest of his life, refusing to upgrade to any other program.

DECtalk could convert ASCII text into phonemes, the basic units of spoken language, and string them together into something the human ear could interpret as speech. Crucially, it could also play phonemes at specific musical pitches.

At the time, besides English, the engine supported only Spanish and German; introducing each of those languages had been a difficult project for a team of programmers to complete. (“The modification of a text-to-speech system for a new language is a very time consuming task,” wrote one researcher in a report on the German conversion, “which requires a high amount of language specific knowledge in phonetics and linguistics and of knowledge in signal processing and program development.”)

Buchler began reading up on linguistics, signed a licensing agreement, and — with Schnee as a guide — got to work.

There were several unique challenges facing him. First, Hebrew includes phonemes that don’t exist in any of the supported languages, so Buchler had to cobble together a phoneme set from the closest sounds available. “He took some English and a couple of German sounds and put it together and got something that was… okay,” Schnee says.

Hebrew also uses an entirely different alphabet from the supported languages, so Buchler had to adapt the engine to read Hebrew Unicode characters. Each letter can be pronounced several different ways, so the program had to include the complex linguistic rules governing sound changes.

Finally, Buchler had to teach DECtalk to interpret trope marks — to turn the text not just into speech, but into song. “He had to figure out how to put the all phonemes in with pitches and duration, in order to get it to sing exactly how he needed it to,” Schnee says. “If you just tell it to sing an F sharp or whatever, it would just sing that phoneme with that note, and that would be it. But that’s not how you sing Torah trope.” […]

At one such conference, Buchler met Neil Schwartz, a cantor, who volunteered to help notate the software’s trope melodies. He also helped Buchler create a more legible Hebrew font. “He and I spent an entire week sitting side-by-side in his office, in front of three computers and five screens, fine-tuning the shapes of the tropes and the exact placement of dots around letters,” Schwartz recalls. […]

TropeTrainer became popular quickly. Even in the early versions, the software’s functionality was impressive: Users could view Torah readings in Hebrew, in English, or in transliteration — with color coding to make it easier to see the trope. Any of those views could be printed out. There were training exercises and a perpetual Jewish calendar built in. Eventually there would be a mobile app. […]

The software also included seven different trope styles, or nusach. The Masoretes had been successful in fixing the proper trope to each word and phrase of Torah. But they hadn’t created true musical notation. The trope marks are ideographic, like symbols in written Chinese: Each mark stands for a short sequence of notes, but you can’t tell just by looking at the mark what the notes are.

After centuries of separation, Jews in Morocco, in Amsterdam, in Lithuania, in London, and dozens of other enclaves each came to sing the same trope to their own distinct melodies — even though they used the same trope marks and the trope had the same meaning. Much in the way the character 山 is pronounced shan by a Mandarin speaker and yama by a Japanese speaker — and means “mountain” to both of them.

The styles built into the first version of TropeTrainer were mostly slight variations on the most commonly used nusach. But wherever he went, Buchler was approached by Jews who wanted to know if he could add the specific style they or their congregation or their family used. Often, these were nusach that were becoming less and less used as Jewish communities consolidated and assimilated. Whenever he could, Buchler obliged. Often, those rarer styles would appear in the next edition of the software.

Eventually TropeTrainer came to include 29 different trope traditions — quadruple the number it started with. It had become more than a learning tool; it was an archive.

But now the archive is gone. (Thanks, Jack!)


  1. Stu Clayton says

    Windows 7 is not supported any more, but that’s not a problem. Apparently Buchler never thought of *how* he was working (with code) as being indistinguishable from *what* he was doing – creating a trope trainer using that code. So his code was never backed up.

    Jewish tradition needs an update: “In the Jewish tradition, one is not allowed to discard source code, a book or other printed material that includes the Hebrew name of God.”

    “We respected each other enough not to finish each other’s sentences,” ben-Chaim says.

    I blush in awe and admiration.

  2. David Eddyshaw says

    A digital genizah is the way …

  3. Stu Clayton says

    A solid-state memory genizah. It would not “comfortably support a house cat”, but that should not be a deterrent.

  4. Do some (probably Orthodox) congregations really use these tropes consistently? For regular Torah readings at the congregations I have attended, the reader (usually a rabbi, unless it’s a special occasion) normally just follows a known trope pattern, repeating it and varying it to improve the euphony of the reading. Unless it is a particularly famous passage, there is not a special trope for the passage. With this in mind, I find the claim,

    Getting the trope wrong can radically distort the meaning of the text,

    to be risible and—even in the context of Orthodox Judaism—probably heretical.

  5. There was a story in the WaPo today about why the IRS needs so much money to upgrade its equipment. They are still using Windows XP and running software written in COBOL.* Perhaps someone there would have the knowhow to help with TropeTrainer.

    *Not on the same machines, I assume.

    I’m not sure whether it was the IRS or some dark corner of the Pentagon where someone had the task of buying 5-1/2 inch floppy disks from yard sales and ebay and the like in order to keep the gears of government running.

  6. Every decent library should comfortably support a house cat.

  7. Do some (probably Orthodox) congregations really use these tropes consistently?

    Certainly. It’s how they were passed down. A lot like a language.

  8. Jen in Edinburgh says

    I am interested now in all the musical and other meanings of ‘trope’, which I know mainly from the name of the notorious website. I still find it hard not to read the title of this post as ‘hackneyed ways to write code’.

    (For that matter, why hackney? Is it a particularly unimaginative place?)

  9. Dmitry Pruss says

    What a potent way to be remembered after death…

  10. They are still using Windows XP and running software written in COBOL.* …

    *Not on the same machines, I assume.

    Whisper it, but there’s plenty of software written in COBOL still running mission-critical systems. And certainly on XP — you can get a COBOL environment for pretty much any hardware/operating system.

    The second ghit is for “Here are instructions for using COBOL Personal on Windows XP.” [2021]; and the first is to Microsoft support dated 2018.

    Microsoft always vaunted backwards compatibility. That’s why all that cruft still weighs down Excel.

  11. January First-of-May says

    I still find it hard not to read the title of this post as ‘hackneyed ways to write code’.

    Meanwhile I read it as “a database of literary genres”.

  12. John Cowan says

    For that matter, why hackney? Is it a particularly unimaginative place?

    No. Hackney is a borough of London that formerly contained grassy fields suitable for grazing horses. So then hackney came to mean ‘horse’, and then ‘old, worn-out horse’, and then something is hackneyed if it is worn-out. On a separate path, hackney came to mean ‘cab horse’ (often old and worn-out) because they were often kept in Hackney, and then ‘cab’, in which meaning it was shortened to hack, eventually a slang term for horseless taxis as well.

    Hackney itself is etymologically either ‘Hacna’s island’ or ‘the island of the hook’. Many OE place names have this ambiguity: are they named after the first or some well-known inhabitant, or after a geographical feature homonymous with the name?

  13. ‘hackneyed ways to write code’

    angel : devil : djinn :: pattern : antipattern : trope

  14. “It was a dark and stormy night.” :: “Hello, world!”

  15. Or rather, “The quick brown fox jumps over the lazy dog.” :: “Hello, world!”

  16. I thought of another interesting linguistic fact about this sense of trope: that it can be treated as a mass noun. For example, when we had an Australian-born rabbi, she would occasionally say something like, “I’m going to perform the Torah reading tonight using western European trope, which is quite different from eastern European trope that is usually used in American synagogues.”* This is already seen in the linked article, although the mass trope in, “Trope are not just melodies,” obviously gets plural agreement.

    There is also a plural of masses (like peoples). I would call those eastern and western nusach “different tropes.” However, the article appears to prefer “trope styles.” The only appearance of the plural “tropes” is in a direct quote:

    “He and I spent an entire week sitting side-by-side in his office, in front of three computers and five screens, fine-tuning the shapes of the tropes and the exact placement of dots around letters,” Schwartz recalls.

    * Actually, I think my rabbi’s remark could equally well be phrased using “the eastern European trope,” etc.—not construing the term as a mass noun—but it doesn’t have to be.

Speak Your Mind