title: Innovazione nelle AT?

text:
Giovanni Riccardi wrote:
>> Per es. si potrebbe avere
>> f(x) = f(x+3) + f(x/2)
>> e il tuo modo di vederla non avrebbe molto senso, infatti ci
>> potrebbero essere vari cammini e non sarebbe ben chiaro l'ordine dei
>> termini.
>
> Il senso è "ogni passo si compie a partire dal/dai precedente/i"
Non accade sempre. I precedenti potrebbero riapparire come successivi,
ecc...
Se un prof. ti dà una roba così gli sputi in un occhio però, nella realtà
potrebbe accadere.
> L'etimologia di un termine può anche non corrispondere perfettamente
> all'uso che se ne fa al giorno d'oggi. Forse l'esempio dello stack non
> era molto azzeccato. Ok. Mi sono (ri)documentato (avevo ricordi più o
> meno confusi sull'etimologia): "ricorsività" è stato formalizzato in
> matematica (Godel negli anni 30) per indicare funzioni che richiamano
> se stesse. Il concetto di "tornare indietro" (il perché si scelse
> proprio quel termine) è dato dal fatto che richiamando se stesse si
> deve eseguire prima un altro calcolo (un altro ancora fino alla base
> della ricorsione) per poi tornare indietro.
Però io continuo a chiedermi. Se "ricorrere" significa sia "tornare
indietro" che "riaccadere", "riapparire" e questo secondo significato
permette di dire che la funzione è ricorsiva perché all'interno della sua
definizione si fa nuovamente riferimento a se stessa (cioè "riappare" se
stessa), perché voler usare a tutti i costi l'altro significato che è tirato
*veramente* per i capelli?
> "Il fenomeno dello "Strano Anello consiste nel fatto di ritrovarsi
> inaspettamente, salendo o scendendo lungo i gradini di qualche sistema
> gerarchico, al punto di partenza"
>
> Si torna indietro, quindi.
Quello che sto cercando di dirti è che questo fenomeno è condizione
necessaria, ma non sufficiente per avere la ricorsione.
Lo "Strano Anello" descrive perfettamente anche ciò che accade
nell'iterazione (pensa a cicli annidati).
Kiuhnm


title: Innovazione nelle AT?

author: Giovanni Riccardi

text:
Kiuhnm ha scritto:
>>Il senso è "ogni passo si compie a partire dal/dai precedente/i"
>
>
> Non accade sempre. I precedenti potrebbero riapparire come successivi,
E sarebbero comunque precedenti perché già calcolati...
> Però io continuo a chiedermi. Se "ricorrere" significa sia "tornare
> indietro" che "riaccadere", "riapparire" e questo secondo significato
> permette di dire che la funzione è ricorsiva perché all'interno della sua
> definizione si fa nuovamente riferimento a se stessa (cioè "riappare" se
> stessa), perché voler usare a tutti i costi l'altro significato che è tirato
> *veramente* per i capelli?
Etimologicamente, ho spiegato, accade il contrario. L'uso di "ricorsivo"
in ambito matematico con quel significato è successivo. La parola è
stata acquisita dal gergo specialistico e contemporaneamente se ne è
fatto sempre minore uso in ambito generale. That's all.
> Quello che sto cercando di dirti è che questo fenomeno è condizione
> necessaria, ma non sufficiente per avere la ricorsione.
> Lo "Strano Anello" descrive perfettamente anche ciò che accade
> nell'iterazione (pensa a cicli annidati).
No, è diverso. Per vari motivi.
1) il libro parla di ricorsione. In effetti è tutto un discorso (con
racconti, esempi, anche cose piuttosto comiche) sulla teoria della
calcolabilità (il libro ha tra i "protagonisti" proprio Godel)e in
questa si fa esplicito riferimento alla ricorsione e mai all'iterazione.
2) la citazione si capisce poco, messa così, ma il fulcro sta in quella
parola "inaspettatamente" che nel descrivere l'iterazione non ci sarebbe
stata.
3) non esiste in matematica alcuna definizione di annidamento, mentre
esiste di ricorsione o iterazione.
4) a riconferma del mio esempio iniziale sullo stack, nel libro ad un
certo punto l'autore inserisce un divertentissimo racconto (protagonisti
Achille e la tartaruga del famoso paradosso) riguardante proprio
l'annidamento in relazione alla ricorsione.
5) a conferma della definizione di ricorsività come di funzione che
richiama se stessa, pensa alle funzioni mutuamente ricorsive: g chiama f
che chiama g.
6) dove starebbe l'annidamento nell'iterazione? i cicli annidati sono
così perché ce li vuoi mettere tu per fare una qualche operazione. Non
sono caratteristici di una funzione. Ad esempio le seguenti due
sommatorie annidate:
sum_{i=1}^{N} sum_{k=1}^{N} i*k
le puoi anche scrivere così:
sum_{i,k=1}^{N} ì*k
cioè "puoi contare i e k insieme". Questa la implementi con due cicli
annidati anche se in Python puoi fare "for i, k in range(1,N)" ed è uno
solo. In generale se l'insieme su cui variano due indici i e k sono
diversi ("1...N" e "1...M" ad esempio) i cicli annidati restano due, ma
sono comunque due cose separate (ad esempio le righe di una matrice, le
colonne di un'altra). Cioè mi spiego meglio: l'annidamento
nell'iterazione di cui parli è proprio della programmazione (e del
linguaggio che usi) e non dell'algoritmo o della funzione che stai
implementando. E comunque non caratterizza la funzione (cioè non ci sono
proprietà della funzione che seguono dall'essere "annidata").
7) Tornando alla ricorsione. Supponi di avere un linguaggio di
programmazione che non la supporta. Come fai ad implementare una
funzione ricorsiva? (Senza barare e usare un'equivalente algoritmo
iterativo, se esiste) Ti devi creare una pila e fare i tuoi bei "push" e
"pop" e questo anche nel caso di cose più complicate come gli esempi che
hai fatto in cui non sembra che si torni indietro ma invece si va
avanti. E la pila la devi prima riempire e poi completamente svuotare
(tornando indietro). L'algoritmo termina con lo svuotamento della pila.



title: Innovazione nelle AT?

author: Kiuhnm

text:
Giovanni Riccardi wrote:
>> Non accade sempre. I precedenti potrebbero riapparire come
>> successivi,
>
> E sarebbero comunque precedenti perché già calcolati...
Mica detto...
Ti ho fatto quell'esempio proprio perché a un certo punto potremmo conoscere
f(x) e non i precedenti, oppure potremmo conoscerli tutti e tre rendendoci
conto che non esiste una soluzione.
Un problema interessante potrebbe essere quello di trovare una x di partenza
tale da riuscire a trovare la sequenza più lunga non inconsistente.
Comunque quando hanno scoperto/inventato le formule di ricorrenza, come dici
tu, non avranno di certo pensato a casi così assurdi.
> Etimologicamente, ho spiegato, accade il contrario. L'uso di
> "ricorsivo" in ambito matematico con quel significato è successivo.
> La parola è stata acquisita dal gergo specialistico e
> contemporaneamente se ne è fatto sempre minore uso in ambito
> generale. That's all.
OK, ma nel linguaggio comune potrei benissimo interpretare "ricorsivo" come
"ripetitivo", "ricorrente" e non "tornare indietro".
Se incontro lo stesso personaggio in vari punti diversi di un mondo
virtuale, quel personaggio è ricorrente, giusto? Con il tuo "tornare
indietro", a 'sto mondo, è tutto ricorsivo.
>> Quello che sto cercando di dirti è che questo fenomeno è condizione
>> necessaria, ma non sufficiente per avere la ricorsione.
>> Lo "Strano Anello" descrive perfettamente anche ciò che accade
>> nell'iterazione (pensa a cicli annidati).
>
> No, è diverso. Per vari motivi.
>
> 1) il libro parla di ricorsione. In effetti è tutto un discorso (con
> racconti, esempi, anche cose piuttosto comiche) sulla teoria della
> calcolabilità (il libro ha tra i "protagonisti" proprio Godel)e in
> questa si fa esplicito riferimento alla ricorsione e mai
> all'iterazione. 2) la citazione si capisce poco, messa così, ma il
Tu mi hai riportato una citazione. Per quel che si capisce, il libro
potrebbe parlare anche di agricoltura.
> fulcro sta in quella parola "inaspettatamente" che nel descrivere
> l'iterazione non ci sarebbe stata.
1) Un algoritmo ricorsivo può *sempre* essere trasformato in un algoritmo
iterativo.
2) E' indecidibile capire, in generale, quando si entrerà in un nuovo ciclo
e quando si uscirà da quello corrente. Più "inaspettatamente" di così si
muore.
La stessa cosa vale per la ricorsione.
> 3) non esiste in matematica alcuna definizione di annidamento, mentre
> esiste di ricorsione o iterazione.
In matematica l'annidamento viene visto come composizione di oggetti, quindi
esiste, sotto altro nome.
Pensa alla composizione di funzioni, oppure ai sottoinsiemi.
> 4) a riconferma del mio esempio iniziale sullo stack, nel libro ad un
> certo punto l'autore inserisce un divertentissimo racconto
> (protagonisti Achille e la tartaruga del famoso paradosso)
> riguardante proprio l'annidamento in relazione alla ricorsione.
Questo non l'ho mai negato. Ho detto che l'annidamento è condizione
necessaria, ma non sufficiente per avere la ricorsione.
E' come dire che la moltiplicazione di vari termini è cond. neces., ma non
suff. per avere un elevamento a potenza (tutto tra due grandi virgolette),
infatti occorre che i termini siano uguali (così come nella ricorsione).
> 5) a conferma della definizione di ricorsività come di funzione che
> richiama se stessa, pensa alle funzioni mutuamente ricorsive: g
> chiama f che chiama g.
Hai visto che hai trovato la definizione di annidamento?
g o f o h
h(f(g)) = annidata, ma non ricorsiva
> matrice, le colonne di un'altra). Cioè mi spiego meglio: l'annidamento
> nell'iterazione di cui parli è proprio della programmazione (e del
> linguaggio che usi) e non dell'algoritmo o della funzione che stai
> implementando. E comunque non caratterizza la funzione (cioè non ci
> sono proprietà della funzione che seguono dall'essere "annidata").
Allora abbiamo un serio problema:
a) è sempre possibile trasformare un algoritmo da ricorsivo a iterativo;
b) l'annidamento nell'iterazione prescinde dall'algoritmo usato;
c) l'annidamento è cond. necessaria (ma non suff.) per la ricorsività.
Esistono sempre infiniti programmi scritti nel linuaggio L1, tali da non
poter essere riscritti nel linguaggio L2 qualora non sia possibile esprimere
tutte le singole istruzioni di L1 tramite una sequenza di istruzioni di L2.
Ecco perché in C e in molti altri linguaggi si è lasciato il comando "goto".
Esistono situazioni in cui è indispensabile (se non si vuole scrivere codice
ridondante o simularlo in strani modi).
Per es. per evitare la decompilazione di codice (già difficile di per sé) si
possono usare costrutti non esprimibili nei linguaggi di alto livello.
> 7) Tornando alla ricorsione. Supponi di avere un linguaggio di
> programmazione che non la supporta. Come fai ad implementare una
> funzione ricorsiva? (Senza barare e usare un'equivalente algoritmo
> iterativo, se esiste) Ti devi creare una pila e fare i tuoi bei
> "push" e "pop" e questo anche nel caso di cose più complicate come
> gli esempi che hai fatto in cui non sembra che si torni indietro ma
> invece si va avanti. E la pila la devi prima riempire e poi
> completamente svuotare (tornando indietro). L'algoritmo termina con
> lo svuotamento della pila.
Allora tutte le funzioni che chiamano altre funzioni sono ricorsive, secondo
quanto dici. E' falso.
Lo vedi che si torna sempre a questo punto?
Kiuhnm
P.S. Non hai l'impressione che questa discussione sia ricorsiva?
IMHO, abbiamo entrambi ragione perché non siamo completamente d'accordo su
tante piccole questioncine...quelle che fanno sì che una goccia d'acqua
colpendo la punta di un cono non cada sempre nella stessa direzione :-)


title: Innovazione nelle AT?

text:
Kiuhnm ha scritto:
> Mica detto...
> Ti ho fatto quell'esempio proprio perché a un certo punto potremmo conoscere
> f(x) e non i precedenti, oppure potremmo conoscerli tutti e tre rendendoci
> conto che non esiste una soluzione.
> Un problema interessante potrebbe essere quello di trovare una x di partenza
> tale da riuscire a trovare la sequenza più lunga non inconsistente.
> Comunque quando hanno scoperto/inventato le formule di ricorrenza, come dici
> tu, non avranno di certo pensato a casi così assurdi.
é questo quello che volevo dire (spiegandomi male, forse) i casi così
assurdi sono venuti dopo aver introdotto il termine (e infatti godel fu
costretto a dare una definizione formale di ricorsività).
> OK, ma nel linguaggio comune potrei benissimo interpretare "ricorsivo" come
> "ripetitivo", "ricorrente" e non "tornare indietro".
Ah, ho capito quello che non hai capito del mio discorso! Quello che
intendo dire è che se la parola ricorrente deriva dal latino ricorrere
che vuol dire "tornare indietro" (ri-occorrere, se vuoi) in un certo
senso la ripetizione è intesa come una specie di "tornare indietro" (e
sottolineo _una specie di_). L'italiano è pieno zeppo di cose così!
> Se incontro lo stesso personaggio in vari punti diversi di un mondo
> virtuale, quel personaggio è ricorrente, giusto? Con il tuo "tornare
> indietro", a 'sto mondo, è tutto ricorsivo.
Infatti, il personaggio è ricorrente. Ma il problema nel libro
(paradossale, naturalemente) è che i mondi virtuali sono uno dentro l'altro!
> Tu mi hai riportato una citazione. Per quel che si capisce, il libro
> potrebbe parlare anche di agricoltura.
ok, scusa. In effetti però ho detto che dalla citazione poco si capisce.
> 1) Un algoritmo ricorsivo può *sempre* essere trasformato in un algoritmo
> iterativo.
L'ho detto anch'io questo.
> 2) E' indecidibile capire, in generale, quando si entrerà in un nuovo ciclo
> e quando si uscirà da quello corrente. Più "inaspettatamente" di così si
> muore.
infatti non puoi sapere quando entri nel nuovo ciclo. Ma
"inaspettatamente" è inteso non nel senso "non ti aspetti quando" ma nel
senso "non ti aspetti (tout court)", cioè quando ci arrivi sei spaesato
come per dire "cosa cavolo ci faccio qui?" Nell'iterazione questo senso
di smarrimento non ce l'hai. Dopo due/tre giri alla fine ti abitui.
> La stessa cosa vale per la ricorsione.
Con il senso di smarrimento in più!
> In matematica l'annidamento viene visto come composizione di oggetti, quindi
> esiste, sotto altro nome.
> Pensa alla composizione di funzioni, oppure ai sottoinsiemi.
Esatto. Ci avevo pensato anch'io dopo il messaggio. Se vuoi allora
l'annidamento è il semplice "essere dentro un'altra cosa" (e in verità
questo vuol dire).
> Questo non l'ho mai negato. Ho detto che l'annidamento è condizione
> necessaria, ma non sufficiente per avere la ricorsione.
Ok. Visto quello che ho scrito qui su, va bene anche questo.
> E' come dire che la moltiplicazione di vari termini è cond. neces., ma non
> suff. per avere un elevamento a potenza (tutto tra due grandi virgolette),
> infatti occorre che i termini siano uguali (così come nella ricorsione).
Infatti e meglio che mettiamo le virgolette. Anche a me era venuto in
mente un esempio da scrivere, ma poi ho visto che era più fuorviante che
altro e non l'ho scritto per evitare di metterci le virgolette...
>>5) a conferma della definizione di ricorsività come di funzione che
>>richiama se stessa, pensa alle funzioni mutuamente ricorsive: g
>>chiama f che chiama g.
>
>
> Hai visto che hai trovato la definizione di annidamento?
> g o f o h
> h(f(g)) = annidata, ma non ricorsiva
NO. Due funzioni sono mutuamente ricorsive ad esempio:
f(x) = 1+g(x+1)
g(x) = f(x-1)
Come vedi non sono annidate (nel senso scritto da te) ma comunque una
richiama l'altra che richiama ancora l'altra, ecc.
> Allora abbiamo un serio problema:
> a) è sempre possibile trasformare un algoritmo da ricorsivo a iterativo;
E questo va bene.
> b) l'annidamento nell'iterazione prescinde dall'algoritmo usato;
> c) l'annidamento è cond. necessaria (ma non suff.) per la ricorsività.
>
> Esistono sempre infiniti programmi scritti nel linuaggio L1, tali da non
> poter essere riscritti nel linguaggio L2 qualora non sia possibile esprimere
> tutte le singole istruzioni di L1 tramite una sequenza di istruzioni di L2.
> Ecco perché in C e in molti altri linguaggi si è lasciato il comando "goto".
> Esistono situazioni in cui è indispensabile (se non si vuole scrivere codice
> ridondante o simularlo in strani modi).
ma qui è un "tornare indietro" nel programma, io parlo si un "tornare
indietro" nell'algoritmo, cioè tornare al punto in cui l'avevamo
lasciato. MA comunque stiamo andando fortemente OT!!
> Allora tutte le funzioni che chiamano altre funzioni sono ricorsive, secondo
> quanto dici. E' falso.
Io ho fatto l'esempio di una funzione ricorsiva (o meglio di un
algoritmo ricorsivo) non di funzioni che chiamano altre funzioni...
Prendi il classico esempio del fattoriale (primo esempio di algoritmo
ricorsivo in qualsiasi corso di programmazione):
fatt(n) = n * fatt(n-1)
LO puoi fare iterativamente con un ciclo che parte da 1 e arriva fino a
  n. Ma lo vuoi fare ricorsivo e il linguaggio non può gestire questa
cosa. Che fai? Ti crei una struttura "pila" in cui via via memorizzi i
valori. Esempio per fatt(5), la pila è costruita via via in questo modo
(speriamo che si legge):
                 1
             2   2   2
         3   3   3   3   3
     4   4   4   4   4   4   4
5   5   5   5   5   5   5   5   5
/   /   /   /   /     2   6  12   60     <-- (valori ritornati)
In questo senso la ricorsività può essere intesa allora in due modi:
1) un ciclo, parti da fatt(1) e per iterazioni successive arrivi a fatt(n)
2) l'annidamento nel senso della pila, cioè dal fatt(n) vai sempre più
dentro per arrivare al passo base della ricorsione per poi iniziare a
svuotare la pila e ritornare i valori calcolati
Abbiamo quindi due "tornare indietro" differenti (quello suggerito da te
e quello suggerito da me):
1) ripetere l'operazione (il ciclo)
2) tornare al passo precedente per completarlo (lo svuotamento della pila)
> P.S. Non hai l'impressione che questa discussione sia ricorsiva?
> IMHO, abbiamo entrambi ragione perché non siamo completamente d'accordo su
> tante piccole questioncine...quelle che fanno sì che una goccia d'acqua
> colpendo la punta di un cono non cada sempre nella stessa direzione :-)
Qualche tempo fa riflettevo sulla matematica e sul mio modo di
pensare/comportarmi e mi è venuta fuori questa massima: "un matematico è
colui che si crea i problemi per il gusto di poterli risolvere!".
Giovanni
PS: se vuoi continuiamo in privato...
PPS: Nei libri americani di matematica/informatica viene utilizzato
l'aggettivo "recursive" ma quasi mai il sostantivo "recursion", che
invece nella stragrande maggioranza dei casi viene sostituito da
"recurrence"! (facci caso, se hai qualche libro a portata di mano).



title: Innovazione nelle AT?

text:
Giovanni Riccardi wrote:
> é questo quello che volevo dire (spiegandomi male, forse) i casi così
> assurdi sono venuti dopo aver introdotto il termine (e infatti godel
> fu costretto a dare una definizione formale di ricorsività).
OK.
> Ah, ho capito quello che non hai capito del mio discorso! Quello che
> intendo dire è che se la parola ricorrente deriva dal latino ricorrere
> che vuol dire "tornare indietro" (ri-occorrere, se vuoi) in un certo
> senso la ripetizione è intesa come una specie di "tornare indietro" (e
> sottolineo _una specie di_). L'italiano è pieno zeppo di cose così!
Ma il mio dubbio era questo: ricorsione deriva direttamente dal latino
oppure deriva da una [ulteriore] derivazione del termine latino? Non ho
esperienza in filologia o cose del genere...
>> 1) Un algoritmo ricorsivo può *sempre* essere trasformato in un
>> algoritmo iterativo.
>
> L'ho detto anch'io questo.
Sì, però quella parte dovevo ancora leggerla.
>> 2) E' indecidibile capire, in generale, quando si entrerà in un
>> nuovo ciclo e quando si uscirà da quello corrente. Più
>> "inaspettatamente" di così si muore.
>
> infatti non puoi sapere quando entri nel nuovo ciclo. Ma
> "inaspettatamente" è inteso non nel senso "non ti aspetti quando" ma
> nel senso "non ti aspetti (tout court)", cioè quando ci arrivi sei
> spaesato come per dire "cosa cavolo ci faccio qui?" Nell'iterazione
> questo senso
> di smarrimento non ce l'hai. Dopo due/tre giri alla fine ti abitui.
Vedi che però pensi all'iterazione dal punto di vista di linguaggi ad alto
livello?
Pensa all'iterazione come a una sequenza di tanti goto:
if (.........)
    goto .....
Qui sei ancora più smarrito che nella ricorsione, infatti fai fatica a
capire quali parti vengono ripetute, in che ordine e addirittura se vengono
o verranno ripetute.
Nella ricorsione lo stack rappresenta parte della tua storia, invece qui non
hai niente... (ed è, non a caso, tuttora il miglior modo per offuscare il
codice).
>> Hai visto che hai trovato la definizione di annidamento?
>> g o f o h
>> h(f(g)) = annidata, ma non ricorsiva
Ho scritto una corbelleria: g o f o h = g(f(h(x))).
> NO. Due funzioni sono mutuamente ricorsive ad esempio:
>
> f(x) = 1+g(x+1)
> g(x) = f(x-1)
>
> Come vedi non sono annidate (nel senso scritto da te) ma comunque una
> richiama l'altra che richiama ancora l'altra, ecc.
Perché dici che non sono annidate?
Potrei semplicemente ridurre/semplificare la tua espressione:
f(x) = 1 + f((x+1)-1)
oppure potrei scrivertele direttamente come composizione di funzioni
elementari:
s(x) = x + 1
t(x) = x - 1
1) g(x) = (f o t)(x) = f(t(x))
2) f(x) = (s o g o s)(x) = s(g(s(x)))
Sostituendo:
g(x) = s(g(s(t(x))))
E' un bellissimo "annidamento" e in più è ricorsivo perché la g(x) compare
sia a destra che a sinistra
(nota che le due s(x) non determinano ricorsione).
> ma qui è un "tornare indietro" nel programma, io parlo si un "tornare
> indietro" nell'algoritmo, cioè tornare al punto in cui l'avevamo
> lasciato. MA comunque stiamo andando fortemente OT!!
Ho capito che cosa vuoi dire. E' la stessa cosa che sostenevo sui ng di
programmazione (me ne sono dovuto andare :-) )
Sostenevo che la conversione in iterativo di un algo. ricorsivo restava
sempre ricorsivo, nel senso che "risolveva il problema ricorsivamente" sotto
mentite spoglie di un algo iterativo.
A volte gli informatici sono così rigidi nelle loro definizioni...
Avevo detto che una siffatta definizione di "funzione" (in Informatica!)
ricorsiva non era utile per farsi un'idea sulla ricorsività o meno
dell'algoritmo. Inoltre esistono anche funzioni "ricorsive che in realtà non
sono ricorsive".
Per es.
f(x)
{
    if (x == 45)
        return 0;
    else
    {
        [algo_iterativo]
        f(45);
    }
}
è ricorsiva, ma è come se non lo fosse.
Cmq. un metodo per non ricorrere alla ricorsività è "portarsi dietro i
risultati parziali". In questo modo non torni indietro perché prendi i
mattoni che hai alle spalle e li riposizioni davanti a te.
Potremmo chiamarlo il paradosso dei due mattoni :-)
Vabbe', sto delirando...
> Io ho fatto l'esempio di una funzione ricorsiva (o meglio di un
> algoritmo ricorsivo) non di funzioni che chiamano altre funzioni...
E hai detto che "torna indietro". Lo fanno anche quelle che chiamano altre
funzioni...
Considera:
f(x)
{
    a = g(x);
    b = h(a)
}
Non è ricorsiva eppure ti sfido a non tornare indietro dalla g(x)!
Non solo, se so che la mia ricorsione non raggiungerà mai certi livelli,
posso addirittura definire n funzioni uguali (o simili, se per te è più
bello) e chiamare quelle.
Oppure immagina codice evolutivo che crea nuove funzioni quando gli servono.
Non è ricorsione, ma è come se lo fosse...
Quello che voglio dire è che o si accettano rigidamente le definizioni per
quello che sono (al limite si cambiano!) oppure è possibile trovare tante di
quelle eccezioni che non la si finisce più.
Il tuo "tornare indietro" va bene come idea originaria (storicamente
parlando), ma oggi non è più adeguata, IMHO.
[cut]
> Abbiamo quindi due "tornare indietro" differenti (quello suggerito da
> te
> e quello suggerito da me):
>
> 1) ripetere l'operazione (il ciclo)
> 2) tornare al passo precedente per completarlo (lo svuotamento della
> pila)
Non c'era bisogno che scendessi così nei particolari. E' dall'inizio che ho
capito quello che stai dicendo. La mia unica contestazione è che dire
"tornare indietro" è troppo generale.
Si applica, appunto, anche alle chiamate non ricorsive (prova a dimostrarmi
il contrario).
> Qualche tempo fa riflettevo sulla matematica e sul mio modo di
> pensare/comportarmi e mi è venuta fuori questa massima: "un
> matematico è colui che si crea i problemi per il gusto di poterli
> risolvere!".
Non sei il primo a pensarla così. Non pochi matematici in passato hanno
affermato (con Orgoglio) una cosa del genere!
Una massima in qualche modo correlata, ma un po' pessimistica dice che
"I problemi che vogliamo a tutti i costi risolvere risultano sempre essere i
più difficili da risolvere".
Per esempio si cerca di trovare un algo per ottimizzare dei circuiti/codice
e si scopre che è NP-hard, si cerca di capire come tagliare delle lastre di
vetro per minimizzare lo spreco ed è ancora NP-hard, ecc...
Siamo proprio sfortunati... almeno abbiamo più fortuna nei problemi che ci
creiamo da soli!
> PS: se vuoi continuiamo in privato...
Scrivere messaggi così lunghi mi sottrae troppa energia vitale...lasciamo
stare!
> PPS: Nei libri americani di matematica/informatica viene utilizzato
> l'aggettivo "recursive" ma quasi mai il sostantivo "recursion", che
> invece nella stragrande maggioranza dei casi viene sostituito da
> "recurrence"! (facci caso, se hai qualche libro a portata di mano).
google:
recursion programming    [178'000 risultati]
recurrence programming    [59'700 risultati]
Leggendo le varie pagine si vede inoltre che recursion è il più usato
(qualcuno mette inizialmente recurrence tra parentesi, ma poi usa sempre
recursion).
Non è che hai libri un po' datati? :-)
Se trovi frasi del "Thou shalt use this form when..." fai un aggiornamento.
Kiuhnm


title: Innovazione nelle AT?

author: Stefano

text:
Per riallacciarmi all'idea dell'innovazione credo che IDRA e le evoluzioni
successive (parlo dell'integrazione degli OGGETTI) è un'ottima risposta
Lo sto provando in questi giorni con la trasposizione di un mio lavoro di
qualche anno fa e il risultato è incoraggiante!
Inoltre i limiti di programmazione di IDRA (vedi iterazione tra oggetto e
oggetto) sono assolutamente superabili con un pò di ingegno di
programmazione e un utilizzo di variabili Flag
Secondo me il futuro delle avventure grafiche, inteso anche come possibilità
di conoscenza al grande pubblico di internet, è proprio IDRA
"Enrico Colombini" <
m...@privacy.net
> ha scritto nel messaggio
news:2j8ik4F...@uni-berlin.de...
> Francesco Cordella wrote:
> > l'idea di un testo con parole cliccabili e dunque ipertesti
>  > mi sembra un'altra buona strada da percorrere, soprattutto da
>  > chi vuole concentrarsi sulla narrazione. Non conosco Idra,
> > è più o meno così?
>
> Si', se ho capito bene cosa intendi. Dai un'occhiata al manuale,
> dovrebbe essere abbastanza leggibile
> (
http://www.erix.it/idra/Manuale/Idra-1.html
).
>
>    .Erix.
>


title: Innovazione nelle AT?

text:
(SCUSATE SE RISCRIVO IL MEX MA NON ERA MOLTO VISIBILE)
Per riallacciarmi all'idea dell'innovazione credo che IDRA e le evoluzioni
successive (parlo dell'integrazione degli OGGETTI) è un'ottima risposta
Lo sto provando in questi giorni con la trasposizione di un mio lavoro di
qualche anno fa e il risultato è incoraggiante!
Inoltre i limiti di programmazione di IDRA (vedi iterazione tra oggetto e
oggetto) sono assolutamente superabili con un pò di ingegno di
programmazione e un utilizzo di variabili Flag
Secondo me il futuro delle AT, inteso anche come possibilità di conoscenza



title: Aggiornamento blog - Non sarà un'avventura

author: Flavio G.

text:
Ciao a tutti gli avventurieri,

ho aggiornato il mio blog con le mie considerazioni sull'ultima avventura affrontata: Non sarà un'avventura, di Roberto Barabino.

Potete leggerla qui:

http://creepyfiction.blogspot.it/2015/05/non-sara-unavventura.html

Approfitto per informarvi inoltre che l'avventura testuale alla quale sto lavorando sta procedendo, ma è ancora presto per chiedere beta testing o altro.

Sono parecchio soddisfatto del lavoro svolto fin'ora, che è immenso. Per gli amanti di D&D sarà una bomba.

Flay


author: Diavolo dei crocicchi

text:
Accidenti, su quella at di Barabino ci sbattei il cranio l'estate scorsa, e poi purtroppo finì nel dimenticatoio.
Vorrà dire che la riprenderò in mano... e se rimarrò bloccato sarò a chi rivolgermi!

Sono ancora in attesa del progetto "alla D&D", e il fatto che tu ne sia soddisfatto fa salire la voglia di provarlo (e, senza vergogna alcuna, la voglia di metterti un po' di fretta!)

;)


text:
Grande! Penso che l'attesa verrà ricompensata, ma non mi voglio sbilanciare per ora. Il grosso problema adesso è trovare qualche spunto originale per la trama, perchè rileggendo il copione ho notato alcuni clichè triti e ritriti che ho inserito quasi senza volerlo, o perchè mancavano altre idee.

Le meccaniche di gioco invece ci sono quasi tutte. Spero di riuscire a postare presto qualcosa su ogi.

Per l'avventura di Barabino, sono qua, chiedi pure se hai bisogno, tieni conto però che nel file è presente anche una comoda soluzione.

Fidati, se hai tempo portala a termine, merita! in  erti punti, davvero, grasse risate!


author: Gyrev

text:
Il 22/06/2015 14:48, Flavio G. ha scritto:
> Grande! Penso che l'attesa verrà ricompensata, ma non mi voglio sbilanciare per ora. Il grosso problema
> adesso è trovare qualche spunto originale per la trama, perchè rileggendo il copione ho notato alcuni clichè
 > triti e ritriti che ho inserito quasi senza volerlo, o perchè
mancavano altre idee.
>
> Le meccaniche di gioco invece ci sono quasi tutte. Spero di riuscire a postare presto qualcosa su ogi.
>

Non aver paura di usare i cliche', se sono ben caratterizzati e
contestualizzati e servono a portare avanti il gioco nel modo giusto.
Secondo me a volte il voler essere troppo originali e innovativi
complica inutilmente le cose (anche per il giocatore).

Aspettiamo fiduciosi gli aggiornamenti!

Marco


text:

Col le versioni più nuove di windows frots l'avventura è irrisolvibile per un bug relativo a Nadia e al Ragno così come è stato discusso in vecchi post che ho visto. Qualcuno conosce la versione di windows frotz per cui tale bug non si verifica. Saluti Rino


text:
Il giorno domenica 24 maggio 2015 10:24:13 UTC+2, Flavio G. ha scritto:

Ho trovato una versione di windows frotz con cui l'avventua funziona.E' la 5.3 liberamente scaricabile al sito
inform-fiction.org/zmachine/windows.html
.
Saluti Rino


title: CAT2010: Altri screenshots!

author: Leonardo

text:
Nuovi screenshots di "Testudo!", un gioco per il "Concorso per
Avventure Testuali
(in italiano) 2010"
http://milleuna.sf.net/_testudo
"Testudo!" è un'avventura ambientata nell'antica Roma. La trama è già
abbastanza delineata, ma dovrò collocarla più avanti nel tempo (I
secolo d.C.) per avere a disposizione tutto l'immaginario antico-
romano che si pretende da un Kolossal di questo tipo. Quindi devo dire
addio agli elefanti di Annibale, anche se negli screenshots ce n'è
ancora traccia.
Ora sto lavorando ad un sistema automatico di generazione degli npc.
Una porzione dell'avventura si svolge in un accampamento romano ed il
sistema si occupa di creare abbastanza npc con caratteristiche
differenti (un paio di centurie) per rendere l'ambiente vario e
movimentato. Inform7 si presta piuttosto bene a queste necessità (a
mio giudizio) decisamente inusuali.
Per quest'altra settimana è (forse) tutto!
--
Ciao, Leo
Mille e Una Avventura
http://milleuna.sf.net


title: Richiesta di Betatester per Beyond (ita)

author: Paolo Lucchesi

text:
La versione italiana di Beyond e' pronta, ma manca una passata di beta  test. Se ci sono volontari, mi contattino in email, o scrivano a  <
beyon...@terradif.net
> tia|bye Paolo Lucchesi email: plucchesi(at)tin(dot)it


text:
Paolo Lucchesi wrote: > La versione italiana di Beyond e' pronta, ma manca una passata di beta  > test. > Se ci sono volontari, mi contattino in email, o scrivano a  > <
beyon...@terradif.net
> Venghino, siori, venghino, il beta-test che diverte, il beta-test che non e' pericoloso... Insomma, c'e' o non c'e' qualcuno disposto per quest'opera meritoria? Paolo Lucchesi email: plucchesi(at)tin(dot)it


author: merlin cocaio

text:
Paolo Lucchesi ha scritto:
> Insomma, c'e' o non c'e' qualcuno disposto per quest'opera meritoria?
Uhm.
Uhm, uhm.
Deduco che i volontari scarseggiano.
Uhm.
Io non avevo osato, temendo, con la mia poca esperienza, di non fornire
un valido apporto ad un compito di tale criticità qual è il
beta-testing... Ma, se la cosa non è discriminante fondamentale, manda
pure all'indirizzo in sovrimpressione...


author: Kinglion Il Meticcio

text:
"Paolo Lucchesi" <pluc...@NOSPAMtin.it> ha scritto nel messaggio
news:441810db$0$29729$4faf...@reader2.news.tin.it...
>> Se ci sono volontari, mi contattino in email, o scrivano a
>> <
beyon...@terradif.net
>
>
> Venghino, siori, venghino,
> il beta-test che diverte, il beta-test che non e' pericoloso...
>
> Insomma, c'e' o non c'e' qualcuno disposto per quest'opera meritoria?
Io ho mandato una email a beyond-test,  ma mi è tornata indietro...
Ciao,
Alessio (a.k.a. Kinglion Il Meticcio)


text:
Kinglion Il Meticcio wrote:
> Io ho mandato una email a beyond-test,  ma mi è tornata indietro...
Mmm... colpa mia...
Se qualcuno e' interessato scriva direttamente a me.
bye
--
Paolo Lucchesi
email: plucchesi(at)tin(dot)it


title: Domanda su inform

author: Ram

text:
Sto cercando di capire qualcosina di Inform e avrei una curiosità. Nei
vari programmi che ho giocato, inserendo il termine "g" ( o "l") viene
riproposta la descrizione di una stanza. Ho abbozzato un programmino
embrionale (che piu embrionale nn si può) ma inserendo quei termini mi
viene data la risposta "dove vuoi guardare?". Tra l’altro è la stessa
cosa che succede in "Avventura" dando lo stesso comando. Why???
Ciao.
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: Domanda su inform

text:
Ram wrote:
>
> Sto cercando di capire qualcosina di Inform e avrei una curiosità. Nei
> vari programmi che ho giocato, inserendo il termine "g" ( o "l") viene
> riproposta la descrizione di una stanza. Ho abbozzato un programmino
> embrionale (che piu embrionale nn si può) ma inserendo quei termini mi
> viene data la risposta "dove vuoi guardare?". Tra l’altro è la stessa
> cosa che succede in "Avventura" dando lo stesso comando. Why???
> Ciao.
Semplice... infit versione 1.0 è bacata... Si corregge semplicemente, ma
ora ti conviene forse aspettare la ormai imminente (speriamo) versione
2.0.
bye
--
Paolo Lucchesi
email:
pluc...@tin.it
homepage:
http://www.paololucchesi.it
ICQ# 731067
"Non viviamo in un mondo perfetto (per fortuna)"


title: Domanda su inform

text:
"Paolo Lucchesi" <
pluc...@tin.it
> ha scritto nel messaggio
news:3CEA4AD3...@tin.it...
> Ram wrote:
> >
> > Sto cercando di capire qualcosina di Inform e avrei una curiosità. Nei
> > vari programmi che ho giocato, inserendo il termine "g" ( o "l") viene
> > riproposta la descrizione di una stanza. Ho abbozzato un programmino
> > embrionale (che piu embrionale nn si può) ma inserendo quei termini mi
> > viene data la risposta "dove vuoi guardare?". Tra l'altro è la stessa
> > cosa che succede in "Avventura" dando lo stesso comando. Why???
> > Ciao.
>
> Semplice... infit versione 1.0 è bacata... Si corregge semplicemente, ma
> ora ti conviene forse aspettare la ormai imminente (speriamo) versione
> 2.0.
>
Ma che è?? Vi siete svegliati tutti ora?? Sono quasi due anni che è uscito
Infit 1.0 e ora che sto per rilasciare la nuova versione vi mettete tutti a
provarlo?? A parte Cordella e Caldarola che sono stati degli assidui
utilizzatori della mia email per segnalarmi errori vari e darmi consigli o
commenti, ho ricevuto pochissime altre sgnalazioni??
Bah, forse mi conviene rilasciare una versione beta di Infit 2, forse avrò
un test migliore sulle librerie. Meglio così comunque...
HAPPY INFORMING
Giovanni


title: Domanda su inform

text:
"Paolo Lucchesi" <
pluc...@tin.it
> wrote in message
news:3CEA4AD3...@tin.it
>  > > Semplice... infit versione 1.0 è bacata... Si corregge semplicemente, ma
> ora ti conviene forse aspettare la ormai imminente (speriamo) versione
> 2.0.
>
> bye
Grazie credo di aver risolto, ho "staccato" il comando guarda e il
comando g
sotto la libreria italianG.h.
Ora pare che se scrivo "g" mi restituisca la descrizione.



title: soluzione virtual inseminator

text:
AMICI AIUTATEMI A FINIRE VIRTUAL INSEMINATOR GRAZIE A TUTTI.......CIAO.....
bub...@libero.it


title: Ultraedit

author: glp

text:
Chi mi sa dire dove si puo trovare UltraEdit?
Grazie
glp


title: Ultraedit

author: Davide Orlandi

text:
On Fri, 11 Jun 1999 21:23:22 GMT,
gianl...@iname.com
 (glp) wrote:
>Chi mi sa dire dove si puo trovare UltraEdit?
E' su
www.ultraedit.com
 :)
Lo sto scaricando anch'io in questo momento...
(Ehm... mi rendo conto di essere OT, chiedo scusa)
Ciriciao,
  Davide


title: Dylan Dog Horror Park

author: Marco

text:
Ciao a tutti.
Vorrei chiedervi se potreste postarmi le soluzioni della nuova avventura di
Dylan Dog : Horror Park
Grazie mille (come dice Max).


title: Dylan Dog Horror Park

author: Macchianera

text:
Questo ng è dedicato SOLO alle avventure testuali.
Sei OT.
Macchianera.
______________________________________
La realtà è una retta da meno infinito a più infinito.
http://web.tiscalinet.it/macchianera/


title: Dylan Dog Horror Park

author: Inglese

text:
A che punto sei ?
Marco ha scritto nel messaggio <810t06$hmc$
1...@aquila.tiscalinet.it
>...



title: Red Hill aiuto! <spoiler>

author: Mox

text:
sono bloccato nella porta incastrata dell'ascensore all'ospedale....
come aspita faccio a uscirne?
e inoltre, nessuno sa come posso trovare Zork, uno qualsiasi? lo vorrei
proprio provare...
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: Red Hill aiuto! <spoiler>

author: Luca Bertaiola

text:
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Inserisci la mano nella fessura, prendi l'accetta e rompi l'ingresso



title: Red Hill aiuto! <spoiler>

text:
> Mox wrote:
>
>  e inoltre, nessuno sa come posso trovare
>> Zork, uno qualsiasi? lo vorrei
>> proprio provare...
Zork 1, 2 e 3 sono state rese freeware dall'Activi$ion come manovra
promozionale. Assieme a Hitchhikers' Guide to the Galaxy (i cui diritti
sono del mai troppo compianto D.Adams, che a sua volta l'ha resa
freeware) e forse a Shogun, sono quindi le uniche avventure Infocom
liberamente scaricabili.
Se pero' seguite la filosofia dall'abandonware, tutte le avventure
Infocom dei tempi d'oro vi rientrano appieno (visto che l'Activi$ion non
distribuisce piu' nemmeno i lost treasures).
Mi sono dilungato troppo: cerca qui:
http://www.infocom-if.org/
bye
--
Paolo Lucchesi
email:
pluc...@tin.it
homepage:
http://www.paololucchesi.it
"Non viviamo in un mondo perfetto (per fortuna)"


title: Inform 7: le mille e una... cosa che non capisco

author: pgsfredda

text:
Ciao a tutti.

Con questo post vorrei iniziare una micro serie di cose che non capisco
di Inform 7, sperando che qualcuno mi aiuti a capire meglio questo
linguaggio.

Premetto però alcune cose:

1.è da pochissimo che ho iniziato ad utilizzarlo "seriamente" e quindi
molte delle cose che non capisco sono sicuramente legate alla mia
inesperienza con questo linguaggio;

2.come sviluppatore sono sicuramente "fissato" con alcune cose;

3.la
 natura dichiarativa di questo linguaggio mi appassiona davvero
molto ma forse mi appassiona meno la sua implementazione troppo verbosa
e con troppe varianti sintattiche talvolta non equivalenti tra loro;

4.sto frequentando assiduamente il forum
intfiction.org

La prima cosa che non capisco è:

perché gli esempi riportati nei due manuali sono molto più complicati
delle cose che vuoi fare tu, rendendoli spesso incomprensibili
soprattutto negli aspetti che stai indagando?

pg


text:

Eccoci qua :-)
sviluppo con I7 ormai da un pò, e sto lavorando alla seconda avventura testuale. Ho passato un pò di tempo a studiare questo linguaggio. Non sono ancora un espertone, ma se posso essere d'aiuto volentieri.

Soltanto che forse non ho compreso bene la tua domanda: cosa intendi per "più complicati delle cose che vuoi fare tu?" hai in mente un esempio?


text:
Il 23/08/15 09:08, Flavio G. ha scritto:
> Il giorno sabato 22 agosto 2015 14:32:59 UTC+2, pgsfredda ha
> scritto:
>> Ciao a tutti.
>>
>>
>> La prima cosa che non capisco è:
>>
>> perché gli esempi riportati nei due manuali sono molto più
>> complicati delle cose che vuoi fare tu, rendendoli spesso
>> incomprensibili soprattutto negli aspetti che stai indagando?
>>
>> pg
>
> Eccoci qua :-) sviluppo con I7 ormai da un pò, e sto lavorando alla
> seconda avventura testuale. Ho passato un pò di tempo a studiare
> questo linguaggio. Non sono ancora un espertone, ma se posso essere
> d'aiuto volentieri.
>
> Soltanto che forse non ho compreso bene la tua domanda: cosa intendi
> per "più complicati delle cose che vuoi fare tu?" hai in mente un
> esempio?
>

Grazie Flavio G. per la risposta.

La domanda si riferiva ai tanti esempi che si trovano installati con
l'ambiente di sviluppo.

Sono tutti molto interessanti ma su alcuni temi, su cui ho meno
conoscenza, spesso molte cose risultano difficili da comprendere se non
si hanno chiare tutte le strutture sintattiche e quindi l'esempio
risulta inutile (ad esempio per le tabelle o per l'uso delle stringhe).

La domanda forse era anche un po' retorica.

Comunque ho ripreso in mano alcune guide tra cui quella anche tradotta
dal mitico Leonardo Boselli. Spero che, ora che conosco meglio il
linguaggio, rileggendo un po' di guide alcune cose mi si chiariscano.

Come diceva un mio collega anni fa: LFM (Leggi i Fottuti Manuali).

;-)

pg


text:

Si, ti capisco. Inform7 all'inizio ha lasciato un pò spaesato anche me, sopratutto dopo una piccola esperienza con I6, con il quale avevo iniziato a scrivere una piccola avventura.

Magari fai così se non lo stai già facendo: guarda il livello di difficoltà dell'esempio, riportato in alto in forma di stelle, gli esempi ad una stella servono il più delle volte a capire il meccanismo, quindi poi è più facile comprendere gli esempi più avanzati (tipo quelli delle tabelle, che ti confesso che anch'io non capisco ancora a fondo!)

Altro consiglio: riferisciti al "Inform recipe book", che è l'elenco dei tutorial a destra, colorato di giallo. Lì ci sono gli esempi suddivisi per contesto, e facilmente consultabili in base a ciò che vuoi fare. Io lo trovo molto comodo.

Ulteriore consiglio: in internet, sul sito di I7 si trovano dei source code:
http://inform7.com/learn/eg/rota/source.html

http://inform7.com/learn/eg/bronze/source.html

Te ne ho linkati due, ma ce ne sono altri.

...e nel caso ti serva un aiuto nel dettaglio, scrivi pure e se posso ti aiuterò volentieri.

F.


text: LFM... epico :-)


text:
Il 25/08/15 10:30, Flavio G. ha scritto:
> Il giorno domenica 23 agosto 2015 12:09:55 UTC+2, pgsfredda ha
> scritto:
>> Il 23/08/15 09:08, Flavio G. ha scritto:
>>> Il giorno sabato 22 agosto 2015 14:32:59 UTC+2, pgsfredda ha
>>> scritto:
>>>> Ciao a tutti.
>>>>
>>>>
>>>> La prima cosa che non capisco è:
>>>>
>>>> perché gli esempi riportati nei due manuali sono molto più
>>>> complicati delle cose che vuoi fare tu, rendendoli spesso
>>>> incomprensibili soprattutto negli aspetti che stai indagando?
>>>>
>>>> pg
>>>

>
> Si, ti capisco. Inform7 all'inizio ha lasciato un pò spaesato anche
> me, sopratutto dopo una piccola esperienza con I6, con il quale avevo
> iniziato a scrivere una piccola avventura.
>
> Magari fai così se non lo stai già facendo: guarda il livello di
> difficoltà dell'esempio, riportato in alto in forma di stelle, gli
> esempi ad una stella servono il più delle volte a capire il
> meccanismo, quindi poi è più facile comprendere gli esempi più
> avanzati (tipo quelli delle tabelle, che ti confesso che anch'io non
> capisco ancora a fondo!)
>
> Altro consiglio: riferisciti al "Inform recipe book", che è l'elenco
> dei tutorial a destra, colorato di giallo. Lì ci sono gli esempi
> suddivisi per contesto, e facilmente consultabili in base a ciò che
> vuoi fare. Io lo trovo molto comodo.
>
> Ulteriore consiglio: in internet, sul sito di I7 si trovano dei
> source code:
http://inform7.com/learn/eg/rota/source.html

>
http://inform7.com/learn/eg/bronze/source.html

>
> Te ne ho linkati due, ma ce ne sono altri.
>
> ...e nel caso ti serva un aiuto nel dettaglio, scrivi pure e se posso
> ti aiuterò volentieri.
>
> F.
>

Grazie mille! Preziosissimo.

Ulteriore documento molto interessante e ben orientato ai programmatori
spaesati è "Inform 7 - Programmer's Guide" scritto da Ron Newcomb.
Scritto proprio nell'ottica di ricondurre molti dei meccanismi propri di
I7 a quelli più classici e consolidati dei normali linguaggi di
programazione.

Aggiungo però una nota: coerentemente con la "verbosità" di I7 anche
tutte le guide che si trovano in giro sono ugualmente "verbose".
Ci sarà un perché... ;-)

pg


text:

Consiglio anche (e sopratutto) di leggerti l'inform handbook di Jim Aikin (aggiornato a maggio di quest'anno), documento che, partendo dalle basi, spiega in modo semplice e allo stesso tempo dettagliato come fare per x, proponendo codici estrapolati direttamente da alcune avventure, oppure nuovi. Il documento si suddivide per argomenti (stanze, oggetti, personaggi secondari, etc), io l'ho trovato molto comodo.

http://www.musicwords.net/if/I7Handbook6x9.pdf


title: Un "uovo di pasqua" in Inform 7!!!

author: Tristano

text:
Oggi, lavorando con Inform 7, ho scoperto un uovo di pasqua: Nella
finestra "errors", dopo aver compilato con successo, compare una palla
natalizia rossa.
In questi giorni avevo avuto modo di vedere l'uovo di pasqua di VLC,
che sotto natale mette un cappellino natalizio sull'icona del
programma, ma non sapevo che Inform 7 avesse anche lui il suo ovetto.


title: Un "uovo di pasqua" in Inform 7!!!

text:
E quando la compilazione va storta mostra la palla natalizia
fracassata!
Fico ...


title: [IBG] Appendice G tradotta

author: Paolo Vece

text:
Ho finito di tradurre l'appendice G dell'IBG: il glossario.
Che resta?
--
Paolo Vece -
pv...@inwind.it
 -
http://www.vece.net


title: [IBG] Appendice G tradotta

author: Vincenzo Scarpa

text:
On Wed, 13 Aug 2003 20:08:30 +0200, Paolo Vece <
pv...@inwind.it
>
wrote:
>Ho finito di tradurre l'appendice G dell'IBG: il glossario.
>
>Che resta?
Io, però purtroppo non posso aiutarti (il mio manuale basta e avanza).
Per quanto mi riguarda, ho invece quasi finito di scrivere il
paragrafo 3.6 e per l'inizio di settembre dovrei riuscire a mettere
online la nuova funzione getnumber che supporta i numeri da 0 a 32767.
Niente vacanze?
Ciao da
Vincenzo


title: [IBG] Appendice G tradotta

text:
"Vincenzo Scarpa" <
sca...@libero.it
> wrote:
> Niente vacanze?
Scherzi? Le vacanze fanno male alla salute e al portafoglio :)



title: [IBG] Appendice G tradotta

author: Dott. Piergiorgio

text:
Paolo Vece wrote:
> Scherzi? Le vacanze fanno male alla salute e al portafoglio :)
Concordo (Pero' ho la fortuna di vivere in una villa con un bel giardino in
cui troneggia un olmo sotto il quale c'è un fresco meraviglioso)
Saluti,
Dott. Piergiorgio.


title: [IBG] Appendice G tradotta

text:
On Thu, 14 Aug 2003 12:40:51 +0200, Paolo Vece <
pv...@inwind.it
>
wrote:
>"Vincenzo Scarpa" <
sca...@libero.it
> wrote:
>
>> Niente vacanze?
>
>Scherzi? Le vacanze fanno male alla salute e al portafoglio :)
Mah, in effetti anch'io sono per le vacanze economiche... :))
Ciao da
Vincenzo


title: [IBG] Appendice G tradotta

text:
On Thu, 14 Aug 2003 11:02:29 GMT, "Dott. Piergiorgio"
<
pg...@libero.it
> wrote:
>Paolo Vece wrote:
>
>> Scherzi? Le vacanze fanno male alla salute e al portafoglio :)
>Concordo (Pero' ho la fortuna di vivere in una villa con un bel giardino in
>cui troneggia un olmo sotto il quale c'è un fresco meraviglioso)
Accidenti a te. :-))
Non è che magari hai anche le ragazze hawaiane (o come diavolo si
scrive) che ti fanno aria col ventaglio?
Ciao da
Vincenzo


title: [IBG] Appendice G tradotta

text:
"Vincenzo Scarpa" <
sca...@libero.it
> wrote:
> Non č che magari hai anche le ragazze hawaiane (o come diavolo si
> scrive) che ti fanno aria col ventaglio?

Come minimo dovrebbe invitarci e offrirci la cena (e la colazione, ed il
pranzo, e la cena, e la colazione, ed il pranzo...)



title: [IBG] Appendice G tradotta

text:
On Fri, 15 Aug 2003 19:55:13 +0200, Paolo Vece <
pv...@inwind.it
>
wrote:
>"Vincenzo Scarpa" <
sca...@libero.it
> wrote:
>
>> Non è che magari hai anche le ragazze hawaiane (o come diavolo si
>> scrive) che ti fanno aria col ventaglio?
>
>Come minimo dovrebbe invitarci e offrirci la cena (e la colazione, ed il
>pranzo, e la cena, e la colazione, ed il pranzo...)
E il viaggio? Io abito a Torino, il biglietto del treno chi me lo
paga? :-)))))
Ciao da
Vincenzo


title: If adulte

author: Piergiorgio

text:
Rispondo contemporamente a Paolo Lucchesi e P.Zezza:
Scusatemi se vi rispondo contemporeaneamente, ma ho da sempre un
problema col Newsreader (Mozilla 0.6) che si rifiuta di inviare le reply
adducendo problemi vari....E solo su questo NG.....
Comunque venendo al sodo :
Per P.Lucchesi:
Mi sembri contraddittorio quando da un lato dici che non deve essere
pornografico, dall' altro lato vuoi SM & BD (se ho capito bene) Io penso
che il sesso sia soprattutto tenerezza ed intimità. Quindi al bando il
SM e similia, che considero (IMHO) perversioni.
Per P.L. Zezza:
Di "Moist" non mi e' piaciuta, appunto, ls conponente SM & BD. In ogni
caso ci gioco solo con Fanny, quando mi capita.
Un ' idea di fetish ce l' ho, ma e' abbastanza, diciamo, cosi'
"strutturale" nell' altra idea che ho per la monocamerale.
(hint: in quale singola stanza ci si chiude spesso? ;) )
Comunque, monocamerale o multicamerale che sia, il riferimento al
"gioco" di Manara e' , diciamo così, filosofico: il giocatore controlla
il personaggio (femminile) nella sua intimita' sessuale, eliminando
cosi', le complicazioni dell' interazioni coi NPC.
Per tutti e 2:
L' erotismo che penso di mettere e' soprattutto psicologico/intimista,
mettendo in primo piano le idee e le sensazioni della protagonista dell'
avventura.
Quello che contesto alla moderna società dello spettacolo (riferito a
tutti i media, dalla TV ai libri) e' che o censurano il sesso mettendoci
solo riferimenti castigati nelle storie, oppure sparando opere
pornografiche, degne solo del cesso.
La virtù, come sicuramente saprete se avete una certa età, sta nel
mezzo, cioè una sessualita' vissuta, sentita nell' intimo del proprio
corpo e della propria psiche.
Ho finito, e mi scuso se ad altri sembrera' OT oppure offensivo.
Saluti,
Piergiorgio.


title: If adulte

author: Paolo Lucchesi

text:
Piergiorgio wrote:
> Per P.Lucchesi:
> Mi sembri contraddittorio quando da un lato dici che non deve essere
> pornografico, dall' altro lato vuoi SM & BD (se ho capito bene)
C'era tanto di smiley infatti...
Non sono assolutamente appassionato di SM&BD, ma una battuta andava
fatta...
bye
--
Paolo Lucchesi
email:
pluc...@tin.it
homepage:
http://www.paololucchesi.it
ICQ# 731067
"Non viviamo in un mondo perfetto (per fortuna)"


title: [OT] Congratulazioni a Niccolai

text:
Congratulazioni a Giancarlo Niccolai per il coraggio ed il valore
dimostrato nell' affrontare la fossa dei matti inferociti chiamata ICOG
(it.cultura.orientale.giappone)
Gia' e' assalito da tutti i lati, ma si difende con Valore.
Saluti,
Dott. Piergiorgio.
P.s. Per Niccolai: se ti piace il Giappone, perche' non scrivi una bella
AT "Giapponese" ? apparte Katana.gam praticamente non c' è niente, a
parte IF che prendono in giro i luoghi comuni del Giappone....


title: [OT] Congratulazioni a Niccolai

author: Giancarlo Niccolai

text:
Dott. Piergiorgio wrote:

Ciao, Piergiorgio.
Ti ringrazio per il tuo sostegno [anche se una tua lettera di supporto su
ICOG sarebbe ancora più gradita;-)] .
Per l'AT giapponese, penso che potrei prendere l'idea in seria
considerazione; putroppo, ho una conoscenza non certo enciclopedica del
giapponese (conosco abbastanza a fondo la grammatica, che è la cosa che mi
intrippa in tutte le lingue, ma posso al più sostenere una conversazione
amichevole e leggere qualche semplice sito internet) né del giappone; ho
letto qualcosa, ma non ci sono mai stato.
Però, a ben pensarci, una AT su Miamoto Musashi non mi dispiacerebbe.
Sto finendo un linguaggio di programmazione che dovrebbe unire le
caratteristiche di Inform per la gestione delle AT con la potenza del
python. Mi mancano solo un paio di costrutti, e una minima libreria RTL per
avere un sistema davvero interessante, quindi potrei iniziare a scrivere
qualcosa questa settimana stessa.
Se hai qualche spunto...
Giancarlo.


title: [OT] Congratulazioni a Niccolai

author: Pink

text:
Giancarlo Niccolai ha scritto:
> Dott. Piergiorgio wrote:

> Ciao, Piergiorgio.




> Se hai qualche spunto...
> Giancarlo.
Bravo! Complimenti.
Hai imparato il giapponese da autodidatta?
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: [OT] Congratulazioni a Niccolai

text:
Il Mon, 06 Sep 2004 15:40:26 +0000, Giancarlo Niccolai ha scritto:
> Ti ringrazio per il tuo sostegno [anche se una tua lettera di supporto su
> ICOG sarebbe ancora più gradita;-)] .
Vedro' di farla, anche se e' noto che pochi la leggono....
Cmq, per quanto riguarda il tuo engine python, sembra un progetto
interessantissimo, quando rilascerai la beta saro' lietissimo di
sperimentarlo.
E ovviamente, mi auguro che insieme al world model in Italiano ne rilasci
anche uno in Inglese e vediamo che reazioni suscita in raif.....
Saluti,
Dott. Piergiorgio.


title: [OT] Congratulazioni a Niccolai

text:
Pink wrote:
>> Giancarlo.
>
> Bravo! Complimenti.
> Hai imparato il giapponese da autodidatta?
>
Parzialmente: all'università ho fatto due anni di business japanese; lì ho
imparato la parola wappuro... (word processor), e altri termini usati nel
mondo degli affari; i nostri docenti, tuttavia, erano più concentrati
nell'insegnarci come fare affari con in giapponesi, come non offenderli,
come condurre le trattative, una infarinatura di cultura generale... tutto
sommato fu un bel corso. Ma giapponese colloquiale 0; penso che avremmo
avuto dei problemi anche a chiedere le informazioni per strada: le forme
onorifiche e "colloquiali" erano totalmente tralasciate, (veniva insegnato
solo il "piano" la forma di cortesia "media", e qualcosa delle due
onorifiche) mentre guardando i film in giapponese mi sono reso conto che le
forme colloquiali, l'equivalente del nostro "dare del tu", sono spesso
usate anche fra "sconosciuti", se l'occasione è informale. Inoltre, senza
conoscere le forme base è difficile coniugare alcune forme verbali. Quindi
la scrittura e il giapponese più spicciolo li ho studiati da solo, su una
grammatica di "non mi ricordi chi", i 250 "essential kanji for everyday
living" e il corso in 99 lezioni dell'ASSIMIL. Ora come ora sono un poco
arrugginito... soprattutto sui kanji, ma quando hai le basi è facile
ripassare. Come per tutte le lingue, la cosa più difficile è entrare in una
mentalità diversa dalla tua, ma questo è un esercizio che il mio lavoro
(programmatore) mi ha portato a conoscere molto bene.
Gian.


title: [OT] Congratulazioni a Niccolai

text:
Dott. Piergiorgio wrote:
> Il Mon, 06 Sep 2004 15:40:26 +0000, Giancarlo Niccolai ha scritto:
>
>> Ti ringrazio per il tuo sostegno [anche se una tua lettera di supporto su
>> ICOG sarebbe ancora più gradita;-)] .
>
> Vedro' di farla, anche se e' noto che pochi la leggono....
>
> Cmq, per quanto riguarda il tuo engine python, sembra un progetto
> interessantissimo, quando rilascerai la beta saro' lietissimo di
> sperimentarlo.
>
Non è un "engine python"; si tratta di un linguaggio di programmazione
completo; per darti un idea spicciola è simile al python ed ha alcune delle
caratteristiche dell'Inform (ad esempio, l'oggetto "sender"). Entro poche
ore dovrei avere una beta. La prima applicazione "seria" che ci metterò su
è appunto la libreria per le AT, che starà al linguaggio come parserm.h sta
a Inform. Per quello mi potrebbe necessitare un'altra settimana.
> E ovviamente, mi auguro che insieme al world model in Italiano ne rilasci
> anche uno in Inglese e vediamo che reazioni suscita in raif.....
>
Ovviamente.
Cordiali saluti,
Giancarlo.


title: [OT] Congratulazioni a Niccolai

author: saintpumpkin

text:
Dott. Piergiorgio wrote:

Anche io adoro il Giappone... e manco sapevo di quel newsgroup.


title: [OT] Congratulazioni a Niccolai

text:
Giancarlo Niccolai wrote:
>
> Sto finendo un linguaggio di programmazione che dovrebbe unire le
> caratteristiche di Inform per la gestione delle AT con la potenza del
> python. Mi mancano solo un paio di costrutti, e una minima libreria RTL per
> avere un sistema davvero interessante, quindi potrei iniziare a scrivere
> qualcosa questa settimana stessa.
>
Bava alla bocca.
>
> Giancarlo.
>


title: [OT] Congratulazioni a Niccolai

author: Stefano Gaburri

text:
saintpumpkin wrote:

Per curiosità, perché non hai fatto tutto in python? Dopotutto lo stesso
Inform non ha nulla in sé che faciliti l'applicazione alle AT, il
supporto sta tutto nelle librerie... e pensa come sarebbe facilmente
estendibile ( e portabile!) se fosse python puro...
ciao
S
PS peraltro qualcuno aveva già fatto qualcosa, sotto il nome PAWS, però
non so che fine ha fatto... temo sia stato tutto abbandonato


title: [OT] Congratulazioni a Niccolai

text:
Giancarlo Niccolai wrote:
> Non è un "engine python"; si tratta di un linguaggio di programmazione
> completo; per darti un idea spicciola è simile al python ed ha alcune delle
> caratteristiche dell'Inform (ad esempio, l'oggetto "sender"). Entro poche
> ore dovrei avere una beta. La prima applicazione "seria" che ci metterò su
> è appunto la libreria per le AT, che starà al linguaggio come parserm.h sta
> a Inform. Per quello mi potrebbe necessitare un'altra settimana.
Complimenti, Giancarlo...
Sono estremamente curioso. Si puo' vedere qualcosa? Un po' di
documentazione? Qualche specifica? Qualche esempio di codice?
(arf..arf..)
bye
--
Paolo Lucchesi
email: plucchesi(at)tin(dot)it
home page:
http://www.paololucchesi.it


title: [OT] Congratulazioni a Niccolai

author: Kyoba

text:
saintpumpkin <
saintpu...@katamail.com
> wrote in message news:<
2q3tugF...@uni-berlin.de
>...
> Anche io adoro il Giappone... e manco sapevo di quel newsgroup.
Non so quello, ma ricordo it.cultura.linguistica.giapponese in cui si
parlava non solo di lingua e QUALUNQUE COSA POSTAVI il 25% degli
utenti non era d'accordo, il 50% ti aggrediva, il 40% ti insultava.
-_-
Il restante 10% non aveva capito il post :P


title: [OT] Congratulazioni a Niccolai

text:
Paolo Lucchesi wrote:
> Giancarlo Niccolai wrote:
>
>> Non è un "engine python"; si tratta di un linguaggio di programmazione
>> completo; per darti un idea spicciola è simile al python ed ha alcune
>> delle caratteristiche dell'Inform (ad esempio, l'oggetto "sender"). Entro
>> poche ore dovrei avere una beta. La prima applicazione "seria" che ci
>> metterò su è appunto la libreria per le AT, che starà al linguaggio come
>> parserm.h sta a Inform. Per quello mi potrebbe necessitare un'altra
>> settimana.
>
> Complimenti, Giancarlo...
> Sono estremamente curioso. Si puo' vedere qualcosa? Un po' di
> documentazione? Qualche specifica? Qualche esempio di codice?
> (arf..arf..)
>
Uhm; per ora ho solo qualche esempio di codice + un po' di assembly:
/*
   Haste test suite
   Class tests
   $Id: class.hst,v 1.6 2004/09/06 01:28:51 gian Exp $
*/
class TestClass(param) from BaseClass
   printl( "TestClass Initialization" )
   self.prop1 = "hi"
   self.prop2 = param +  self.prop1
   printl( "Test class initialization:", param )
   function reset( param )
      self.prop0 = param
      self.prop1 = param
      self.prop2 = param
   end
   function inspect()
      printl( "TestClass values:", self.prop1, self.prop2 )
      print( "Self object: " ); inspect( self )
      print( "Sender object: " ); inspect( sender )
      // Go with the base class instance
      self.BaseClass.inspect()
   end
end
function cool()
   // Uhm, let's hope our object has a prop0
   printl("FROM COOL: ", self.prop1 )
end
instance = TestClass( "initial" )
instance.inspect()
instance.reset( "reset" )
instance.inspect()
instance.BaseClass.inspect()
instance.prop0 = cool
testvar = instance.prop0
testvar()
E ANCORA:
/*
   Haste test suite
   Mimimal stateful function tests
   $Id: state.hst,v 1.2 2004/08/27 02:07:58 gian Exp $
*/
function stateless( param )
   printl( "A stateless function", param )
end
function stateful( param )
   printl( "A stateful function:", param )
   state st1 = "first"
      printl( "A state with value:", param  )
      /*
         The first time, when called with begin, the value is the one of the
         target state (st2); but as it is not given, the value is defaulted
         to this state value that is "first". This is the Moore mode
      */
      if param = "Begin": leave st2
      // From that point on, we set the value in the transition (Mealy
mode).
      leave st2 = param
   state st2
      printl( "A state without a value:", param )
      // the function need to know its name.
      printl( "Value is", stateful.value )
      enter st1
end
enter st1 stateful( "Begin" )
printl( "Stateful returned - value:", stateful.value )
stateful( "one" )
printl( "Stateful returned - value:", stateful.value )
stateful( "two" )
printl( "Stateful returned - value:", stateful.value )
stateful( "three" )
printl( "Stateful returned - value:", stateful.value )
stateful( "four" )
printl( "Stateful returned - value:", stateful.value )
----
Oltre a questo, il linguaggio supprota la gestione delle eccezioni, il
caricamento di moduli binari o in haste, i cicli while, for e foreach gli
array associativi e molto altro.
Credo che stasera stessa potrei avere un primo compilatore stand-alone.
Gian.


title: [OT] Congratulazioni a Niccolai

text:
Stefano Gaburri wrote:
>
>
> saintpumpkin wrote:
>
>> Giancarlo Niccolai wrote:
>>
>>>
>>> Sto finendo un linguaggio di programmazione che dovrebbe unire le
>>> caratteristiche di Inform per la gestione delle AT con la potenza del
>>> python. Mi mancano solo un paio di costrutti, e una minima libreria
>>> RTL per
>>> avere un sistema davvero interessante, quindi potrei iniziare a scrivere
>>> qualcosa questa settimana stessa.
>
>
> Per curiosità, perché non hai fatto tutto in python? Dopotutto lo stesso
La mia prima necessità era creare un linguaggio embeddabile in una
applicazione; tale applicazione doveva essere "configurabile" con script
che ne gestivano i diversi "agenti", ma il python è troppo "potente": ad
esempio, non è possibile escludere la funzionalità di accesso ai file senza
modificarlo pesantemente.
Inoltre il python mancava di molte feature di cui avevo bisogno.
Infine il python era troppo lento e avevo bisogno di uno scripting language
molto più performante per sostituire i miei lavori che non necessitano di C
puro con qualche script. Questo include anche alcune applicazioni server di
basso profilo.
Insomma, non è che ho scritto un linguaggio per fare le AT. INCIDENTALMENTE,
siccome ci TENGO a scrivere AT, e non voglio continuare a scriverle in un
linguaggio limitato come Inform, ho scritto un linguaggio per ALTRI scopi
ma tenendo ben presente le necessità delle AT; che fra l'altro sono anche
un modello per altri tipi di problemi "più seri", come ad esempio la
modellazione di agenti a stati.
Appena ho un compilatore multipiattaforma stand-alone (questione di ore,
oramai) e un minimo set di librerie I/O posto qualcosa.
Gian.
Infine


title: [OT] Congratulazioni a Niccolai

text:
Giancarlo Niccolai wrote:
>
> Uhm; per ora ho solo qualche esempio di codice + un po' di assembly:
>
Scusa, mancava l'assembly.
; ------------------------------------------------
; Haste ASM source
; for module unnamed
; ------------------------------------------------
.module unnamed
; ============
; Entry point
; ============
.entry
.func stateless
.func stateful
.extern printl
        .set_state      $stateful, "st1"
        PUSH    "Begin"
        CALL    1, $stateful
        PUSH    "Stateful returned - value:"
        LDP     $stateful, "value"
        PUSH    A
        CALL    2, $printl
        PUSH    "one"
        CALL    1, $stateful
        PUSH    "Stateful returned - value:"
        LDP     $stateful, "value"
        PUSH    A
        CALL    2, $printl
        PUSH    "two"
        CALL    1, $stateful
        PUSH    "Stateful returned - value:"
        LDP     $stateful, "value"
        PUSH    A
        CALL    2, $printl
        PUSH    "three"
        CALL    1, $stateful
        PUSH    "Stateful returned - value:"
        LDP     $stateful, "value"
        PUSH    A
        CALL    2, $printl
        PUSH    "four"
        CALL    1, $stateful
        PUSH    "Stateful returned - value:"
        LDP     $stateful, "value"
        PUSH    A
        CALL    2, $printl
        END
; ------------------------------------------------
; Function stateless
; ---------------------------------------------
.funcdef stateless
.param  param
        PUSH    "A stateless function"
        PUSH    $param
        CALL    2, $printl
        RET
; Function end
.endfunc
; ------------------------------------------------
; Function stateful
; ---------------------------------------------
.funcdef stateful
.param  param
        PUSH    "A stateful function:"
        PUSH    $param
        CALL    2, $printl
        LDPB    $stateful, 1
        .switch B
                .case   "st1", _stateful_state_st1
                .case   "st2", _stateful_state_st2
        .end_switch
        RET
_stateful_state_st1:
        PUSH    "first"
        STP     $stateful, 2
        PUSH    "A state with value:"
        PUSH    $param
        CALL    2, $printl
        EQ      $param, "Begin"
        IFF     A, _branch_0
_branch_ok_0:
        .set_state      $stateful, "st2"
        RET
_branch_0:
        .set_state      $stateful, "st2"
        LD      A, $param
        PUSH    A
        STP     $stateful, 2
        RETVAL
_stateful_state_st2:
        PUSH    "A state without a value:"
        PUSH    $param
        CALL    2, $printl
        PUSH    "Value is"
        LDP     $stateful, "value"
        PUSH    A
        CALL    2, $printl
        .set_state      $stateful, "st1"
        JMP     _stateful_state_st1
        RET
; Function end
.endfunc
; ------------------------------------------------
; End of listing
; ------------------------------------------------
Per il momento, il compilatore compila in assembly; quindi l'assemblatore
genera il bytecode. In fine, un runner (interprete) esegue il bytecode.
Appena ho finito l'ultimo pezzo del sistema base che mi manca (il sistema
riflessivo di gestione degli errori) integro questo processo in un unico
programma, di modo che si possa scrivere come col python
haste programma.hst
e vedere il programma girare.
Gian.


title: [OT] Congratulazioni a Niccolai

text:
Kyoba wrote:

Argh


title: [OT] Congratulazioni a Niccolai

author: Giovanni Riccardi

text:
Paolo Lucchesi wrote:
> Complimenti, Giancarlo...
> Sono estremamente curioso. Si puo' vedere qualcosa? Un po' di
> documentazione? Qualche specifica? Qualche esempio di codice?
Confermo che il linguaggio ideato da Giancarlo è veramente interessante.
Giancarlo, appena ho un po' di tempo libero mi leggo bene quello che mi
hai mandato e ti faccio un po' di domande e commenti.
Giovanni
--
Giovanni Riccardi
personal:
http://www.composizioni.net
   weblog:
http://www.composizioni.net/addv
     work:
http://www.anxur.it


title: [OT] Congratulazioni a Niccolai

author: Enrico Colombini

text:
Giancarlo Niccolai wrote:
> La mia prima necessità era creare un linguaggio embeddabile in una
> applicazione; tale applicazione doveva essere "configurabile" con script
> che ne gestivano i diversi "agenti", ma il python è troppo "potente": ad
> esempio, non è possibile escludere la funzionalità di accesso ai file
 > senza modificarlo pesantemente.
Perche' non Lua? (lo so, e' un po' tardi)
   .Erix.


title: [OT] Congratulazioni a Niccolai

text:
saintpumpkin <
saintpu...@katamail.com
> wrote in message news:<
2q66nnF...@uni-berlin.de
>...
> > Non so quello, ma ricordo it.cultura.linguistica.giapponese in cui si
> > parlava non solo di lingua e QUALUNQUE COSA POSTAVI il 25% degli
> > utenti non era d'accordo, il 50% ti aggrediva, il 40% ti insultava.
> > -_-
> > Il restante 10% non aveva capito il post :P
> Argh
Dovevo essere molto rincoglionito quando ho scritto 'sto post... Non
tornano i conti -_- :D


title: [OT] Congratulazioni a Niccolai

text:
Enrico Colombini wrote:

Era proprio a LUA che ci eravamo rivolti inizialmente. Ma purtroppo, lo
abbiamo trovato limitante per le seguenti caratteristiche.
1) Nonostante "sostengano" che il sistema funziona in multithreading,
abbiamo scoperto che sarebbe stato assai difficile far funzionare la loro
VM in un multithreading vero, o lanciare thread fisici dall'interno della
VM. Questo l'ho verificato io stesso.
2) Il supporto delle "coroutine", ossia dei thread logici "leggeri"
interamente gestiti dalla macchina virtuale, era una delle feature che ci
interessavano di più; ma un nostro collaboratore, estremamente esperto
nella scrittura di sistemi a coroutine (ha anche scritto una libreria e ha
collaborato ad un paio di queste cosette nei luoghi in cui lavora) ci ha
segnalato che c'erano alcuni problemi concettuali di base; un uso spinto
avrebbe potuto essere problematico.,
3) L'embedabilità, seppur migliore che nel python e nel perl, non era ancora
abbastanza spinta: per "ridurre" alcune funzionalità di base sarebbe stato
necessario modificare parte del motore interno.
4) Lua è scritto in C (come del resto tutti i linguaggi VM). Niente di male,
ma tutti noi preferivamo il C++; fra l'altro, il C++ permette una più
semplice gestione della memoria e ottimizzazioni di compilazione più
spinte.
5) La licenza di LUA non è free. Non può essere usato per applicazioni
commerciali senza un accordo con la società che detiene il copyright.
Lua in se' poteva andare, tutti questi problemi, unito al fatto che la
grammatica di LUA non ci piaceva e che, a parte le coroutine, LUA non
offriva alcuna feature "speciale", nessun plus rispetto agli altri
linguaggi, abbiamo pensato di scrivere un linguaggio nostro. O meglio, ho
pensato.
Inoltre, c'è un problema di base ad usare un progetto open source se sei
costretto ad "adattarlo". Se puoi collaborare con gli autori, bene; ma se
hai bisogno di aggiungere feature che possono "appesantire" il sistema in
cambio di un beneficio che solo pochi noteranno; quindi sei
"automaticamente" costretto a farti in casa le tue modifiche. Ma un
prodotto open source si evolve costantemente, e hai sempre necessità di
restare aggiornato. Questo si traduce in un lavoro aggiuntivo, piuttiosto
tedioso e ... uhm... scoglionante ;-) di riedizione manuale delle modifiche
che mano a mano si accumulano da una parte (gli sviluppatori originali) e
dall'altra (la tua versione). Quindi, quando hai bisogno di qualcosa di
pesantemente personalizzato, nel modo OS, fai prima a creare qualcosa di
tuo e a vedere se c'è interesse per la tua idea. Questo è comunque un
problema secondario, ma unito alle cinque considerazioni di cui sopra, e
unito al fatto che la grammatica del lua non ci piaceva (ma badate, questo
non è determinate), ho pensato di fare qualcosa di meglio, e le persone che
collaborano con me sul progetto per cui questo linguaggio è stato pensato
sono state entusiaste, e mi stanno dando una mano.
Per quanto riguarda le AT, devo ammettere che il LINGUAGGIO inform mi è
sempre piaciuto. Implementa alcune caratteristiche del modello OOP che sono
state snobbate dagli altri (maliziosamente, io credo per incapacità o
semplicemente per "rilassatezza"). Ha anche alcuni operatori fighi
(provides) e uno degli switch() più potenti che ci siano in giro. Pensate
che nella guida al python, l'autore ( Il BDL Guido Van Rossum) commenta che
siccome il python ha il costrutto if .. elif ... endif non ha bisogno dello
switch. Ridicolo. Come dire che siccome il C ha il while, non ha bisogno
del for. Poi vado matto per gli attributi (anche se sto cercando di
inventarmi un modo meno "limitante" per implementarli, e ancora non mi è
venuto niente in mente). Il supporto al parser, ossia "Verb" e famiglia,
non è "eccezionale", solo molto comodo nel suo contesto. Anche gli
operatori di disgiunzione del valore (and/or) sono graziosi: in tutti i
linguaggi devi scrivere
        if (a == b /OR/ a == c )
mentre in inform puoi scegliere se usare questa forma (con l'operatore ||) o
usare la disgiunzione di valore:
        if (a == b or c)
Trovo che sia una bella pensata, anche se per il momento (e solo per il
momento) ho deciso di non implementarla.
Il suo problema non è tanto la grammatica, quanto il target. Ossia, il fatto
che troppi aspetti della sua grammatica sono legati alla compilazione su
Z-Machine; quindi ad una macchina virtuale dotata anche di I/O virtuali.
Non scendo nei dettagli, ma purtroppo, quando programmo in inform mi sento
in una "gabbia". Non posso davvero fare tutto quello che voglio, posso SOLO
scrivere una AT, e questo è seccante. E poi mi mancano alcune cose
"moderne" alle quali non voglio rinuciare: gli array associativi e la
gestione delle eccezioni, ad esempio.
Infine, ho fatto una scelta molto europea. E' da quando ho quattordici anni,
ossia dalla prima volta che ho messo mano al C, che ho per sogno nel
cassetto un linguaggio che non richiede parentesi graffe. Sì, lo sò è una
cretinata... ma che ci volete fare! Avete notato che il python non usa
quasi mai le parentesi graffe? Sono utilizzate solo per i dizionari, e i
dizionari sono EVIDENTEMENTE un add on pensato da qualcuno che non era
certo l'autore originale. Perché? Semplice, perché la parentesi graffa
manca anche dalle tastiere olandesi.
Beh, tagliando corto, ho pensato di unire l'utile al dilettevole: se devo
creare un linguaggio, che sia un linguaggio che ha anche costrutti che mi
consentano di 1) scrivere facilmente AT, 2) usano i concetti "estesi" di
OOP che sono molto utili nelle AT.
Sono alle prese con le fasi finali del compilatore... more in my next ;-)
Giancarlo.


title: [OT] Congratulazioni a Niccolai

text:
Kyoba wrote:

Non è detto: se parte degli utenti che ti aggredivano ti insultavano
pure... ;-)
Gian.


title: [OT] Congratulazioni a Niccolai

author: Pedonzolo

text:
Giancarlo Niccolai ha scritto:
> La mia prima necessità era creare un linguaggio embeddabile in una
> applicazione; tale applicazione doveva essere "configurabile" con script
> che ne gestivano i diversi "agenti", ma il python è troppo "potente": ad
> esempio, non è possibile escludere la funzionalità di accesso ai file senza
> modificarlo pesantemente.
come no? rexec dovrebbe fare proprio questo...
> Inoltre il python mancava di molte feature di cui avevo bisogno.
e quali sarebbero?
> Infine il python era troppo lento e avevo bisogno di uno scripting language
> molto più performante per sostituire i miei lavori che non necessitano di C
> puro con qualche script. Questo include anche alcune applicazioni server di
> basso profilo.
Daccordo, è un linguaggio interpretato, ma è davvero molto semplice da
imparare (io ho imparato leggendo il python tutorial)
> Insomma, non è che ho scritto un linguaggio per fare le AT. INCIDENTALMENTE,
> siccome ci TENGO a scrivere AT, e non voglio continuare a scriverle in un
> linguaggio limitato come Inform, ho scritto un linguaggio per ALTRI scopi
> ma tenendo ben presente le necessità delle AT; che fra l'altro sono anche
> un modello per altri tipi di problemi "più seri", come ad esempio la
> modellazione di agenti a stati.
>
> Appena ho un compilatore multipiattaforma stand-alone (questione di ore,
> oramai) e un minimo set di librerie I/O posto qualcosa.
Vabeh, se hai già quasi finito...
Pedonzolo


title: [OT] Congratulazioni a Niccolai

text:
Pedonzolo wrote:
> Giancarlo Niccolai ha scritto:
>> La mia prima necessità era creare un linguaggio embeddabile in una
>> applicazione; tale applicazione doveva essere "configurabile" con script
>> che ne gestivano i diversi "agenti", ma il python è troppo "potente": ad
>> esempio, non è possibile escludere la funzionalità di accesso ai file
>> senza modificarlo pesantemente.
>
> come no? rexec dovrebbe fare proprio questo...
I file sono ITEM riconosciuti nella VM. Se vuoi escludere la possibilità di
usare i file, devi cambiare la VM.
>
>> Inoltre il python mancava di molte feature di cui avevo bisogno.
>
> e quali sarebbero?
Coroutine. Multithreading (è limitato). Embeddabilità. L'oggetto "sender".
Le variabili class-wide. La possibilità di caricare moduli di estensione
binari in modo "seamless" a quelli non binari. La possibilità di eseguire
direttamente bytecode precompilato senza avere a disposizione il sorgente.
E molto altro, ma non voglio tediarti.
>
>> Infine il python era troppo lento e avevo bisogno di uno scripting
>> language molto più performante per sostituire i miei lavori che non
>> necessitano di C puro con qualche script. Questo include anche alcune
>> applicazioni server di basso profilo.
>
> Daccordo, è un linguaggio interpretato, ma è davvero molto semplice da
No, è un bytecode. Ma io mi riferisco alla lentezza rispetto agli altri
linguaggi bytecode. Ad esempio, perl è circa due volte più veloce del
python, e LUA circa tre volte. .Net e java non fanno testo (sono circa
cento volte più veloci di questi linguaggi, in termini di VM pura, non in
termini di tempo complessivo di esecuzione dei progrmmi) perché la loro VM
è "tipizzata". Non spiego nel dettaglio, ma ti basti sapere che gran parte
del lavoro che la VM deve fare con uno scripting language tipo perl o
python, con .NET o con la JVM è il programmatore a doverlo fare.
> imparare (io ho imparato leggendo il python tutorial)
Anche haste. Ho scritto haste perché chiunque, anche chi non ha la minima
esperienza in campo di programmazione, possa apprenderlo in meno di un ora.
In realtà, penso di essere riuscito nell'impresa di rendere haste più
semplice del python.
Gian.


title: [OT] Congratulazioni a Niccolai

text:
Giancarlo Niccolai wrote:
> 1) Nonostante "sostengano" che il sistema funziona in multithreading,
> abbiamo scoperto che sarebbe stato assai difficile far funzionare la loro
> VM in un multithreading vero
Ultimamente se n'e' discusso parecchio nella lista del Lua (purtroppo
non ho avuto il tempo di seguire).
> ma un nostro collaboratore, estremamente esperto
> nella scrittura di sistemi a coroutine (ha anche scritto una libreria e ha
> collaborato ad un paio di queste cosette nei luoghi in cui lavora) ci ha
> segnalato che c'erano alcuni problemi concettuali di base; un uso spinto
> avrebbe potuto essere problematico.
Strano, Lua e' usato in giochi commerciali piuttosto grossi con uso
intensivo delle coroutine.
> 4) Lua è scritto in C (come del resto tutti i linguaggi VM). Niente di
 > male, ma tutti noi preferivamo il C++
Si compila comunque anche in C++ (ma immagino non sia questo che intendi).
> 5) La licenza di LUA non è free. Non può essere usato per applicazioni
> commerciali senza un accordo con la società che detiene il copyright.
Certo che puo' essere usato, l'ho fatto anch'io!
L'unica condizione e' che bisogna citare il copyright degli autori e
un altro paio di informazioni.
> unito al fatto che la grammatica di LUA non ci piaceva
OK, vedo che abbiamo opinioni piuttosto diverse in merito :-)
 > Ma un prodotto open source si evolve costantemente, e hai sempre
 > necessità di restare aggiornato.
Tragicamente vero. Quanto sopra non era per contestare la tua valida
scelta, ma a puro titolo informativo.
Ti leggo nel pensiero se suppongo che, come me, tu sia uno di quelli a
cui piace costruire e controllare l'intero universo, a partire dalle
fondamenta, in modo che funzioni sempre come dovrebbe? :-)
   .Erix.


title: [OT] Congratulazioni a Niccolai

text:
Il Tue, 07 Sep 2004 08:07:31 -0700, Kyoba ha scritto:
> Non so quello, ma ricordo it.cultura.linguistica.giapponese in cui si
> parlava non solo di lingua e QUALUNQUE COSA POSTAVI il 25% degli
> utenti non era d'accordo, il 50% ti aggrediva, il 40% ti insultava.
> -_-
> Il restante 10% non aveva capito il post :P
E difatti ICOG e' dove si sono spostati adesso questi tipi, ma cmq e' un
NG ben più vivibile di, diciamo, IPI.
Saluti,
Dott. Piergiorgio.


title: [OT] Congratulazioni a Niccolai

text:
Enrico Colombini wrote:
>
>> ma un nostro collaboratore, estremamente esperto
>> nella scrittura di sistemi a coroutine (ha anche scritto una libreria e
>> ha collaborato ad un paio di queste cosette nei luoghi in cui lavora) ci
>> ha segnalato che c'erano alcuni problemi concettuali di base; un uso
>> spinto avrebbe potuto essere problematico.
>
> Strano, Lua e' usato in giochi commerciali piuttosto grossi con uso
> intensivo delle coroutine.
A dire del nostro collaboratore, in tutti i casi chi ha "comprato" il LUA ci
ha rimesso le mani. Non nel senso "le ha perse", nel senso che se lo è
adattato alle sue necessità, perché la versione "base" non è adeguata. Non
stento a crederlo; non ho guardato io personalmente le coroutine, ma quel
poco che ho visto non mi è piaciuto. Ad esempio, se dovessi scriptare i
tuoi puppet in UT2004 con LUA, cosa ti impedirebbe di lanciare un milione
di coroutine?
>
>> 4) Lua è scritto in C (come del resto tutti i linguaggi VM). Niente di
>  > male, ma tutti noi preferivamo il C++
>
> Si compila comunque anche in C++ (ma immagino non sia questo che intendi).
Esatto :-)
>
>> 5) La licenza di LUA non è free. Non può essere usato per applicazioni
>> commerciali senza un accordo con la società che detiene il copyright.
>
> Certo che puo' essere usato, l'ho fatto anch'io!
> L'unica condizione e' che bisogna citare il copyright degli autori e
> un altro paio di informazioni.
Per usi commerciali è richiesto un "contatto diretto" con gli autori. Per
usi accademici, didattici e non commerciali (e.g. GPL) no. Oltre ad essere
scritto sul sito del lua, questo nostro amico ha dovuto "comprare" il lua,
come ti dicevo. Si tratta di una cifra assolutamente modica, pressoché
simbolica, mi è stato detto, tuttavia...
(non so se hanno cambiato politica dalla versione 5, ma mi pare di ricoradre
di aver letto la licenza di recente).
>
>> unito al fatto che la grammatica di LUA non ci piaceva
>
> OK, vedo che abbiamo opinioni piuttosto diverse in merito :-)
>
>  > Ma un prodotto open source si evolve costantemente, e hai sempre
>  > necessità di restare aggiornato.
>
> Tragicamente vero. Quanto sopra non era per contestare la tua valida
> scelta, ma a puro titolo informativo.
> Ti leggo nel pensiero se suppongo che, come me, tu sia uno di quelli a
> cui piace costruire e controllare l'intero universo, a partire dalle
> fondamenta, in modo che funzioni sempre come dovrebbe? :-)
>
Eh sì. In particolare quando dalle fondamenta dipende il successo di un
sistema...
Gian.


title: [OT] Congratulazioni a Niccolai

text:
Giancarlo Niccolai wrote:
> Per usi commerciali è richiesto un "contatto diretto" con gli autori.
Forse era una vecchia versione. Attualmente la licenza e' pure listata
tra quelle open source.
   .Erix.


title: [OT] Congratulazioni a Niccolai

text:
"Dott. Piergiorgio" <dott.pierg...@fastwebnet.itKAGA> wrote:
> Saluti,
> Dott. Piergiorgio.
Piergiorgio, scusa se rompo nel newsgroup, ma ti è arrivato il mio
messaggio? Ultimamente ho problemi di invio/ricezione posta.
--
Paolo Vece -
pv...@mclink.it
 -
http://www.vece.net


title: [OT] Congratulazioni a Niccolai

text:
Il Thu, 09 Sep 2004 19:52:45 +0200, Paolo Vece ha scritto:
> Piergiorgio, scusa se rompo nel newsgroup, ma ti è arrivato il mio
> messaggio?
Si ricevuto, ti inviero' il "materiale" appena mi e' possibile.
Dettagli in prv, ma non adesso.....
Saluti,
Dott. Piergiorgio.


title: [OT] Congratulazioni a Niccolai

text:
"Giancarlo Niccolai" <
No...@nothing.org
> wrote:
> instance = TestClass( "initial" )
Quindi l'istanza di un oggetto si crea senza un new?



title: [OT] Congratulazioni a Niccolai

text:
Paolo Vece wrote:
> "Giancarlo Niccolai" <
No...@nothing.org
> wrote:
>
>> instance = TestClass( "initial" )
>
> Quindi l'istanza di un oggetto si crea senza un new?
>
Sì. La classe è uno degli oggetti "callable". Le altre sono le funzioni
interne, quelle esterne e i metodi. Chiamando un oggetto di tipo classe, la
macchina virtuale istanzia un oggetto di default e quindi lo passa al
costruttore della classe per l'inizializzazione. Nella definizione della
classe possono essere listate altre classi da qui questa eredita, e la
macchina virtuale chiama i loro costruttori formando l'oggetto poco alla
volta.
Gian.


title: [OT] Congratulazioni a Niccolai

text:
"Giancarlo Niccolai" <
No...@nothing.org
> wrote:
> Sě. La classe č uno degli oggetti "callable". Le altre sono le funzioni
> interne, quelle esterne e i metodi. Chiamando un oggetto di tipo classe, la
> macchina virtuale istanzia un oggetto di default e quindi lo passa al
> costruttore della classe per l'inizializzazione.
Quindi posso usare una classe anche senza assegnarla ad una variabile di
istanza?



title: [OT] Congratulazioni a Niccolai

text:
Paolo Vece wrote:
> "Giancarlo Niccolai" <
No...@nothing.org
> wrote:
>
>> Sì. La classe è uno degli oggetti "callable". Le altre sono le funzioni
>> interne, quelle esterne e i metodi. Chiamando un oggetto di tipo classe,
>> la macchina virtuale istanzia un oggetto di default e quindi lo passa al
>> costruttore della classe per l'inizializzazione.
>
> Quindi posso usare una classe anche senza assegnarla ad una variabile di
> istanza?
>
Ovviamente; puoi ad esempio passare l'oggetto classe ad una funzione (anche
esterna /scritta in C++) per farne quello che vuoi. Ad esempio:
class MyClass
...
end
function realize( a_class )
        return a_class( "some", "params" )
end
o = realize( MyClass )
istanzierà la classe come se avessi chiamato MyClass( "some", "params" )
Come in Inform, sarà possibile anche il contrario: creare oggetti senza
instanziarli da classi. Sto ancora studiando una grammatica coerente con il
resto del linguaggio ma molto semplice (tale da rendere preferibile usare
"oggetti puri" al posto di classi).
(P.s. la funzione di print diretta, come le stringhe in mezzo al codice di
Inform, è già pronta. Non solo, un qualunque embedder può sostituirla con
la funzione che preferisce).
Gian.


title: [OT] Congratulazioni a Niccolai

text:
"Giancarlo Niccolai" <
No...@nothing.org
> wrote:
> class MyClass
> ...
> end
>
> function realize( a_class )
>         return a_class( "some", "params" )
> end
>
> o = realize( MyClass )
>
> istanzierà la classe come se avessi chiamato MyClass( "some", "params" )

E se a realize passo un'altra classe userà quella?
Posso fare una cosa tipo:
o = realize( MyClass )
p = realize( YourClass )
A patto che il costruttore accetti gli stessi parametri; è come se a_class
fosse implicitamente l'oggetto base?



title: [OT] Congratulazioni a Niccolai

text:
Paolo Vece wrote:

Esattamente. La classe è uno "STAMPINO", che in più può avere (non
necessariamente ha) un costruttore. L'oggetto classe non ha niente a che
vedere con il suo "simbolo". Ad esempio, se non trovo una variabile nello
"scope" globale, presumo che sia importata. Quando il modulo viene passato
alla VM per l'esecuzione, il RunTime cerca in tutti gli altri moduli già
compilati e caricati gli oggetti non definiti (e se non li trova, segnala
errore). Quindi mi sono messo nella condizione di non fare NESSUNA
ASSUNZIONE sul tipo dei simboli; sono solo dei "contenitori di item", e gli
item possono contenere un intero, una stringa, (tante altre cose), una
classe o un oggetto. O persino una funzione o un metodo (che collega una
funzione all'oggetto che la funzione riceverà nel registro "self).
(PS questo GIA' funziona, anzi ho già creato classi "sintetiche" che pososno
essere iniettate dal C++ negli script come se fossero state create
internamente dalla VM).
Giancarlo.


title: [OT] Congratulazioni a Niccolai

text:
Paolo Vece wrote:

Anzi, per essere precisi, non è nemmeno necessario che accettino gli stessi
parametri. Il passaggio di parametri, in haste, è opzionale, e il chiamante
può inviare più o meno parametri di quelli dichiarati. Se non tutti i
parametri sono valorizzati, quelli "vuoti" ricevono NIL. Se sono
valorizzati più di quelli richiesti, non succede nulla, ma la funzione può
comunque accedere ai parametri extra con delle funzioni di libreria. Se si
tenta di usare un parametro non inizializzato, l'applicazione riceve un
errore che può essre intercettato in un blocco try-catch, o può essere
prevenuto semplicemente verificado se i parametri ricevuti sono del tipo
desiderato.
Questa tecnica di passaggio flessibile dei parametri può sembrare
pericolosa, ma lascia il massimo grado di libertà agli sviluppatori e agli
implementatori di librerie; ad esempio è usata da più di venti anni nel
linguaggio CLIPPER e XBASE (applicazioni business oriented), ed è
dannatamente "usable" e "programmer friendly".
Gian.


title: messaggio per MACCHIANERA

author: Mario

text:
Ieri ho chiesto un aiuto per il combattimento, ma penso tu parlassi di un
altro punto ..... Io scendo dall'astronave e non ho altra scelta .... devo
combattere ....... AIUTAMI......


title: messaggio per MACCHIANERA

author: Macchianera

text:
Infatti quello che ho scritto non centrava
nulla con FF8:
Final Fantasy VIII è l’ottavo capitolo
di una saga di RPG ideata dalla software
house giapponese Squaresoft.
(Ng: it.comp.giochi.rpg)
In questo Ng si parla di Avventure Testuali,
il tuo messaggio era OT; se non sai cosa è
un'AT leggi le FAQ di Aemilius o visita
questo ottimo sito :
http://ifitalia.vd1.net/
Per ora non dico altro se no Glorfindel
si arrabbia. (x Glf - comunque mica ho scritto
a quale AT era riferito il mio commento,
e poi non mi sembra di essere l'unico ad
aver spedito messaggi simili ;-|) ).
Se ti piaceranno le AT fatti risentire.
Ciao
Macchianera
Mario <
ma...@hotmail.com
> scritto nell'articolo
<863uun$30dg$
1...@stargate1.inet.it
>...



title: messaggio per MACCHIANERA

author: Glorfindel

text:
>Per ora non dico altro se no Glorfindel
>si arrabbia. (x Glf - comunque mica ho scritto
>a quale AT era riferito il mio commento,
>e poi non mi sembra di essere l'unico ad
>aver spedito messaggi simili ;-|) ).
Non mi volevo arrabbiare, sorry!!! Il discorso è che chi frequenta
abitualmente questo NG sa di cosa stai parlando e gli altri che postano
messaggi simili (l'ho fatto anch'io) usano uno spoiler, o almeno dovrebbero
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
così gli altri sanno che sotto ci potrebbe essere un pezzo di soluzione di
un'avventura a cui loro non hanno ancora giocato! ciao
Glorfindel


title: messaggio per MACCHIANERA

author: Sauron

text:
>Non mi volevo arrabbiare, sorry!!!
Sei sempre il solito guastafeste: ma quando imparerai a tenere la bocca
chiusa? Prova ad occuparla in qualche modo più costruttivo...
Evil grin.
Sauron


title: [REQ] [INF] Riconoscimento vecchia avventura italiana

text:
Salve a tutti, ho gamato questo NG da poco e mi ha complito lo spirito
delle persone che ne fanno parte! Tutti allegri e competenti... It's
incredible!
Comunque potrò finalmente (forse) avere risposta a un dubbio che mi
assilla da anni!!
Quando feci girare la mia prima ed unica avventura testuale era il
lontano 198x (non mi ricordo) e la lanciavo sul Commodore 128 (proprio
lui! MITICO!!!); vorrei rigiocarci ma non mi ricordo assolutamente il
titolo : avrò avuto 8-10 anni...
L'avventura era in ITALIANO e parlava di un tizio che si risveglia nella
sua stanza e non riesce più ad uscire (se non ricordo male). Per
andarsene dalla prima locazione bisognava SALTARE ATTRAVERSO LO SPECCHIO
come Alice. Il parser me lo ricordo ottimo. Sempre nello stesso livello
(delle stanze comunicanti tra loro e disposte in modo da formare
all'incirca un grosso quadrato) c'era un labirinto (parte sud-est se non
ricordo male) senza nessuna indicazione, ma che mio fratello riuscì a
mappare! Un'altra cosa che mi ricordo è che per andarsene da quel
livello (o per finire l'avventura, non l'ho mai saputo!!) bisognava
salire delle scale che però erano presidiate da un tizio (in armatura?).
Ovviamente mi sa che mi ci vorrà un emu per C64, ma quello è il MINIMO!!
Per favore, aiutatemi: sono passati più di 12 anni ma me lo ricordo
ancora... LO DEVO FINIRE!!!!
Sapete come si chiama questa avventura, sapete qualche info?? Qualcuno
se la ricorda???
Aiutate un povero Ulisse sperduto nel mare dell'oblìo... :-!
--
Basta,punto,finito.
BYE!
----------------
ulis...@iol.it
Please remove NOSPAM to reply!
----------------
ICQ# 19606650


author: gws

text:
Ulisse31 wrote:
>  Per
> andarsene dalla prima locazione bisognava SALTARE ATTRAVERSO LO SPECCHIO
> come Alice.
CAVOLO!!!
Ci ho giocato anch'io! Mi ricordo che saltavo dentro lo specchio!
Purtroppo anche io non mi ricordo il titolo... -(
Probailmente era un'avventura comprata in edicola...ma non riesco a
ricordare altro!
Nessuno ha un'idea ?
Ciao,
            gws
per rispondere togli 'spamdie' dall'indirizzo


text:
>Salve a tutti, ho gamato questo NG da poco e mi ha complito lo spirito
>delle persone che ne fanno parte! Tutti allegri e competenti... It's
>incredible!
;-)P
>Comunque potrò finalmente (forse) avere risposta a un dubbio che mi
>assilla da anni!!
Accidenti...anni e anni afflitto da un dubbio! Sentiamo...
>L'avventura era in ITALIANO e parlava di un tizio che si risveglia nella
>sua stanza e non riesce più ad uscire (se non ricordo male). Per
>andarsene dalla prima locazione bisognava SALTARE ATTRAVERSO LO SPECCHIO
>come Alice [cut].
>Ovviamente mi sa che mi ci vorrà un emu per C64, ma quello è il MINIMO!!
>Per favore, aiutatemi: sono passati più di 12 anni ma me lo ricordo
>ancora... LO DEVO FINIRE!!!!
>Sapete come si chiama questa avventura, sapete qualche info?? Qualcuno
>se la ricorda???
Beh, non vorrei sembrare eresiarca ma mi sembra tanto un'avventura di
Explorer di cui non ricordo il nome (forse Spectral house?)
Qualcuno sa smentirmi o no?
Sauron5


text:
Mi ricordo anche che il nome dell'avventura era formata da una sola
parola... Rolando (magari non c'incastra nulla)... mi ricordo che era
FORSE un participio passato? ...ato... Forse un nome proprio... BHO!



author: marco vallarino

text:
Sauron5 ha scritto nel messaggio <7hut26$89f$
1...@fe2.cs.interbusiness.it
>...
>>Sapete come si chiama questa avventura, sapete qualche info?? Qualcuno
>>se la ricorda???
>Beh, non vorrei sembrare eresiarca ma mi sembra tanto un'avventura di
>Explorer di cui non ricordo il nome (forse Spectral house?)
>Qualcuno sa smentirmi o no?
Spectral House me la ricordo: era quella con Harry O'Hara, pubblicata sul
n.8 di Viking (settembre dell'87, password: ectoplasma... e' possibile?).
Tuttavia non c'entra niente ne' con lo specchio, ne' col labirinto.
La mia idea e' che si tratti di un'avventura del buon Roberto Tabacco, visto
che i "salti" e gli "attraversamenti" sono sempre stati delle sue bandiere.
Tante volte per cambiare locazione nelle sue avventure bisognava "passare",
"saltare", "attraversare", "percorrere" qualcosa... saltare dentro uno
specchio? Perche' no?!
Sia come sia, sarebbe cmq importante sapere se tale avventura aveva la
grafica o meno visto che da un certo momento in poi in Italia si sono viste
solo avventure semigrafiche.
Ma ci penseremo noi a invertire questa tendenza, giusto?
--
01, Marco Vallarino
"La liberta' e' una mancanza di fantasia"
____________________________________________________________
Homepage:
http://space.tin.it/fantascienza/marvalla
Pianeta01:
http://www.fabula.it/01


text:
marco vallarino wrote:
> La mia idea e' che si tratti di un'avventura del buon Roberto Tabacco, visto
> che i "salti" e gli "attraversamenti" sono sempre stati delle sue bandiere.
> Tante volte per cambiare locazione nelle sue avventure bisognava "passare",
> "saltare", "attraversare", "percorrere" qualcosa... saltare dentro uno
> specchio? Perche' no?!
Bhè... fai conto che io mi ricordo molto bene la prima locazione dove
appunto bisognava "salta nello specchio", ma è solo la prima...

> Sia come sia, sarebbe cmq importante sapere se tale avventura aveva la
> grafica o meno visto che da un certo momento in poi in Italia si sono viste
> solo avventure semigrafiche.
Nisba! Niente grafica! Solo un buon Parser e una bella finestrozza dove
c'era la derscrizione della locazione. Si poteva prendere della roba e
interagire con la stessa, ma non chiedetemi altro perché navigo nel
buio.
... MEANDRO!!!! MEAAAAAAANDROOOOOOO!!!!!!!!!!!! Ecco come cavolo si
chiamava quella avventura!!! CAVOLOO!!!!
L'avventura si chiamava "Meandro", ma:
1- Non saprei se è il nome originale
2- Non mi ricordo nemmeno se era su dischetto o su cassetta, ma mi
ricordo molto bene la rivista (o meglio la pagina della rivista) dove
c'era l'elenco dei verbi e dei sostantivi: il parser!!!
3- Adesso non sono neanche troppo sicuro che il nome fosse quello, ma è
possibile.
Secondo voi potrei trovarla da qualche parte in rete o in FTP? Ho
provato si IFitalia, ma non ho trovato nulla. Possibile che non ci sia
un archio gigantesco da qualche parte?



title: scelte multiple

author: crispo

text:
Salve a tutti!
Sono un grande fan della avventure sin dai tempi dello ZX Spectrum
(anche se ne ho risolte davvero poche :-( ).
Mi piacerebbe imparare a scriverne qualcuna. Volevo farvi una domanda,
da profano assoluto.
E' possibile tecnicamente scrivere avventure che prevedano la scelta
multipla come metodo di gioco? Una cosa del tipo:
Un enorme troll peloso ti sbarra la strada. Cosa fai?
1. Sfodera la spada
2. Parla col troll
3. Usa la pietra magica
Dovre basterebbe solo inserire il numero. Limita molto l'azione, perņ
ero un appassionato dei libri-gioco di Lupo Solitario, qualcuno li
conosce? Erano davvero dei capolavori....
Se si, con quale software?
Grazie mille.
C.
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: scelte multiple

text:
crispo <
spummas...@hotmail.com
> wrote in message
news:3b860bab6694d353b57...@mygate.mailgate.org...
> Salve a tutti!
Salve e benvenuto...
> Sono un grande fan della avventure sin dai tempi dello ZX Spectrum
> (anche se ne ho risolte davvero poche :-( ).
Ah... un altro vecchio possessore (e avventuriero) del glorioso ZX
Spectrum... praticamente un fratello...
> Mi piacerebbe imparare a scriverne qualcuna. Volevo farvi una domanda,
> da profano assoluto.
A disposizione...
> E' possibile tecnicamente scrivere avventure che prevedano la scelta
> multipla come metodo di gioco?
> Se si, con quale software?
Si, e' possibile... il software in questione si chiama Idra ed e' stato
creato da nientepopodimenoche Enrico Colombini (si, quello di "Avventura nel
Castello"). Per usarlo bisogna avere una minima conoscenza di HTML e
JavaScript (proprio minima, non ti preoccupare, il manuale e'
esaurientissimo). Lo trovi su
http://www.cityline.it/personal/erix/idra.html
bye
Paolo Lucchesi


title: scelte multiple

text:
> il software in questione si chiama Idra
Grazie per la pubblicita' :-) Ne approfitto per fare a tutti una
domanda:
Continuo a ricevere con discreta regolarita' messaggi di autori che
vorrebbero usare il Modulo Base (!). Generalmente consiglio INFORM, ma
mi rendo conto che l'impostazione e' diversa.
La domanda e': pensate che possa avere senso uno strumento minimale
(tipo il Modulo Base, appunto) per realizzare semplici avventure senza
tanta fatica? Ovviamente aggiornato alle meraviglie della tecnica
attuale: niente piu' numeracci e cose del genere...
  .Erix.