TeXmacs |
Il software libero GNU TeXmacs, sviluppato da J. Van der Hoeven, può essere utilizzato sia come editore di testi, principalmente di tipo matematico, sia come front-end per programmi di computer algebra o di altro genere. Come editore di testi TeXmacs permette di scrivere documenti strutturati attraverso un sistema wysiwyg (con questo acronimo si abbrevia l'espressione what-you-see-is-what-you-get che, tradotto letteralmente, significa "ciò che vedi è ciò che ottieni"; in altri termini quanto si scrive nell'editor è quanto poi verrà stampato) con un'interfaccia grafica amichevole. L'utilizzatore di TeXmacs può costruirsi stili personalizzati e usufruire dei font di TeX per ottenere documenti con una impaginazione professionale.
L'alta qualità grafica dell'editor, accompagnata dalla possibilità di generare automaticamente ogni genere di formula, rende TeXmacs adatto ad essere utilizzato come interfaccia grafica per sistemi di computer algebra o per altri tipi di plugin. Attualmente sono disponibili interfacce con i seguenti sistemi Axiom. Giac, GNUPlot, Graphviz, Gtybalt, Macaulay2, Maxima, Mupad, Scilab, GNU Octave, Pari, Qcl, GNU R, Reduce e Yacas. In fase di implementazione vi è anche un plugin per interfacciare Dr. Geo.
Uno degli scopi per i quali è stato sviluppato TeXmacs consiste nel desiderio di poter disporre di un editore di testi scientifici con un'interfaccia grafica semplice e di comodo uso. Come indica il nome del programma esso trae ispirazione, come editor, da TeX e da LaTeX (in particolare ciò riguarda i font, la possibilità di strutturare i testi e l'utilizzo di algoritmi per la sillabazione e per gestire gli spazi), allo stesso tempo il programma si ispira a GNU Emacs, in quanto, come quest'ultimo, TeXmacs è dotato del linguaggio di estensione Guile/Scheme che permette all'utilizzatore di personalizzarlo e, se desidera, di estenderlo. Tuttavia è bene precisare che TeXmacs non è un'estensione di Emacs e neppure un'interfaccia grafica di TeX.
In genere, i documenti lunghi possiedono una struttura: essi sono organizzati in capitoli, sezioni e sottosezioni, contengono diversi tipi di testo, come testo ordinario, citazioni, note, teoremi, ecc. Dopo aver selezionato uno stile TeXmacs si occupa dei problemi specifici di impaginazione, come la numerazione delle sezioni, delle pagine, dei teoremi e della composizione delle citazioni e delle note e via di seguito.
Attualmente, sono stati implementati sei stili standard per i documenti: lettera, articolo, libro, esame, generico e seminario. Lo stile seminario viene utilizzato per comporre dei lucidi per una presentazione. Appena viene selezionato uno di questi stili, si può organizzare il proprio testo in sezioni e utilizzare ambienti specifici. Esempi di ambienti sono teorema, proposizione, nota ecc. Altri esempi sono le liste di oggetti o le liste numerate. Quando si è acquisita una certa dimestichezza nell'uso di TeXmacs, è possibile aggiungere dei nuovi ambienti in un proprio file di stile. Alcuni esempi, presi dallo stile esame, sono rappresentati in figura:
Come esempio di utilizzo di TeXmacs come interfaccia per sistemi di computer algebra descriviamo un'applicazione che coinvolge GNU Octave, relativa al trattamento delle equazioni differenziali e di uso di grafici.
Consideriamo il caso dell'equazione differenziale di crescita di una popolazione di Verhulst (1838). Detto n il numero di individui di una data specie, r il tasso di accrescimento e k il numero massimo di individui sopportabile dall'ambiente in cui essi vivono, l'equazione di Verhulst assume la forma:
dn / dt = ( 1 - n / k ) n r.
da cui appare chiaro che nel limite n=k la crescita della popolazione tende ad arrestarsi, mentre per n "piccolo" la crescita tende ad aumentare esponenzialmente. Usando GNU Octave vogliamo ora risolvere l'equazione di Verhulst e tracciare il grafico della soluzione nel caso particolare k=1000 e r=0.12. Supposto che inizialmente la popolazione sia di 10 individui si ha:
TeXmacs |