title: Innovazione nelle AT?

author: Kiuhnm

text:
    Escludendo come possibili innovazioni l'aggiunta della grafica, del
sonoro e il miglioramento del parser, penso che bisognerebbe proprio
cambiare approccio.
    All'inizio pensavo che il parser andasse migliorato consentendo
espressioni più complesse, ma adesso penso che bisognerebbe fare proprio
l'opposto: il parser andrebbe eliminato.
Penso di aver capito che non è l'assenza di grafica e di audio ad
allontanare le persone dalle AT, ma la presenza del parser. Fare anche la
più semplice delle azioni risulta piuttosto frustrante e spesso è difficile
"farsi capire" dal programma.
    E' meglio vedere l'esecuzione perfetta di un esercizio semplice,
piuttosto che l'esecuzione insicura e poco convincente di un esercizio
difficile.
    Il controllo dell'alter ego tramite parser è macchinoso, imperfetto e
lontano dalla realtà (cioè non intuitivo).
    Secondo me bisognere abbandonare l'alter ego e iniziare a sviluppare
Avventure Testuali in Prima Persona (ATPP). La lingua è molto utile per
comunicare con altre persone, specialmente in forma scritta, ma comunicare
con un alter ego (cioè con una proiezione di noi stessi) tramite la lingua è
piuttosto artificioso.
Nella vita reale non descriviamo mentalmente tramite frasi tutto quello che
facciamo, ma pensiamo per associazioni di idee.
    Un modo per semplificare l'interfaccia e guadagnare (anziché perdere)
"potenza" è quello di lavorare per contesti, cioè di non pretendere che il
giocatore formuli frasi complete e corrette, ma consentendo che si avvicini
all'obiettivo un passo alla volta.
Nelle AG accade lo stesso. Prima ci si sposta sull'oggetto col quale si
vuole interagire e solo in seguito si ha accesso alle possibili azioni da
eseguire. E' addirittura possibile scoprire l'esistenza di sotto-oggetti o
di dettagli interessanti di cui non eravamo a conoscenza in principio (con
il parser è possibile, ma risulta essere un'eccezione in quanto non vengono
forniti metodi efficienti per lavorare in ambienti complessi).
    Ecco un esempio (minuscolo = giocatore, MAIUSCOLO = computer, [] =
commenti):
>
> camera
CAMERA> {DESCRIZIONE SINTETICA DELLA CAMERA}
CAMERA>
CAMERA> sedia
CAMERA>SEDIA> {DESCRIZIONE SINTETICA DELLA SEDIA}
CAMERA>SEDIA> ..
CAMERA> scrivania
CAMERA>SCRIVANIA> {DESCRIZIONE SINTETICA DELLA SCRIVANIA}
CAMERA>SCRIVANIA> penna
CAMERA>SCRIVANIA>PENNA> >> tasca
CAMERA>SCRIVANIA> tasca            [scorciatoia, in quanto non è ambigua nel
contesto attuale]
ME>GIACCA>TASCA> {ELENCO CONTENUTO TASCA}
ME>GIACCA>TASCA> tutto >> scrivania        [vuota la tasca sulla scrivania]
ME>GIACCA>TASCA> {VUOTA}
ME>GIACCA>TASCA> [tramite funzionalità simili a quelle offerte dal vecchio
DOSKEY possiamo spostarci con facilità verso gli ultimi contesti usati]
CAMERA>SCRIVANIA> esci
CASA>CORRIDOIO>
    In generale i contesti non verranno resi disponibili fino a quando non
saranno raggiungibili o visibili. Per esempio sarebbe "pedante" mostrare il
prompt:
CASA>CORRIDOIO>CAMERA>SCRIVANIA>
però si potrebbe mostrare questo:
...>CAMERA>SCRIVANIA>
con la possibilità da parte del giocatore di vederlo completo.
    Come avrete visto ci si muoverebbe come si faceva in msdos, però
consentendo scorciatoie, contesti prestabiliti, ecc...
Notate che non è proprio come muoversi in un ambiente ipertestuale, infatti
nel nostro caso sappiamo sempre con precisione da dove veniamo (cosa
fondamentale onde evitare smarrimento nel giocatore).
Il giocatore dovrebbe solo impararsi qualche semplice operatore come ">>" e
"<<" che significa "prendere", "dare", "spostare", "versare", "acquisire",
"rubare", ecc...
    Questa interfaccia renderebbe tutto molto più intuitivo e facile
eliminando completamente vari problemi dei parser e permettendo all'utente
un approccio più "progressivo" verso l'azione che intende eseguire.
E' un po' come cercare qualcosa con un motore di ricerca e poi "rifinire" la
ricerca successivamente.
Con questo metodo è inoltre possibile focalizzare l'attenzione su singoli
oggetti senza doversi preoccupare dell'ambiente circostante.
Per es. sarebbe scomodo scrivere:
"prendi l'orologio che si trova sulla mensola a destra dell'armadio e
mettilo........"
Con i contesti diventa tutto può semplice.
Inoltre sono possibili azioni molto più complesse. Se per es. sappiamo che
saremo perquisiti da qualcuno più avanti nel gioco, possiamo nascondere un
oggetto importante all'interno di una scarpa o in posti analoghi (anche
"anali" se volete, ma prima meglio provare alternative meno compromettenti).
Il programma effettuerà la perquisizione semplicemente controllando il
contenuto della tasca e di altre zone prestabilite.
Se non trova l'oggetto, abbiamo superato la perquisizione. Non è necessario
per forza nascondere l'oggetto nel posto o nel modo previsto dall'autore del
gioco (questo è un buon metodo per non stressare il giocatore e rendere
tutto più realistico).
    Già m'immagino alcune critiche, ma vorrei ricordarvi due cose:
1) molte critiche possono essere presentate come consigli, cioè è inutile
fare notare che c'è una mancanza quando la soluzione è palese: ponete
l'accento sulla soluzione, anziché sulla mancanza;
2) non vi sto vendendo niente quindi cercate di vedere se è possibile
seguire questa strada, anziché cercare in tutti i modi di convincervi e
convincermi che non lo sia.
Kiuhnm


title: Innovazione nelle AT?

author: Roberto Grassi

text:
Ciao,
> Escludendo come possibili innovazioni l'aggiunta della grafica, del
> sonoro e il miglioramento del parser, penso che bisognerebbe proprio
> cambiare approccio.
Sono d'accordo.
Secondo me pero' il modo migliore per creare un mondo AT
e quello di poterlo 'disegnare' in forma grafica e poi
di poterlo giocare in modo testo.
E non parlo di IDE, ma proprio di forma grafica nel design.
Quindi io disegno la mappa, e ci metto gli oggetti dentro come
se stessi disegnando una AG.
Poi definisco l'essere umano che ci si trova dentro.
In altre parole il setting e' indipendente dal fatto che qualcuno
ci si trovi dentro.
Ad esempio, ho notato molte limitazioni nei world model delle AT per
quello
che riguarda le parti del corpo.
In "The Last Hour" ho dovuto fare le evoluzioni per poter
gestire gambe, piedi, braccia, testa, etc...
Pensate che bello poter giocare la stessa AT con un personaggio
cieco, un personaggio "sordo", un bambino (che necessariamente
ha approcci diversi, riutilizzando lo stesso setting, pero'
gli oggetti avrebbero relazioni tra di loro differenti, in funzione
del giocatore.
Rob
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: Innovazione nelle AT?

author: Enrico Colombini

text:
Kiuhnm wrote:
> Penso di aver capito che non è l'assenza di grafica e di audio ad
> allontanare le persone dalle AT, ma la presenza del parser.
Vedo che le idee eretiche prendono piede :-)
> CAMERA>SCRIVANIA>PENNA> >> tasca
Hai descritto molto da vicino l'idea che pensavo di sviluppare per la
one room competition di un paio d'anni fa: gia' che era one-room,
volevo usare un parser one-word. Avevo scritto la trama a grandi
linee, poi e' andato a rotoli il mio editore e ho avuto (e ho) altro a
cui pensare.
> Già m'immagino alcune critiche
Non da me. Ti passo un paio di idee dell'epoca:
- Return torna al contesto superiore (e Ctrl-Return al livello base).
- Il primo contesto puo' essere il nome di un personaggio, consentendo
di iniziare conversazioni (e/o di gestire personaggi multipli con un
prefisso o un tasto modificatore).
   .Erix.


title: Innovazione nelle AT?

author: Giovanni Riccardi

text:
Kiuhnm ha scritto:
>     Escludendo come possibili innovazioni l'aggiunta della grafica, del
> sonoro e il miglioramento del parser, penso che bisognerebbe proprio
> cambiare approccio.
Mmhh, proviamo a cambiarlo...
>
>     All'inizio pensavo che il parser andasse migliorato consentendo
> espressioni più complesse, ma adesso penso che bisognerebbe fare proprio
> l'opposto: il parser andrebbe eliminato.
> Penso di aver capito che non è l'assenza di grafica e di audio ad
> allontanare le persone dalle AT, ma la presenza del parser. Fare anche la
> più semplice delle azioni risulta piuttosto frustrante e spesso è difficile
> "farsi capire" dal programma.
Erix mi pare una volta suggerì che l'ideale sarebbe stato un parser ad
una sola parola (che a questo punto non chiamerei neanche più parser
perché non fa più alcun "parsing" del comando digitato). UNa cosa del
genere è più facile da capire per il giocatore e più facile da
implementare (ma al contrario diventa più difficile sviluppare un world
model complesso come quelli di Inform e tads).
> E' meglio vedere l'esecuzione perfetta di un esercizio semplice,
> piuttosto che l'esecuzione insicura e poco convincente di un esercizio
> difficile.
E se vedessimo l'esecuzione perfetta di un esercizio difficile? :-)
>     Il controllo dell'alter ego tramite parser è macchinoso, imperfetto e
> lontano dalla realtà (cioè non intuitivo).
Verissimo. Concordo.
> Secondo me bisognere abbandonare l'alter ego e iniziare a sviluppare
> Avventure Testuali in Prima Persona (ATPP). La lingua è molto utile per
> comunicare con altre persone, specialmente in forma scritta, ma comunicare
> con un alter ego (cioè con una proiezione di noi stessi) tramite la lingua è
> piuttosto artificioso.
Uno degli sviluppi del nuovo infit 3 è proprio l'adozione dei comandi in
prima persona, ma si potrà comunque scegliere tra la grammatica classica
  (con i verbi imperativi) e quella in prima persona.
> Nella vita reale non descriviamo mentalmente tramite frasi tutto quello che
> facciamo, ma pensiamo per associazioni di idee.
Da una cosa consegue un'altra e da questa ancora un'altra, ecc.
>     Un modo per semplificare l'interfaccia e guadagnare (anziché perdere)
> "potenza" è quello di lavorare per contesti, cioè di non pretendere che il
> giocatore formuli frasi complete e corrette, ma consentendo che si avvicini
> all'obiettivo un passo alla volta.
In prima istanza va bene, ma la semplificazione eccessiva può risultare
piuttosto "dispendiosa" in termini di passi necessari. Bisogna anche
escogitare dei trucchi per saltare uno o più passi. Ma vediamo...
> Nelle AG accade lo stesso. Prima ci si sposta sull'oggetto col quale si
> vuole interagire e solo in seguito si ha accesso alle possibili azioni da
> eseguire. E' addirittura possibile scoprire l'esistenza di sotto-oggetti o
> di dettagli interessanti di cui non eravamo a conoscenza in principio (con
> il parser è possibile, ma risulta essere un'eccezione in quanto non vengono
> forniti metodi efficienti per lavorare in ambienti complessi).
E invece qui sbagli completamente. Nelle AT librerie evolute come Inform
e TADS forniscono un world model che più consistente non si può, in cui
si possono implementare dettagli nel modo da te descritto. Naturalmente
basta giocare le AT programmate bene.
>     Ecco un esempio (minuscolo = giocatore, MAIUSCOLO = computer, [] =
> commenti):
>
>>camera
>
> CAMERA> {DESCRIZIONE SINTETICA DELLA CAMERA}
> CAMERA>
> CAMERA> sedia
> CAMERA>SEDIA> {DESCRIZIONE SINTETICA DELLA SEDIA}
> CAMERA>SEDIA> ..
> CAMERA> scrivania
> CAMERA>SCRIVANIA> {DESCRIZIONE SINTETICA DELLA SCRIVANIA}
> CAMERA>SCRIVANIA> penna
> CAMERA>SCRIVANIA>PENNA> >> tasca
> CAMERA>SCRIVANIA> tasca            [scorciatoia, in quanto non è ambigua nel
> contesto attuale]
> ME>GIACCA>TASCA> {ELENCO CONTENUTO TASCA}
> ME>GIACCA>TASCA> tutto >> scrivania        [vuota la tasca sulla scrivania]
> ME>GIACCA>TASCA> {VUOTA}
> ME>GIACCA>TASCA> [tramite funzionalità simili a quelle offerte dal vecchio
> DOSKEY possiamo spostarci con facilità verso gli ultimi contesti usati]
> CAMERA>SCRIVANIA> esci
> CASA>CORRIDOIO>
Praticamente il parser ad una parola di cui ha parlato erix. Buona
l'idea del doskey. ma in un certo senso è simile all'interfaccia di
gioco dell'ottima IF di Andrew Plotkin "The Space Under The Window" in
cui anziché per contesti "fisici" del world model ci si muove per
contesti "letterari" (se mi passate il termine): Data la descrizione
inziale ci si può focalizzare su una parola o una frase e la descrizione
cambia fornendo altri particolari. Notare che il focus non è
necessariamente dato ad un'oggetto del world model.
>     In generale i contesti non verranno resi disponibili fino a quando non
> saranno raggiungibili o visibili. Per esempio sarebbe "pedante" mostrare il
> prompt:
> CASA>CORRIDOIO>CAMERA>SCRIVANIA>
> però si potrebbe mostrare questo:
> ....>CAMERA>SCRIVANIA>
> con la possibilità da parte del giocatore di vederlo completo.
Vabbé questo mi pareva abbastanza ovvio.
>     Come avrete visto ci si muoverebbe come si faceva in msdos, però
> consentendo scorciatoie, contesti prestabiliti, ecc...
> Notate che non è proprio come muoversi in un ambiente ipertestuale, infatti
> nel nostro caso sappiamo sempre con precisione da dove veniamo (cosa
> fondamentale onde evitare smarrimento nel giocatore).
Infatti la cosa è molto ipertestuale.
> Il giocatore dovrebbe solo impararsi qualche semplice operatore come ">>" e
> "<<" che significa "prendere", "dare", "spostare", "versare", "acquisire",
> "rubare", ecc...
Overloading a go go!!
>     Questa interfaccia renderebbe tutto molto più intuitivo e facile
> eliminando completamente vari problemi dei parser e permettendo all'utente
> un approccio più "progressivo" verso l'azione che intende eseguire.
> E' un po' come cercare qualcosa con un motore di ricerca e poi "rifinire" la
> ricerca successivamente.
ma si possono fare ricerche anche complesse fin dall'inizio. come la
mettiamo con queste?
> Con questo metodo è inoltre possibile focalizzare l'attenzione su singoli
> oggetti senza doversi preoccupare dell'ambiente circostante.
> Per es. sarebbe scomodo scrivere:
> "prendi l'orologio che si trova sulla mensola a destra dell'armadio e
> mettilo........"
> Con i contesti diventa tutto può semplice.
Ma più lungo.
> Inoltre sono possibili azioni molto più complesse. Se per es. sappiamo che
> saremo perquisiti da qualcuno più avanti nel gioco, possiamo nascondere un
> oggetto importante all'interno di una scarpa o in posti analoghi (anche
> "anali" se volete, ma prima meglio provare alternative meno compromettenti).
> Il programma effettuerà la perquisizione semplicemente controllando il
> contenuto della tasca e di altre zone prestabilite.
> Se non trova l'oggetto, abbiamo superato la perquisizione. Non è necessario
> per forza nascondere l'oggetto nel posto o nel modo previsto dall'autore del
> gioco (questo è un buon metodo per non stressare il giocatore e rendere
> tutto più realistico).
Si può fare anche con Inform o Tads.
>     Già m'immagino alcune critiche, ma vorrei ricordarvi due cose:
> 1) molte critiche possono essere presentate come consigli, cioè è inutile
> fare notare che c'è una mancanza quando la soluzione è palese: ponete
> l'accento sulla soluzione, anziché sulla mancanza;
Che la soluzione sia palese o meno è questione di punti di vista. Se si
fa notare la mancanza forse è perché la soluzione non è così tanto
palese. Non puoi dare soluzioni per suggerimenti (nel senso che
suggerisci un modo per arrivare una soluzione): non tutti hanno il tuo
modo di pensare e soprattutto il tuo background (anche se la logica di
ragionamento è la stessa i punti di partenza potrebbero essere diversi.
ergo la conclusione è diversa).
> 2) non vi sto vendendo niente quindi cercate di vedere se è possibile
> seguire questa strada, anziché cercare in tutti i modi di convincervi e
> convincermi che non lo sia.
La strada è assolutamente percorribile, ma anche sfruttando gli
strumenti attuali (eliminare dalla libreria di inform il parser e fare
una cosa del genere cercando di conservare il world model).
Secondo me una parte dei problemi di approccio con le AT derivano del
parser come giustamente hai fatto notare, ma anche da come il parser si
relaziona con il world model. Ad esempio Inform ha un ottimo world model
ma secondo me non sempre funziona bene su "comando" del parser.
Giovanni
--
Giovanni Riccardi
personal:
http://www.composizioni.net
   weblog:
http://www.composizioni.net/addv
     work:
http://www.anxur.it


title: Innovazione nelle AT?

author: Francesco Cordella

text:
Kiuhnm ha scritto:
>     Un modo per semplificare l'interfaccia e guadagnare (anziché perdere)
> "potenza" č quello di lavorare per contesti, cioč di non pretendere che il
> giocatore formuli frasi complete e corrette, ma consentendo che si avvicini
> all'obiettivo un passo alla volta.
(snip)
Ricordo benissimo quando Enrico Colombini propose un "parser" a una
parola. Idea
affascinante, che tu hai affrontato con molti spunti interessanti.
Riflettevo, inoltre, sul messaggio postato da Venerandi qualche giorno fa:
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ě?
f.
--
questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news
 segnala gli abusi ad
ab...@newsland.it


title: Innovazione nelle AT?

text:
Francesco Cordella ha scritto:
> Riflettevo, inoltre, sul messaggio postato da Venerandi qualche giorno fa:
> 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ě?
No, ma volendo si puň fare con poco sforzo.



title: Innovazione nelle AT?

text:
Ciao,
>> Riflettevo, inoltre, sul messaggio postato da Venerandi qualche giorno fa:
>> 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ě?
> No, ma volendo si puň fare con poco sforzo.
E' gia' stato fatto.
Si possono scrivere AT che girano su PHP + MySQL.
Ricordo di aver guardato questo applicativo quando fu presentato su
raif.
Non ricordo il link.
Se siete interessati lo cerco.



title: Innovazione nelle AT?

text:
Enrico Colombini wrote:
> - Il primo contesto puo' essere il nome di un personaggio, consentendo
> di iniziare conversazioni (e/o di gestire personaggi multipli con un
> prefisso o un tasto modificatore).
Quest'idea è molto interessante ed è anche in linea con la logica dei
contesti. Del resto ho fatto una cosa simile quando ho usato "ME" per
riferirmi al "contesto" del giocatore.
Kiuhnm


title: Innovazione nelle AT?

text:
Roberto Grassi wrote:
[cut]
> Pensate che bello poter giocare la stessa AT con un personaggio
> cieco, un personaggio "sordo", un bambino (che necessariamente
> ha approcci diversi, riutilizzando lo stesso setting, pero'
> gli oggetti avrebbero relazioni tra di loro differenti, in funzione
> del giocatore.
Quanto hai detto è molto simile a quello che proposi in un post di un anno
fa, ma nessuno sembrò essere d'accordo. L'idea sembrerebbe buona, ma penso
che la sua realizzazione sarebbe a dir poco difficoltosa.
Sarebbe quasi necessario definire delle leggi fisiche per controllare il
comportamento degli oggetti, altrimenti come fa il mondo ad apparire diverso
a un sordo, a un cieco, ecc...?
Per esempio un personaggio forte potrebbe sfondare la porta, mentre quello
debole dovrebbe cercare un altro modo, ecc... Chi decide se il personaggio
riesce a sfondare la porta? Il motore fisico (magari molto semplice, ma
sempre tale rimane).
Kiuhnm


title: Innovazione nelle AT?

text:
Giovanni Riccardi wrote:
>> E' meglio vedere l'esecuzione perfetta di un esercizio semplice,
>> piuttosto che l'esecuzione insicura e poco convincente di un
>> esercizio difficile.
>
> E se vedessimo l'esecuzione perfetta di un esercizio difficile? :-)
Un parser perfetto?
> Uno degli sviluppi del nuovo infit 3 è proprio l'adozione dei comandi
> in prima persona, ma si potrà comunque scegliere tra la grammatica
>   classica (con i verbi imperativi) e quella in prima persona.
Non mi riferivo alla prima persona dei verbi (non mi sembra una modifica
così sostanziale)
Mi riferivo a usare un'interfaccia che non simuli il dialogo verso il nostro
alter ego, ma che simuli direttamente i nostri "pensieri".
> In prima istanza va bene, ma la semplificazione eccessiva può
> risultare piuttosto "dispendiosa" in termini di passi necessari.
> Bisogna anche escogitare dei trucchi per saltare uno o più passi. Ma
> vediamo...
Si può utilizzare lo stesso approccio usato nei sistemi operativi o nei
linguaggi di programmazione: finché non c'è ambiguità si può saltare da un
contesto all'altro semplicemente scrivendo l'ultimo termine.
Per es. si potrebbe scrivere "penna" per ritrovarsi direttamente nel
contesto scrivania>penna.
Non solo...se ci fossero tre penne, potremmo scrivere "penna" e passare in
modo ultra-veloce da un contesto all'altro usando semplicemente le frecce
della tastiera.
Una cosa molto simpatica che si potrebbe fare è quella di usare metodi
statistici basati sul contesto quali il PPM. In parole povere costruisce un
albero con tutte le probabilità che ha ogni lettera di seguire un'altra
sottostringa. E' il miglior metodo oggi conosciuto per comprimere file
generici.
Sostituisci alle lettere i contesti e avrai un parser che suggerisce (cioè
pone più vicino nella lista dei contesti usata dalla pseudo-DOSKEY) il
contesto più probabile.
Sembra una sciocchezza, ma l'utente senza accorgersene si sentirà aiutato.
Praticamente si riduce di molto la ridondanza evitando che l'utente impieghi
due anni per raggiungere sempre gli stessi contesti.
E' come dire che se vedi che una persona esce di casa, va a scuola e torna a
casa tutti i giorni, allora gli metti la scuola davanti a casa così
risparmia tempo :-)
>> Nelle AG accade lo stesso. Prima ci si sposta sull'oggetto col quale
>> si vuole interagire e solo in seguito si ha accesso alle possibili
>> azioni da eseguire. E' addirittura possibile scoprire l'esistenza di
>> sotto-oggetti o di dettagli interessanti di cui non eravamo a
>> conoscenza in principio (con il parser è possibile, ma risulta
>> essere un'eccezione in quanto non vengono forniti metodi efficienti
>> per lavorare in ambienti complessi).
>
> E invece qui sbagli completamente. Nelle AT librerie evolute come
> Inform e TADS forniscono un world model che più consistente non si
> può, in cui si possono implementare dettagli nel modo da te
> descritto. Naturalmente basta giocare le AT programmate bene.
Ho giocato ad Anchorhead...
Non ho criticato il WM di Inform e TADS, ma il parser. So benissimo che
entrambi è possibile fare queste cose (ho letto varie richieste di aiuto in
proposito) però non è facile muovercisi tramite il parser.
Il punto debole è il parser non il world model.
> Praticamente il parser ad una parola di cui ha parlato erix. Buona
> l'idea del doskey. ma in un certo senso è simile all'interfaccia di
> gioco dell'ottima IF di Andrew Plotkin "The Space Under The Window" in
> cui anziché per contesti "fisici" del world model ci si muove per
> contesti "letterari" (se mi passate il termine): Data la descrizione
> inziale ci si può focalizzare su una parola o una frase e la
> descrizione cambia fornendo altri particolari. Notare che il focus
> non è necessariamente dato ad un'oggetto del world model.
A sto punto si potrebbe addirittura rendere possibile il trascinamento di
parole del testo verso la parola TASCA :-)
In pratica avremmo una vera e propria "AG testuale"!
Cliccando su una parola apri un'altra finestra con la sua descrizione,
ecc...
Combini gli oggetti trascinandoli da una finestra all'altra e
sovrapponendoli.
In pratica useremmo l'interfaccia a finestre tanto famosa nei SO anche nelle
AT :-)
> Infatti la cosa è molto ipertestuale.
Però gli ipertesti hanno il brutto vizio di lasciarti spaesato dopo un po'.
Il metodo che userei è invece quello delle directory, dove sai sempre dove
ti trovi rispetto ai contesti più esterni.
> Overloading a go go!!
Del resto la lingua ha un sacco di sinonimi e alla fine nelle AT si finisce
sempre con l'usare gli stessi 10 verbi.
> ma si possono fare ricerche anche complesse fin dall'inizio. come la
> mettiamo con queste?
Fammi un esempio di ricerca complessa.
>> Con i contesti diventa tutto può semplice.
>
> Ma più lungo.
Dipende da quanto intelligentemente si forniscono le scorciatoie.
In pratica i contesti funzioneranno automaticamente e in quei pochi casi in
cui c'è ambiguità sarà possibile intervenire manualmente.
Prova un'AT dove in una stanza ci sono molti oggetti simili (penna rossa,
penna blu, ecc...): c'è da impazzire!
> Si può fare anche con Inform o Tads.
Stessa risposta di prima: il problema non il WM, ma il parser.
> Che la soluzione sia palese o meno è questione di punti di vista. Se
> si fa notare la mancanza forse è perché la soluzione non è così tanto
> palese. Non puoi dare soluzioni per suggerimenti (nel senso che
Mmm...spesso ho visto critiche apertamente mirate a distruggere l'idea e
basta. Magari è stata una mia impressione.
> Secondo me una parte dei problemi di approccio con le AT derivano del
> parser come giustamente hai fatto notare, ma anche da come il parser
> si relaziona con il world model. Ad esempio Inform ha un ottimo world
> model ma secondo me non sempre funziona bene su "comando" del parser.
Infatti il problema è esclusivamente il parser.
In pratica dovremmo intervenire soltanto sulla facciata ovvero
sull'interfaccia.
C'è anche da dire che in questo modo forse il WM verrebbe valorizzato come
non mai.
Chissà...
Kiuhnm


title: Innovazione nelle AT?

author: torredifuoco

text:


suspended (infocom)? niente motore (credo), solo l'idea.
>Kiuhnm
max "torredifuoco" bianchi


title: Innovazione nelle AT?

text:
torredifuoco wrote:
> suspended (infocom)? niente motore (credo), solo l'idea.
Piccola correzione: ne discussi sul ng delle AG.
Kiuhnm


title: Innovazione nelle AT?

author: Neclepsio

text:
"Kiuhnm" <
kiuhnm_...@invalid.it
> ha scritto nel messaggio
news:2ojzc.463758$rM4.19...@news4.tin.it...
> [SNIPPONE]
> Kiuhnm
Sai, l'idea del tuo parser (perché sempre di parser si tratta) non mi
dispiace per niente... A chi va di sperimentare? Finita la tesi, ad agosto
potrei cominciare a scrivere un linguaggio (magari con l'editor visuale che
piace a Rob)...
Ignazio


title: Innovazione nelle AT?

author: Stefano Gaburri

text:
Roberto Grassi wrote:
> Pensate che bello poter giocare la stessa AT con un personaggio
> cieco, un personaggio "sordo"...
"Suspended" della Infocom.


title: Innovazione nelle AT?

text:
Ola'
> > Pensate che bello poter giocare la stessa AT con un personaggio
> > cieco, un personaggio "sordo"...

> "Suspended" della Infocom.
Esatto, solo che non devi scrivere ogni volta quello che 'vede', 'sente'
ad hoc
ma farebbe parte delle "librerie" perche' gestisce le relazioni
PC-NPC e PC-Oggetti nel modello del mondo.



title: Innovazione nelle AT?

text:
Roberto Grassi wrote:
> ma farebbe parte delle "librerie" perche' gestisce le relazioni
> PC-NPC e PC-Oggetti nel modello del mondo.
sinceramente non vedo come si potrebbero programmare interazioni
complesse... un appunto che stavo per muovere anche al parser
mono-parola, che mi pare vada bene giusto per esperimenti alla SUTW di
Plotkin.
ciao
S


title: Innovazione nelle AT?

text:
Stefano Gaburri wrote:
> sinceramente non vedo come si potrebbero programmare interazioni
> complesse... un appunto che stavo per muovere anche al parser
> mono-parola, che mi pare vada bene giusto per esperimenti alla SUTW di
> Plotkin.
A dire il vero tutte le operazioni/interazioni complesse sono in realtà
composte da operazioni/interazioni semplici.
Kiuhnm


title: Innovazione nelle AT?

text:
Stefano Gaburri wrote:
> sinceramente non vedo come si potrebbero programmare interazioni
> complesse... un appunto che stavo per muovere anche al parser
> mono-parola, che mi pare vada bene giusto per esperimenti alla SUTW di
> Plotkin.
E non chiamarlo "parser mono-parola": non lo č.
Si utilizzano operatori quali >> e << oltre ad alcuni termini.
Tramite gli operatori si potrebbero anche formare "frasi complesse" (e
sarebbe anche facile da fare).
Kiuhnm


title: Innovazione nelle AT?

text:
Neclepsio wrote:
> Sai, l'idea del tuo parser (perché sempre di parser si tratta) non mi
> dispiace per niente... A chi va di sperimentare? Finita la tesi, ad
> agosto potrei cominciare a scrivere un linguaggio (magari con
> l'editor visuale che piace a Rob)...
Non mi piace chiamarlo parser, comunque...
La critica secondo la quale non sarebbero possibili interazioni complesse
potrebbe essere tenuta in considerazione fornendo strumenti per combinare
più azioni insieme.
Comunque mi piacerebbe avere un esempio di "interazione complessa".
Sicuramente è sempre possibile esprimerla in simboli.
Penso che più che creare un parser monoparola, dovremmo creare un "parser
simbolico".
Sia ben chiaro che sarà sempre possibile utilizzare una singola parola per
muoversi tra i contesti, però operazioni complesse potranno essere eseguite
scrivendo "formule".
Per es.
    (penna + cappuccio) >> Giovanni
significherebbe:
"Combina la penna con il cappuccio e dai il risultato a Giovanni".
Diverso da:
    (penna, cappuccio) >> Giovanni
che significa:
"Da la penna e il cappuccio a Giovanni"
equivalente a:
    penna >> Giovanni; cappuccio >> Giovanni
o a:
    penna >> Giovanni
    cappuccio >> Giovanni
Mi pare che le interazioni complesse diventerebbero estremamente facili e
intuitive.
Mediante operatori generici, potenti, semplici e ben definiti, chiunque
potrà eseguire operazioni intuitivamente.
Kiuhnm
P.S. Attualmente sono veramente sotto pressione. Ho iniziato da 3 anni un
progetto (praticamente un micro-OS completamente Lockfree e Waitfree) e ci
sto lavorando giorno e notte quindi non penso di potermi dedicare a un altro
progetto come questo (anche se infinitamente più semplice e piccolo) entro
breve tempo.


title: Innovazione nelle AT?

text:
Kiuhnm ha scritto:
> Comunque mi piacerebbe avere un esempio di "interazione complessa".
> Sicuramente è sempre possibile esprimerla in simboli.
> Penso che più che creare un parser monoparola, dovremmo creare un "parser
> simbolico".
Ok, questo si era capito.
> Sia ben chiaro che sarà sempre possibile utilizzare una singola parola per
> muoversi tra i contesti, però operazioni complesse potranno essere eseguite
> scrivendo "formule".
> Per es.
>     (penna + cappuccio) >> Giovanni
> significherebbe:
> "Combina la penna con il cappuccio e dai il risultato a Giovanni".
> Diverso da:
>     (penna, cappuccio) >> Giovanni
> che significa:
> "Da la penna e il cappuccio a Giovanni"
> equivalente a:
>     penna >> Giovanni; cappuccio >> Giovanni
> o a:
>     penna >> Giovanni
>     cappuccio >> Giovanni
> Mi pare che le interazioni complesse diventerebbero estremamente facili e
> intuitive.
Era proprio questo che intendevo con "ricerca complessa" ieri ribattendo
al tuo esempio sui un motori di ricerca (lì puoi usare operatori logici
come AND, OR, ecc.).
> Mediante operatori generici, potenti, semplici e ben definiti, chiunque
> potrà eseguire operazioni intuitivamente.
Bisogna studiarlo bene. Non ci devono essere ambiguità. Solo un appunto.
Così si perde gran parte dell'interazione "letteraria" (passatemi di
nuovo il termine, oggi lo uso spessissimo) col sistema. Benissimo per le
AT, un po' meno per quello che io e pochi altri cerchiamo da tempo di
promuovere e cioè la narrativa interattiva.
> P.S. Attualmente sono veramente sotto pressione. Ho iniziato da 3 anni un
> progetto (praticamente un micro-OS completamente Lockfree e Waitfree) e ci
> sto lavorando giorno e notte quindi non penso di potermi dedicare a un altro
> progetto come questo (anche se infinitamente più semplice e piccolo) entro
> breve tempo.
Tanto all'inizio si tratta solo di progettare. Per l'implementazione,
una volta che c'è lo studio dietro...



title: Innovazione nelle AT?

author: Atrus

text:
Inseguivo i banditi del tempo quando Kiuhnm scrisse...
 >   (penna + cappuccio) >> Giovanni
 >   (penna, cappuccio) >> Giovanni
 >   penna >>> Giovanni; cappuccio >> Giovanni
 > Mi pare che le interazioni complesse diventerebbero estremamente facili e
 > intuitive.
Quoto, e non dico altro.
--
Atrus di Myst
"The rock is hard. The rock cutter is patient."  - D'ni proverb
http://cube.auroraproject.net/


title: Innovazione nelle AT?

author: fabrizio venerandi

text:
Kiuhnm wrote:
>     (penna + cappuccio) >> Giovanni
(...)
>     penna >> Giovanni
>     cappuccio >> Giovanni
Credo che un giocatore occasionale, che di solito cancella una at dopo
un minuto di litigi con il parser canonico, cancellerebbe una at con
questo parser dopo trenta secondi.
Interessante, intendiamoci, ma giusto per chi è già nel giro, come
diversivo.
f.


title: Innovazione nelle AT?

text:
Giovanni Riccardi wrote:
> Bisogna studiarlo bene. Non ci devono essere ambiguità. Solo un
> appunto. Così si perde gran parte dell'interazione "letteraria"
> (passatemi di nuovo il termine, oggi lo uso spessissimo) col sistema.
> Benissimo per le AT, un po' meno per quello che io e pochi altri
> cerchiamo da tempo di promuovere e cioè la narrativa interattiva.
Non mi pare che il parser attuale aiuti molto in questo senso.
Più che altro il livello d'interazione è dato da quanto bene e con quanta
varietà l'ambiente circostante risponde agli "stimoli". Il parser attuale
mette a disagio molti giocatori, me compreso. Non penso che essere costretti
a scrivere quello che si vuole fare in un linguaggio naturale così rigido e
"poco naturale" aiuti ad aumentare il senso di narrazione interattiva.
> Tanto all'inizio si tratta solo di progettare. Per l'implementazione,
> una volta che c'è lo studio dietro...
Progettare fa comunque parte dello sviluppare software, no?
Spesso impiego mesi a progettare e giorni ad implementare.
Kiuhnm


title: Innovazione nelle AT?

text:
"Kiuhnm" <
kiuhnm_...@invalid.it
> ha scritto nel messaggio
news:HaBzc.468930$rM4.19...@news4.tin.it...
>     (penna + cappuccio) >> Giovanni
>     (penna, cappuccio) >> Giovanni
>     penna >> Giovanni; cappuccio >> Giovanni
Perchè non
cappuccio >> penna >> Giovanni? :-)
A parte gli scherzi, non credo che un clone della bash andrebbe bene: serve
qualcosa di molto più intuitivo.
Ignazio


title: Innovazione nelle AT?

text:
fabrizio venerandi wrote:
> Credo che un giocatore occasionale, che di solito cancella una at dopo
> un minuto di litigi con il parser canonico, cancellerebbe una at con
> questo parser dopo trenta secondi.
Non credo, infatti è semplicemente il metodo usato dai S.O. moderni per
spostare, copiare i file (contesti = directories) più l'interfaccia minima
delle AG, il tutto convertito in formato testo.
> Interessante, intendiamoci, ma giusto per chi è già nel giro, come
> diversivo.
Sei troppo pessimista :-)
Kiuhnm


title: Innovazione nelle AT?

text:
Neclepsio wrote:
> "Kiuhnm" <
kiuhnm_...@invalid.it
> ha scritto nel messaggio
> news:HaBzc.468930$rM4.19...@news4.tin.it...
>>     (penna + cappuccio) >> Giovanni
>>     (penna, cappuccio) >> Giovanni
>>     penna >> Giovanni; cappuccio >> Giovanni
>
> Perchè non
> cappuccio >> penna >> Giovanni? :-)
Perché non puoi dare il cappuccio alla penna ;-)
Se gli operatori sono troppo generici diventa un gran casino.
> A parte gli scherzi, non credo che un clone della bash andrebbe bene:
> serve qualcosa di molto più intuitivo.
Non mi pare la bash, infatti il tuo esempio sembra un "flusso", mentre il
mio è un'espressione matematica.
Non credo che si possa rendere tutto più intuitivo senza perdere libertà
d'azione.
Al limite possiamo eliminare del tutto gli operatori e permettere il
trascinamento delle parole tramite mouse.
Quando due oggetti possono essere combinati le loro parole si fondono a
formarne una nuova e così via.
Si potrebbe fare, ma mi pare molto più semplice usare gli operatori.
Kiuhnm


title: Innovazione nelle AT?

text:
> > Perchè non
> > cappuccio >> penna >> Giovanni? :-)
>
> Perché non puoi dare il cappuccio alla penna ;-)
> Se gli operatori sono troppo generici diventa un gran casino.
>
Ma >> potrebbe anche significare "metti su"...
> Non mi pare la bash, infatti il tuo esempio sembra un "flusso", mentre il
> mio è un'espressione matematica.
Assomiglia parecchio anche la forma (a + b) >> c...
> Non credo che si possa rendere tutto più intuitivo senza perdere libertà
> d'azione.
Boh... Meglio un linguaggio potente o uno facile? Questo è il problema.
> Al limite possiamo eliminare del tutto gli operatori e permettere il
> trascinamento delle parole tramite mouse.
Lo stavo pensando. Assieme all'autocompletamento.
Ignazio


title: Innovazione nelle AT?

text:
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:
Kiuhnm wrote:
>     (penna + cappuccio) >> Giovanni
Alt un attimo... intendi che nella tua proposta ">>" e' un operatore
che bisogna effettivamente scrivere? Io, pensando automaticamente al
mio non-parser, credevo che intendessi <CR>.
Se uno deve scrivere gli operatori, non e' molto diverso da usare
Inform, anzi forse e' piu' complicato. O ho capito male?
> quindi non penso di potermi dedicare a un altro progetto
 > come questo (anche se infinitamente più semplice e piccolo)
 > entro breve tempo.
Sull'infinitamente più semplice e piccolo avrei qualche dubbio (specie
nel caso cui pensavo io con i <CR>). Iniziare e' facile, ma poi mi
pare che si complichi non poco. Un OS ha complessita' lineare, un
world model esponenziale ;-)
   .Erix.


title: Innovazione nelle AT?

text:
fabrizio venerandi wrote:
> Credo che un giocatore occasionale, che di solito cancella una at dopo
> un minuto di litigi con il parser canonico, cancellerebbe una at con
> questo parser dopo trenta secondi.
Temo anch'io (anche nel caso del <CR> come lo interpretavo).
> Interessante, intendiamoci, ma giusto per chi è già nel giro, come
> diversivo.
Infatti... gia' che ci sono, butto li' un'altra vecchia idea che non
ho tempo di sviluppare: un testo sul quale il giocatore clicca una
sequenza di 1..n parole (non un elenco di verbi ecc., proprio le
parole del racconto). Le azioni sono implicite dal contesto.
   .Erix.
P.S. Argh, quanti messaggi, riesco a malapena a seguire questo thread.
Se non rispondo a qualcuno e' perche' mi sfugge il messaggio, mi scriva.


title: Innovazione nelle AT?

text:
Neclepsio wrote:
> Boh... Meglio un linguaggio potente o uno facile? Questo è il
> problema.
Infatti è un problema, anche perché spesso con un linguaggio facile è
difficile se non impossibile fare cose facili da fare con un linguaggio
potente e viceversa (non so se hai capito quello che intendo :-) ).
>> Al limite possiamo eliminare del tutto gli operatori e permettere il
>> trascinamento delle parole tramite mouse.
>
> Lo stavo pensando. Assieme all'autocompletamento.
Che cosa intendi per autocompletamento (dato che si trascinano parole già
presenti)?
Il metodo del trascinamento potremmo anche renderlo più completo aggiungendo
sotto-menù dinamici.
I menù si attiveranno se necessario.
Per es. ipotizziamo che un enigma preveda che degli oggetti vengano
combinati in un certo modo e in un certo ordine. Trascinando una parola su
un'altra apparirà il menù con le varie possibilità.
Inoltre cliccando su una parola servirà un menù con le varie possibilità.
Mi sembra un'idea banale, ma efficace.
Praticamente ci stiamo riconducendo all'interfaccia delle AG...
Bisognerebbe però evitare di dare suggerimenti al giocatore usando menù
troppo restrittivi.
Kiuhnm


title: Innovazione nelle AT?

text:
"Kiuhnm" <
kiuhnm_...@invalid.it
> ha scritto nel messaggio
news:lNFzc.335517$hc5.14...@news3.tin.it...
> Che cosa intendi per autocompletamento (dato che si trascinano parole già
> presenti)?
Si può scegliere di usare o un metodo di immissione da tastiera o da mouse.
Non entrambi contemporaneamente.
Io preferisco la tastiera... Se la parola che voglio usare non è sullo
schermo come si fa? Diventa una AG alla fine...
> Il metodo del trascinamento potremmo anche renderlo più completo
aggiungendo
> sotto-menù dinamici.
> I menù si attiveranno se necessario.
> Per es. ipotizziamo che un enigma preveda che degli oggetti vengano
> combinati in un certo modo e in un certo ordine. Trascinando una parola su
> un'altra apparirà il menù con le varie possibilità.
> Inoltre cliccando su una parola servirà un menù con le varie possibilità.
> Mi sembra un'idea banale, ma efficace.
> Praticamente ci stiamo riconducendo all'interfaccia delle AG...
> Bisognerebbe però evitare di dare suggerimenti al giocatore usando menù
> troppo restrittivi.
Non lo so... Potrebbe essere simpatico il sistema: bisognerebbe sperimentare
secondo me.
Ignazio


title: Innovazione nelle AT?

text:
Enrico Colombini wrote:
> Alt un attimo... intendi che nella tua proposta ">>" e' un operatore
> che bisogna effettivamente scrivere? Io, pensando automaticamente al
> mio non-parser, credevo che intendessi <CR>.
> Se uno deve scrivere gli operatori, non e' molto diverso da usare
> Inform, anzi forse e' piu' complicato. O ho capito male?
Perché più complicato?
Il tuo metodo inoltre non è troppo poco espressivo?
Alla fine diventerebbe:
Giacomo
dai penna.
cioè ancora peggio di un normale parser dove puoi scrivere
dai la penna a Giacomo.
> Sull'infinitamente più semplice e piccolo avrei qualche dubbio (specie
> nel caso cui pensavo io con i <CR>). Iniziare e' facile, ma poi mi
> pare che si complichi non poco. Un OS ha complessita' lineare, un
> world model esponenziale ;-)
Starai scherzando, spero. Non c'è il benché minimo confronto.
Scrivere un OS è come cercare di disinnescare una bomba: al minimo passo
falso ti esplode tra le mani.
Un OS è paragonabile all'organismo umano, a un governo o a un ecosistema,
ecc.... Vai a chiedere agli esperti quanto è semplice.
Inolte stiamo parlando di OS waitfree (una vera sfida a livello accademico).
Ipotizziamo di avere una struttura dati che supporta operazioni
d'inserimento e di cancellazione.
Hai mai programmato in multithreading?
Spesso sento programmatori che si lamentano perché lavorare con gli
strumenti di sincronizzazione attuali, cioè con le sezioni critiche, i
semafori, i temporizzatori, ecc... è troppo difficile, ma non sanno quanto
si sbagliano.
Ammettiamo che n thread vogliano operare contemporaneamente sulla stessa
struttura dati. Come fai?
Attualmente si usano sezioni critiche in modo che di fatto un solo thread
alla volta abbia accesso alla struttura dati (metodo assolutamente
inefficiente).
I metodi lockfree / waitfree invece non usano sezioni critiche, ma
permettono a tutti di lavorare sulla stessa struttra concorrentemente.
Ti rendi conti di qual é il livello di complessità???
Un codice lockfree di 10 righe è più difficile da scrivere di un codice
normale di 1000 righe o più.
In un codice lockfree, ogni riga di codice aggiunta rimette in discussione
l'INTERO codice scritto fino a quel momento: è un INFERNO.
Ti basti pensare che sono serviti 50 anni per escogitare una versione
lockfree delle liste linkate "semplici". Quelle doppie sono improponibili e
gli alberi binari sono proprio impensabili con i metodi attuali.
Prova a lavorare su una struttura dati che cambia senza sosta e senza
preavviso.
Per esempio ipotizziamo che il thread A voglia settare un bit e B voglia
azzerarne un altro, il tutto concorrentemente.
Come fai?
L'operazione OR della CPU esegue 3 operazioni
1) tmp = [mem]
2) tmp = tmp | (1 << bit)
3) [mem] = tmp
Ora dimmi che cosa succede se un altro thread modifica [mem] subito dopo il
punto 1).
Semplice: il punto 3) annulla tutte le modifiche eseguite dall'altro thread.
Soluzione?
In questo caso è semplice perché la CPU offre istruzioni atomiche, ma a
livello di nodi e di elementi?
Difficilissimo se non impossibile.
Kiuhnm


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Il tuo metodo inoltre non è troppo poco espressivo?
> Alla fine diventerebbe:
> Giacomo
> dai penna.
No, diventerebbe ([] e' il prompt):
  giacomo
  [giacomo] penna
Non si usano i verbi! :-)
Ero stato tratto in inganno dall'apparente somiglianza, sono due cose
diverse; il mio richiede una completa riprogettazione del modo di
comunicare e di quello che ci sta dietro.
> Un OS è paragonabile all'organismo umano, a un governo o a un
 > ecosistema, ecc.... Vai a chiedere agli esperti quanto è semplice.
Ho presente. Ho i microprocessori nel sangue da quando sono nati ;-)
> Inolte stiamo parlando di OS waitfree (una vera sfida a livello accademico).
Questi non li conoscevo, ho capito il problema.
> In un codice lockfree, ogni riga di codice aggiunta rimette in
 > discussione l'INTERO codice scritto fino a quel momento:
 > è un INFERNO.
Qual e' lo scopo? [domanda da ignorante]. Pensavo che oggi la ricerca
dell'affidabilita' intrinseca fosse enormemente piu' importante
dell'efficienza, e cio' mi sembra andare nella direzione opposta.
Quindi immagino ci sia un altro motivo.
(siamo un po' OT, magari proseguiamo in privato...)
   .Erix.


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Per es.
>     (penna + cappuccio) >> Giovanni
> significherebbe:
> "Combina la penna con il cappuccio e dai il risultato a Giovanni".
> Diverso da:
>     (penna, cappuccio) >> Giovanni
> che significa:
> "Da la penna e il cappuccio a Giovanni"
> equivalente a:
>     penna >> Giovanni; cappuccio >> Giovanni
<snip>
effettivamente salta all'occhio la grande chiarezza di quest'interfaccia
rispetto al parser standard. ora sì che gli utenti sprovveduti giocano
senza problemi    :)
scherzi a parte, ti interesserà _certamente_ questo gioco di Chris
Crawford, veramente innovativo oltre l'immaginabile:
http://www.the-underdogs.org/game.php?id=2435
giocalo (mi raccomando il manuale, indispensabile), sono certo che ti
esalterà e ti farà venire parecchie idee sul "parser" simbolico. Però
attenzione, il gioco non è un'avventura ma una simulazione a stati...
per questo va bene anche l'interfaccia che proponi (per un'avventura
secondo me no, a meno di non usare entrambe le cose, parser standard per
le azioni/manipolazioni del mondo e interfaccia dedicata per
l'interazione emotiva con gli npc. mica male questa...).
ciao
S
PS c'è anche un libro dello stesso crawford estremamente interessante...
<
http://www.amazon.com/exec/obidos/tg/detail/-/0131460994/qid=1087337511/sr=8-1/ref=pd_ka_1/104-1162979-7436750?v=glance&s=books&n=507846
>
volevo anche tradurlo in ita per awl/pearson, ma ovviamente non se n'è
fatto niente, grr


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Non credo, infatti è semplicemente il metodo usato dai S.O. moderni per
> spostare, copiare i file (contesti = directories) più l'interfaccia minima
> delle AG, il tutto convertito in formato testo.
i SO moderni usano la GUI, altro che shell testuale, io provo ancora a
insegnare il COPY di DOS agli allievi ingegneri informatici e loro mi
guardano come fossi un babbuino viola...


title: Innovazione nelle AT?

text:
Enrico Colombini wrote:
> No, diventerebbe ([] e' il prompt):
>
>   giacomo
>   [giacomo] penna
>
> Non si usano i verbi! :-)
E quindi è troppo poco espressivo. Dovrai convenire che questa è una
mancanza non da poco.
L'idea del semplice è carina, però questo è un problema.
Come lo risolveresti?
> Qual e' lo scopo? [domanda da ignorante]. Pensavo che oggi la ricerca
> dell'affidabilita' intrinseca fosse enormemente piu' importante
> dell'efficienza, e cio' mi sembra andare nella direzione opposta.
> Quindi immagino ci sia un altro motivo.
> (siamo un po' OT, magari proseguiamo in privato...)
Hai presente come funziona un allocatore di memoria? Ovviamente sì.
E' semplicemente un "amministratore" che dice ai clienti quale porzione di
RAM usare evitando conflitti tra gli stessi (se facessero da soli staremmo
freschi!).
Qual è l'algoritmo migliore per evitare un'eccessiva frammentazione e altri
problemi?
E' quello di selezionare sempre il più piccolo blocco abbastanza grande da
soddisfare la richiesta del cliente.
Qual è la migliore struttura dati?
Indubbiamente un albero binario autobilanciante (altrimenti può degenerare,
nel peggiore dei casi, in una lista linkata).
Come facciamo in un sistema con multitasking dove tutti si rivolgono allo
stesso
gestore di memoria contemporaneamente?
Dobbiamo per forza di cose usare una sezione critica in modo che accedano
all'albero uno alla volta. Questo è inefficiente, infatti immagina che
l'albero sia molto grande e che a uno serva un nodo lungo 16 e all'altro
16184 bytes. I due clienti non potrebbero essere soddisfatti
contemporaneamente? Sì, infatti i due nodi sono agli antipodi dell'albero
(nel nostro esempio) e quindi le due operazioni possono avere luogo
contemporaneamente.
Però è impossibile prevedere se i nodi resteranno agli antipodi fino alla
fine delle due operazioni, quindi non si può usare un ibrido: o usi le
sezioni critiche o te ne sbarazzi completamente (qualcuno ha proposto
"piccole" sezioni critiche, ma il metodo non ha riscosso un gran successo
dati che si trattava sempre di un compromesso).
In pratica si usano 128 alberi binari contenenti nodi piccoli, ......, medi,
....., grandi. In questo modo si spera che non tutti i thread abbiano
bisogno di prendere nodi dallo stesso albero.
Capirai bene che comunque questa non è una soluzione infatti molti programmi
allocano blocchi di dimensione fissa e quindi accederebbero sempre allo
stesso albero, inoltre l'algoritmo non è più quello ottimo che avevamo
previsto con un albero unico.
Sezioni critiche: ([A, ..., J] = operazioni eseguite da thread diversi)
A
B
C
D
E
F
G
H
I
J
= 10 "cicli".
WaitFree/LockFree:
A   B   C
                 D     E            (c'è stata una lieve interferenza)
                                F  G   H   I   J
= 3 "cicli".
Tu mi dirai "Ma tanto la CPU simula il multitasking" eseguendo prima un
thread per 50 ms, poi l'altro e così via, quindi il tempo complessivo è lo
stesso alla fine.
Questo potrebbe essere vero se non fosse che oggi si punta molto sui sistemi
multiprocessore perché costano meno di un singolo processore equivalente.
Con le sezioni critiche ci sono sprechi enormi, infatti n-1 processori
potrebbero essere fermi ad aspettarne uno solo!
Differenze tra metodi lockfree e waitfree? Quelli lockfree semplicemente
provano a rifare l'operazione all'infinito finché non ci riescono e questo
potrebbe portare a (altamente improbabili) stalli fra due thread con la
stessa priorità in lotta per il "possesso" della stessa area della struttura
dati. Quelli waitfree invece completano l'operazione del thread che
interferisce (lo aiutano, in sostanza) e poi ricominciano ad eseguire la
loro. Problemi? Si potrebbe finire con l'aiutare un thread che aiuta un
altro thread che aiuta un altro.......... Dato che quest'ultima ipotesi è
*veramente* improbabile, i metodi waitfree sono preferibili e, neanche a
dirlo, più difficili da realizzare di quelli lockfree.
Praticamente le sezioni critiche bloccano a livello di CODICE, cioè fanno sì
che per es. due thread non eseguano la funzione BBT_InsertNode()
contemporaneamente, invece i metodi waitfree operano a livello di NODI cioè
entrano in azione soltanto quando effettivamente due o più thread iniziano a
litigare per il possesso di un nodo.
Che bella 'sta roba :-)))
Ci sarebbe anche un terzo metodo pseudo-lockfree/waitfree, ma per saperne di
più dovrai aspettare una mia pubblicazione ;-)
Dimenticavo! Un altro vantaggio dei metodi senza sezioni critiche è il tempo
di risposta.
Inserire uno o più nodi (operazioni concatenate: inserire molti nodi in
maniera atomica, cioè gli altri thread vedono (1) nessun nodo inserito o (2)
tutti i nodi inseriti, cioè sembrerà che i nodi siano stati inseriti tutti
in blocco) è un'operaz. relativamente lunga, dato che è anche necessario
ribilanciare l'albero. Se si sveglia un thread con priorità altissima (il
nocciolo sta per fondere!!!) e vuole accedere all'albero mentre un altro
thread è in una sezione critica, dovrà aiutare l'altro thread (per un totale
di 2 Thread-Switch "verso" e "da" il thread da aiutare) a terminare l'intera
operazione e questo può richiedere tempo.
In tutti e 3 i metodi (includendo anche il mio e parlando forzatamente di
"aiuti" anche nel metodo lockfree) si possono verificare varie possibilità:
a) riusciamo ad eseguire la nostra operazione senza incontrare ostacoli;
b) incontriamo un thread "fermo su un nodo", ma noi siamo di passaggio
quindi lo aiutiamo a proseguire del minimo indispensabile affinché possiamo
passare e andare per la nostra strada;
c) incontriamo un thread "fermo su un nodo" e dobbiamo aiutarlo fino alla
fine perché dobbiamo fare esattamente la sua stessa strada.
In realtà s'incontrano situazioni che sono una via di mezzo tra la (a) e la
(c). La (a) è molto probabile quando la struttura dati è molto grande e c'è
poca congestione, mentre la (c) è altamente improbabile perfino con molto
traffico ==> con un'altissima probabilità il tempo di attesa prima di
eseguire la nostra operazione sarà minimo.
Kiuhnm
P.S. E' vero, siamo OT, ma nella email ho un gran macello...comunque ho
finito con le dissertazioni :-)


title: Innovazione nelle AT?

text:
Stefano Gaburri wrote:
> scherzi a parte, ti interesserà _certamente_ questo gioco di Chris
> Crawford, veramente innovativo oltre l'immaginabile:
>
http://www.the-underdogs.org/game.php?id=2435
Ti farò sapere che ne penso.
Kiuhnm


title: Innovazione nelle AT?

text:

Infatti ho scritto "il tutto convertito in formato testo".
Il DOS non usa dei veri e propri operatori, ma dei comandi, come ben sai.
E' un po' come usare le funzioni del C anziché i più intuitivi e comodi
operatori del C++.
Al limite usiamo il mouse così siamo a posto. Quando l'autore dell'AT
ritiene che non sia sufficiente per es. richiedere che due oggetti vengano
combinati, farà apparire un piccolo menù dinamico con le opzioni...
Oppure manda dall'oculista i tuoi studenti! (magari sono soltanto daltonici
:-))))) )
Kiuhnm


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> E quindi è troppo poco espressivo. Dovrai convenire che questa
 > è una mancanza non da poco.
Bisogna giocare molto sul contesto. Tieni conto che il mio obiettivo
non e' una simulazione (l'obiettivo di Inform) ma un racconto e/o un
gioco: non mi interessa che il world model sia completo o realistico,
ma che sia usabile e gradevole. Se non si puo' fare una struttura
fissa e bisogna cesellare su misura quasi ogni volta, tanto meglio: il
racconto non sapra' di 'meccanico'. Un artista non bada al lavoro ma
al risultato :-)
> L'idea del semplice è carina, però questo è un problema.
> Come lo risolveresti?
Lavorandoci sopra parecchio in direzioni non formali :-)
Purtroppo per i prossimi anni non prevedo di poter fare ne' questo ne'
altro, trovo solo lavori noiosi e poco redditizi che lasciano ben poco
spaziotempo :-/
In ogni caso, la situazione dell'input e' ben descritta qui:
http://ars.userfriendly.org/cartoons/?id=20040616
Grazie per la panoramica sui waitfree/lockfree!
   .Erix.


title: Innovazione nelle AT?

text:
Stefano Gaburri wrote:
> io provo ancora a insegnare il COPY di DOS agli allievi ingegneri
 > informatici e loro mi guardano come fossi un babbuino viola...
Beh, io non ti ho mai visto di persona, non posso confermare ne'
smentire :-)
   .Erix. (che e' tornato alla linea di comando)


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> E' un po' come usare le funzioni del C anziché i piů intuitivi
 > e comodi operatori del C++.
Mi disattivo per non iniziare un flame OT :-)
   .Erix.


title: Innovazione nelle AT?

author: SaintPumpkin

text:
Kiuhnm wrote:
> Enrico Colombini wrote:
>
>>No, diventerebbe ([] e' il prompt):
>>
>>  giacomo
>>  [giacomo] penna
>>
>>Non si usano i verbi! :-)
>
>
> E quindi è troppo poco espressivo. Dovrai convenire che questa è una
> mancanza non da poco.
> L'idea del semplice è carina, però questo è un problema.
> Come lo risolveresti?
>
Il verbo potrebbe essere nella risposta del parser, ad esempio:
penna > gigi
'Consegni la penna al portiere della nazionale'
A me non sembra male come idea, però chi l'ha ideata deve per forza
mettersi al lavoro ;-)


title: Innovazione nelle AT?

text:
SaintPumpkin wrote:
> Il verbo potrebbe essere nella risposta del parser, ad esempio:
>
> penna > gigi
>
> 'Consegni la penna al portiere della nazionale'
come dire: per risolvere il "guess the verb", togliamo ogni controllo al
giocatore. E se io la penna gliela volevo ficcare nell'occhio? per me è
un approccio assoluamente limitato... va bene per un esperimento, ma non
ha senso discuterne come fosse un sistema generico/alternativo.
ciao
S


title: Innovazione nelle AT?

author: tomb

text:
SaintPumpkin wrote:
>
> Il verbo potrebbe essere nella risposta del parser, ad esempio:
>
> penna > gigi
>
> 'Consegni la penna al portiere della nazionale'
>
> A me non sembra male come idea, però chi l'ha ideata deve per forza
> mettersi al lavoro ;-)
E se il target è astratto? Come tradurresti
 >guarda fuori
bai
t


title: Innovazione nelle AT?

text:
Inseguivo i banditi del tempo quando Stefano Gaburri scrisse...
 > i SO moderni usano la GUI
I SO moderni usano GUI e shell insieme, a seconda di cosa devi fare. :)
--
Atrus di Myst
"Be careful what you wish for. You never know who will be listening."
Or what, for that matter." -- Terry Pratchett
http://legendknights.tk


title: Innovazione nelle AT?

text:

BigInt a, b, c, d, e, f;
C++:
b = "3455333444543";
c = "987766234545433";
d = "8779767862347652";
e = "89734987359873";
f = "39828879898398";
a = ((a >>> 3) + (((b <<< 23)*(c >>> 15)) % f) + (e >> 2)*f) >>> 3;
>>> e <<< non esistono, ma rappresentano sempre un esempio di operatori.
Avrei potuto mettere qualcos'altro senza problemi, ma questi sono i piů
"belli" da vedere e linguaggi simili al C++ o estesi li supportano.
C:
b = BN_Init("3455333444543");
c = BN_Init("987766234545433");
d = BN_Init("8779767862347652");
e = BN_Init("89734987359873");
f = BN_Init("39828879898398");
a = BN_RRot(BN_Add(BN_Add(BN_RRot(BN_RRot(a, 3)),
    BN_Mod(BN_Mul(BN_LRot(b, 23), BN_RRot(c, 15)), f)),
    BN_Mul((BN_SHR(e, 2), f)), 3);
E potrei avere sbagliato qualche parentesi nella traduzione...
A me sembra un buonissimo esempio di codice offuscato, ma se vuoi proprio
farti male... :-)
Inoltre nota che č necessario inserire le due iniziali BN di BigNum,
altrimenti non potremmo distinguere tra operazioni per BigNum, BigFloat,
Matrix, ecc... (BN_RRot(), BF_RRot(), M_Mul())
Il C++ invece supporta l'overloading quindi sceglie automaticamente la
funzione giusta in base al tipo dei parametri.
Kiuhnm


title: Innovazione nelle AT?

text:
Enrico Colombini wrote:
> Bisogna giocare molto sul contesto. Tieni conto che il mio obiettivo
> non e' una simulazione (l'obiettivo di Inform) ma un racconto e/o un
> gioco: non mi interessa che il world model sia completo o realistico,
> ma che sia usabile e gradevole. Se non si puo' fare una struttura
> fissa e bisogna cesellare su misura quasi ogni volta, tanto meglio: il
> racconto non sapra' di 'meccanico'. Un artista non bada al lavoro ma
> al risultato :-)
Noi (posso dire "noi"?) vogliamo creare una vera alternativa al parser
attuale. Il tuo approccio può dare dei buoni risultati (e ti sfido a
dimostrarcelo!) però pone dei problemi.
Magari va bene per certi tipi di avventure, ma non per altre.
>> L'idea del semplice è carina, però questo è un problema.
>> Come lo risolveresti?
>
> Lavorandoci sopra parecchio in direzioni non formali :-)
Chi vivrà vedrà :-)
> Purtroppo per i prossimi anni non prevedo di poter fare ne' questo ne'
> altro, trovo solo lavori noiosi e poco redditizi che lasciano ben poco
> spaziotempo :-/
Chiedi ad Einstein e a Lorentz!
> In ogni caso, la situazione dell'input e' ben descritta qui:
>
http://ars.userfriendly.org/cartoons/?id=20040616
Mi appare una sfilza di thread e messaggi...sei sicuro che sia il link
preciso?
> Grazie per la panoramica sui waitfree/lockfree!
Prego!
Kiuhnm


title: Innovazione nelle AT?

text:
Stefano Gaburri wrote:
> come dire: per risolvere il "guess the verb", togliamo ogni controllo
> al giocatore. E se io la penna gliela volevo ficcare nell'occhio? per
> me è un approccio assoluamente limitato... va bene per un
> esperimento, ma non ha senso discuterne come fosse un sistema
> generico/alternativo.
Infatti è per questo che ritengo che pochi operatori potenti risolverebberi
il guess the verb.
Al posto degli operatori si potrebbero usare i verbi PRENDI, DAI, ecc..., ma
è piuttosto osceno e inoltre avete notato quanta gente preferisce scrivere
"x window" anziché "examine window"?
Questo perché si tende ad evitare cose più lunghe e ripetitive e "x" è una
scorciatoia di indubbia utilità.
Allora perché non usare
penna > Giovanni
Per dare la penna a Giovanni?
Certo le azioni sono in qualche modo limitate anche qui.
Con il trascinamento delle parole, apparirebbe il seg. sotto-menù:
1) dare
2) infilare in un occhio
E' un male?
E' un bene che l'utente perda tempo a cercare d'infilare la penna negli
occhi a tutti i personaggi quando l'autore ha previsto questa opzione
soltanto per uno di essi, o è meglio dire esplicitamente al giocatore se
un'azione è possibile o non lo è?
Al limite si può mostrare l'azione per ogni personaggio o coppia di
oggetti/persone però credo che stresserebbe soltanto il giocatore, infatti
il gioco semplicemente si rifiuterebbe di farlo fornendo, nella più rosea
delle ipotesi, uno straccio di motivazione.
L'idea del controllo tramite mouse mi alletta sempre di più.
Inoltre l'esplorazione non avverrebbe eslusivamente tramite ipertesto (cosa
che, secondo me, disorienta), ma anche tramite nuove finestre (un po' come
quando si naviga e si tengono aperte varie finestre).
Per es. ammettiamo di dover portare molti oggetti da una stanza all'altra.
Non si potrebbe facilitare l'operazione permettendo al giocatore di tenere
aperte entrambe le finestre delle stanze?
Direi di permettere al giocatore di vedere tutti i luoghi direttamente
raggiungibili.
Per es., se hai già visitato tutta la case, dovresti poter scrivere "cucina"
per vedere apparire immediatamente la finestra con la descrizione della
cucina e il prompt.
Se invece la locazione (può essere anche un personaggio?)  non fosse
conosciuta o raggiungibile, basterebbe dirlo al giocatore.
Ho detto molte cose banali, ma a volte si danno per scontate e poi ci si
accorge che si partiva da premesse differenti.
Kiuhnm


title: Innovazione nelle AT?

text:
Kiuhnm ha scritto:
>>In ogni caso, la situazione dell'input e' ben descritta qui:
>>
http://ars.userfriendly.org/cartoons/?id=20040616
>
>
> Mi appare una sfilza di thread e messaggi...sei sicuro che sia il link
> preciso?
Penso che erix voleva farti vedere questa immagine:
<
http://www.userfriendly.org/cartoons/archives/04jun/uf006836.gif
>
"Who has time to read?" E' proprio vera 'sta cosa!
Giovanni
--
Giovanni Riccardi
personal:
http://www.composizioni.net
   weblog:
http://www.composizioni.net/addv
     work:
http://www.anxur.it


title: Innovazione nelle AT?

text:
Giovanni Riccardi wrote:
> <
http://www.userfriendly.org/cartoons/archives/04jun/uf006836.gif
>
Ah...
Kiuhnm


title: Innovazione nelle AT?

text:
Ola',
> Infatti è per questo che ritengo che pochi operatori potenti risolverebberi
> il guess the verb.
> Al posto degli operatori si potrebbero usare i verbi PRENDI, DAI, ecc..., ma
> è piuttosto osceno e inoltre avete notato quanta gente preferisce scrivere
> "x window" anziché "examine window"?
Secondo me bisognerebbe andare verso qualcosa di simile allo SCUMM...
Da 4 a 10-12 verbi al massimo.
Si ripristina il buon vecchio USA e non se ne parla piu'.
Rob
--
Posted via Mailgate.ORG Server -
http://www.Mailgate.ORG


title: Innovazione nelle AT?

text:
"Roberto Grassi" <
robg...@yahoo.it
> ha scritto nel messaggio
news:15aee6264f4d4dce055...@mygate.mailgate.org...
> Secondo me bisognerebbe andare verso qualcosa di simile allo SCUMM...
> Da 4 a 10-12 verbi al massimo.
Anche io stavo pensando proprio al vecchio caro SCUMM...
Ignazio


title: Innovazione nelle AT?

text:
Ola'.
> > Secondo me bisognerebbe andare verso qualcosa di simile allo SCUMM...
> > Da 4 a 10-12 verbi al massimo.

> Anche io stavo pensando proprio al vecchio caro SCUMM...
Urka, ho pensato adesso che questa mi fa proprio meritare
il titolo di "nemico delle AT". ;)



title: Innovazione nelle AT?

text:
Roberto Grassi wrote:
> Secondo me bisognerebbe andare verso qualcosa di simile allo SCUMM...
> Da 4 a 10-12 verbi al massimo.
> Si ripristina il buon vecchio USA e non se ne parla piu'.
No dai, usa è senza fantasia... alla fine diventa
una matrice di tentativi!!!
t


title: Innovazione nelle AT?

text:
Ola',

Hai ragione Tomb, ma sai quanti "guess the verb" ti puo' evitare?



title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Il C++ invece supporta l'overloading quindi sceglie
 > automaticamente la funzione giusta in base al tipo dei parametri.
Per un valore abbastanza basso di "sempre" :-)
Pnso di essere stato tra i primi a usare il C++... e probabilmente
anche tra i primi a considerarlo un pessimo esempio di design, dopo
qualche anno di impiego.
   .Erix.


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Noi (posso dire "noi"?) vogliamo creare una vera alternativa al parser
> attuale.
Ho capito che "voi" volete creare un'alternativa al parser attuale. Io
invece vorrei proprio eliminare sia il concetto di parser che, in gran
parte, quello di world model!
> Mi appare una sfilza di thread e messaggi...sei sicuro che sia il link
> preciso?
Sorry. Erata corige:
http://www.userfriendly.org/cartoons/archives/04jun/xuf006836.gif
   .Erix.


title: Innovazione nelle AT?

text:
tomb wrote:
> No dai, usa č senza fantasia... alla fine diventa
> una matrice di tentativi!!!
Non e' che col parser dopo un po' sia molto diverso.
   .Erix.


title: Innovazione nelle AT?

text:
Enrico Colombini wrote:
>
> Non e' che col parser dopo un po' sia molto diverso.
>
Beh ovvio, se è scritta coi piedi è anche peggio.
A me il guess the verb piace nel senso che se la storia,
le descrizioni, gli eventi sono combinati bene ti portano
nel peggiore dei casi a scoprire in un tempo relativamente
breve il verbo. E' sempre la stessa storia.
bai
t


title: Innovazione nelle AT?

text:
Inseguivo i banditi del tempo quando Roberto Grassi scrisse...
 > Si ripristina il buon vecchio USA e non se ne parla piu'.
IMHO un "usa" globale potrebbe essere introdotto, però con le dovute misure.
- ci deve essere comunque la possibilità di usare un comando serio; "usa
forbici su carta" non deve annullare la possibilità di scrivere "taglia
carta con forbici"
- l'autore si mantiene comunque la possibilità di non far funzionare "usa";
cioè, se io scrivo "usa autocarro" il programma mi chiederà di essere più
specifico.
--
Atrus di Myst
"Susan knew that modern theory said that dreams were only images thrown
up while the brain was filing the day's events. She would have been more
reassured if the day's events had ever included flying white horses, huge
dark rooms and lots of skulls." -- Terry Pratchett
http://ladyblonde.net
 - L'episodio 9 è online!


title: Innovazione nelle AT?

text:
Ciao,
> - ci deve essere comunque la possibilità di usare un comando serio; "usa
> forbici su carta" non deve annullare la possibilità di scrivere "taglia
> carta con forbici"
Ma certo.
> - l'autore si mantiene comunque la possibilità di non far funzionare "usa";
> cioè, se io scrivo "usa autocarro" il programma mi chiederà di essere più
> specifico.
D'accordo anche qui.



title: Innovazione nelle AT?

text:
Enrico Colombini wrote:
> Ho capito che "voi" volete creare un'alternativa al parser attuale. Io
> invece vorrei proprio eliminare sia il concetto di parser che, in gran
> parte, quello di world model!
ottenendo cosě Galaga... :)


title: Innovazione nelle AT?

text:
Ola',

ROTFL! 8)



title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Infatti è per questo che ritengo che pochi operatori potenti risolverebberi
> il guess the verb.
Eh beh, è ovvio, se li togli i verbi non devi più indovinarli... sai che
soluzione...
> Al posto degli operatori si potrebbero usare i verbi PRENDI, DAI, ecc..., ma
> è piuttosto osceno e inoltre avete notato quanta gente preferisce scrivere
> "x window" anziché "examine window"?
> Questo perché si tende ad evitare cose più lunghe e ripetitive e "x" è una
> scorciatoia di indubbia utilità.
ma cosa c'entra? x è solo una scorciatoia puramente lessicale, non
c'entra assolutamente nulla con un operatore overloaded. L'overloading è
precisamente quello che si deve _evitare_ perché scopo preciso
dell'avventura è far sì che l'utente scopra i verbi (le azioni)
originali escogitate dal progettista. Abolire i verbi è una livella
totale che non risolve i problemi, semmai distrugge tutta la ricchezza
del modello (e così facendo magari risolve anche i problemi connessi, ma
con ben poco vantaggio).
A me pare che vogliate scrivere un gioco che fa tutto lui in vece (nei
panni/al posto) del giocatore: scusate, ma continuo a preferire il
contrario. Comunque senza offesa ma questa mi sembra un discussione
assolutamente campata in aria, e me ne tiro fuori - invito chiunque a
realizzare un prototipo anche microscopico che usi un approccio come
quello ventilato in questo thread prima di riparlarne...
ciaociao
S


title: Innovazione nelle AT?

text:
Enrico Colombini wrote:
> Per un valore abbastanza basso di "sempre" :-)
> Pnso di essere stato tra i primi a usare il C++... e probabilmente
> anche tra i primi a considerarlo un pessimo esempio di design, dopo
> qualche anno di impiego.
Non sono in molti a pensarla come te, infatti il C# riconferma il C++ con
piccole modifiche qua e là.
Più che altro sono stati eliminati problemi che il C++ ha ereditato
direttamente dal C.
Comunque qui siamo veramente OT.
Quale alternativa proporresti al C# o al C++?
Kiuhnm


title: Innovazione nelle AT?

text:
tomb wrote:
> Beh ovvio, se è scritta coi piedi è anche peggio.
> A me il guess the verb piace nel senso che se la storia,
> le descrizioni, gli eventi sono combinati bene ti portano
> nel peggiore dei casi a scoprire in un tempo relativamente
> breve il verbo. E' sempre la stessa storia.
Hai mai giocato a "guess the verb"?
Giocarci è semplicemente stressante.
Kiuhnm


title: Innovazione nelle AT?

text:
Stefano Gaburri wrote:
> Eh beh, è ovvio, se li togli i verbi non devi più indovinarli... sai
> che soluzione...
L'hai detto: non devi più indovinarli, quindi è una soluzione.
> ma cosa c'entra? x è solo una scorciatoia puramente lessicale, non
> c'entra assolutamente nulla con un operatore overloaded.
Sei tu che travisi qualsiasi cosa dica, quindi facciamola finita qui e amen.
Se sempre esclusivamente polemico e dimostri anche di non aver capito (o di
non voler capire) quello che si vuol dire.
Dovresti essere *molto* più elastico quando parli con gli altri e non
calpestare tutto e tutti, *IMHO*.
Kiuhnm


title: Innovazione nelle AT?

text:
Ola',
> Sei tu che travisi qualsiasi cosa dica, quindi facciamola finita qui e amen.
> Se sempre esclusivamente polemico e dimostri anche di non aver capito (o di
> non voler capire) quello che si vuol dire.
> Dovresti essere *molto* più elastico quando parli con gli altri e non
> calpestare tutto e tutti, *IMHO*.
Ne ho gia' parlato in un thread privato con Stefano.
Egli e' apodittico.
Bisogna solo 'pesare' quello che dice.
Mica e' la Madonna! 8)



title: Innovazione nelle AT?

author: Paolo Vece

text:
"tomb" <
vai...@caldarola.net
> wrote:
> E se il target è astratto? Come tradurresti
>
>  >guarda fuori
Out look
--
Paolo Vece -
pv...@mclink.it
 -
http://www.vece.net


title: Innovazione nelle AT?

text:
Stefano Gaburri wrote:
> ottenendo così Galaga... :)
Oppure Raskolnikov, a seconda dell'abilita' dell'autore :-)
   .Erix.


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Sei tu che travisi qualsiasi cosa dica, quindi facciamola finita qui e amen.
ma scusa come fai a mettere sullo stesso piano un operatore overloaded
con l'uso di x per examine? Cos'è che non ho capito o non voglio capire?
S


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Non sono in molti a pensarla come te, infatti il C# riconferma
 > il C++ con piccole modifiche qua e là.
A me veramente pare che il C# riconfermi Java :-)
> Quale alternativa proporresti al C# o al C++?
Dipende dall'uso. Ad esempio Lua + C, o Python + C per i programmatori
object-dependent.
Io uso il C++ solo per la comodita' delle librerie Borland, ma ormai
soltanto rigorosamente come super-C evitando accuratamente
l'overloading e le conversioni automatiche (e quando mi serve
flessibilita' gli metto dentro Lua).
   .Erix.


title: Innovazione nelle AT?

text:
Enrico Colombini wrote:
> A me veramente pare che il C# riconfermi Java :-)
Qui ho parlato per sentito dire, quindi avrai sicuramente ragione tu.
>> Quale alternativa proporresti al C# o al C++?
>
> Dipende dall'uso. Ad esempio Lua + C, o Python + C per i programmatori
> object-dependent.
> Io uso il C++ solo per la comodita' delle librerie Borland, ma ormai
> soltanto rigorosamente come super-C evitando accuratamente
> l'overloading e le conversioni automatiche (e quando mi serve
> flessibilita' gli metto dentro Lua).
Invece io uso C+asm, pensa un po'!
Però uso un compilatore C++ in modo da poter mantenere alcune comodità come
poter dichiarare le variabili quando voglio, ecc...
Ho usato molto il C++ per sviluppare un engine 3d 5 anni fa (i "soci" mi
hanno abbandonato e il progetto è naufragato...alla fine stavo facendo tutto
io, in pratica). Gli operatori e l'overloading sono una gran cosa, altroché!
Lì lavoravo coi quaterni, le matrici e i tensori (modulo per la simulazione
della fisica) e sarebbe stato un vero casino in C.
Kiuhnm


title: Innovazione nelle AT?

text:
Roberto Grassi wrote:
> Ne ho gia' parlato in un thread privato con Stefano.
> Egli e' apodittico.
Anche te perņ...ho dovuto prendere il dizionario! :-)
Kiuhnm


title: Innovazione nelle AT?

text:
Stefano Gaburri wrote:
> ma cosa c'entra? x è solo una scorciatoia puramente lessicale, non
> c'entra assolutamente nulla con un operatore overloaded.
Prima di tutto nessuno ha parlato di overloading (o almeno non io).
Gli operatori << e >> non sono sovraccaricati di significati diversi.
Se il significato dell'operatore è abbastanza generico, potrà essere
utilizzato in vari contesti senza ricorrere all'overloading.
Inoltre non ho mai accostato gli operatori all'uso della 'x'.
Ho detto: << avete notato quanta gente preferisce scrivere "x window"
anziché "examine window"? Questo perché si tende ad evitare [di scrivere]
cose più lunghe e ripetitive e "x" è una scorciatoia di indubbia utilità>>.
Adesso dimmi cosa c'è di incomprensibile in quanto ho detto.
Ho semplicemente fatto notare che la gente non ha voglia di scrivere molto e
quindi degli operatori sono preferibili alle parole.
Chi ha voglia di scrivere 4 PIU' 5 UGUALE 9?
Nessuno.
> L'overloading è precisamente quello che si deve _evitare_ perché
> scopo preciso dell'avventura è far sì che l'utente scopra i verbi (le
> azioni) originali escogitate dal progettista. Abolire i verbi è una
Non sono per niente d'accordo. Questo è il difetto più grave di tutti i
giochi.
Se i giocatori la pensassero come te non avrebbero criticato (pur avendo
apprezzato l'idea) così tanto l'AT "guess the verb".
L'enigma perfetto (il programma) non deve "valutare" il procedimento, ma il
risultato.
Per es. sul ng. di Matematica rispondiamo agli stessi quesiti proponendo
spesso metodi completamente diversi ottenendo però lo stesso risultato.
Nessuno si permette di dire che un metodo non è ammesso: quello che conta è
il risultato.
La stessa cosa dovrebbe accadere con gli enigmi.
In un certo senso i giochi di strategia raggiungono proprio questo
obbiettivo, infatti non impongono al giocatore una sequenza prestabilita di
azioni, ma si aspettano dei risultati.
E' bello per un programmatore vedere che dei giocatori hanno superato dei
livelli utilizzando strategie alle quali non aveva assolutamente pensato ed
è anche bello vedere che il gioco ha continuato a funzionare e non ha
scritto sullo schermo "Sequenza di azioni non valida".
> livella totale che non risolve i problemi, semmai distrugge tutta la
> ricchezza del modello (e così facendo magari risolve anche i problemi
> connessi, ma con ben poco vantaggio).
Questa non è ricchezza.
Sarebbe come dire che una legge fisica generica è meno ricca di una legge
per l'oggetto A, più una legge per l'oggetto B, ecc...
La legge unica è di gran lunga preferibile e sicuramente più completa.
> A me pare che vogliate scrivere un gioco che fa tutto lui in vece (nei
> panni/al posto) del giocatore: scusate, ma continuo a preferire il
> contrario. Comunque senza offesa ma questa mi sembra un discussione
> assolutamente campata in aria, e me ne tiro fuori - invito chiunque a
> realizzare un prototipo anche microscopico che usi un approccio come
> quello ventilato in questo thread prima di riparlarne...
Penso che bisognerebbe essere più umili nella vita e in particolar modo
quando ci si rapporta con gli altri.
Non puoi dire che tutti tranne te partecipano senza accorgersene a
discussioni "campate in aria", inoltre nessuno ha voglia di mettersi a fare
un prototipo solo per poterne poi riparlare con una persona così tanto alla
mano.
Kiuhnm


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Invece io uso C+asm, pensa un po'!
Piu' che giusto, se lavori a basso livello.
> Gli operatori e l'overloading sono una gran cosa, altroché!
Soprattutto quando tenti di rileggere il codice dopo 5 anni :-)
Comunque sia chiaro che io mi diverto a fare il bastian contrario, ma
in realta' sono piuttosto pragmatico: in pratica uso quello che mi fa
comodo in un dato momento, uso i linguaggi come la casetta degli
attrezzi e non ne considero alcuno 'superiore' o 'inferiore' per
principio.
E poi con te non c'e' molto divertimento a fare il bastian contrario:
sei troppo ragionevole :-)
   .Erix.


title: Innovazione nelle AT?

author: Kyoba

text:
Ho la forte impressione che quello che consigli tu sia, in fin dei
conti, mettere un parser da avventura grafica (*) in un'avventura
testuale.
(1) Ok, ok, le AG non hanno parser, ma avete capito quello che intendo
:)
La mia opinione è che alla fine tutte queste idee fanno fuori dal
seminato, e quindi bene o male devono essere ampiamente sperimentate
... certo è che se le avventure testuali hanno lo stesso parser da 30
anni ci sarà un motivo.
Pensate alle vostre avventure preferite e immaginatele col parser
mono-parola (2); quasi sicuramente arriverete ad un punto in cui vi
accorgerete che le cose non funzionano più. Perchè invece di partire
da un'idea di parser su cui costruire avventure non si parte invece da
un'idea/storia, e domandarsi: Qual'è il modo migliore per RACCONTARLA?
(2) Immaginate un'avventura in cui il protagonista ha una collana che
se baciata tre volte vi porta nel favoloso mondo dei Puffi. Il
protagonista ne scopre questa proprietà a metà gioco. Se all'inizio
del gioco, scrivendo "collana" si ha il menu
1) Esamina
2) Bacia
abbiamo già sputtanato il plot.
Se la possibilità 2) appare solo dopo aver scoperto la proprietà
magica della collana, abbiamo minato la rigiocabilità e ridicolizzato
il world model.
Aspetto commenti.
Saludos
         Kyoba


title: Innovazione nelle AT?

text:
> Hai mai giocato a "guess the verb"?
> Giocarci è semplicemente stressante.
Una buona avventura non contiene "guess the verb".
Per evitare quello famigerato di "Time Warp", per esempio, bastava un
po' di playtesting.


title: Innovazione nelle AT?

text:
Enrico Colombini wrote:
> Soprattutto quando tenti di rileggere il codice dopo 5 anni :-)
Io ti sto dicendo: "Certo che una pistola sarebbe utile per difendersi dai
criminali..." (vabbe'...)
E tu mi stai rispondendo: "Certo, specialmente puntandotela addosso e
premendo il grilletto".
(e premetto che non sono un criminale, altrimenti avrebbe senso :-) )
Gli op. e l'overl. sono strumenti potentissimi, perň vanno usati bene.
Un codice del tipo
Matrix A, B, C;
.
.
A = B + C;
Lo capirň anche dopo 1000 anni.
Devi avere avuto un'infanzia veramente difficile con gli op. e l'overl.
Probabilmente ti hanno passato il codice di un pazzo che usava gli operatori
anche ordinare un array :-)
> E poi con te non c'e' molto divertimento a fare il bastian contrario:
> sei troppo ragionevole :-)
Purtroppo o per fortuna sono fatto cosě... :-)
Kiuhnm


title: Innovazione nelle AT?

text:

Il "guess the verb" è fisiologico nella AT con parser, c'è poco da fare.
Il "guess the right solution" inoltre è fisiologico nelle AG.
Almeno raggiungiamo il livello delle AG, dato che andare oltre e raggiungere
il livello degli RTS è quasi impossibile.
Kiuhnm


title: Innovazione nelle AT?

author: test

text:
Kiuhnm wrote:
> Almeno raggiungiamo il livello delle AG, dato che andare oltre e raggiungere
> il livello degli RTS è quasi impossibile.
beh, parte dei meccanismi dei mud vanno in quella direzione.
f.


title: Innovazione nelle AT?

text:
Kyoba wrote:
> Pensate alle vostre avventure preferite e immaginatele col parser
> mono-parola (2); quasi sicuramente arriverete ad un punto in cui vi
> accorgerete che le cose non funzionano più. Perchè invece di partire
> da un'idea di parser su cui costruire avventure non si parte invece da
> un'idea/storia, e domandarsi: Qual'è il modo migliore per RACCONTARLA?
Il modo migliore per raccontarla lo decide l'autore.
"Decidiamo pure quante note usare, ma poi decido io quali suonare e quando
suonarle".
> (2) Immaginate un'avventura in cui il protagonista ha una collana che
> se baciata tre volte vi porta nel favoloso mondo dei Puffi. Il
> protagonista ne scopre questa proprietà a metà gioco. Se all'inizio
> del gioco, scrivendo "collana" si ha il menu
> 1) Esamina
> 2) Bacia
La soluzione è semplice. "Bacia" non apparirà poiché il protagonista non ha
un motivo per farlo.
Ho detto più volte che i menù saranno dinamici.
Alcuni oggetti avranno 2 voci, mentre altri ne avranno 20, se necessario
(usando eventualmente anche sotto-menù, per comodità).
Kiuhnm


title: Innovazione nelle AT?

text:
test wrote:
>> Almeno raggiungiamo il livello delle AG, dato che andare oltre e
>> raggiungere il livello degli RTS č quasi impossibile.
>
>
> beh, parte dei meccanismi dei mud vanno in quella direzione.
In che modo? Non ricordo piů...i mud sono rpg testuali?
Kiuhnm


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Se i giocatori la pensassero come te non avrebbero criticato (pur avendo
> apprezzato l'idea) così tanto l'AT "guess the verb".
ok, vedo che continui a proporre un nuovo stile di progettazione
prendendo come contro-esempio avventure che sono semplicemente scritte
male (quelle in cui appunto bisogna "pescare" il verbo giusto avendo già
capito da tempo cosa bisogna fare). A meno che non ritieni superfluo che
il giocatore abbia già in mente quale azione vuole fare quando usa un
verbo o un operatore...
comunque come ho detto io sono molto poco interessato a quest'approccio,
e dubito di vedere mai alcunché scritto in questo stile. Se accadrà lo
proverò volentieri, con la mente scevra da qualsivoglia preconcetto. Per
adesso mi chiamo fuori dalla discussione, anche perché mi sembra che ti
stia scazzando e mi dispaice...
ciao
S
> Non puoi dire che tutti tranne te partecipano senza accorgersene a
> discussioni "campate in aria", inoltre nessuno ha voglia di mettersi a fare
> un prototipo solo per poterne poi riparlare
scusa eh, ma è proprio quello che invece viene detto a tutti i
programmatori che propongono una modifica o un'innovazione... di
implementarla, cioè...


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Il "guess the right solution" inoltre è fisiologico nelle AG.
si chiama gameplay.


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Gli op. e l'overl. sono strumenti potentissimi, però vanno usati bene.
Appunto, io non li uso quasi mai :-)
> A = B + C;
> Lo capirò anche dopo 1000 anni.
Anche se A, B e C sono elementi di interfaccia utente di tre classi
diverse e l'operatore e' definito cinque livelli di ereditarieta'
sopra? (caso non cosi' estremo come potrebbe sembrare).
Ovvio che nel caso matematico non ci sono problemi, ma quello e' un
overloading quasi dovuto.
> Devi avere avuto un'infanzia veramente difficile con gli op. e l'overl.
> Probabilmente ti hanno passato il codice di un pazzo
Si', il mio :-)
   .Erix.


title: Innovazione nelle AT?

text:
Enrico Colombini wrote:
> Anche se A, B e C sono elementi di interfaccia utente di tre classi
> diverse e l'operatore e' definito cinque livelli di ereditarieta'
> sopra? (caso non cosi' estremo come potrebbe sembrare).
> Ovvio che nel caso matematico non ci sono problemi, ma quello e' un
> overloading quasi dovuto.
A questo punto potrei ribattere che quel problema esiste anche usando le
funzioni al posto degli operatori..., ma non lo farò! ;-)
Kiuhnm


title: Innovazione nelle AT?

text:

Però gameplay è un termine senza connotati positivi e/o negativi.
Potrebbe non essere un "buon gameplay".
Kiuhnm


title: Innovazione nelle AT?

text:
Stefano Gaburri wrote:
>> Se i giocatori la pensassero come te non avrebbero criticato (pur
>> avendo apprezzato l'idea) cosě tanto l'AT "guess the verb".
>
> ok, vedo che continui a proporre un nuovo stile di progettazione
Allora fammi un elenco perché mi sono perso.
In tutto ne ho proposti due: operatori e menů dinamici.
> prendendo come contro-esempio avventure che sono semplicemente scritte
> male (quelle in cui appunto bisogna "pescare" il verbo giusto avendo
> giŕ capito da tempo cosa bisogna fare). A meno che non ritieni
> superfluo che il giocatore abbia giŕ in mente quale azione vuole fare
> quando usa un verbo o un operatore...
Il problema essenziale č che la corrispondenza azione <=> verbo non č
biunivoca.
> comunque come ho detto io sono molto poco interessato a
> quest'approccio, e dubito di vedere mai alcunché scritto in questo
> stile. Se accadrŕ lo proverň volentieri, con la mente scevra da
> qualsivoglia preconcetto. Per adesso mi chiamo fuori dalla
> discussione, anche perché mi sembra che ti stia scazzando e mi
> dispaice...
Con "ti stia" intendi che "tu mi stia facendo incazzare" o che "io mi stia
incazzando".
La differenza č sottile, ma imprescindibile :-)
Comunque dalle mie parti "scazzare" significa sbagliare, quindi non ho
capito bene il senso...
> scusa eh, ma č proprio quello che invece viene detto a tutti i
> programmatori che propongono una modifica o un'innovazione... di
> implementarla, cioč...
Perň alla bambina che propose di sgonfiare le ruote del camion per farlo
passare sotto il ponte non hanno chiesto di sgonfiarle da sola.
Kiuhnm


title: Innovazione nelle AT?

text:
> La soluzione è semplice. "Bacia" non apparirà poiché il protagonista non ha
> un motivo per farlo.
Ma l'hai letto il resto del messaggio? :D


title: Innovazione nelle AT?

text:

OK, ho saltato un pezzo. Non l'ho fatto volutamente.
Mi pare che questo sia un caso molto particolare.
Che cosa succede se il giocatore lo fa subito senza sapere niente della
collana?
La trama del gioco cambia? Si affrontano enigmi diversi?
Non credo.
Comunque ecco una possibilità: si usa un menù del tipo
- osserva
- prendi
- <altro>
Scegliendo <altro> apparirà un sotto-menù dove sarà possibile scegliere
altre azioni (suddivise per categorie). Se l'azione scelta sarà sensata,
verrà eseguita e aggiunta automaticamente al menù principale che diventerà:
- osserva
- prendi
- bacia
- <altro>
Dato che le combinazioni sono molte, sarà difficile (ma non impossibile)
arrivarci per puro caso.
A questo punto i vantaggi sono:
1) non è possibile scegliere sinonimi non previsti dall'autore;
2) le azioni più comuni (e sufficienti per risolvere il 99% degli enigmi)
sono già disponibili;
Kiuhnm


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Stefano Gaburri wrote:
>
>>>Se i giocatori la pensassero come te non avrebbero criticato (pur
>>>avendo apprezzato l'idea) così tanto l'AT "guess the verb".
>>
>>ok, vedo che continui a proporre un nuovo stile di progettazione
>
>
> Allora fammi un elenco perché mi sono perso.
elenco? Io intendevo solo gli operatori...
> Comunque dalle mie parti "scazzare" significa sbagliare, quindi non ho
> capito bene il senso...
no no, intendevo incazzando (ma con la s è meno forte)
> Però alla bambina che propose di sgonfiare le ruote del camion per farlo
> passare sotto il ponte non hanno chiesto di sgonfiarle da sola.
pensavo fossi un programmatore, non una bambina... :)
ciao
S


title: Innovazione nelle AT?

text:
Stefano Gaburri wrote:
>> Perň alla bambina che propose di sgonfiare le ruote del camion per
>> farlo passare sotto il ponte non hanno chiesto di sgonfiarle da sola.
>
> pensavo fossi un programmatore, non una bambina... :)
Sono una bambina programmatrice...
Kiuhnm


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> In che modo? Non ricordo più...i mud sono rpg testuali?
I mud sono una marea di cose, ma in italia purtroppo sono principamente
rpg testuali di ambientazione fantasy.
Grazie al cielo i mud non sono solo quello e gli aspetti più
interessanti sono altrove, nei moo e nei mush e nella varie ibridazioni.
In pratica, a differenza delle at, il guess the verb ha peso molto
minore, in quanto si adatterebbe male ad un mondo nel quale si va e si
torna in maniera ricorsiva.
Quello che importa è la crezione di un mondo verisimile che possa
"funzionare" ed interagire con i giocatori: a differenza della at,
quando il giocatore si stacca e smette di giocare, il mondo continua ad
andare avanti.
I motori di verisimiglianza dei mud (di quelli buoni) sono anni luce
avanti rispetto a quelli delle at, anche perché non possono se non in
minima parte usufruire dello sviluppo narrativo tipico delle at.
In italia un buon esempio è the gate.
Esistono ovviamente eccezioni, tra cui il mud a cui collaborai io, che è
in realtà una serie di at tra loro correlate attraverso meccanismo mud.
f.


title: Innovazione nelle AT?

text:
fabrizio venerandi wrote:
> Grazie al cielo i mud non sono solo quello e gli aspetti più
> interessanti sono altrove, nei moo e nei mush e nella varie
> ibridazioni. In pratica, a differenza delle at, il guess the verb ha
> peso molto minore, in quanto si adatterebbe male ad un mondo nel
> quale si va e si torna in maniera ricorsiva.
Cioè? E' un mondo fatto a matrioska?
> Quello che importa è la crezione di un mondo verisimile che possa
> "funzionare" ed interagire con i giocatori: a differenza della at,
> quando il giocatore si stacca e smette di giocare, il mondo continua
> ad andare avanti.
Questo accade già con gli rpg online se non sbaglio.
Kiuhnm


title: Innovazione nelle AT?

text:
Kiuhnm ha scritto:
> fabrizio venerandi wrote:
>
>>Grazie al cielo i mud non sono solo quello e gli aspetti più
>>interessanti sono altrove, nei moo e nei mush e nella varie
>>ibridazioni. In pratica, a differenza delle at, il guess the verb ha
>>peso molto minore, in quanto si adatterebbe male ad un mondo nel
>>quale si va e si torna in maniera ricorsiva.
>
>
> Cioè? E' un mondo fatto a matrioska?
"Ricorsiva" non nel senso matematico/informatico. Ho notato che hai la
tendenza a interpretare sempre e comunque qualsiasi discorso in termini
informatici. Vabbé che uno lavora 24/24h come programmatore, però...
Il senso di quello che dice fabrizio è che nei mud si entra e si esce.
>>Quello che importa è la crezione di un mondo verisimile che possa
>>"funzionare" ed interagire con i giocatori: a differenza della at,
>>quando il giocatore si stacca e smette di giocare, il mondo continua
>>ad andare avanti.
>
>
> Questo accade già con gli rpg online se non sbaglio.
che come gameplay derivano proprio dai mud.
Giovanni
--
Giovanni Riccardi
personal:
http://www.composizioni.net
   weblog:
http://www.composizioni.net/addv
     work:
http://www.anxur.it


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Cioè? E' un mondo fatto a matrioska?
nel senso che ritorni negli stessi posti a fare cose che hai già fatto,
il che è impensabile in una at.
> Questo accade già con gli rpg online se non sbaglio.
"Già" nel senso di "successivamente"?
f.


title: Innovazione nelle AT?

text:
Giovanni Riccardi wrote:
> "Ricorsiva" non nel senso matematico/informatico. Ho notato che hai la
> tendenza a interpretare sempre e comunque qualsiasi discorso in
> termini informatici. Vabbé che uno lavora 24/24h come programmatore,
> perň... Il senso di quello che dice fabrizio č che nei mud si entra e
> si esce.
Nel linguaggio comune ricorsivo significa "ricorrente". Chevvoddě???
Per es. quanti rapporti sessuali ricorsivi hai avuto nella tua vita?
Kiuhnm


title: Innovazione nelle AT?

text:
fabrizio venerandi wrote:
>> Questo accade già con gli rpg online se non sbaglio.
>
> "Già" nel senso di "successivamente"?
Già.
Kiuhnm


title: Innovazione nelle AT?

text:
Kiuhnm ha scritto:
> Nel linguaggio comune ricorsivo significa "ricorrente". Chevvoddì???
> Per es. quanti rapporti sessuali ricorsivi hai avuto nella tua vita?
L'etimologia è la stessa per le due parole (sempre da "ricorrere", che è
dal latino "recurrere" = "correre indietro", nel senso di ritornare al
punto di partenza). Anche se "ricorsivo" si usa più frequentemente nel
linguaggio matematico/informatico ha più o meno lo stesso significato:
una successione ricorsiva (che in molti libri americani di matematica,
anche recenti, è chiamata "recurrence") "ritorna indietro" nel senso che
ogni termine è ricavato dal precente. Anche se la matrioska da te citata
(riferendoti alla ricorsività in programmazione) è giusta per rendere
l'idea della ricorsività, questa si chiama così perché raggiunto
l'ultimo passo della ricorsione si "torna indietro" nello stack.
Giovanni
--
Giovanni Riccardi
personal:
http://www.composizioni.net
   weblog:
http://www.composizioni.net/addv
     work:
http://www.anxur.it


title: Innovazione nelle AT?

text:
Kiuhnm wrote:
> Per es. quanti rapporti sessuali ricorsivi hai avuto nella tua vita?
heh, un esempio a caso!   :)))))
ciao
PS ok, lo dico:  "io per ora mi limito a iterare". Non sono riuscito a
trattenermi...


title: Innovazione nelle AT?

text:
Stefano Gaburri wrote:
> PS ok, lo dico:  "io per ora mi limito a iterare". Non sono riuscito a
> trattenermi...
Chissà se il "trattenermi" fa parte della battuta o no...
Kiuhnm


title: Innovazione nelle AT?

text:
Giovanni Riccardi wrote:
> L'etimologia è la stessa per le due parole (sempre da "ricorrere",
L'etimologia spesso inganna, infatti può essere ambigua e a volte
completamente fuorviante.
> che è dal latino "recurrere" = "correre indietro", nel senso di
> ritornare al punto di partenza). Anche se "ricorsivo" si usa più
> frequentemente nel linguaggio matematico/informatico ha più o meno lo
> stesso significato: una successione ricorsiva (che in molti libri
> americani di matematica, anche recenti, è chiamata "recurrence")
> "ritorna indietro" nel senso che ogni termine è ricavato dal
> precente. Anche se la matrioska da te citata (riferendoti alla
Secondo me questa interpretazione non è corretta.
Tu lo interpreti come "tornare indietro", ma gli americani lo usano nel
senso di "ripetersi", "riapparire", "riaccadere" ("instance of happening
again").
Anche in italiano si parla di sogni "ricorrenti".
f(x) = 2 f(x-1) + 1
è una ricorrenza non perché per calcolare f(x) bisogna andare all'elemento
precedente, infatti si potrebbe dover andare al successivo.
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.
> ricorsività in programmazione) è giusta per rendere l'idea della
> ricorsività, questa si chiama così perché raggiunto l'ultimo passo
> della ricorsione si "torna indietro" nello stack.
Considera di avere 3 funzioni a(x), b(x), c(x), tali che a(x) chiama b(x) e
questa chiama c(x).
All'ultimo passo si torna indietro, ma non vedo ricorsione.
Il "tornare indietro" è proprio delle "strutture" annidate, non di quelle
ricorsive.
Si può pensare alla ricorsione come a un auto-annidamento.
La ricorsione avviene quando una funzione chiama se stessa ed esce dalla
ricorsione quando "ritorna" da un'altra istanza di se stessa.
Kiuhnm


title: Innovazione nelle AT?

text:
Kiuhnm ha scritto:
> Secondo me questa interpretazione non è corretta.
Non era la mia, ma del Garzanti.
> Tu lo interpreti come "tornare indietro", ma gli americani lo usano nel
> senso di "ripetersi", "riapparire", "riaccadere" ("instance of happening
> again").
"tornare indietro" è la traduzione letterale dal latino. Il significato
sta giustamente nel senso di ripetersi e riaccadere (cioè è come se si
"tornasse indietro nel tempo").
> Anche in italiano si parla di sogni "ricorrenti".
Infatti. Ho detto che le due parole sono simili. E anche se ricorsivo è
molto più usato in ambito informatico/matematico col senso che sappiamo,
è corretto usarlo come sinonimo di ricorrente.
> f(x) = 2 f(x-1) + 1
> è una ricorrenza non perché per calcolare f(x) bisogna andare all'elemento
> precedente, infatti si potrebbe dover andare al successivo.
L'espressione tradotta in italiano vuol dire "La funzione f(x) è data da
due volte la funzione f(x-1), ecc." il che è equivalente a dire che per
calcolare f(x) mi serve calcolare prima f(x-1).
Per le successioni la cosa è ancora più evidente. In effetti nella
maggior parte dei libri italiani di analisi I si parla di "successioni
definite per riccorenza" (la "recurrence" dei libri americani non quella
dei "sogni ricorrenti").
> 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"
> Il "tornare indietro" è proprio delle "strutture" annidate, non di quelle
> ricorsive.
> Si può pensare alla ricorsione come a un auto-annidamento.
> La ricorsione avviene quando una funzione chiama se stessa ed esce dalla
> ricorsione quando "ritorna" da un'altra istanza di se stessa.
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.
Sul fatto che poi la ricorsione venga spesso "confusa" (in senso
etimologico) con l'effetto matrioska è una cosa abbastanza comune (ma
non va bene fuori dall'ambito informatico) visto l'estremo fascino che
quest'effetto ha sulle menti. La ricorsività è splendidamente descritta
in uno dei miei libri preferiti, "Godel, Escher, Bach: un'eterna
ghirlanda brillante" di D.R. Hofstadter con il concetto di "strano
anello". Cito dal libro:
"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.
