/usr/share/polygen/ita/oop.grm is in polygen-data 1.0.6.ds2-18.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | I ::= "title: Lezioni di Object-oriented Programming\n"
^ "author: CUG <cug@telcanet.it>\n"
^ "language: italian\n"
^ "status: mature\n"
^ "topic: misc\n"
^ "dedication: dedicato amichevolmente al Prof. G. B.\n"
^ "comment: tipica lezione di linguaggi di programmazione a oggetti, con i soliti stereotipi e i nomi disneyani\n"
^ "warning: io odio walt disney\n"
^ "thanks: si ringraziano Genuflesso ed il Generale per gli spunti discorsivi\n"
^ "created: 28/5/2004"
;
S::= \FACCIAMO CLASSE (DISNEY |MICROSOFT) SEGNO.PU3 ( X::= GUARDATE SEGNO.(PU3|PU2) CPV SEGNO.V CASO [PROBLEM]; \X (++(\(ora | adesso) X) [\(ora | adesso)X] ));
CASO ::= ( PROP NOME e' VISIBILITA SEGNO.PU3 |
la classe DISNEY,MICROSOFT eredita da MICROSOFT,DISNEY SEGNO.PU3 )
WHY RISPNEG [ SEGNO.PU2 SCUSE] SEGNO.PU3;
FACCIAMO ::= apriamo | esaminiamo | sulla slide possiamo vedere ;
GUARDATE ::= ( guardate | fate attenzione | state attenti ) [perche' e' importante] ;
CPV ::= come potete vedere | se osservate bene | se siete ancora svegli;
CLASSE ::= la classe | il diagramma "UML" della classe | la struttura della classe | le proprieta' della classe;
DISNEY ::= \( [super^\]pippo | pluto | paperin^(o|a) | gastone | topolino | "nonnaPapera" | gastone | paperoga
| "zioPaperone" | ciccio | brigitta | minni | orazio | clarabella | qu^(o|i|a) | archimede[^\pitagorico]
| rockerduck | [banda^\]bassotti | basettoni | "gambaDiLegno" | "filoSganga" | paperinik
| "etaBeta" | "paperBat" | manetta | "indianaPipps" | "picoDePaperis" | "nonnoBassotto"
| "gancioIlDritto" | "macchiaNera" | plottygatt | "paperettaYeYe" | ci^[o]^p | spennacchiotto
| zapotec | marlin
);
MICROSOFT ::= \(system)SEGNO.PU3^ ( X::=MSNAME SEGNO.PU3^; ( ++X [X]|_)^MSNAME );
MSNAME ::= \collections | \xml | \reflection | \windows | \assembly | \paint | \helder ;
SEGNO ::= (PU0: ^".\n\n"^\ | PU1:^".\n"^\ | PU2: ^":" | PU3: ^"."\ | PUE: ^"!"\ | V: ^"," | VT: ^"\""\ | PUI: ^"?"\ );
PROP ::= la proprieta' | l'attributo | il campo | il metodo | l'evento | il delegato ;
NOME ::= [ (\on | \do | \is )^ ] ( \write | \containing | \has | \new | \move | \push | \pop | \enqueue | \dequeue | \start) ^ (\element | \member | \attribute | \field) ;
VISIBILITA ::= public | private | protected | virtual | in override | readonly ;
WHY ::= perche' [[SEGNO.V] questo] SEGNO.PUI | c'e' una ragione particolare [per questo] SEGNO.PUI | in effetti potremmo chiederci la ragione di quest'apparente complicazione SEGNO.PU2 ;
RISPNEG ::= (sinceramente non ne ho la piu' pallida idea | dipende | e' una semplice convenzione | purtroppo non ho capito perche' sia stato implementato cosi' in questa versione | eh SEGNO.V non e' facile ) [-- SEGNO.V ma RISPPOS ];
RISPPOS ::= ( e' irrilevante | e' soltanto zucchero sintattico | niente di piu' facile SEGNO.V SOLUTION | la risposta giusta e' ""SEGNO.VT^\dipende SEGNO.VT | >SOLUTION ) ;
SCUSE ::= ( del resto lo sviluppatore non sono io SEGNO.V non so cos'aveva in mente chi l'ha fatto | fateci una dormitina sopra e vedrete che la mattina avrete risolto | hanno gia' detto che alla prossima versione questo problema sara' eliminato | (provateci voi | voglio poi vedervi) a (fare una cosa del genere | farlo) senza l'ausilio di un TRICK ) [SEGNO.PU3 personalmente SEGNO.V io (ci avrei messo | avrei usato | avrei introdotto) una classe chiamata MICROSOFT^SEGNO.PU3^DISNEY ];
PROBLEM ::= [e (dunque | allora) ] (come faremo a | come fare per) ( ereditare | catturare | enumerare | stampare | elaborare | salvare su "XML" ) PROP SEGNO.PUI RISPPOS [ SEGNO.PU2 REST] [SEGNO.PU3 FINE] SEGNO.PU3;
SOLUTION ::= > (e' (necessario | sufficiente) | basta )(fare un TRICK | premere il tasto cans^"\232"^l | spegnere e riaccendere );
TRICK ::= foreach | gettype | typeof | enum | get^\enumerator ;
FINE ::= fine [della trasmissione] | tutto qui | stop | basta | proprio cosi' | nient'altro ;
REST ::= al resto ci pensa (il compilatore | il garbacollettor | il framework | il "CLR" | il "CLS" | il "CLI") ;
|