Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

Библиотека программирования S-Lang это библиотека программного обеспечения для Unix , Windows , , VMS , OS / 2 и Mac OS X . Он предоставляет процедуры для встраивания интерпретатора для языка сценариев S-Lang и компоненты для облегчения создания текстовых приложений. [3] Последний класс функций включает в себя процедуры для создания и управления раскладками клавиш, средство интерактивного редактирования строк, а также функции управления экранами / терминалами как низкого, так и высокого уровня. Он распространяется на условиях Стандартной общественной лицензии GNU .

Краткая история [ править ]

Библиотека программирования S-Lang была основана в 1992 году Джоном Э. Дэвисом, считая, что функции, которые он написал для текстового редактора, могут быть полезны в других программах. [4] Самая ранняя версия библиотеки содержала процедуры ввода / вывода для взаимодействия с компьютерными терминалами и реализацию простого стекового интерпретатора с синтаксисом, подобным PostScript, который он разработал для использования в программе научного построения графиков. Джидда текстовый редактор был первой программой , как встроить интерпретатор и использовать терминальные компоненты ввода / вывода библиотеки.

Переводчик [ править ]

Интерпретатор составляет большую часть библиотеки S-Lang, а также большую часть разработки. Хотя исходный синтаксис, поддерживаемый интерпретатором, напоминал PostScript, он стал намного более похожим на C с дополнительной поддержкой конструкций объектно-ориентированного стиля. Как отражение опыта Дэвиса в области физики и профессионального интереса к научным вычислениям, язык изначально поддерживает множество операций на основе векторизованных массивов, подобных Matlab и IDL . [5]

До версии 2.0 интерпретатор не был отдельной программой. Вместо этого Дэвис выступал за встраивание его в приложения, чтобы сделать их расширяемыми. Использование интерпретатора означало либо встраивание его в программу C, либо использование в контексте другого приложения (например, редактора JED ). Оболочка S-Lang, slsh, была демонстрационной программой, способной не больше, чем запускать сценарии. Версия 2.0, выпущенная в 2005 году, сделала slsh интерактивным и превратилась в самостоятельное приложение с несколькими внешними модулями для его использования. Таким образом, он стал интерпретатором S-Lang.

Управление экраном [ править ]

В середине 1990-х, перенося электронную таблицу sc в библиотеку S-Lang, Дэвис разработал средство управления экраном библиотеки. [ необходима цитата ] Этот компонент был разработан для оптимизации вывода на экран (путем минимизации количества символов, отправляемых на терминал) и обеспечения простого способа поддержки множества терминалов посредством дополнительного уровня абстракции между кодом приложения и терминалом. Программа чтения новостей slrn была первым приложением, которое полностью использовало этот интерфейс. [ необходима цитата ] С тех пор ряд других программ (например, Mutt [6]) воспользовались этой функцией библиотеки, и она стала, возможно, наиболее часто используемым аспектом библиотеки, поскольку этот компонент считается альтернативой curses . [7] [8] Начиная с версии 2.0, процедуры управления экраном имеют прозрачную поддержку UTF-8 .

См. Также [ править ]

  • ncurses

Ссылки [ править ]

  1. Дэвис, Джон (26 ноября 2017 г.). «Немного обо мне» . Программное обеспечение Джона Э. Дэвиса . Архивировано из оригинального 31 мая 2020 года . Дата обращения 1 июня 2020 .
  2. Дэвис, Джон (4 марта 2018 г.). «Информация о лицензии на программное обеспечение S-Lang» . Программное обеспечение Джона Э. Дэвиса . Архивировано из оригинального 31 мая 2020 года . Дата обращения 31 мая 2020 .
  3. ^ Linux Bible 2010 Edition: загрузка до Ubuntu, Fedora, KNOPPIX, Debian, openSUSE и 13 других дистрибутивов , Кристофер Негус, Wiley , 2009, ISBN 978-0-470-48505-7 , стр.775 
  4. ^ "Краткая история S-Lang" . Проверено 6 июня 2017 года .
  5. ^ Получение большего от вашего многоядерного процессора: использование OpenMP из языка числовых сценариев с открытым исходным кодом , Noble, MS, Concurrency and Computing: Practice and Experience Volume 20, Issue 16, pages 1877–1891, 2008, doi: 10.1002 / cpe.1296
  6. ^ "Руководство по установке Mutt" . Проверено 4 октября 2015 .
  7. ^ Библиотека разработчика MySQL , Пол Дюбуа, Pearson Education, 2009, ISBN 9780672329388 , раздел 6.1. 
  8. ^ Разработка приложений для Linux , Майкл К. Джонсон и Эрик В. Троан, Addison-Wesley, 2005, ISBN 9780321219145 , p513 

Внешние ссылки [ править ]

  • Информационная страница библиотеки S-Lang , Джон Э. Дэвис
  • Релизы S-Lang
  • Документация S-Lang