Пишу робота, в процессе выясняются некоторые фишки языка, не зная которых можно нарваться на большие проблемы.
Решил поделиться.
1. Все переменные преобразуются в верхний регистр (относительно очевидная штука) .
Пример.
MYVALUE и myValue — это одни и те же переменные
2. У переменных нет «области видимости» — любая переменная является глобальной в классическом понимании.… и даже «RESULT». Фактически функции — не функции, а блоки кода, которые подставляются в указанные места.
Пример:
FUNC Fn()
FOR i from 1 TO 5
....
FLAG = False
END FUNC
' тело программы
....
flag = True
FOR i FROM 1 TO 10
value = Fn() 'теперь i=5, flag = False
....
Следствие
а) либо четко контролировать, где какая переменная используется, либо давать им имена-префиксы, делая переменными уникальными (что сильно усложняет отладку)
б) присваивать RESULT непосредственно перед RETURN
в) там где можно не использовать функции и по возможности не использовать рекурсию (или четко осознавать, что там может происходить)
3. Все аргументы передаются по значению.
4. Есть очень красивая структура создания словаря в одну строку, не плодя переменные:
SET_VALUE(SET_VALUE(CREATE_MAP(),«name1»,«value1»),«name2»,«value2») такого рода запись можно подставлять в параметры к-либо функции
это чуть чуть облегчает отладку — в списке переменных нет того, что не нужно.
5. GET_VALUE всегда возвращает текстовые данные
6. Нумерация таблиц 1… len
Нумерация списков 0… len-1
bar$, Если я правильно понял инструкцию, то USE_CASE_SENSITIVE_CONSTANTS на переменные не влияют…
Зацитирую:
Все строковые константы переводятся автоматически в верхний регистр. Но в случае необходимости можно отменить автоматический перевод символов в верхний регистр. Для этого необходимо между заголовком и телом программы добавить следующую строку: USE_CASE_SENSITIVE_CONSTANTS
При добавлении указанного ключа имена строковых констант не будут переводиться в верхний регистр, а будут оставаться такими, какие они есть.
Т.е. тут речь про строковые константы, типа «SiZ2» — чтобы они не становились «SIZ2», надо вставить ключ.
🧸 Как российский рынок акций проводит День медведя?
27 февраля — Международный день белого медведя. Мы заглянули в историю с момента появления праздника в 2008 году и вот что обнаружили. «Медведи» брали верх по итогам торговой сессии 27...
EUR/GBP: Бетонный пол и медвежий капкан — покупатели готовят прорыв крепости?
Кросс-курс EUR/GBP изменил тактику: вместо немедленной реализации «бычьего флага» цена перешла к классическому ретесту. Котировки откатились к пробитой локальной нисходящей линии и одновременно...
Газета «Коммерсант» выпустила материал на тему добровольного медицинского страхования (ДМС). Рынок ДМС в 2026 году вошёл в фазу ускоренного подорожания: тарифы по корпоративным договорам выросли...
Оперативная заметка с полей облигационной конференции для клиентов Mozgovik Research
Доброго дня, уважаемые читатели Mozgovik Research.
Для вас хотел коротко и оперативно поделиться основными идеями, которые успел услышать на нашей конференции по облигациям.
Кого удалось...
Мой прогноз:
1. Резкое увеличение денежной массы (станок в три смены) с вливанием денег в бюджет через ОФЗ, чтобы закрыть дыру в бюджете;
2. Заморозка цен на то, без чего нельзя жить (привет С...
ОПЕК+ в апреле 2026г увеличивает добычу нефти на 206 тыс баррелей в сутки — относительно марта 2026г
ОПЕК+ в апреле 2026г увеличивает добычу нефти на 206 тыс баррелей в сутки — относительно марта...
Завтра можете начинать торги с нижней планки, курс 8
Это только начало того о чем писала юрист в анонсе…
kad.arbitr.ru/Card/f7567733-38e9-41b4-b825-74f26a17612e
Heinrich von Baur, это им не поможет. У них экспорт встанет и деньги кончатся. Риал ещё больше обесценится и народ обнищает… А это уже база для смены теократии на светскую власть. Убийство десятков...
sniper, по крайней мере товары импортные на 150 подорожали к сегодняшнему дню. Не состыковка какая то или нам терминал врет. Походу манетизировать надо эту разбалланс. Но могут еще раз вниз пока пр...
Зацитирую:
Все строковые константы переводятся автоматически в верхний регистр. Но в случае необходимости можно отменить автоматический перевод символов в верхний регистр. Для этого необходимо между заголовком и телом программы добавить следующую строку: USE_CASE_SENSITIVE_CONSTANTS
При добавлении указанного ключа имена строковых констант не будут переводиться в верхний регистр, а будут оставаться такими, какие они есть.
Т.е. тут речь про строковые константы, типа «SiZ2» — чтобы они не становились «SIZ2», надо вставить ключ.
пока не сделаешь обрамление
if 1==1
end if