Приятное в BlitzMax

Поскольку опять возникли некоторые споры по языку на форуме, то я решил немного ускорится и выложить плюсы и минусы BlitzMax, которые обнаружились при работе с ним. Для начала плюсы (или просто вещи, которые мне в нем понравились), потому что их меньше:
  • Можно сразу делать инициализацию локальных переменных, в том числе и массивов:
    Local a%[] = [1,2,3]
  • Инициализация при объявлении полей класса - уменьшается количество текста, которое нужно писать программисту, т.к. часто отпадает необходимость писать конструктор:
    Field mObj:Object = new TMyType
  • Обращение к каждому элементу строки через индекс:
    a$ = "blablabla"; print a[3];
    но нельзя сделать присвоение вида:
    a[3]=46; - это только для проверки символов строки.
  • Строка является объектом. Можно записать:
    a$ = "blablabla"; a.length()
  • Указатели с индексным доступом:
    p: Byte Ptr; p[3] = 0;
  • Цикл for/until - в отличие от for/to, переменная увеличивается до величины, не включая ее. Что удобно для работы с массивами, начинающимися с 0.
  • Довольно таки просто реальзовать переключение оконного и полнооконного графических режимов. И, впрочем, множество других нужных мелочей.
  • Звук 3Д - есть позиционирование и глубина: SetChannelPan и SetChannelDepth, соответственно.

Комментариев нет: