Types of Ancient Greek — Scott Fleischman

Two things I love combined: type systems and ancient languages. This should be fun!

There is quite some Greek language material available digitally, especially the Greek bible has been manually analyzed a lot, both in terms of word analysis, and structural analysis. This however takes a lot of work, and issues that scholars run into while doing analysis are consistency, using the right model and the fact that changes are expensive (what if you want to change classification halfway).

Thus, Scott wanted to have the machines help him! Not purely machine ran, but a system that supports a scholar in classification. He tried using C# initially but that was not really easy (C# and pattern matching are not (yet?) a match made in heaven)

The next experiment was to use Agda (brave!)

2016-05-27 15.53.11

It worked… but, it was kind a slow. Just checking the basic types already took an hour. So what about Haskell?

The types in Haskell forced the speaker to resolve confusing aspects of the grammar, which was really a useful exercise. To manage the complexity, instead of using one gigantic parser, he used parser combinators. An example:

2016-05-27 16.00.58

 

Supercool work. You can explore it right here: http://scott-fleischman.github.io/greek-grammar/#view=typeList