2005.02.23

 

lingua romana perligata

by Karel Thönissen

  MAXIMUM INQUEMENTUM TUM BIGUTTAM EGRESSO SCRIBE.
  MEO MAXIMO VESTIBULO PERLEGAMENTUM DA.
  DA DUO TUM MAXIMUM CONSCRIBEMENTA MEIS LISTIS.

  DUM LISTIS DECAPITAMENTUM DAMENTUM NEXTO
     FAC SIC
        NEXTUM TUM NOVUMVERSUM SCRIBE EGRESSO.
        LISTA SIC HOC RECIDEMENTUM NEXTUM CIS VANNEMENTA DA LISTIS.
     CIS.

This is not shouting, this is Latin.

This is the sieve of Eratosthenes in Lingua::Romana::Perligata. Perligata is in my opinion one of the most beautiful esoteric programming languages ever invented. Granted, nothing in Perligata is simpler than its successor of 2000 years Perl, but still. The base lingua for this programming language is not English, as is usual, but Latin. Parameters are not passed by position but by inflexion. Suffices indicate role, number, etc. Numerals are Roman, obviously. No punctuation, only the period, like in Latin. Everything that made Latin a weird language from the perspective of modern languages, is used in Perligata, including conjugations. Since Romans only had capitals, I took the freedom to convert from lower case to upper case. This is the same program in standard Perl:

  print STDOUT 'maximum:';
  my $maxim = <STDIN>;
  my (@list) = (2..$maxim);

  while ($next = shift @list)
     {
        print STDOUT $next, "\n";
        @list = grep { $_ % $next} @list;
     }