ТОМ2: язык программирования: различия между версиями

Материал из IFВики
Перейти к навигации Перейти к поиску
Содержимое удалено Содержимое добавлено
мНет описания правки
 
(не показано 7 промежуточных версий 2 участников)
Строка 5: Строка 5:
{{Содержание справа}}
{{Содержание справа}}


=== Особенности языка ===
==Символы==
* полная поддержка UNICODE на уровне движка
В коде игры допускается использование цифр, русских и латинских букв, знаков препинания и прочих знаков, присутствующих на клавиатуре.
* полная поддержка русской морфологии (склонение, предлоги)
* возможность писать смешанный код на искусственном и естественном языках
* поддержка сторонних плагинов, написанных на любом языке программирования в виде dll


[[Категория:Документация ТОМ2]]
==Имена==
[[Категория:Незаконченные статьи]]
Имена должны состоять из русских или латинских букв.
Регистр букв в имени безразличен (до свиданья Си).
Запрещается смешивать в имени русские и латинские буквы - интерпретатор ругается.

Буквы 'е' и 'ё' равнозначны, имена "ёжик" и "ежик" являются одним именем.


Имя может включать в себя цифры.
Имя может начинаться с цифры.
Имя не может состоять только из одних цифр.


Имя может включать в себя знаки '-'(минус), '`'(гравис), ':'(двоеточие) и '_'(нижнее подчеркивание).

Знак '-' (минус) может находиться только внутри имени и должен быть обрамлен с обеих сторон буквами.
В этом случает он трактуется как дефис и обрабатывается как буква.
В операциях вычитания ставьте разделяющие пробелы!

Знак '`'(гравис) используется для указания ударения при произношении. При сопоставлении имен игнорируется: "за`мок", "замо`к" и "замок" - это одно имя.

Знаки ':' и '_' играют более сложную роль и будут рассмотрены ниже

==Ключевые слова==
Определенные имена являются '''ключевыми словами''' и используются для обозначения различных конструкций языка. Ключевые слова будут подробно рассмотрены в разделах описания соответствующих конструкций.

==Значения==
'''Значение''' - минимальная единица данных, которыми оперирует система.

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

===Тип значения===
'''Тип''' является самым важным свойством значений. Узнать тип значения можно так:
5.тип
"текст".тип
(2=3?).тип
тип.тип

Платформа используют следующие типы:

'''простые типы'''
*empty / пусто
*bool / булево
*number / число
*spcvalue / спецзначение
*string / строка

'''объектные типы'''
*object / объект
*property / свойство
*class / класс
*location / локация
*word / слово
*preposition / предлог

'''списки'''
*and-list / и-список
*or-list / или-список

==Спецзначения==
используются платформой в самых различных целях и образуют фиксированный список:

//имена типов
///простые типы
empty / пусто
bool / булево
number / число
spcvalue / спецзначение
string / строка
///объектные типы
object / объект
property / свойство
class / класс
location / локация
word / слово
preposition / предлог
///списки
and-list / и-список
or-list / или-список
///ссылка (не используется в коде напрямую)
reference / указатель
//специальные свойства значений
type / тип
name / имя
title / наименование
key / ключ
len / длина
comment / комментарий
item_type / тип_элементов (для классов)
def_key / ключ_по_умолчанию (для слов)
pos / поз (порядковая позиция аргумента в функции)
//события
no_property / нет_свойства


[[Категория:Документация ТОМ]]

Текущая версия от 23:18, 8 сентября 2016

Справочник по языку программирования платформы ТОМ2.

Страничка в разработке...

Особенности языка

  • полная поддержка UNICODE на уровне движка
  • полная поддержка русской морфологии (склонение, предлоги)
  • возможность писать смешанный код на искусственном и естественном языках
  • поддержка сторонних плагинов, написанных на любом языке программирования в виде dll