La biblioteca de programación S-Lang es una biblioteca de software para Unix , Ventanas , VMS , OS / 2 , y Mac OS X . Proporciona rutinas para incorporar un intérprete para el lenguaje de scripting S-Lang y componentes para facilitar la creación de aplicaciones basadas en texto . [3] La última clase de funciones incluye rutinas para construir y manipular mapas de teclas, una función de edición de línea interactiva y funciones de gestión de pantalla / terminal de bajo y alto nivel. Se distribuye bajo los términos de la Licencia Pública General GNU .
Desarrollador (es) | John E. Davis [1] |
---|---|
Lanzamiento estable | 2.3.2 / 4 de marzo de 2018 |
Escrito en | Lenguaje de secuencias de comandos S-Lang |
Sistema operativo | POSIX |
Tipo | Kit de herramientas de widgets |
Licencia | GPL [2] |
Sitio web | www |
Breve historia
La biblioteca de programación S-Lang fue iniciada en 1992 por John E. Davis, considerando que las funciones que escribió para un editor de texto podrían ser útiles en otros programas. [4] La primera versión de la biblioteca contenía rutinas de entrada / salida para interactuar con terminales de computadora y una implementación de un intérprete simple basado en pila con una sintaxis similar a PostScript que desarrolló para su uso en un programa de trazado científico. El editor de texto JED fue el primer programa que incorporó el intérprete y utilizó los componentes de E / S del terminal de la biblioteca.
Interprete
El intérprete constituye la mayor parte de la biblioteca S-Lang y también es donde tiene lugar la mayor parte del desarrollo. Aunque la sintaxis original admitida por el intérprete se parecía a PostScript, la sintaxis ha evolucionado para ser mucho más parecida a C, con soporte adicional para construcciones de estilo orientadas a objetos. Como reflejo de la experiencia de Davis en física y el interés profesional en la informática científica, el lenguaje admite de forma nativa muchas operaciones vectorizadas basadas en matrices similares a Matlab e IDL . [5]
Hasta la versión 2.0, el intérprete no era un programa independiente. En cambio, Davis abogó por integrarlo en aplicaciones para hacerlas extensibles. Usar el intérprete significaba incrustarlo en un programa en C o usarlo en el contexto de otra aplicación (por ejemplo, el editor JED ). El shell de S-Lang, slsh, era un programa de demostración capaz de poco más que ejecutar scripts. La versión 2.0, lanzada en 2005, hizo slsh interactivo y se ha convertido en una aplicación por derecho propio, con una serie de módulos externos para su uso. Como tal, se ha convertido en el intérprete de S-Lang.
Gestión de pantallas
A mediados de la década de 1990, mientras trasladaba la hoja de cálculo sc a la biblioteca S-Lang, Davis desarrolló la función de gestión de pantallas de la biblioteca. [ cita requerida ] Este componente fue diseñado para optimizar la salida de pantalla (minimizando el número de caracteres enviados a la terminal) y proporcionar una forma simple de soportar una variedad de terminales a través de una capa extra de abstracción entre el código de la aplicación y la terminal. El lector de noticias slrn fue la primera aplicación en hacer un uso completo de esta interfaz. [ cita requerida ] Desde entonces, varios otros programas (por ejemplo, Mutt [6] ) han aprovechado esta característica de la biblioteca, y se ha convertido posiblemente en el aspecto más utilizado de la biblioteca, ya que este componente se considera una alternativa a las maldiciones . [7] [8] Desde la versión 2.0, las rutinas de administración de pantalla han tenido soporte transparente para UTF-8 .
Ver también
Referencias
- ^ Davis, John (26 de noviembre de 2017). "Un poco sobre mí" . Software de John E. Davis . Archivado desde el original el 31 de mayo de 2020 . Consultado el 1 de junio de 2020 .
- ^ Davis, John (4 de marzo de 2018). "Información de licencia del software S-Lang" . Software de John E. Davis . Archivado desde el original el 31 de mayo de 2020 . Consultado el 31 de mayo de 2020 .
- ^ Edición de Linux Bible 2010: Arranque en Ubuntu, Fedora, KNOPPIX, Debian, openSUSE y otras 13 distribuciones , por Christopher Negus, Wiley , 2009, ISBN 978-0-470-48505-7 , p.775
- ^ "Una breve historia de S-Lang" . Consultado el 6 de junio de 2017 .
- ^ Obtener más de su multinúcleo: explotar OpenMP desde un lenguaje de scripting numérico de código abierto , Noble, MS, Concurrency and Computation: Practice and Experience Volume 20, Issue 16, pages 1877–1891, 2008, doi: 10.1002 / cpe.1296
- ^ "Guía de instalación de Mutt" . Consultado el 4 de octubre de 2015 .
- ^ Biblioteca del desarrollador de MySQL , por Paul Dubois, Pearson Education, 2009, ISBN 9780672329388 , sección 6.1
- ^ Desarrollo de aplicaciones Linux , por Michael K. Johnson y Erik W. Troan, Addison-Wesley, 2005, ISBN 9780321219145 , p513
enlaces externos
- Página de información de la biblioteca S-Lang , por John E. Davis
- Lanzamientos de S-Lang
- Documentación de S-Lang