[Formati] Definizione e obiettivi

Simo Sorce simo at softwarelibero.it
Sun Jan 30 20:27:26 UTC 2005


Premessa: ho la forte sensazione che la pensiamo molto molto allo stesso
modo, ci vuole un po' di tempo per affinare alcune sfumature di
linguaggio che a volte danno l'impressione di parlare di cose diverse
mentre intendiamo la stessa cosa.

On Sun, 2005-01-30 at 15:48 +0100, Mirko Maischberger wrote:
> Simo Sorce wrote:
> > On Fri, 2005-01-28 at 18:10 +0100, Mirko Maischberger wrote:
> > 
> >>Per definizione pragmatica intendevo una definizione che parte 
> >>dall'esistente (elenco di quelli che riteniamo essere formati liberi) e 
> >>prova a darne una definizione per sintesi.
> > 
> > 
> > SI, l'avevo intuito, e la ritengo una posizione perdente e soprattutto
> > una posizione che pone il fianco ad inconsistenze a breve termine e a
> > lungo termine.
> 
> Sì, concordo. E' un terreno scivolosissimo. Il mio dubbio si basava solo 
> sul fatto che non siamo nel 1984, che oggi il software libero esiste ed 
> usa molti formati: quindi una definizione di principio scorretta 
> potrebbe porre molti più vincoli e problemi di quelli necessari.

Beh perché? Il software libero non deve essere vincolato al solo uso di
formati liberi, tenderà ad esserlo sperabilmente, ma non vedo alcun
terremoto se si scopre che alcuni formati comuni non sono liberi.

> Inoltre secondo me partire da definizioni di principio, correggendo il 
> tiro sull'esistente solo a posteriori è ancora più rischioso che tentare 
> una sintesi.

Si ma preferirei quel tipo di rischio.

> > Secondo me stai confondendo formato standard con formato libero (anche
> > perché l'ultimo non è neanche ancora definitivamente definito :-)
> 
> Hai una definizione ufficiale e mondialmente riconosciuta di "formato 
> standard" da passarmi? Credo che sarebbe un bel punto fermo dal quale 
> iniziare :-)

No, però possiamo molto facilmente (e grossolanamente) affermare che un
formato è standard se definito da un organismo di standardizzazione
riconosciuto.

> > Non importa il nome che dai al formato.
> 
> Il senso era: immagina un mondo senza ECMA... il software libero non 
> avrebbe ad oggi un formato per i caratteri... orrore ti sto scrivendo 
> questa mail in un formato proprietario... È un'esagerazione? Sicuro?

Secondo me è un'esagerazione, non c'è bisogno, direi anzi, non ci _deve_
essere bisogno di un ente di standardizzazione per definire cosa sia un
formato libero.

> Comunque anche sulla storia dell'importanza del nome non sono sicuro. 
> L'importante è capirsi, vero, ma il nome del formato _libero_ è uno: se 
> poi ne esistono altre varianti non libere vanno chiaramente indicate 
> come tali, specialmente da un documento di principio. Sono specifiche 
> equivalenti, ma immagino anche che non siano identiche.

Si, intendevo non fosse importante quando tutte le specifiche alla fine
si equivalgono e sono libere.

> Metti che si scopra un'incompatibilità tra ECMA-6 ed 
> ANSI-Xvattelappesca.x, magari a causa di un errore tipografico. Come lo 
> dici al resto del mondo che stanno sbagliando loro e non tu che usi 
> ECMA-6... Ti assicuro che nelle specifiche ECMA-6 "ASCII" non c'è 
> scritto mai...

Non capisco l'attinenza, se entrambi sono liberi chi se ne frega? :-)

> > Se leggi il documento postato vedrai che il fatto che le specifiche
> > siano distribuite a pagamento non è una pregiudiziale per la libertà del
> > formato.
> 
> Dal documento che ho letto:
> """... condizione necessaria affinché il
> Formato possa essere definito libero è che la documentazione che lo
> descrive sia distribuita insieme all'applicativo che ne fa uso _senza_
> _costi_ _aggiuntivi_ o che sia liberamente accessibile a chiunque 
> _senza_ _restrizioni_ attraverso un comune mezzo di comunicazione 
> telematica...
> """

Si sono sempre rimasto in dubbio su questa parte, è semplicemente
inapplicabile in alcuni casi, direi a me stesso e fog (l'abbiamo
elborata più o meno assieme): "bel tentativo".

Insomma non mi soddisfa ancora.

> Io il "senza restrizioni" l'avevo inteso come "eppure gratis".
> E l'idea del bundle con il programma è forse efficace, ma estremamente 
> pragmatica. E sinceramente mi pare un po' una forzatura.

La vedrei più come linea guida del buon formato libero più che come una
discriminante in effetti.

> > Non importa, quando fu definito il "software libero" pensi ce ne fosse
> > veramente molto in giro? e quando fu definito il copyleft? :)
> 
> Sì, ci avevo pensato, ma ho imparato su queste liste che il software è 
> peculiare. Mentre non sono sicuro che i formati lo siano, in particolare 
> non allo stesso modo del software.

I formati sono fondamentali, sono una parte della battaglia per
permettere al software libero di sopravvivere.

> Sì, ma non era quello il punto sollevato. La distinzione era tra 
> specifiche non libere gratuite e specifiche non libere a pagamento.
> 
> Le specifiche POSIX non sono solo a pagamento, immagino siano anche 
> coperte da copyright e che non sia possibile classificarle come 
> documentazione libera, indipendentemente dal prezzo. Sbaglio? (in 
> effetti non credo di averne mai letto la licenza di copyright)

E che importa se la documentazione ufficiale POSIX sia libera o meno?
Quello che conta è che io possa scrivere documentazione libera
equivalente e che io possa implementare i formati dati descritti
liberamente (da cui se ne evince che saranno liberi).

> Poi lo ammetto: sto provando a vedere se riusciamo a tenere dentro la 
> definizione di "libero" almeno l'ascii...

Non l'ho capita...

> Io non sono dell'idea di appiattire "formato" su "documentazione del 
> formato". Non m'interessa definire "formato con documentazione libera", 
> ma "formato libero". Vedo la documentazione come un aspetto importante, 
> molto importante, ma non fondante. E' un errore secondo me inchiodarsi 
> sulla documentazione per definire "libero".

Su questo siamo d'accordo al 101%, la documentazione che descrive il
formato e il formato stesso sono due cose differenti.

> Dire: "un formato è libero se è trattabile in modo corretto e completo 
> da software libero" è una pura affermazione di principio, affatto 
> pragmatica. Solo che secondo me non era sufficiente ed ho voluto 
> aggiungerci la documentazione e la validazione (uscendo un po' dal puro 
> principio).

Si non è sufficiente, ma non si deve cadere subito nel pragmatico per
definire meglio il concetto di formato libero.

> L'aggiunta della richiesta del validatore libero IMO è tanto pragmatica 
> quanto lo è la richiesta di documentazione libera. Coprono aspetti 
> diversi, ma ugualmente importanti. La staticità del formato e la sua 
> conoscibilità.

D'accordo al 100% infatti non ritengo necessario ai fini di definire un
formato dati come libero che lo siano la sua descrizione o che vi sia un
validatore.

> Un formato dati, a mio avviso, esiste nel momento in cui c'è un software 
> che lo tratta.

Quando esiste un software che lo tratta abbiamo una implementazione di
formato, ma esso può esistere anche senza che esista alcun software che
lo implementi (libero o meno).

>  Un formato dati libero quindi "appare" se "appare" il 
> relativo software libero.

Non sono per nulla d'accordo, secondo me ci sta benissimo che l'unica
applicazione esistente che implementi un formato dati libero sia
proprietaria, che le specifiche non siano scritte come documentazione
libera e comunque il formato sia definibile come libero.

>  E' una definizione in subordine al software 
> libero, così come il formato dati è in subordine al software (sembra 
> un'affermazione a dispetto del famoso libro di Wirth, ma quando parla di 
> strutture dati parla più in generale, a noi interessano solo quelle che 
> "escono" ed "entrano" in uno o più software).

Il formato libero non è subordinato al software libero, può benissimo
essere veicolato e elaborato da applicazioni proprietarie.

> Qui mi viene da pensare: se "algoritmi+strutture dati=programmi" allora 
> se un programma è libero lo sono per forza di cose anche i formati relativi!

Purtroppo non è detto, grazie ai metalinguaggi appunto, vi possono
essere programmi liberi che utilizzano formati non considerabili liberi.

> Come avrai capito non ho ancora le idee del tutto chiare, per fortuna.

Ah è ancora tutto un mondo da esplorare, è difficile innanzitutto il
solo definire cos'è un formato dati, da li a definire quando sia libero
e quando no è ancora più difficile, ma se si risolve in modo
soddisfacente il problema di principio second me il resto viene da se.

> >> Aggiungi poi che parlare di 
> >>libertà del formato è come parlare di libertà delle idee... credo che 
> >>sia per questo che la definizione è sfuggente.
> > 
> > 
> > In parte si, m un formato è qualcosa di ben più concreto di un'idea.
> > Prova a prendere le specifiche del TCP/IP e vedrai che ci sono notevoli
> > differenze tra semplici idee e un formato consolidato e completamente
> > descritto.
> 
> Non sono affatto convinto. Cosa sono le specifiche TCP/IP secondo te? 

Una descrizione di strutture dati alla fin fine.

> un'invenzione? un'idea astratta? un'idea particolareggiata?

nessuno dei 3.

> un'implementazione in pseudo-codice? Un'idea di base completata da una 
> serie di convenzioni? o cos'altro?

di nuovo, una descrizione, che può includere molte idee, ma è un lavoro
faticoso e creativo che risponde spesso a leggi matematiche, fisiche o
logiche e infine serve per organizzare dei dati. 

> IMO, un'idea dettagliata rimane un'idea. E una convenzione non è niente 
> di più di un'idea condivisa. E' solo un'idea realizzata che può meritare 
> un altro status.

Non sono totalmente convinto che ciò sia giusto. Benché una descrizione
di un formato, in se, non sia qualcosa di immediatamente utilizzabile
non per questo ha meno dignità di quando viene realizzata.

> Certo che le specifiche TCP/IP sono delle idee esposte in modo talmente 
> chiaro da essere abbastanza vicine ad una realizzazione. Ma sempre 
> parole sono. Non posso copiarle, ma posso capirle e implementarle 
> liberamente. Posso anche scriverne una versione modificata, senza 
> bisogno che nessun documento me lo conceda. Se non voglio riscrivere 
> tutto dall'inizio, a partire da una specifica libera, posso scrivere un 
> documento che descriva le sole modifiche. Con i rischi del caso, ma ben 
> minori del richiedere documentazione libera...

Infatti, è per questo che le specifiche TCP/IP secondo me definiscono
quasi sicuramente un formato libero. Proprio perché posso implementarle
liberamente. Posso scrivere della documentazione (da rilasciare con
qualsiasi licenza) che lo descriva nuovamente in modo diverso e proprio
perché io lo posso anche modificare e utilizzare in modo diverso o in
ambiti diversi da quelli pensati originariamente.

> Sì, ma è sempre un punto di vista... Secondo me molti qui sarebbero 
> portati a dire che XCF (gimp binario) o .blend (Belnder) sono formati 
> liberi, ma questi formati non sono documentati (non al dettaglio di 
> TCP/IP, almeno stando a quello che ho trovato in rete).

È vero, quello della documentazione è un problema che va capito bene e
espanso a dovere. Però c'è da dire che se un formato è in origine
"descritto" attraverso un programma il cui sorgente è disponibile (in
questo caso non sto dicendo software libero volutamente), allora ho la
netta sensazione che si possa definire un formato dati libero, perché è
di fatto documentato. Perché se così non fosse si andrebbe a farne una
questione di qualità della documentazione che è argomentazione pelosa e
di difficile trattazione. Chiaramente non posso definire come libero un
formato la cui la unica documentazione disponibile sia offuscata a tal
punto da rendere incomprensibile come utilizzarla, ma questi sarebbero
casi patologici da definire di volta in volta come la FSF di volta in
volta definisce se una licenza da origine a software libero o meno.

> Ad oggi poi non conosco un singolo formato che goda di documentazione 
> libera (del livello di quella del TCP/IP che citavi). O nella 
> documentazione di un formato ci fai rientrare anche il codice sorgente?

Secondo me appunto potrebbe rientrarci. È una cosa da vagliare
attentamente, ma mi è capitato odi vedere codice sorgente più chiaro di
una specifica in linguaggio umano, quindi direi: perché no ?
D'altra parte il codice sorgente è scritto sempre in un linguaggio
descrittivo.

> Ok, nessun problema: per derivarlo, se vuoi che sia libero, bisogna che 
> tu ti faccia un nuovo validatore... mica voglio impedirlo. Se poi lo 
> chiami pure con un altro nome...

Io continuo ad essere scettico su questa storia del validatore, anche
perché potrebbe non essere realizzabile in alcuni casi, o troppo
complesso da realizzare, non so. Il validatore potrebbe essere richiesto
da un'organizzazione che si prendesse la briga di "certificare" i
formati come liberi. Per cui se qualcuno vuole sottoporre il proprio
formato a bollinatura allora gli tocca di avere un validatore.

> Ma il "permettere derivazioni", secondo me, va ben al di là dello scopo 
> del documento sui formati liberi. Se un formato è libero, la derivazione 
> deve essere (IMO) solo un effetto collaterale.

No, deve essere implicita. La derivazione è fondamentale per la crescita
di un formato, altrimenti sgml non si sarebbe involuto (html) ed evoluto
(xml) nel tempo, e non ci avrebbe permesso tutto il bene che html e xml
ci hanno portato.

> Anche la definizione del formato non è il formato.

No, ma lo definisce, senza definizione non puoi conoscere il formato.
La definizione è come l'occhio dell'osservatore, senza occhio non puoi
conoscere il colore, quindi a quel punto il fatto che il colore esista o
meno non ha senso.

> Neanche l'implementazione definisce il formato, ma io vorrei spostare 
> l'attenzione dalla libertà della documentazione del formato alla libertà 
> del formato stesso. Ti sembra corretto?

Correttissimo, infatti benché la definizione (in qualunque forma) sia
necessaria non credo che essa debba essere necessariamente realizzata
come documentazione o software libero.

> >>Un esempio calzante a questo proposito è RTF: inutile dire "se è 
> >>documentato è libero", se poi non esiste un modo per verificare che il 
> >>software proprietario che lo implementa, che è di fatto 
> >>l'"implementazione di riferimento", lo faccia correttamente. RTF, per 
> >>come è implementato, è libero poco più del .DOC.
> > 
> > 
> > Invece avrebbe senso, quello che bisognerebbe poter fare è costringere
> > chi ne fa derivati non conformi E non liberi a cambiare nome, a non
> > poter dichiarare di generare documenti .rtf, in quesot caso il
> > validatore è uno strumento utile a capire se c'è o meno violazione ma è
> > solo uno strumento accessorio, non deve rientare nella definizione di
> > principio, ma in una successiva serie di best-practice o cose del genere
> > IMHO.
> 
> Beh, ma "costringere" non si può... al limite si può "sbugiardare" e lo 
> strumento più efficace per farlo è un validatore. Certo che essendo un 
> "accessorio" potrebbe restare fuori dalla definizione ed essere solo una 
> raccomandazione.

Beh per costringere non avevo certo in mente di creare una "polizia del
formato libero" :-) Queste cose le lascio ad autori ed editori nostrani
o meno (DMCA, EUCD, Brevetti Software, ecc...)
Per costringere intendo: rendere evidente che il formato che tanto
dicono di implementare non è quello vero. Anzi si potrebbe in effetti
utilizzare anche metodi legali, in lacuni casi, per "costringere", dal
denunciare il bugiardo per pubblicità ingannevole al vietare l'uso del
nome del formato se questo è un marchio registrato. Ci sono insomma
anche dei mezzi legali se qualcuno vuol proprio usarli.


> > No, mi riferisco al fatto che OOo, ha "adottato" .doc, .xls, .ppt, ma
> > non per questo i formati suddetti sono più liberi. Sarebbe lo stesso se
> > fossero documentati bene ma coperti da brevetti con licenza non-RF.
> 
> Già e qui c'è un altro problema: il formatto .doc salvato da OOo è 
> implementato come software libero. Se gli avessero scritto pure della 
> documentazione libera potrebbe venir fuori che .doc è libero... E non 
> sarebbe un male... beh, non in presenza di un validatore :)

Non sarebbe comunque .doc, non quello almeno che utilizza MS nei propri
programmi.

> Dopo una breve ricerca mi pare di sì, anche se su cvs mancano le ultime 
> correzioni di Potortì. La divisione di cui si parlava (tra formati 
> liberi e formati accettabili) però non mi pare sia nemmeno accennata, 
> forse era stata solo pensata.

Si era una pensata, andrebbero divisi e definiti anche questi.

Simo.

-- 
AsSoLi - Associazione Software Libero
email: info at softwarelibero.it
website: http://www.softwarelibero.it



More information about the formati mailing list