que je voulais expérimenter avec le Shakespeare programming language, donc je l'ai téléchargé et exécuté à partir here le Makefile en utilisant cd spl-1.2.1
Make
.et l'exécution du Compiler traducteur langage de programmation Shakespeare spl2c sous Mac OS X 10.6 Résultats des avertissements/erreurs
La compilation de spl2c
exécute avec des avertissements de couple:
scanner.l:600: warning, rule cannot be matched
<stdout>:5808: warning: ‘yyunput’ defined but not used
Et puis, quand il tente de compiler tous les tout exemples se détraque:
../spl/bin/spl2c <fibonacci.spl> fibonacci.c
Warning at line 19: equality expected
Warning at line 28: equality expected
Warning at line 30: comment expected
Warning at line 30: comment expected
Warning at line 30: comment expected
Warning at line 30: comment expected
Warning at line 32: comment expected
Warning at line 32: comment expected
Warning at line 32: comment expected
Warning at line 32: comment expected
Warning at line 34: comment expected
Warning at line 34: comment expected
Warning at line 34: comment expected
Warning at line 34: comment expected
Warning at line 36: comment expected
Warning at line 36: comment expected
Warning at line 37: comment expected
Warning at line 37: comment expected
Warning at line 37: comment expected
Warning at line 37: colon expected
Warning at line 40: equality expected
Warning at line 51: comment expected
Warning at line 51: comment expected
Warning at line 51: comment expected
Warning at line 51: comment expected
Warning at line 51: comment expected
Warning at line 51: colon expected
Error at line 59: 'act [roman number]' or 'scene [roman number]' expected
1 errors and 27 warnings found. No code output.
Quelqu'un peut-il me diriger dans la bonne direction pour régler cela? Mon projet original allait être l'apprentissage de spl, ne pas pencher pour déboguer les compilateurs (je voudrais en fait écrire mon propre compilateur, mais je préférerais m'en tenir à mon projet initial pour l'instant). Je cours OS X 10.6.2
, gcc version 4.2.1 (Apple Inc. build 5646) (dot 1)
, flex 2.5.35
, et bison (GNU Bison) 2.3
.
EDIT: Pour les programmes simples ne nécessitant pas GOTO (par exemple hello.spl), vous pouvez contourner le problème en supprimant tous les ACT/lignes SCENE sauf la première ACT I/SCENE I.
Ditto-eth. Merci Kyle. Marlowe a été intégré à OpenCOBOL, COBILL. –
En parlant de nécromancie: en réalité, le diagnostic présenté ici est incorrect. L'expression régulière originale fonctionnerait aussi bien que le remplacement suggéré. Cependant, il y a eu un bug dans flex depuis une dizaine d'années impliquant l'utilisation de répétitions contreventées avec des arguments insensibles à la casse. Je l'ai signalé à https://github.com/westes/flex/issues/193 – rici