Copyright(c) 1998 Victor M.Pancov, Russia, Obninsk.



                Откройте для себя язык LUX !!!



Есть такой(!) язык программирования !!!

Мгновенная компиляция !!!
Самые компактные выражения языка !!!
Самый компактный и быстрый исполняемый код !!!
Ясная техника агрегат-структурного программирования !!!
Один оператор транслируется в одну машинную команду !!!
Самый компактный и быстрый код функций классов объектов !!!



   Если Вы хотите разрабатывать быстрые, компактные и совер-
шенно понятные, в целом и в деталях, программы, и, каждый
раз, мгновенно, транслировать их, - читайте этот текст !!!



В.М.Паньков, 249020, Обнинск, Россия.

L  U  X  X  U                              Предварительное сообщение !!!
L  U    X    U
L  U  X  X  U                              Прошу копировать в Ваш файл !!
L  U          U
L    UUUUU                                Для Вас и Ваших друзей!
L
LLLLLLLLL   Предварительное Сообщение о языке LUX.



   Если Вы хотите разрабатывать быстрые, компактные и совер-
шенно понятные, в целом и в деталях, программы, и, каждый
раз, мгновенно, транслировать их, - читайте этот текст !!!



   Я предлагаю Вам новый язык программирования, названный
LUX (Lingual Unit's eXpressions), как язык лингвопроцессорных
выражений, изобретенных мною.
   LUX-компилятор это очень быстрый компилятор, это большая
и сложная программа на языке LUX, величиной около 15000 опе-
раторов, которую этот самокомпилирующийся компилятор транс-
лирует за 0.11 секунды на процессоре i486 DX4-100.
   Любая средняя программа на языке LUX, на компьютере сред-
ней мощности, транслируется практически мгновенно.
   Скорость трансляции может быть еще больше, около одного
миллиона операторов в секунду на более мощных процессорах.
   Язык LUX имеет место между языком ассемблера и языком
(Бейсик, Паскаль) Си - на этом, магистральном, направлении.
   Подобно ассемблеру, LUX-компилятор генерирует каждый опе-
ратор в одну (или, может быть, две) команду(ы) процессора.
   Но, подобно языку Си, язык LUX, использует выражения.
   Но, в языке LUX, имееет место новая, компьютерная матема-
тика: линеаризованные лингвопроцессорные выражения для соз-
дания компактных LUX-функций и агрегат-структуры главной
программы в целом.
   Подобно ассемблеру, LUX-компилятор генерирует очень быст-
рый и очень компактный исполняемый код, как и ассемблер, по-
этому, язык LUX не нуждается в оптимизирующем компиляторе.
   Но, подобно языку Си, язык LUX имеет наилучшие свойства
структурного программирования.
   Каждая LUX-функция является агрегатом операторов, который
состоит из операторов или агрегатов операторов, подобных
агрегату операторов обработки, агрегату операторов цикла,
агрегату операторов ветвления по условию и т.д.
   Агрегат операторов создается агрегатообразующими операто-
рами этого агрегата операторов, и содержит агрегаты или ли-
нейные участки (лучи) других операторов, или единственный
оператор, по этой причине, агрегат операторов является, так-
же и агрегат-структурой.
   Главный агрегат операторов, или главная агрегат-структура
и является главной программой, и благодаря всем этим свойст-
вам, LUX является структурно-ориентированным языком, и еди-
ная главная агрегат-структура, разработаная на языке LUX,
заменяет все дополнительные блок-схемы или операторные cxeмы
главной программы, которые использовались ранее.
   Язык LUX, позволяет создавать класс объектов, в виде аг-
регат-структуры этого класса, которая содержит агрегат
-структуру данных объекта и агрегат-структуру функций, для
обработки этих данных, со свойствами инкапсуляции, наследо-
вания и полиморфизма, поэтому, LUX является объектно-ориен-
тированным языком.



              LUX - это язык компьютерной математики !!!



   Если Вы хотите разрабатывать быстрые, компактные и совер-
шенно понятные, в целом и в деталях, программы, и, каждый
раз, мгновенно, транслировать их, - читайте этот текст !!!



LUX - это Мгновенная компиляция !!!
LUX - это Компактность и Скорость !!!
LUX - это Магистральное направление !!!
До миллиона операторов LUX в секунду !!! -
Это непревзойденная скорость трансляции !!!
LUX - это То, что делает Сложное Простым !!!
LUX - это Компьютерная Алгебра и Гармония !!!
LUX - это Удобно, Эргономично и в Удовольствие !!!
LUX - это То, что и Вам крайне Небходимо, для Себя !!!
Программа и Блок-схема - на языке LUX - это Единое Целое !!!



   Изложение материала идет по нарастающей степени сложно-
сти. Прочтите, пожалуйста, до тех позиций, пока Вам будет
это интересно. А это интересно !!! Не пожалеете !!!




   Основные достоинства системы программирования на языке LUX.



   0.Практичность !!! Язык для любого пользователя компьютера.
   1.Доступность и прозрачность для начинающих разработчиков.
   2.Прямой и плавный переход из начинающих в профессионалы.
   3.Профессиональный уровень возможностей для профессионалов.
   4.Ничем не ограничиваемые возможности для профессионалов.
   5.Идеальное программирование в регистровых переменных.
   6.Мобильное и машинноориетированное подмножества в языке.
   7.И мобильное подмножество кладет оператор в команду ЭВМ.
   8.Математическая компактность лингвопроцессорных выражений.
   9.Структурная прозрачность и однородность языка.
   10.Компактность и обозримость программ (выше чем в Си).
   11.Мгновенная диалоговая реакция при трансляции и сборке.
   12.Встроенный редактор текста с диалоговым сценарием.
   13.Компактность исполняемого кода (как в ассемблере).
   14.Быстродействие исполняемого кода (как в ассемблере).
   15.Различные модели памяти, включая COM и FLAT модели.
   16.Структурная и объектная ориентированность.
   17.Инструмент разработки функций стандартных классов.
   18.Библиотеки классов, хранимые в машинном коде.
   19.Язык-результат поиска, исследования и открытия для себя.
   20.Непротиворечивость другим языкам систем программирования.
   21.Магистральный путь в иерархии языковых систем разработки.
   22.Значительный диапазон языка по уровню абстрагирования.
   23.Плавный переход языка от базового до высокого уровня.
   24.Широчайший спектр адекватности системам команд ЭВМ.
   25.Широчайший спектр применений от АСУ до драйверов и ядра.




                      Далее чуть поподробнее, по порядку.



   0.Практичность !!! Язык для любого пользователя компьютера.




   Главным достоинством языка Люкс является его практичность
для для любого пользователя компьютера.

   Если Вы имеете под рукой такую простую, такую совершенную
вещь как компьютер, то вам это нужно и польза (!) -управлять
им на несколько шагов вперед т.е. программировать, даже про-
сто из любопытства.
   Научите компьютер говорить Вашим языком, - это проще чем
научить говорить ребенка.


скажи"Добро пожаловать !!!"


   Это работающий фрагмент программы на языке Люкс.

   Это - почти на русском языке !

   LUX - это То, что делает Сложное Простым !!!



   1.Доступность и прозрачность для начинающих разработчиков.




   Научить компьютер говорить Вашим языком, - это проще чем
научить говорить ребенка.

{*}{
скажи"Добро пожаловать !!!"
{*}}

~~
   Это законченная работающая программа на языке Люкс.

   Это тот самый работающий фрагмент программы на языке Люкс
и Мы с Вами просто вставили его в рамку.

{*}{ -это верхняя планка рамки программы.

{*}} -это нижняя планка рамки программы.

~~ -это P.S. - постскриптум.

   Дальше Вы можете писать Все, что душе угодно.

   Для Люкс-системы, которую Вы, сейчас, уже представляете,

   - это не имеет никакого значения.

   LUX - это То, что делает Сложное Простым !!!



   2.Прямой и плавный переход из начинающих в профессионалы.




   Затем, Вы научите свой компьютер считать - это проще чем
научить считать ребенка. Это проще чем дважды два.


   2*2 сколько


   Это работающий фрагмент программы на языке Люкс.

   Это - почти на русском языке !

   Вставьте этот фрагмент в рамку и считайте на здоровье !

   Люкс знает все четыре действия арифметики и алгебру !


   Затем, Вы научите свой компьютер говорить и по английски.

   Это проще чем научить говорить по английски ребенка.


say"Welcome !!!"


   Это работающий фрагмент программы на языке Люкс.

   Это почти тот самый первый фрагмент программы на Люкс.

   Это - почти на английском языке !

   Кстати, если у Вас есть ребенок, научите и его научать
компьютер говорить Вашим языком, - это проще чем научить го-
ворить Вашего ребенка. Вполне возможно, что язык Люкс, вско-
ре будут изучать в школе. Это магистральное направление !!!

   Люкс - это может быть игрушкой для ребенка !
   Люкс - это не только игрушка для ребенка !!
   Люкс - это тот язык, который позволит ребенку на компью-
   тере не только играть, и не столько играть !!!
   Люкс - это та игрушка для ребенка, играя которой,
   он, играючи, может стать профессионалом !!!!
   Люкс - это тот язык, который ему не нужно будет переучи-
   вать на другой чтобы стать профессионалом !!!!!

   LUX - это То, что делает Сложное Простым !!!




   3.Профессиональный уровень возможностей для профессионалов.




   Люкс - это не только игрушка, и не столько игрушка.
   Профессионально говоря, как и любая, другая, настоящая
игрушка, язык Люкс - это вообще не игрушка.
   Достаточно сказать, что компилятор языка Люкс - это боль-
шая программа на языке Люкс, величиной около 15000 операто-
ров, которую этот сверхбыстрый компилятор транслирует за 11
сотых долей секунды. Это самокомпилирующийся компилятор.

   Люкс был создан профессионалом, как язык программирования
для себя, и вообще, для профессионалов !!!

   Автор разработки языка Люкс не искал экзотики, не пытался
удивить мир, разрабатывая новый язык Люкс и его название ро-
дилось, также, не из известных ассоциаций, и для ясности.

   Lucid - имя LUX-компилятора - это ясный, понятный (язык).

   Lucidity - это ясность, прозрачность, понятность.

   Luce - это световая палитра музыки, (это в цветомузыке).

   Luce - это ЛУЧ - Линейный УЧасток операторов языка LUX.

   Люкс, это свет, который автор хотел пролить на огромное и
достаточно темное царство языков программирования, поскольку
автора, на протяжении, более чем, десятка лет, удручало и
сильно удивляло то обстоятельство, что менялись, поколения
машин, менялись языки программирования, но эффективно (!!!)
программировать было, в общем-то, не на чем. И автор, волею,
или, скорее, неволею, искал эффективный инструмент програм-
мирования, и нашел способ разработки лингвопроцессорных вы-
ражений и язык этих выражений Lingual Units eXpressions - LUX.

   LUX (Language of Unit's eXpressions) -это язык выражений
устройств-процессоров управления компьютерными процессами.

   LUX (Language of Units eXpressions) - это язык выражений
агрегатов операторов и агрегатов операторных выражений.

   LUX (Language of Unification of eXpressions) - это язык
унификации и объединения выражений.

   LUX (Language of United eXpressions) - это язык объеди-
ненных выражений.

   LUX (Language of Uniform eXpressions) - это язык едино-
образных, однородных выражений.

   LUX (LUcid eXpressions) -это ясные, прозрачные выражения.

   Исследования и разработки по созданию языка LUX, выпол-
ненные автором, в течение, более чем, десятка лет, были нап-
равлены на создание системы программирования для программис-
тов-профессионалов, которая помогает, быстро и удобно, раз-
рабатывать программы высочайшего качества и быстродействия.
   Для этих целей, и был создан LUX, как язык достаточно
высокого уровня на концепциях структурного и объектно-ориен-
тированного программирования, поскольку именно эти концеп-
ции, во многом, определяют уровень языка, для чего в него
введены изящные операторы цикла, условные операторы типа
IF-ELSE-ENDIF, SWITCH-CASE, а также, безусловные операторы
типа SKIP-BREAK, благодаря которым, удалось почти полностью
отказаться от безусловных переходов типа GO TO.

   Люкс - это и концептуальное единство, и однородность, и
агрегатируемость, и структурная, и объектная, ориентирован-
ность, и эргономичная диалоговая реакция компьютера в систе-
ме человек-компьютер.

   LUX - это Компактность и Скорость !!!

   LUX - это Компьютерная Алгебра и Гармония !!!




   Подробности для профессионалов - далее по тексту.



   4.Ничем не ограничиваемые возможности для профессионалов.




   Если Вы решите стать профессионалом, Вы подойдете к тако-
му рубежу, когда Вы поймете, что самый хороший язык для про-
фессионала, это тот язык, который ему помогает, но не мешает
профессионально работать. Вам не нужно будет переучиваться.
Вы будете идти прямо по нарастающей степени сложности.

   LUX - это То, что делает Сложное Простым !!!



   5.Идеальное программирование в регистровых переменных.




   Язык LUX используется как язык компактных функций, или
процедур, эффективно использующих среду регистров, глобаль-
ных и локальных переменных вызывающей подпрограммы, что оп-
ределяет его эффективность и структурные концепции.
   Для кодирования операций с регистровыми переменными языка
часто достаточно одного-двух символов-литер. Это и Алгебра и
Гармония программирования в регистровых переменных.

   LUX - это Компактность и Скорость !!!



   6.Мобильное и машинноориетированное подмножества в языке.




   Еще немного о языке Люкс. Этот язык, высокого уровня, со-
держит машинно-независимое подмножество, и машинно-ориенти-
рованное подмножество языка Люкс в одном, и том же, едином,
языке.
   Машинно-независимое подмножество может быть использовано
для разработки эффективных прикладных программ.
   Машинно-ориентированное подмножество этого языка может
быть использовано для разработки эффективных программ, таких
как компоненты операционных систем, драйверы устройств, сис-
темные обслуживающие программы, тесты оборудования, компо-
ненты языковых систем программирования, таких как компилято-
ры, декомпиляторы, редакторы текста, библиотекари и т.п.
   Машинно-ориентированное подмножество этого языка может
быть использовано для разработки многих эффективных про-
грамм, для которых, ранее, использовался язык ассемблера, но
язык Люкс не является языком ассемблера. Язык Люкс, в боль-
шинстве случаев, может заменить язык ассемблера, но язык
Люкс не есть язык ассемблера. Язык Люкс есть объектно-ориен-
тированный язык высокого уровня и язык низкого уровня в од-
ном и том же едином языке.
   Для того, чтобы оттестировать машинно-независимое под-
множество языка Люкс, был разработан самокомпилирущийся ком-
пилятор с языка Си, с использованием компилятора языка Люкс.
   Программист, сам, может выбирать операторы необходимого
уровня из полного множества операторов языка Люкс.

   LUX - это Компьютерная Алгебра и Гармония !!!



   7.И мобильное подмножество кладет оператор в команду ЭВМ.




   Несмотря на достаточно высокий уровень абстрагирования от
реальной архитектуры конкретной ЭВМ, на которой реализован
или будет реализован язык Люкс, в мобильном подмножестве LUX
сохраняется такая же степень эффективности исполняемого кода
как и в машинно-ориентированном подмножестве. И мобильное
подмножество языка кладет один оператор, как правило, в одну
команду ЭВМ.

   LUX - это Компактность и Скорость !!!



   8.Математическая компактность лингвопроцессорных выражений.




   LUX - Language оf Unit eXpressions - язык лингвопроцес-
сорных выражений - Люкс - является языком программирования
компактных функций.
   Языковые способности процессора, не так часто оттеняемые,
в отличие от его вычислительных свойств, характеризуют про-
цессор ЭВМ как лингвопроцессор - устойство распознавания и
исполнения языка команд. или как языковое устойство (Lingual
Unit), способное распознавать и исполнять специфический язык
команд процессора из системы команд процессора.
   Выражение языкового устойства (Lingual Unit eXpression
LUX) или лингвопроцессорное выражение, содержит термы-опера-
торы команд арифметических и логических операций, а также
термы-операторы команд управления вычислительным процессом,
образуя собой единый, структурированный агрегат операторов
команд,
   LUX в во многих отношениях явно в меньшей степени наруша-
ет наметившееся приближение символики языков программирова-
ния к обычной математической символике и только тогда, когда
это действительно необходимо, поскольку последовательная ло-
гика работы центрального процессора ЭВМ, явно отличается от
логики образного мышления человека.
   LUX (Lingual Unit eXpression), лингвопроцессорное выраже-
ние последовательной логики работы центрального процессора
ЭВМ, также явно отличается от обычного математического выра-
жения логики образного мышления человека, но только в той
степени, как это действительно необходимо.
   Более того, по глубокому убеждению автора, выработанному
на основе многолетних поисков и размышлений о сущности
эффективного управления центральным процессором ЭВМ, и поис-
ков и разработок эффективных языков эффективного управления
вычислительными процессами на уровне системы команд ЭВМ, и
на основе, более чем, десятилетнего опыта непосредственной
разработки языка LUX, - язык лингвопроцессорных выражений
(Lingual Units eXpressions) - LUX, и является, объективно и
по своему существу, языком компьютерной математики.
   Термин "агрегат" (set) достаточно редко употребляется для
описания компонентов (команд и данных процессора) составляю-
щих детали и этапы механизма функционирования вычислительно-
го процесса, но в языке Люкс термин "агрегат" (set) является
фундаментальным, поэтому он, собственно, и использован имен-
но для того, чтобы описать управление вычислительным процес-
сом, как единым механизмом взаимодействия узлов, команд и
данных процессора и памяти ЭВМ. Термин "set" переводится на
русский и как "система", и как "набор", но именно только та-
кой перевод как "агрегат" показывает единый механизм интег-
рации и взаимодействия узлов, команд и данных процессора ЭВМ.

Программа и блок-схема - на языке LUX - это единое целое !!!

   LUX - это Компьютерная Алгебра и Гармония !!!



   9.Структурная прозрачность и однородность языка.




   Предлагаемый язык Люкс позволяет настолько хорошо струк-
турировать последовательность выполняемых операторов, что
результирующая операторная агрегат-структура заменяет все
ранее дополнительно применявшиеся для целей наглядности за-
писи алгоритма блок-схемы или логические схемы.
   Выражения агрегатирования и структурирования, являются,
одним из наиболее важных и фундаментальных свойств языка
Люкс, поскольку они, в совокупности с другими видами выраже-
ний языка Люкс, образуют концептуально единую, однородную,
рекурсивную иерархию лингвопроцессорных выражений, агрегатов
операторов команд и простейших операторов команд, которые в
языке Люкс являются одноранговыми конструкциями, рекурсивно
вложенными друг в друга.
   Это позволяет рассматривать, как простые конструкции оди-
наковой сложности любые агрегаты операторов команд, начиная
простейшими, элементарными, операторами команд, и кончая аг-
регатами операторов команд функции, которые, также, рассмат-
риваются в языке Люкс, как разновидности лингвопроцессорных
выражений. Это фундаментальный путь сведения сложных, и
очень сложных, иерархических агрегатов - конструкций к прос-
тым линейным последовательностям, вплоть до простейшего опе-
ратора вызова функции - call. В совокупности с обектноориен-
тированными методами, такой путь позволяет инкапсулировать,
скрывать сложное в простом, каждый раз, на любом, удобном
этапе разработки, иерархически и рекурсивно утапливая слож-
ное в простом и каждый раз имея дело только с простым и про-
стейшим.

   LUX - это То, что делает Сложное Простым !!!

   LUX - это Компьютерная Алгебра и Гармония !!!

Программа и блок-схема - на языке LUX - это единое целое !!!



   10.Компактность и обозримость программ (выше чем в Си).




   Язык LUX используется как язык компактных функций, или
процедур, эффективно использующих среду регистров, глобаль-
ных и локальных переменных вызывающей подпрограммы, что еще
больше определяет его эффективность и структурные концепции.
   Программы на языке LUX очень компактны и легко обозримы
для разработчика, который, при умелой разработке компактных
функций, концентрирует целиком свое внимание на конкретной
функции, отлаживаемой в данный момент, которая, как правило,
целиком размещается в видеокадре редактора текста на видео-
мониторе.
   Компактность и обозримость, агрегатируемость и структури-
рованность - это основы свойства понятности программы, т.е.
ее неотъемлемых, присущих ей, свойств быть понятной.

   LUX - это Компактность и Скорость !!!

   LUX - это То, что делает Сложное Простым !!!




   11.Мгновенная диалоговая реакция при трансляции и сборке.




   В системе разработки загрузочных модулей с использова-
нием языка Люкс , этап компиляции, по времени, является пра-
ктически мгновенным, и практически не ощущается разработчи-
ком, и поэтому, у разработчика складывается впечатление, что
каждый новый отрабатываемый вариант сразу интерпретируется.
   Использование лингвопроцессорных выражений значительно
ускоряет процесс трансляции, доводя время трансляции про-
граммы размером более чем в 10000 операторов, до исчезающе
малой величины в сотые доли секунды, и это дает новое каче-
ство эргономичной диалоговой реакции компьютера, при транс-
ляции, и значительно повышает наглядность и эффективность
разработки программ.
   Это свидетельствует о практически исчезающим по времени
этапе трансляции и сборки в общей технологии отладки прог-
раммы. Разработчик практически не замечает этого этапа, и у
него создается впечатление, что он работает не с транслято-
ром и редактором связей, а с интерпретатором, который каж-
дый раз, по необходимости, немедленно интерпретирует, т.е.
выполняет, программу, сразу после того, как в нее внесены,
через встроенный редактор текста, текущие изменения, необхо-
димые в процессе разработки и отладки программы. При этом,
программу интерпретирует сам процессор, и эффективность бы-
стродействия выполняемой программы столь же максимальна, как
и программы скомпилированной с языка ассемблера, и ее диало-
говая реакция также максимально быстра для конкретного ком-
пьютера и конкретного алгоритма отлаживаемой программы.

LUX - это Мгновенная компиляция !!!

До миллиона операторов LUX в секунду !!! -

Это непревзойденная скорость трансляции !!!



   12.Встроенный редактор текста с диалоговым сценарием.




   В системе программирования на языке LUX используется ре-
жим работы со встроенным редактором исходного текста, в ко-
тором отладка программ происходит вообще без обращений к ма-
гнитным дискам, и программист лишь сам инициирует в нужные
моменты сохранение на магнитном диске не только отредакти-
рованных, но и отлаженных вариантов программ. Такой режим
отличается фантастически быстрой реакцией компьютера и ско-
ростью отладки программ, только и позволяющей программисту
работать эффективно и с удовольствием.
   Программы на языке LUX очень компактны и легко обозримы
для разработчика, который, при умелой разработке компактных
функций, концентрирует целиком свое внимание на конкретной
функции, отлаживаемой в данный момент, которая, как правило,
целиком размещается в видеокадре редактора текста на видео-
мониторе и запускается мгновенно, щелчком клавиши, на счет с
часто мгновенной выдачей результата и, обратно, щелчком той-
же клавиши, происходит возврат в редактор текста в ту же
строку отлаживаемой функции по простому циклическому сцена-
рию: щелчок - исходный текст (корректировка), щелчок -
результат (просмотр). К примеру, автор, для тестирования
статистической надежности программы, обрабатывающей прерыва-
ния в реальном времени, пользуясь таким удобным свойством,
устраивал часовой прогон трансляции - счета программы, про-
сто придавив эту клавишу большой книгой по программированию.

   LUX - это Мгновенная компиляция !!!

   LUX - это Удобно, Эргономично и в Удовольствие !!!



   13.Компактность исполняемого кода (как в ассемблере).




   В языке LUX применена запись выражений в нетрадицион-
ной инфиксно-постфиксной форме, что позволяет записывать вы-
ражения и транслировать их более эффективно, чем в традици-
онной скобочной форме. Для получения эффективного машинного
кода язык должен содержать именно ту систему арифметических,
логических и условных операторов, которую интерпретируют со-
временные компьютеры. Компактность исполняемого кода про-
грамм, разработанных на языке LUX, практически, максимальна
и равна степени эффективности программ, разработанных на ас-
семблере,

   LUX - это Компактность и Скорость !!!



   14.Быстродействие исполняемого кода (как в ассемблере).




   Степень эффективности программ, разработанных на языке
LUX, практически, максимальна и равна степени эффективности
программ, разработанных на ассемблере, тогда как удобства
разработки выше, чем на языке высокого уровня, а, тем более,
на языке ассемблера, в основном благодаря тому, что скорость
компиляции и сборки программ в готовые загрузочные модули
практически мгновенна на современных компьютерах, что через-
вычайно важно для работы в эффективном режиме скоростного
диалога с приемлемой реакцией компьютера.
   Такая система программирования практически устраняет
известную дилемму об использовании быстрых, но не оптимизи-
рующих, компиляторов (или их режимов) для отладки программ и
их алгоритмов, с последующей компиляцией отлаженных программ
через оптимизирующий компилятор в оптимизирующем режиме.
   Этой дилеммы для языка LUX не существует поскольку ком-
пилятор языка LUX является очень быстрым и исполняемый код,
генерируемый этим компилятором, практически не требует до-
полнительной оптимизации так как этот код, по эффективности,
равнозначен коду программы, полученной с языка ассемблера.

   LUX - это Компактность и Скорость !!!



   15.Различные модели памяти, включая COM и FLAT модели.




   Первоначальная версия LUX была разработана для MS DOS и
процессора Intel 8086, использующего сегментную модель глав-
ной памяти, и допускающего бессегментное программирование
только в пределах одного сегмента, размером 64 килобайта,
что позволяло создавать только маленькие бессегментные прог-
раммы. В остальных случаях приходилось использовать сегмент-
ную модель памяти, что требовало более тщательного, профес-
сионального программирования, усложняло отладку программ и
увеличивало сроки их разработки. В этих же случаях было не-
обходимо применение действий с двойной точностью над адрес-
ными указателями, а зачастую и над данными, что еще в боль-
шей степени увеличивало громоздкость программы. И, наконец,
в новых компьютерах с расширенной памятью MS DOS позволяла
лишь ограниченно использовать расширенную память, хотя и как
быструю, но внешнюю, по отношению к программе, память, и не
позволяла прямое распределение этой памяти под переменные,
константы и исполняемый код разрабатываемой программы.
   Процессоры Intel серии 386, 486 и Pentium позволяют
прямую бессегментную адресацию всей главной памяти, а также
четырехбайтовые адресные указатели и целочисленные данные,
над которыми производятся действия с одинарной точностью.
   Однако, эти возможности процессоров не были реализова-
ны в MS DOS, за редкими исключениями, указанными здесь выше.
   Более мощные и универсальные возможности, связанные с
использованием виртуальной памяти, реализованы в многозадач-
ных операционных системах OS/2, Windows-95 и UNIX. Однако,
эти возможности оказались и более громоздкими: первые 4 - 8
мегабайт главной памяти занимает операционная система, к
тому же виртуальная память заметно медленнее реальной.
   В системе программирования LUX, работающей под MS DOS,
реализована компромиссная, оптимальная для многих приложений
бессегментная операционная среда, занимающая для своих це-
лей всего несколько десятков килобайт, в которой использую-
тся операции с обычной точностью над четырехбайтовыми цело-
численными данными, адресными смещениями и указателями, поз-
воляющая напрямую распределять и использовать всю главную (в
том числе расширенную), реальную, память, работающую заметно
быстрее виртуальной.
   Такая среда может быть использована для любых задач,
однако она просто незаменима для задач, требующих всей глав-
ной памяти и максимального быстродействия, в частности задач
с громоздкими вычислениями, с быстрой реакцией, в том числе
задач сопряжения с реальными объектами, с обработкой резуль-
тата в реальном масштабе времени. Используя данную среду, Вы
используете дорогостоящую главную память, включая расширен-
ную, только для своей задачи.

   LUX - это Компактность и Скорость !!!



   16.Структурная и объектная ориентированность.




   Предлагаемый язык Люкс позволяет настолько хорошо струк-
турировать последовательность выполняемых операторов, что
результирующая операторная агрегат-структура заменяет все
ранее дополнительно применявшиеся для целей наглядности за-
писи алгоритма блок-схемы или логические схемы.
   Это позволяет рассматривать как простые конструкции оди-
наковой сложности любые агрегаты операторов команд, начиная
простейшими, элементарными, операторами команд, и кончая аг-
регатами операторов команд функции, которые, также, рассмат-
риваются в языке Люкс, как разновидности лингвопроцессорных
выражений. Это фундаментальный путь сведения сложных, и
очень сложных, иерархических агрегатов-конструкций к прос-
тым линейным последовательностям, вплоть до простейшего опе-
ратора вызова функции - call. В совокупности с обектноориен-
тированными методами, такой путь позволяет инкапсулировать,
скрывать сложное в простом, каждый раз, на любом удобном
этапе разработки, иерархически и рекурсивно утапливая слож-
ное в простом и, каждый раз, имея дело только с простым и
простейшим.

   LUX - это То, что делает Сложное Простым !!!

Программа и блок-схема - на языке LUX - это единое целое !!!



   17.Инструмент разработки функций стандартных классов.




   Цитируем одного из классиков объектно-ориентированного
программирования:

   Биарне Строустрап, AT&T Bell Laboratories

   "Не все языки программирования могут быть объектно-ориен-
тированными. Да, были сделаны утверждения, что APL, Ada,
Clu, C++, Loops и Sмalltalk объектно-ориентированные языки.
Мне приходилось слышать дискуссии об объектно-ориентирован-
ном программировании на C, Pascal, Modula-2 и Chill. Можно
ли говорить об объектно-ориентированном программировании на
языках Fortran и Cobol? Я думаю, что в общем то да.
   Слово "объектно-ориентированный" стало в области програм-
мирования синонимом слово "хорошо". В печати, чаще всего,
встречаются элементы такого вида: "Ada - это хорошо; объект-
ная ориентированность - это хорошо; отсюда следует, что Ada
- объектно-ориентированный язык".
   В этой статье содержится взгляд на то, что означает тер-
мин "объектно-ориентированный" в контексте языков программи-
рования общего назначения. Примеры представлены на C++, от-
части, чтобы познакомить с С++, отчасти потому что С++ один
из немногих языков, допускающих абстрактные типы данных,
объектно-ориентированное программирование, а также оставля-
ет возможной традиционную технику написания программ. Я не
затрагиваю вопросы конкурентоспособности и аппаратной под-
держки языковых конструкций более высокого уровня.
...
   Язык, поддерживающий технологию локализации данных, абст-
ракции данных и объектно-ориентированного программирования,
чтобы быть языком общего назначения должен также:
   -быть реализованным на традиционных ЭВМ;
   -выполняться в среде традиционных операционных систем;
   -быть конкурентоспособным с традиционными языками про-
граммирования по эффективности при выполнении программ;
   -подходить для большей части возможных приложений.
...
   Альтернативой включению в язык низкоуровневых средств
является использование в критических случаях специализиро-
ванных языков низкого уровня.
   Объектно-ориентированное программирование - это програм-
мирование, использующее механизм наследования. Абстракция
данных - это программирование с использованием определяемых
пользователем типов. С небольшим исключением объектно-ориен-
тированное программирование может и должно быть обобщением
абстракции данных.
   Эта механика нуждается в надлежащей языковой полддержке,
чтобы быть эффективной. Для абстракции данных достаточно
только языковой поддержки; для объектно-ориентированного
программирования требуются средства общесистсемного програм-
много окружения. Чтобы обладать свойствами языка общего наз-
начения, язык должен позволять эффективно использовать тра-
диционные аппаратные средства."

   Язык LUX практически удовлетворяет всем упомянутым крите-
риям, а по части "язык должен позволять эффективно использо-
вать традиционные аппаратные средства", язык LUX имеет "быть
конкурентоспособным с традиционными языками программирования
по эффективности при выполнении программ" на все сто процен-
тов, в той же степени, что и язык ассемблера.

   LUX - это То, что делает Сложное Простым !!!



   18.Библиотеки классов, хранимые в машинном коде.




   Функции ввода-вывода и другие стандартные функции языка
LUX написаны на самом языке LUX, что позволяет включать их в
основную программу в режиме скоростной компиляции, в том чи-
сле и из библиотеки классов объектов, обладающих свойствами
инкапсуляции, наследования и полиморфизма на основе позднего
связывания. Эти свойства, а также механизм динамической заг-
рузки функций и объектов позволяют разрабатываемой программе
иметь высокую степень динамизма в манипулировании объектами.

   LUX - это То, что делает Сложное Простым !!!



   19.Язык-результат поиска, исследования и открытия для себя.




   Разработка системы программирования на языке LUX есть
следствие процесса длительных, многолетних, поисков, ис-
следований и разработок, проделанных автором, исключительно,
по личной инициативе, для нахождения совершенного инструмен-
та разработок систем управления компьютерными процессорами,
прежде всего, для себя, как для профессионального разработ-
чика, который, лично испытывал острую, жизненную потребность
в таком, совершенном, инструменте и остро ощущал отсутствие
под рукой такого совершенного инструмента. Автор пытался ос-
мыслить эту проблему еще в 1968 году, когда он начал прог-
раммировать на алгоритмических языках, с появлением в России
первых серийных систем программирования на языке Алгол-60.
   Автор, Паньков Виктор Михайлович, системный разработчик,
системный и прикладной программист. инженер-электроник, сис-
темный интегратор по комплексной компьютеризации научно-тех-
нических и управленческих работ в научных учереждениях, ад-
министратор баз данных и специалист по эксплуатации и техни-
ческому обслуживанию мэйнфреймов, а также компьтерных сетей
и серверов, занимался этими проблемами в отрасли ядерной
энергетики и гидрометеорологии с 1968 года, после окончания
ВУЗа в 1967 году по специальности "ЭВМ и программирование".
   Так, в 1968-1974 годах, на ЭВМ второго поколения, наря-
ду с сопровождением разнообразных средств системного прог-
раммного обеспечения, автор разработал: систему ввода-выво-
да, управляемого редактированием, а также систему процедур
математики рациональных дробей для системы программирования
ТА-1М на языке высокого уровня Алгол-60; ряд программ-драй-
веров управления перспективными периферийными устройствами
ЭВМ; мониторную файловую систему; диалоговый редактор фай-
лов; язык программирования - системный автокод и транслятор
с этого автокода, а также, мультипрограммную операционную
систему и ее супервизор для отечественной ЭВМ, второго поко-
ления, типа М-222.
   В 1975-1987 годах, на ЭВМ третьего поколения, наряду с
сопровождением разнообразных средств системного программного
обеспечения, автор разработал: ряд программ-драйверов управ-
ления перспективными периферийными устройствами ЭВМ и обмена
данными между разнотипными ЭВМ; многотерминальный диалоговый
редактор-монитор пропуска заданий, с просмотром результатов,
для ОС MVT на ИБМ/370-совместимом компьютере; оператив-
ную архивную файловую систему, практически неограниченной
емкости, работающую по принципу виртуальной памяти на вирту-
альном промежутке магнитный диск-магнитная лента для ОС MVT.
   В это же время, автор провел ряд исследований по опти-
мизации скоростных характеристик мультипрограммной операци-
онной системы, а также, многолетние комплексные исследования
систем программирования на языках высокого уровня, на пред-
мет эффективности соотношений времени интерпретации, компи-
ляции и генерации программ, для чего был разработан ряд экс-
периментальных программ - интерпретаторов псевдокода.
   С 1988 года, автор начал работу на ЭВМ типа VAX-11 и
IBM PC, а также внедрение и исследование сетей DECNET и тех-
нологии ETHERNET, а также других локальных сетей, в операци-
онных системах UNIX, VAX VMS, MS DOS, OS/2 с СУБД DBMS,
DBASE3 PLUS.
   Были разработаны и реализованы, в виде комплексов под-
программ, концепции использования, нетрадиционных для баз
данных, эффективных языков, высокого уровня, для работы с
базами данных DBMS для ЭВМ VAX-11 и DBF-файлами, используе-
мыми во многих СУБД для ЭВМ IBM PC.
   Автор продолжил исследования эффективности интерпрета-
торов и компиляторов на ЭВМ типа VAX-11 и IBM PC в примене-
нии к их архитектурным особенностям, для чего был разработан
экспериментальный интерпретатор и компилятор для ЭВМ VAX-11,
а также, экспериментальный компилятор языка СИ для IBM PC на
основе самокомпилирующегося компилятора Rat-C, в котором был
полностью разработан новый блок кодогенератора для IBM PC, c
существенной оптимизацией загрузочного кода.
   В результате всех этих многолетних исследований была
разработана концепция языка LUX, ориентированного на ар-
хитектуру современных ЭВМ, концептуально обеспечивающего
однозначную трансляцию каждой конструкции языка в максималь-
но эффективный машинный код, а также был разработан компиля-
тор с этого языка, отличающийся практически мгновенным вре-
менем компиляции и сборки достаточно больших программ в заг-
рузочные модули для операционных систем MS DOS, Windows 3.1,
Windows-95, Windows-NT, и Windows-OS/2, работающей под OS/2
Warp, а также, собственно для OS/2 Warp.
   На базе этого языка и компилятора, в том числе для це-
лей их развития и практической обкатки, были, параллельно,
разработаны все компоненты системы программирования на языке
Люкс, в том числе, помимимо самого компилятора для MS DOS,
встроенный текстовый редактор-оболочка турбосистемы данного
компилятора, ряд программ - утилит обслуживания библиотек
классов объектов, а также, несколько задач компьютеризации
управления (АСУ), работающих с базами данных, на основе DBF
-файлов. Используя систему программирования на языке Люкс,
автор, также, разработал драйвер сетевой платы фирмы ИОЛА
для локальной сети LAN-сервера операционной системы IBM OS/2
Warp.
   Автор, также, разработал свою, оригинальную, операцион-
ную среду для операционной системы MS DOS, использующую flat
-модель оперативной памяти для полной физической оперативной
памяти компьютера, в которой, используя систему программиро-
вания на языке Люкс, можно, напрямую, распределять память и
обрабатывать данные в полной, многомегабайтной, физической
оперативной памяти компьютера типа Intel 80x86, без каких
-либо расширителей памяти.
   Самой последней разработкой, на базе системы программи-
рования на языке Люкс, является компилятор языка Люкс, рабо-
тающий в операционной среде Flat Model Windows-32 операцион-
ных систем Windows-95 и Windows-NT, и изготавливающий модули
для этой же операционной среды Flat Model Windows-32.
   Длительность поисков, подтверждает и тот факт, что созда-
ние первого прототипа базового уровня языка LUX было начато
еще в 1971 году, о чем был представлен доклад на Всесоюзной
конференции, на ВДНХ, в 1975 году, и выпущен препринт ФЭИ за
номером ФЭИ-548 в том же 1975 году, с названием: "СИСТЕМНЫЙ
АВТОКОД ДЛЯ ЭВМ М-222". LUX - это долгий путь к себе.

   LUX - это То, что и Вам крайне Небходимо, для Себя !!!



   Откройте и Вы для себя язык LUX !!!






   20.Непротиворечивость другим языкам систем программирования.




   Исследования и разработки по созданию языка LUX, не про-
тиворечат другим языкам систем программирования и общей ис-
тории развития языков и систем программирования, поскольку
язык LUX, полностью закрывает незаполненую ранее нишу между
языками типа ассемблера, АЛМО или ФОРТ, с одной стороны, и
языками типа Бейсик, Паскаль или Си с другой стороны. Цель,
результатом которой является создание, а, вернее всего, на-
хождения языка LUX, была комплексной: с одной стороны, язык
должен быть идеально соответствующим системам команд серий-
ных ЭВМ, с другой стороны, максимально использовать системы
операций серийных языков программирования, и, более того,
максимально соответствовать тысячелетнему опыту компактности
алгебраических выражений и функций традиционной математики.
   Преследовалась одна цель - сделать язык системы команд
серийных ЭВМ, действительно языком, подходящим любому прог-
раммисту, и в главном - языком математики.

   LUX - это Компьютерная Алгебра и Гармония !!!

   LUX - это Магистральное направление !!!



   21.Магистральный путь в иерархии языковых систем разработки.




   Язык LUX, заполняет магистральный путь в иерархии языко-
вых систем разработки, и наводит широкий и длиный мост через
пропасть в магистрали функциональноориентированных языковых
систем разработки, компилирующего типа, между языками типа
ассемблера, с одной стороны, и языками типа Паскаль или Си с
другой стороны, с разветвленными транспортными развязками к
другим языкам и системам программирования, и, в частности, к
системам интерпретирующего типа и многообразному множеству
языковых систем специального назначения.
   Несмотря на то, что язык LUX, появился сравнительно не-
давно, он занимает магистральный путь !!! Не вина автора
в том, что мировой путь развития языковых систем, когда-то,
в пятидесятых скакал галопом по Европам от программирования
в машинных кодах и на ассемблере через пропасть в магистрали
к программированию на Фортране и Алгол-60. На путях, скорее,
теоретического развития языковых систем, у нас в стране, был
разработан язык АЛМО, но он не получил сколько-нибудь замет-
ного распространения. На западе еще появлялись промежуточные
языки типа FORTH, APL, как то, заполнявшие эту пропасть, в
диалоговом подходе, но у нас они, также, не получили сколько
-нибудь заметного распространения, возможно из-за задержки
в развитии технических средств диалога с ЭВМ, которые у нас
широко распространились только в восьмидесятых годах.
   По этим причинам, автор языка Люкс искал чем заполнить
эту пропасть в магистрали функционально-ориентированных язы-
ковых систем разработки, компилирующего типа. И шел прямым,
магистральным путем, и пришел к языку Люкс.

   LUX - это и Ваш долгий путь к себе !!!

   LUX - это Магистральное направление !!!



   22.Значительный диапазон языка по уровню абстрагирования.




   Немного о языке Люкс. Этот язык, высокого уровня, со-
держит машинно-независимое подмножество, и машинно-ориенти-
рованное подмножество языка Люкс в одном, и том же, едином,
языке.
   Машинно-независимое подмножество может быть использова-
но для разработки эффективных прикладных программ.
   Машинно-ориентированное подмножество этого языка может
быть использовано для разработки эффективных программ, таких
как компоненты операционных систем, драйверы устройств, сис-
темные обслуживающие программы, тесты оборудования, компо-
ненты языковых систем программирования, таких как компилято-
ры, декомпиляторы, редакторы текста, библиотекари и т.д.
   Машинно-ориентированное подмножество этого языка может
быть использовано для разработки многих эффективных про-
грамм, для которых, ранее, использовался язык ассемблера, но
язык Люкс не является языком ассемблера. Язык Люкс, в боль-
шинстве случаев, может заменить язык ассемблера, но язык
Люкс не есть язык ассемблера. Язык Люкс есть объектно-ориен-
тированный язык высокого уровня и язык низкого уровня в од-
ном и том же едином языке.
   Программист, сам, может выбирать операторы необходимого
уровня из полного множества операторов языка Люкс.

   LUX - это То, что делает Сложное Простым !!!



   23.Плавный переход языка от базового до высокого уровня.




   Если разработчик желает полностью сохранить мобильность
разрабатываемой программы, то в ней должны быть использованы
только операторы из машинно-независимого подмножества языка.
Однако мобильность, разрабатываемой программы, может быть
принесена в жертву эффективности этой программы, и тогда в
ней могут быть более эффективно перепрограммированы некото-
рые места при помощи операторов машинно-ориентированного
подмножества языка. Разработчик может плавно выбирать уро-
вень операторов языка и соотношение мобильности и эффектив-
ности работы программы в пределах одного и того же языка.

   LUX - это То, что делает Сложное Простым !!!



   24.Широчайший спектр адекватности системам команд ЭВМ.




   Диапазон архитектур центральных процессоров, на которых,
по предварительным проработкам автора, может быть реализован
язык Люкс, представлен широкой номенклатурой архитектур цен-
тральных процессоров, начиная с серий процессоров Intel
i80x86 и VAX-11. Однако, предлагаемый язык Люкс универсален,
частично машинно-ориентирован, а частично машиннонезависим и
применим к любым, в том числе и RISC - архитектурам, цент-
ральных процессоров DEC Alpha, PA-RISC, SPARC, POWER PC.

   Наиболее современный уровень техники представлен архитек-
турой центральных процессоров серии Intel 80x86, архитектур-
но совместимых, снизу-вверх, от младших моделей 8086, 80186,
   80286 до старших моделей 80386, 80486, Pentium P54, Pentium
Pro, Pentium - II, на которых и проводилась основная отра-
ботка предлагаемого язык Люкс.

   LUX - это Широкое Магистральное направление !!!



   25.Широчайший спектр применений от АСУ до драйверов и ядра.




   Концепция языка высокого уровня LUX, ориентирована на ар-
хитектуру современных ЭВМ, и концептуально обеспечивает од-
нозначную трансляцию каждой конструкции языка в максимально
эффективный машинный код. Разработан компилятор с этого язы-
ка, отличающийся практически мгновенным временем компиляции
и сборки достаточно больших программ в загрузочные модули
для операционных систем MS DOS, Windows 3.1, Windows-95,
Windows-NT, и Windows-OS/2, работающей под OS/2 Warp, а так-
же, собственно для OS/2 Warp.
   На базе этого языка и компилятора, в том числе для це-
лей их развития и практической обкатки, были, параллельно,
разработаны все компоненты системы программирования на языке
Люкс, в том числе, помимимо самого компилятора для MS DOS,
встроенный текстовый редактор-оболочка турбосистемы данного
компилятора, ряд программ - утилит обслуживания библиотек
классов объектов, а также, несколько задач компьютеризации
управления (АСУ), работающих с базами данных, на основе DBF
-файлов.
   Все компоненты системы программирования на языке Люкс,
включая собственно сам компилятор с языка Люкс, монитор и
редактор исходного текста, библиотекарь и вьювер классов
объектов, были разработаны с использованием собственно само-
го языка Люкс.
   Компилятор с языка Люкс, является самокомпилирущимся
компилятором. Первая, компилируемая ассемблером, версия язы-
ка Люкс, и вторая, самокомпилирующаяся, была разработана для
Intel 80x86-совместимых компьютеров.
   Вторая версия системы программирования на языке Люкс,
стала промышленной версией этой системы программирования.
   Система программирования на языке Люкс, работает собст-
венно в операционной среде операционной системы MS DOS, в MS
DOS сессиях операционных систем Windows 3,x, Windows-95 и
Windows-NT, а также в DOS сессиях операционной системы IBM
OS/2.
   Система программирования на языке Люкс, генерирует заг-
рузочные модули для традиционной операционной среды операци-
онной системы MS DOS, включая расширители памяти для опера-
ционной среды MS DOS.
   Автор, также, разработал свою, оригинальную, операцион-
ную среду для операционной системы MS DOS, использующую flat
-модель оперативной памяти для полной физической оперативной
памяти компьютера, в которой, используя систему программиро-
вания на языке Люкс, можно, напрямую, распределять память и
обрабатывать данные в полной, многомегабайтной, физической
оперативной памяти компьютера типа Intel 80x86, без каких
-либо расширителей памяти.
   Система программирования на языке Люкс, также, генери-
рует загрузочные модули для 16-битовых сегментов памяти
операционной среды Windows, для 32-битовых сегментов flat
-модели памяти операционной среды Windows, которая использу-
ется в операционных системах Windows-95 и Windows-NT.
   Система программирования на языке Люкс, также, генери-
рует загрузочные модули для операционной системы IBM OS/2.
Используя язык Люкс, автор разработал драйвер сетевой платы
фирмы ИОЛА для локальной сети LAN-сервера операционной сис-
темы IBM OS/2 Warp.
   Самой последней разработкой, на базе системы программи-
рования на языке Люкс, является компилятор языка Люкс, рабо-
тающий в операционной среде Flat Model Windows-32 операцион-
ных систем Windows-95 и Windows-NT, и изготавливающий модули
для этой же операционной среды Flat Model Windows-32.

   LUX - это Широкое Магистральное направление !!!




                          Откройте для себя язык LUX !!!



              LUX - это язык компьютерной математики !!!



LUX - это Мгновенная компиляция !!!
LUX - это Компактность и Скорость !!!
LUX - это Магистральное направление !!!
До миллиона операторов LUX в секунду !!! -
Это непревзойденная скорость трансляции !!!
LUX - это То, что делает Сложное Простым !!!
LUX - это Компьютерная Алгебра и Гармония !!!
LUX - это Удобно, Эргономично и в Удовольствие !!!
LUX - это То, что и Вам крайне Небходимо, для Себя !!!
Программа и Блок-схема - на языке LUX - это Единое Целое !!!



   Если Вы хотите разрабатывать быстрые, компактные и совер-
шенно понятные, в целом и в деталях, программы, и, каждый
раз, мгновенно, транслировать их, - шлите Ваши предложения !




                        Откройте для себя язык LUX !!!




В.М.Паньков,249020 Обнинск, Россия.

Copyright(c) 1998 Victor M.Pancov Russia Obninsk

Free Web Hosting