Да, да ... Только в последнй версии был добавлен "лексический препроцессор", а не лексический анализатор (который выполняет первый проход при трансляции). Это был машинно-ориентированный язык высокого уровня: все стандартные операторы для высокого уровня (циклы, условное выполнение, селекторы и т.п.), а также можно было использовать ассемблерные команды. На архитектуре без стека корутины до этого можно было писать только на ассемблере и очень скрупулёзно. SPL не был гостирован, поэтому многие для официальных "релизов" писали корутины (там они назывались реентерабельные подпрограммы) на SPL, затем дезассемблированный код втыкали в техническую документацию проекта))). По оценкам разработчиков, эффективность кода по памяти составляла 98-99 % от того, если бы этотже код писали на ассемблере - там была глубокая оптимизация кода. Кому интересна документация на это моё детище, могу выслать PDF (один добрый человек мне сделал :-) )
Да, да ... Только в последнй версии был добавлен "лексический препроцессор", а не лексический анализатор (который выполняет первый проход при трансляции). Это был машинно-ориентированный язык высокого уровня: все стандартные операторы для высокого уровня (циклы, условное выполнение, селекторы и т.п.), а также можно было использовать ассемблерные команды. На архитектуре без стека корутины до этого можно было писать только на ассемблере и очень скрупулёзно. SPL не был гостирован, поэтому многие для официальных "релизов" писали корутины (там они назывались реентерабельные подпрограммы) на SPL, затем дезассемблированный код втыкали в техническую документацию проекта))). По оценкам разработчиков, эффективность кода по памяти составляла 98-99 % от того, если бы этотже код писали на ассемблере - там была глубокая оптимизация кода. Кому интересна документация на это моё детище, могу выслать PDF (один добрый человек мне сделал :-) )