Скриптол для робототехники и приложений, использующих веб-стандарты

Язык Script был разработан в 2001 году Денисом Суро. и определяется по 7 правилам: простота, безопасность, соответствие стандартам, объективность, множественные направления, переносимость, легкое обучение.
Код скриптола интерпретируется или компилируется в код JavaScript, PHP или C++, программа скриптола может быть скомпилирована в двоичный исполняемый файл.
Структуры управления различны и мощнее, чем в классических языках, что позволяет, в частности, паттерн-матч и автоматы. Безопасность является одной из целей языка, особенно в том, что касается типичных переменных.
Скриптол - универсальный язык для робототехники, реализации веб-приложений, скриптов, прототипирования и приложений с HTML-интерфейсом 5. Он позволяет интегрировать XML в исходный код.
Несколько нововведений Скриптола были восприняты языками, созданными с 2001 года. Это первый язык, на котором используются реактивные переменные, сочетающие реактивное и императивное программирование.

Evolution des langages de programmation

Можно использовать Script:

В 2014 году появляется новая версия языка - Script 2 с компилятором на JavaScript.

Характеристики Script

Синтаксис:

Инструкции заканчиваются в конце строки.
Терминаторы, близкие к XML :/if ,/for и т. Д.
У каждого оператора есть только одна функция, в отличие от C, которая повторно использует их по-разному в зависимости от контекста.
Типы из реальной жизни: номер, текст, реал,...
Составные назначения имеют форму :

x + 1  // signifie: x = x + 1  

Скрученные данные:

Скаляры, xml, класс.

Контрольные структуры:

Если составная:

Можно микшировать различные типы сравнений и сравнивать разные типы данных от одного теста к другому.

if a
= 10: print "égal"
< 10: print "moins"
else
      print "plus"
/if 

Уиль:

Структура while имеет несколько форм, а закрывающее слово let защищает от бесконечных петель.

while x < 10
  print x  
/while   // boucle infinie
while x < 10
  print x  
let x + 1  

Определение элемента:

Заголовок похож на заголовок C, но может быть возвращен несколько типов. Конечным кодом является инструкция return, за которой не следует значение, если функция не возвращает ни одного.

int, text funcname(... arguments...)
   ...instructions...
return a, b

Команда «Простой печать»:

Команда print возвращает строку после текста. Команда echo этого не делает.

print "Hello world!"

Отсканировать две таблицы :

Сложим содержимое двух списков.

var list1=[1,2,3]
var list2=[10,20,30]
for i, v in list1
   print v + list2[i]
/for

Должен показать: 11 22 33.

Вложение кода в HTML-страницу:

Код скриптола преобразуется в PHP компилятором solp.

<?sol
   print "code imbriqué en page html"
?>

Использовать активные переменные

Это позволяет программировать по формулам без написания кода для обновления переменных.

react v1
react v2
react sum = v1 + v2
sum.output = 'document.getElementById("sum").value = this.value;'

Переменные v1 и v2 назначаются через интерфейс HTML. HTML-элемент с идентификатором «sum» будет обновляться каждый раз при изменении содержимого переменных v1 или v2.

Скриптол 2

С появлением компилятора, создающего код JavaScript, язык адаптировался под новую аудиторию. Изначально созданный в качестве фронтэнда на PHP 4, изначальный язык упрощал программирование с классами и наследием, фореачом и другими структурами, которых в то время не хватало PHP. PHP 5 заставил Script потерять часть интереса, и, кроме того, язык Hack, добавляющий типичные переменные, все еще подтверждает эту тенденцию. Язык должен был адаптироваться к новой обстановке.

Синтаксис приблизился к установившемуся со временем стандарту, где другой синтаксис сам по себе не представляет интереса:

Скриптол 2 требует редактирования существующих программ простыми заменами без грамматических изменений.

Скриптол 3

Версия 3 языка, которая генерирует только код JavaScript, реализует концепцию реактивного и целевого программирования. Язык также упрощен, чтобы избавиться от полезной функции только для целевого кода PHP.

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

Инструменты и документы