- Questo topic ha 6 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 3 anni, 12 mesi fa da
OldClaudio.
-
CreatoreTopic
-
14 Settembre 2022 alle 14:00 #121170::
Curiosando tra i video del TUG 2022, ho trovato, tra le varie presentazioni, quella in cui vengono comparati in maniera molto succinta i principali programmi di composizione del sistema TeX esistenti (prima i vari motori di composizione, poi i formati).Tra i formati presentati, ovvero i linguaggi del sistema TeX, conoscevo già (almeno per sentito nominare) Plain TeX, LaTeX, ConTeXt; invece ero totalmente ignaro dell’esistenza di OpTeX.
Detto in due parole, OpTeX sarebbe (se ho capito bene) un formato costituito dalle macro di Plain TeX e da altre macro che consentono di poter disporre di funzionalità, come la gestione delle immagini, o come la gestione delle polizze di caratteri di tipo OpenType, indispensabili per la composizione di un comune documento di oggi. Se, fino alla comparsa di OpTeX, l’uso delle macro di Plain TeX per comporre un intero documento era difficilmente proponibile agli utenti mediamente abili, adesso la cosa sembra possibile.
Fino ad adesso la mia esperienza è limitata al solo linguaggio LaTeX. Da una parte, la voglia di provare a passare al linguaggio OpTeX, Plain TeX ampliato, è tanta; ma di seguito i miei due principali dubbi:
(a) OpTeX è un formato frutto del lavoro di un gruppo limitatissimo di persone: in pratica l’unico autore sembrerebbe il ceco Petr Olsak. Avrebbe senso mettersi a imparare l’uso del nuovo linguaggio, con il rischio che magari tra un paio di anni il progetto venga abbandonato, costringendo a muoversi di nuovo su un altro formato? In questo senso il linguaggio LaTeX presenta molta piú affidabilità.
(b) Ho paura di non rendermi conto fino in fondo di cosa significhi scrivere interi documenti con le macro di Plain TeX. L’elenco sterminato di pacchetti di LaTeX non c’è, e potrebbero comparire prima o poi necessità compositive la cui realizzazione con le macro di Plain TeX sarebbe quasi impossibile, a confronto con lo spendere un po’ di tempo nella ricerca del giusto pacchetto di LaTeX e nella lettura della sua documentazione.
In sostanza vi domando: quali sono le vostre opinioni su questo linguaggio?
In attesa dei vostri preziosi pareri, vi ringrazio e vi saluto,
Alessandro
-
CreatoreTopic
-
AutoreRisposte
-
-
14 Settembre 2022 alle 20:26 #121171::
Benvenuto nell forum.Le tue domande sono interessanti ed è difficile esprimere un parere senza avere provato ad usare OpYeX. è talmente nuovo che non mi ero accorto che viene distribuito qualcosa con l’ultima versione aggiornata di TeX Live.
Ma attento: tu usi la parola “formato“ quando invece docresti parlare di linguaggio. TeX oltre ad essere un motore di composizione mette a disposizione un liguaggio; col formato plain, estende il linguaggio nativo di TeX con una serie di nuovi comandi. Knuth per scrivere il suo YeXbook, ha usato plain, ma l’ha ulteriormente esteso con una miriade di ulterri comandi. Lui continua ad usare TeX+plain+ulteriori estensioni che si definisce lui stesso.
LaTeX è un linguaggio; Tex e pdfTeX e XeTeX e LuaTeX usano il file di formato adattato a ciascuno di questi interpreti; il Linguaggio LaTeX agevolamoltissimo l’uso dei linguaggi nativi dei vari interpreti, sovrapponendosi a loro, ma non impedendo all’utente di definirsi macro che usano esclusivamente o ricorsivamente i comandi di base/nativi dell’interprete che intende usare in relazione al formato dell’output (dvi, dvu, pdf, e altri meno noti)
ConTeXt è nato come un’estensione di TeX che contiene molti comandi nativi, a poi vi svrappone macromolti robuste con cui alcuni riescono a comporre cose belissime, ma devono imaprarsi un nuovo linguaggio. Col tempo ConTeX è passato cona laversione mkIV ad usare come intepree luatex, quindi gestisce benissimo in font OpenType. Per le immagini ha, credo, le stesse prestazioni di LaTeX, ma siccome non l’homai usato, non sono sicuro di quel che dico.
Non ti parlo delle numerose varianti dei file co composizione, che includono anche diverse versioni destinate a chi compone in cinese, in arabo, in giapponese, eccetera.
Guardando l’elenco dei file legati a OpTeX, trovo un file di formato optex.fmt che si trova nella stessa cartella dei file di formato da usare con LuaTeX come interprete. Mi domando, visto che non ho trovato nessun file di documentazione più esteso di quanto si trova scritto nel file tb134complete.pdf (gli atti della conferenza TUG 2022) perché il suo autore ha voluto fare qualcosa simile a ConTeXt, ma con funzionalità diverse.
Consigli? Non per niente il mio nick name è OldClaudio; sono davvero vecchio e uso LaTeX dalla metà degli anni ’80, sto per raggiungere i 40 anni di attività con LaTeX. Non sono più in grado di mettermi a studiare un linguaggio nuovo; ci ho provato con ConTeXt, ma quello che studiavo la mattina era già dimenticato. Dunque come non uso ConTeXt, non credo che userò mai OpTeX. Scrivere i miei testi con plain o qualcosa di un po’ più esteso di plain, è una faticaccia improba, Non riesco a capire perché ci sia gente che si ostina con plain. Quando ero ancora in servizio ho insegnato alcuni colleghi matematici ad usare LaTeX, perché loro erano ancora fermi a plain. ScopertoLATeX loro stessi si sono dati al fatidica manata sulla fronte domandandosi perché non ci fossero arrivati prima da soli.
Oggi poi, volendo strafare, c’è il linguaggio intermedio LaTeX3 che ad ogni aggiornamento del sistema TeX, diciamo ogni 10 giorni, presenta sempre delle novità, per cui ogni utente può definirsi comandi LaTeX2e che si interfacciano con le “funzioni” di LaTeX 3, in modo da poter usare nuove macro estremamente più versatili di quelle che che si possono definire con la sintassi di LaTeX2e. e rendere il proprio codice più leggibile e più facilmente mantenibile.
Aspetta a buttarti su OpTeX; te lo consiglio. Ma ovviamente questa è una mia opinione personale, e non sei tenuto a prenderla sul serio. 😀
-
15 Settembre 2022 alle 7:54 #121172::
Ciao Alessandro, ciao Claudio.
Si tratta di una questione a mio parere complessa perché conivolge valutazioni tante e diverse.
Per esempio, se il documento è costruito a più mani, chiarò che un formato recente e sconosciuto non sarà la prima scelta.
In generale sono per la sperimentazione e nulla vieta che ci si possa impratichire di OpTeX per piccoli documenti.
Dalla sua OpTeX ha certamente LuaTeX, che è il motore per cui è scritto. Immagino sia un fulmine a compilare.
Di contro, si potrebbe notare che il suo sviluppo futuro dipende da quanti utenti cominceranno a usarlo.
Alessandro se vorrai condividere le tue impressioni su eventuli tuoi esperimenti con OpTeX, sarà una buona cosa.
🙂
R.
-
15 Settembre 2022 alle 13:17 #121173::
Intanto grazie delle risposte.Ma attento: tu usi la parola “formato“ quando invece docresti parlare di linguaggio.
Sapevo che, parlando in termini approssimativi, i termini «formato» e «linguaggio» sono intercambiabili. Il formato dovrebbe essere l’iinsieme delle istruzioni, ovvero l’impostazione di alcuni parametri e soprattutto le macro del linguaggio, con cui viene avviato il motore di composizione per generare il programma di composizione. Il linguaggio dovrebbe scaturire dall’insieme delle macro contenute nel formato. Quello che differenzia il significato dei due termini, in sostanza, dovrebbero essere solo le impostazioni contenute nel formato (trascurabili per il discorso che stavo facendo). Correggetemi pure se ho un’idea sbagliata; comunque, per evitare occasioni di ambiguità, d’ora in poi userò solo il termine «linguaggio».
visto che non ho trovato nessun file di documentazione più esteso di quanto si trova scritto nel file tb134complete.pdf (gli atti della conferenza TUG 2022)
L’autore di OpTeX ha ha messo a disposizione il sito internet che riporto di seguito. Lí si trova il manuale di OpTeX, assieme ad altre utili informazioni. La lettura delle prime pagine di quel manuale, assieme a una generale conoscenza del linguaggio Plain TeX, ottenuta tramite la lettura delle parti piú significative del TeXbook, dovrebbe bastare per la maggior parte delle necessità. Con il linguaggio LaTeX invece la cosa è mooooolto meno circoscritta.
Il linguaggio LaTeX non mi ha mai fatto impazzire piú di tanto. Mi sembra che la distanza tra quello che si scrive nell’editor e quello che il motore di composizione realmente fa sia troppa. Non si ha mai la percezione di quello che accade «dentro il cofano dell’automobile»; per saperlo bisogna procedere alla lettura dei file di definizione delle macro (latex.ltx e i vari file .cls e .sty), e per farlo occorre conoscere abbastanza bene anche il linguaggio Plain TeX (un altro linguaggio). Non si tratta solo di un fatto di curiosità personale: capita spesso di dover fare qualcosa di diverso da quello che la configurazione predefinita prevede; e per farlo o si interviene sulla definizione delle macro o si usano pacchetti appositi. Fino ad adesso ho fatto cosí, ma mi sembra tutto inutilmente complicato.
Non sono più in grado di mettermi a studiare un linguaggio nuovo; ci ho provato con ConTeXt, ma quello che studiavo la mattina era già dimenticato.
Mi è capitato di sentire da parte di piú esperti di neuroscenze che, mentre decenni fa si riteneva che il cervello umano poco dopo i 20 anni si cristallizzasse e iniziasse la sua lenta decadenza, adesso si è capito che in realtà importanti fenomeni di plasticità neuronale rimangono per tutto il corso della vita. Se i neuroscienziati non sbagliano, credo che si possa imparare un linguaggio del sistema TeX a qualsiasi età. Forse piú difficile è invece imparare un linguaggio del sistema TeX quando già se ne conosce uno, per via degli automatismi che già abbiamo quando scriviamo il file sorgente, e che ci portano a fare le cose come le abbiamo sempre fatte.
Un saluto,
Alessandro
-
15 Settembre 2022 alle 14:46 #121174::
Alessandro, grazie della tua risposta.
Sul mio Mac non ho trovato i file .pdf della documentazione,ma li trova texdoc; ho letto sia OPmac sia OpTeX.
Confermo il mio non gradimento del linguaggio sviluppato da Petr Olsak, anche se appreezzo il suo tentatifo di modernizzare plainTeX.
Per quel che riguara=da me, che ho contribuito a CTAN, una dozzina di pacchetti, alcuni molto complessi, altri decisamente di meno, alcuni recenti, alcuni, sia pure aggiornati, nati quasi una trentina di anni fa, Uso il linguaggio nativo di TeX, quindi nemmeno quello di plain, per definire molti comandi di quei pacchetti. Da quando LaTeX 3 è entrato quasi integralmente nel kernel di LaTeX e della sua miriade di pacchetti, cerco di usare LaTeX3 addolcito da interfacce create usando i comandi specifici, in modo da non dover imparare il nuovo linguaggio, alm=no non tanto da usarlo come prima scelta, ma cercando di capire che cosa faccia ogni funine di quel linguaggio.Sono molto soddisfatto.
Per quel che dice Roberto, affezionato utente di LuaLaTex E luaTeX, ma in particolare del linguaggio Lua, sono d’accordo che prima o poi LuaTeX sostituirà pdfTeX bel gestire il futuro di LaTeX. Questo non implica che l’utente debba imparare anche il linguaggio lua, ma usando Lua(La)TeX l’utente sa che sta usando uno strumento potentissimo.
Non sono convinto che ConTeXt e OpTeX siano destinati a utenti “normali”.. A quanto pare Petr ha usato molto plain TeX e forse ha usato anche ConTeXt. Nei congressi TUG a cui ho partecipato, ho avuto l’occasione di conoscerlo. È bravissimo, ma è anche cocciutamente attaccato ai suoi modi di procedere. Probabilmente tanto quanto lo sono io nell’usare LaTeX, indifferentemente con pdf|Xe|Lua Latex.
Lo sono tanto cocciutamente che preferisco fare la mia grafica con l’ambiente picture, nativo di LaTeX, arricchito con i comandi dei pacchetto pict2e, curve2e, euclideangeometry (scritti in quell’orine, perché senza caricarli tutti, ognuno (tranne il primo) chiama nell’ordine il precedente). Uso raramente il potentissimo TikZ, se non quando ho veramente bisogno di cose molto complicate. Ma non ne sono soddisfatto, perché ho dovuto raddoppiare la working memory, in quanto con le dimensioni standard, TikZ riusciva a saturare la memoria.
Certamente OpTeX, non satura la memoria. Ma Petr ha fatto in linguaggio nativo, quello che pdf|Xe|Luatex fanno conl’aiuto di pochi pacchetti, un numero minimo di quelli che si trovano nella cartella tools dell’albero principale di qualunque installazione del sistema TeX; guarda caso per lo più sono traduzioni di pacchetti a cui ho contribuito anch’io, nel mio piccolo, ma qualunque modifica al formato della pagina, anche se puoi ridefinire qualunque cosa, è abbastanza rigida. e non ha la versatilità di un pacchetto come geometry che fa tutto e di più, senza nessuna fatica epr imparare un linguaggio quasi nativo (Knuth nn usa “native” ma usa “primitive”, parola che io evito per non dare l’impressione che il linguaggio nativo di TeX risalga ai tempi delle caverne….).
Ho visto che la prima versione di OPmac risale al 2020, e che Petr l’ha aggiornata anche nel ’21 e nel ’22. OpTeX sembra abbastanza più recente); il grosso passo l’ha fatto usando di default il file di formato per lavorare con LuaTeX. Ha fatto benissimo, perché è lungo la strada di evitare gli altri interpreti come pdfTeX e XeTeX (e plain). Tuttavia, anche se l’ha messo su CTAN, credo che lui ne sia l’unico utente.
I neuroscienziati possono dire quello che vogliono. Io non sono ancora rinc…ito, ma mi dimentico le cose: la memoria a breve è piccola; mi ricordo benissimo alcune delle cose che ho vissuto in età prescolare. Sembra che sia normale un comportamento del genere dopo i70 e io li ho passati da un pezzo.
-
15 Settembre 2022 alle 18:51 #121175::
procedere alla lettura dei file di definizione delle macro (latex.ltx e i vari file .cls e .sty), e per farlo occorre conoscere abbastanza bene anche il linguaggio Plain TeX (un altro linguaggio)
Forse sarebbe stato piú corretto se avessi detto «linguaggio nativo di TeX» invece di «linguaggio Plain TeX»? Alla fine, i comandi che si trovano nei file di classe e nei file di estensione che non appartengono al linguaggio LaTeX sono tutti comandi nativi? Lo chiedo perché non conosco quasi per nulla Plain TeX e i comandi nativi; quindi nemmeno so distinguere se un comando appartiene alla prima o alla seconda categoria.
Alessandro se vorrai condividere le tue impressioni su eventuli tuoi esperimenti con OpTeX, sarà una buona cosa.
Hai detto bene: «eventuali». Se deciderò di farlo, mi avvierò a percorrere una strada battuta quasi per niente; lo si può fare solo se o si hanno grandi competenze che ci assicurino di poter arrivare comunque alla meta o si ha diverso tempo da perdere che ci consenta di poter comunque tornare indietro per imboccare una delle altre vie piú sicure. Io allo stato attuale non ho nessuna delle due cose; quindi ci penso mille volte prima di impiegare tempo e risorse. Non posso fare a meno di dire però che, quando ho letto le prime parole di descrizione su OpTeX, mi è sembrato proprio quello di cui ho bisogno e che ho sempre cercato.
Mi auguro che altri esperti possano dire la loro. Grazie.
Ancora un saluto,
Alessandro
-
16 Settembre 2022 alle 8:07 #121176::
La differenza fra i comandi nativi e quelli “derivati” sta nel fatto che i primi vengono eseguiti, mentre i secondi vengono “espansi” fino a che nell’espansione non restano che comandi nativi.L’insieme dei comandi nativi di TeX, secondo Knuth, formano una macchina di Turiing; se lo dice lui che che ha scritto un testo in cinque volumi sul calcolo numerico e sull’elaborazione di dati, c’è da fidarsi.
Per essere più chiaro, una macro definisce un comando tramite comandi nativi e altre macro, Quindi l’interprete, quando incontra un comando, deve vedere se corrisponde a una macro o se è nativo; se ha una definizione, la sostituisce al nome del comando appena trovato (questa operazione fa parte dell’espansione) e ricomincia da capo a leggere quanto si ritrova ad elaborare, se incontra altre mecro prosegue con la sostituzione, e via di questo passo, finché non deve espandere più niente, ma solo eseguire quanto non ha ancora eseguito della macro iniziale.
Tutto ciò comporta delle conseguenze sulla sintassi e sul risultato dell’esecuzione. tutto ciò spiega perché quando l’interprete scrive dati nei file ausiliari, non li deve espandere, perché l’espansione potrebbe essere fuori luogo, o meglio, fuori tempo.
Tutto ciò, senza scendere negli intimi dettagli che sono spiegati nel TeXbook, è raccontato meglio nel capitolo Nuovi comandi della guida Introduzione all’arte della composizione tipografica con LaTeX, che se vuoi puoi scaricare dlla sezione Documentazione di questo forum.
È un lavoro collettivo di moltissime persone; io ne sono stato il coordinatore e ne curo la manutenzione, Se leggendo questa guida trovi delle cose poco chiare, tieni presente che il mio compito sarebbe proprio di riscriverle in modo che si capiscano meglio. Quindi non esitare a segnalarmi quanto andrebbe scritto meglio.
Tornando a OPTeX, benché usi LuaTeX come interprete, e perciò metta a disposizione anche il linguaggio Lua, mi pare che non soddisfi il New Font Selection Scheme (NFSS) necessario a LaTeX per usare famiglie, stili, serie, forme e corpi indipendentemente le une dalle altre, e continua a fornire solo i comandi \rm, \it, \bx, \bi, che con il linguaggio nativo individuano subito un font specifico; a Knuth andava bene, perché usava solo la famiglia dei Computer Modern, ma oggi non va bene per niente. Tieni presente che le serie e le forme che LaTeX accetta, formano una serie di combinazioni lunghissima da elencare; Olsak se la cava con certe opzioni, ma non copre tutto il possibile.
Certo, LaTeX gestisce i font in modo più complesso, e questo richiede un maggior lavorio dietro le quinte; la composizione è un filino più lenta che con TeX nativo. MA ne vale la pena. ora con il linguaggio LaTeX 3 le cose sono ancora più articolate e i tempi si allungano. Tuttavia i risultati migliori sia per il programmatore, sia per l’utente finale valgono la pena.Se poi si usa anche il linguaggio Lua, caro a Roberto, si possono fare cose meravigliose che TeX nativo non sarebbe assolutamente capace di fare. Secondo me nemmeno OPTeXci riuscirebbe, ma non avendolo usato, potrei sbagliarmi alla grande.
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.