Il Linguaggio Logo
La seguente citazione del libro di "Mindstorms" scritto nel 1980 da Seymour Papert indica i tre criteri ch eindividuano una "nuova Matematica" per i bambini:
Turtle geometry started with the goal of fitting children. Its primary design criterion was to be appropriable (fatta propria). Of course it had to have serious mathematical content, but we shall see that appropriability and serious mathematical content are not at all incompatible . On the contrary: We shall end up understanding that some of the most personal knowledge is also the most profoundly mathematical. In many ways mathematics — for example the mathematics of space and movement and repetitive patterns of action — is what comes naturally to most children . It is into this mathematics that we sink the tap-root of Turtle geometry. As my colleagues and I have worked through these ideas, a number of principles have given more structure to the concept of an appropriable mathematics.
First: there was the continuity principle: The mathematics must be continuous with well established personal knowledge from which it can inherit a sense of warmth and value as well as "cognitive" competence.
Then there was the power principle: It must empower the learner to perform personally meaningful projects that could not be done without it.
Finally there was the principle of cultural resonance: The topic must make sense in terms of a larger social context.
I have spoken of Turtle geometry making sense to children. But it will not truly make sense to children unless it is accepted by adults too. A dignified mathematics for children cannot be something we permit ourselves to inflict on children, like unpleasant medicine, although we see no reason to take it ourselves.
Logo in notazione BNF
Si puo' sviluppare il tentativo di usare il Logo per insegnare i principi dei linguaggi e dei compilatori in una scuola superiore. Il primo passo e' la sua definizione usando la notazione
BNF, se vuoi qualche approfondimento vai alla pagina
NotazioneBnf.
Per il significaato dei metasimboli usati fate riferimento
qui.
In questa formulazione non esistono possibilità di istruzioni di controllo annidate
<Stringa> ::= """{ Qualsiasi carattere }"""
<Numero> ::= [ "+"|"-" ] { <cifra> } "," { <cifra> } [ "E" | "D" | "e" | "d" {<cifra>} ]
<Nome> ::= <lettera> { <cifra> | <lettera> | "_" }
<Assegnazione> ::= <Nome> "=" <Espr>
<Espr> ::= | <Nome> | FNCT '(' <Espr> ')' | <Espr> '+' <Espr> | <Espr> '-' <Espr>
| <Espr> '*' <Espr> | <Espr> '/' <Espr>
| '-' <Espr> | <Espr> '^' <Espr> | '(' <Espr> ')'
| not <Espr> | <Espr> 'e' <Espr> | <Espr> 'o' <Espr>
| <Espr> < <Espr> | <Espr> <= <Espr>
| <Espr> > <Espr> | <Espr> => <Espr>
<Azione> ::= avanti | indietro | sinistra | destra | direzione | centro | vai | vaiorizz | vaivert
| pennasu | pennagiu | spessorepenna | colorepenna | dimensionesfondo | coloresfondo
| attorno | muro | pulisci | ricomincia | mostra | nascondi | scrivi |dimensionecarattere
| casuale | messaggio | finestrainserimento
<Comando> ::= <Azione> { <Espr> ["," <Espr> ] }
<Comando_se> ::= se <Espr> "[" { <Comando> } "]" [ altrimenti "["{ <Comando> }"]" ]
<Comando_mentre>::= mentre <Espr> "[" { <Comando> } "]"
<Comando_per> ::= per <Assegnazione> finoa <Espr> "[" { <Comando> } "]"
Bison Parser
Bison è un generatore di Parser (decodificatore) per
" Context-free grammar " di tipo
LALR[1] (Look-Ahead LR parsers),
In altri termini un decodificatore LALR cerca di individuare per primo l'elemento piu' semplice presente nella "frase", partendo da destra, per poi risalire generando
"l'albero sintattico" muovendosi da Destra a Sinistra.
Rispetto alla notazione BNF in Bison il termine
"terminal symbol" viene usato per qualsiasi elemento sintattico non ulteriormente suddivisibile (ad esclusione chiaramente dei caratteri. Un
"terminal symbol" viene indicato come
"token" mentre un generico "raggruppamento" di construtti è indicato come
"non-terminal symbol". La definizione
"linguistica" è leggermente differente.
Dare un'occhiata a questo thread
http://unix.derkeiler.com/Newsgroups/comp.unix.programmer/2004-08/0572.html
http://www.scarpaz.com/2005-Didattica/index.html
Training
Alcuni link:
--
RobertoBernetti - 25 Apr 2006