Newsgroup: it.comp.giochi.avventure.testuali
Titolo: Inform 7 vs 6

Salve a tutti!
Sono nuovo, o almeno, seguo la scena IF da diverso tempo, anche se a
sprazzi, e visto che ultimamente ho diverso tempo libero, volevo
provare a programmare qualcosa. Qualche annetto fa ci avevo provato
con l'inform 6 ma avevo imparato ben poco. Ora ho visto che è uscita
la release 7 con un sistema di linguaggio completamente diverso.
A questo punto vorrei farvi una domanda: visto che devo imparare il
linguaggio inizio direttamente col 7 o ancora è meglio programmare col
6 e poi passare successivamente al 7?
Grazie e saluti.

 6 e poi passare successivamente al 7?
Salve e benvenuto, trovati una poltrona comoda, serviti qualcosa dal 
mobile bar e fai come se fossi a casa tua...
Assumo che tu non sia interessato a Inform6 (che io continuo a ritenere 
una scelta validissima, premetto), se non come cosa propedeutica a Inform 7.
A quanto ne so' l'autore medio puo' completamente ignorare Inform6 (che 
al limite puo' servire per realizzare estensioni et similia). Quindi 
credo proprio che tu possa iniziare direttamente con Inform7.
Non ho ancora trovato il tempo di valutare la localizzazione italiana 
realizzata da Massimo Stella, ma vedo che sia lui che Leonardo Boselli 
la usano con profitto.
Aggiungo, come faccio sempre con i nuovi autori, un consiglio non 
richiesto: gioca, gioca tanto, gioca alle I.F. migliori - vecchie e 
nuove, sopratutto a quelle in lingua inglese.
bye
-- 
Paolo Lucchesi - pluc...@NOSPAMtin.it

 credo proprio che tu possa iniziare direttamente con Inform7.
Anche a me sembra la scelta migliore per iniziare. Forse l'ostacolo
maggiore è il fatto che il "linguaggio naturale" di Inform7 non è
veramente naturale per molti italiani ;)
Comunque mi sto dilettando a tradurre in italiano the "Inform 7
Handbook" di Jim Aikin. Il primo capitolo sarà disponibile nei
prossimi giorni. E' una guida pensata per principianti in età scolare
e potrebbe essere utile a chi non mastica bene l'inglese per muovere i
primi passi. Sto anche convertendo il codice d'esempio presente nel
libro in modo che sia compatibile con le estensioni in italiano.
--
Ciao, Leo 
bos...@uno.it
Mille e Una Avventura
http://milleuna.sf.net

 libro in modo che sia compatibile con le estensioni in italiano.
bene, non conoscevo questo libro e potrà essere sicuramente molto
utile. Anche io ho dei progettini in mente.
Ciao.
Alessandro.

 poter scrivere in lingua italiana?
Sarebbe bello ma suppongo voglia dire riscrivere tutto ni (il 
compilatore inform7->inform6). Inoltre ho l'impressione - non ci ho 
ragionato su piu' di tanto, potrei sbagliarmi - che l'italiano sia un 
po' piu' articolato dell'inglese e conseguentemente non sia 
semplicissimo realizzare una sintassi precisa che sia anche italiano 
corretto (ricordo che Inform7 e' solo apparentemente un linguaggio 
naturale, in realta' ha una sintassi precisa ed e' anche abbastanza 
puntiglioso).
Un parziale vantaggio, come gia' diceva forse Leonardo, e' anche quello 
di avere a colpo d'occhio divisi il "codice" (in inglese) e il "testo" 
(in italiano).


 (in italiano).
Di Inform 7 non mi piace il fatto che ti ritrovi a scrivere, un po' come 
avviene per il web, codice HTML e code behind, come si fa in php.
tommaso

 avviene per il web, codice HTML e code behind, come si fa in php.
A questo punto allora vi faccio un altra domanda: a parte la
differenza di usare un linguaggio più "naturale" ed avere un IDE
integrato, ci sono altre differenze con la versione 6? Voglio dire la
7 ha delle cose in più in termini di "potenza" o è perfettamente
uguale?

 avviene per il web, codice HTML e code behind, come si fa in php.
Mah, io credo che l'autore medio (o anche medio alto) non scriva una 
riga che sia una di Inform6 (se ho capito bene quello che vuoi dire).


 uguale?
In teoria no, ni compila da Inform7 a Inform6, e poi inform631 compila 
da Inform6 a codice z-machine o glulx (poi non credo che nessun essere 
umano possa scrivere il codice intermedio generato da ni).
In pratica Inform7 ha altri strumenti, come le rule, ed e' radicalmente 
diverso da Inform6.
Sono stato chiaro? ;-)


 Sono stato chiaro? ;-)
no :P cos'è la rule?? ed in cosa è radicalmente diverso se poi alla
fine usa lo stesso compilatore inform 6.31?

 (in inglese) e il "testo" (in italiano).
Paradossalmente, potrebbe essere più semplice scrivere in Inform 7 per
un italiano con scarse conoscenze di inglese (perché tratterebbe il
sub-set dell'inglese di Inform come un linguaggio di programmazione)
piuttosto che per un inglese (perché potrebbe essere tentato di
parafrasare).
[OT]
Dopo questa perla di saggezza, ne approfitto per segnalare ancora la
mia prima avventura testuale in italiano:"Perle di Saggezza", scritta
in Inform 7 con le estensioni in italiano. Chi volesse provarla la può
scaricare da 
http://milleuna.sf.net
E' disponibile in due versioni: Pure (senza grafica e suoni) e Deluxe
(con grafica, suoni e la parole chiave alla "Blue Lacuna"). La
versione Hyper (dove le parole chiave sono sostituite da collegamenti
ipertestuali) è già pronta, ma non l'ho ancora pubblicata perché non
gira su Git 1.2.4 (per un bug di Git!), ma solo sul Glulx incluso in
Inform. E' un peccato perché con la versione Hyper si può completare
l'avventura anche solo cliccando con il mouse!

 mia prima avventura testuale in italiano:"Perle di Saggezza", scritta...
Evidentemente hai un certo feeling con le perle di saggezza :D :D :D

 no :P cos'� la rule?? 
Le rule sono il principale strumento per gestire lo svolgimento del 
gioco in Inform7, ad esempio:
Instead of taking something: say "You have no particular need just now."
 > ed in cosa � radicalmente diverso se poi alla
 > fine usa lo stesso compilatore inform 6.31?
Sono due linguaggi molto differenti; oltre alla sintassi, usano un 
impostazione differente (oggetti, proprieta', attributi, classi in 
Inform6, things e rules in Inform7) e fondamentalmente hanno una 
filosofia dietro differente ("da programmatore" e "da scrittore", anche 
se per entrambi ci vogliono entrambe le capacita').
Il fatto che I7 produca un codice intermedio I6 (illegibile, a quanto ne 
so) non vuol dire granche'. A monte i linguaggi sono decisamente diversi.


Caspita, il titolo del post ricorda una lotta tra titani!
Caro Alexain, non so che primo approccio tu voglia fare al mondo
dell'IF...però le cose sono due.
Se vuoi imparare un buon linguaggio di programmazione, completo e
flessibile non imparare Inform 6. Non perché non sia flessibile ma per
il fatto che è piuttosto limitato. Per avvalerti della multimedialità
dovresti fare uno sforzo aggiuntivo ed imparare anche i segreti del
Glulx, con risultati limitati ad immagini fisse, semplici interfacce
grafiche e un limitato controllo sul suono.
Credo che per le possibilità multimediali che offre, invece il
linguaggio TADS sia il migliore in piazza, al momento. Si tratta di un
vero linguaggio di programmazione, probabilmente non semplice da
imparare ma estremamente valido e dalle molteplici possibilità.
Attualmente però TADS è in Inglese.
Anche Inform 7 è in inglese. Inform 7 è nato come esercizio
accademico, in realtà. Ed è uno dei pochi linguaggi di programmazione
ad imitare il linguaggio naturale inglese. Non concordo molto con
Leonardo: chi ha una scarsa conoscenza dell'inglese dovrebbe armarsi
di dizionario e capire i veri significati del codice che si scrive,
poiché spesso utilizzare una parola al posto di un'altra può
esonerarti dallo scrivere il doppio in termini di definizioni.
Il messaggio è il seguente: Inform 7 è caruccio e peculiare! Andrebbe
imparato solamente per il fatto che imita il LN. In quanto a
multimedialità è ancor più limitato del fratellino IF6 però ha anche
una fervente e straordinaria comunità in fermento, che lo aggiorna, lo
migliora, scrive estensioni utilissime (ce ne sono diverse che
costituiscono per esempio parti di codice belli e pronti per le
Intelligenze Artificiali degli NPC di una ipotetica avventura o altre
ancora che permettono di inserire immagini con un comando e così
via...) e così via.
Dai un'occhiata al simpatico tutorial Palle di Cannone di Leonardo,
sul suo sito, e dimmi un pò se non è caruccio :) La programmazione di
quel tutorial è minimale, elegante e raggiunge gli obiettivi preposti.
Questi sono i grandi pregi di IF7.
PS: Leonardo sto giocando la tua avventura in versione Deluxe, tra un
pò pubblicherò la recensione su NonUnSoloSpettacolo!

 via...) e così via.
Così mi confondi ancora di più. Se dici che è solo un esercizio
accademico torno alla 6, anche perchè io comunque sono un classico
programmatore procedurale dai tempi del pascal e del C, e l'approccio
sintattico di i7 mi potrebbe venire scomodo. Lo farei solo se avessi
effettivamente un reale vantaggio in termini di potenzialità.

 sintattico di i7 mi potrebbe venire scomodo.
<cut>
Dico anch'io la mia, in termini puramente personali.
1) I limiti della multimedialità in inform sono oggettivi, ma la mia
opinione è che se voglio scrivere un'avventura testuale voglio che sia
testuale, i contenuti multimediali sono secondari, accessori,
superflui. Ma sapete, è una mia vecchia posizione, quindi so che molti
non la condividono.
2) i7 ha dalla sua un'interfaccia di programmazione strepitosa, di
fatto è un vero proprio tool di sviluppo che evidenzia il codice, crea
le mappe, ordina gli elementi, esegue test sul codice, insomma è
fantastico. L'ho visto però alla sua alba, molti anni fa, e ora non so
quali migliore vi siano state apportate. Questo però riguarda il tool
di sviluppo, non il linguaggio in sé.
3) venendo al linguaggio vero e proprio, io credo che l'uso del
linguaggio naturale sia inutile e pesante, sia nello scrivere il
codice, sia nel tenerlo ordinato. Può essere utile per un anglofono
che ha poca dimestichezza con la programmazione (quindi scrive ad es.
"The magic box is a container" faccio un esempio a caso forse non
correttissimo) ma già per un non anglofono mi sembra assurdo ("La
scatola magica is a container"??? non so, verrebbe così? chiedo
conferma agli italianisti di i7 ;-) )
Ho visto alcuni sorgenti di i7, ed erano veramente atroci. Molto
meglio l'asettico ma ordinato linguaggio tipo c, che se ben tabulato e
commentato diventa facilmente leggibile. (
Object "Magic box"
has name "scatola" "magica",
description "La scatola magica"...
has container;
)
Tanto più che se dici di essere un "classico programmatore
procedurale" allora mi sa che inform6 lo  impari in mezz'ora :-)
4) sulle differenze tecniche di prestazioni e di potenzialità del
linguaggio in sé non so nulla.
Ciao, facci sapere poi le tue scelte ;-)
fraenrico

 chiedo conferma agli italianisti di i7 ;-) )
Ancora peggio:
"The scatola magica is a female container."
L'aggettivo female serve per informare... Inform sul tipo di articolo
o preposizione articolata da usare con "scatola magica".


 tra un pò pubblicherò la recensione su NonUnSoloSpettacolo!
Sigh! Una carriera stroncata sul nascere! ;->
Tieni conto che era il mio primo tentativo, la prossima volta (se mai
ce ne sarà una) prometto di fare meglio.
Grazie per la recensione... anche se sarà una strocatura ;)


 sintattico di i7 mi potrebbe venire scomodo.
@ Alexain: Se sei un amante del C allora TADS dovrebbe essere
l'approccio migliore e più professionale. Unico limite: non c'è
traduzione in italiano. Mi ripeto ancora e sottolineo che nonostante
I7 possa suonare confusionario è molto, molto, molto, molto, molto
rapido in fase di programmazione. Superiore in eleganza e praticità ad
I6, imho.
@ Occasional: La prima volta che la mia betatester, Alioth,
programmatrice in Pascal e C, vide il sorgente di IF7 di Battaglia
Magica non mi rivolse la parola per almeno una settimana, tanto era
'brutto' il codice. Però nel tempo ho maturato la convinzione che
comunque anche 'The scatola magica is a container.' non è altro che
una serie di '[creazione elemento] [definizione classe]
[inizializzazione]'. Il corrispettivo in I6 sarebbe Object Scatola
"scatola magica";   has container; ... Qua ho dovuto scrivere due
righe e non una come al caso di sopra!
@ Leonardo: Ma no! Onestamente non ho ancora pensato ad un voto in
generale, comunque tranquillo, io son buono! Non è questo il caso,
comunque il mio voto alla orgc di Bad Toast ha notevolmente alzato la
media!

Allora, cerco di tirare le somme di ciò che ho capito dai vostri
consigli e da quello che ho letto in giro, soprattutto dall'articolo
del sito brass lantern su tads3 e inform7. Da premettere che sono un
mac-user.
inform7 => pro: librerie in italiano, molta documentazione in giro,
portabilità assoluta (lo z-code gira dappertutto), IDE ufficiale
ottimo e multipiattaforma - contro: linguaggio sintattico scomodo per
gli italiani, estensioni ancora poche ma in crescita, multimedialità
per il momento poca o nulla (solo con glux).
Inform6 => pro: librerie in italiano, tantissima documentazione,
portabilità assoluta, tantissime estensioni grazie alla comunità,
linguaggio procedurale molto pulito - contro: possibilità di
obsolelscenza con l'uscita di i7, compilazione da linea di comando
scomoda (ci sono diversi IDE ma nessuno ufficiale, l'infit è solo
windows), multimedialità anche qua poca o nulla.
TADS3 => pro: molta documentazione, linguaggio ad oggetti simile allo C
++, parser leggermente migliore dell'Inform, gestione di alcuni
elementi (come gli NPC) migliori dell'Inform, multimedialità totale
con immagini e audio. - contro: ambiente di lavoro mono-piattaforma
(solo windows, c'è qualcosa per linux ma non supporta tutto,
inesistente per mac), nessuna portabilità (gli interpreti migliori per
windows, su linux e mac c'è qualcosa solo per il testuale, altri
sistemi non esiste nulla), librerie solo in inglese.
A questo punto posso dire che mi sarebbe piaciuto tantissimo provare
TADS3, ma senza le librerie in italiano non potrei fare praticamente
nulla al momento, non ho una conoscenza dell'inglese tale da poter
scrivere IF in inglese al momento, inoltre è poco portabile per ora e
l'ambiente esclusivo per windows è un altro svantaggio per me. Per
quanto riguarda Inform, credo che la comunità ormai si stia buttando
sempre più su i7, con un conseguente abbandono graduale della versione
6, quindi conviene fare un piccolo sforzo ed imparare il linguaggio
"naturale" di i7. Inoltre l'IDE sotto mac è veramente splendido.
Vediamo se riesco a tirare fuori qualcosa di buono.
Grazie a tutti. A presto. :-)
Alessandro

 media!
Il fatto che non ti sei sbilanciato non mi tranquillizza.
Comunque aspetto con fiducia... e rassegnazione ;)
