Вниз  NeoBasic
- 19.06.2016 / 15:43
Aladdin
  Пользователь

Aladdin 
Сейчас: Offline
vl@volk, и подпрограммы в MobileBasic быстрееты это это серьезно, мне чето не верится
переход осуществляется к меткам и подпрограммам таким образом
исходный код NB
  1. goto lab
в рантайме
  1. i = labels[labId];


Изменено Aladdin (19.06 / 15:47) (всего 2 раза)
- 19.06.2016 / 16:09
19Ram84
  Пользователь

19Ram84 
Сейчас: Offline
Эх ребята.
Портировали бы вы, свои языки сразу на ведро ;-)
- 19.06.2016 / 16:19
vl@volk
  Пользователь

vl@volk 
Сейчас: Offline
Aladdin, последняя цифра как раз и показывает время ста переходов. Скорее всего у тебя медленно берутся/устанавливаются значения переменных. В МБ переменные хранятся в массиве примитивного типа.
__________________
 знает толк
- 19.06.2016 / 16:56
Aladdin
  Пользователь

Aladdin 
Сейчас: Offline
Цитата vl@volk:

Aladdin, с помощью математики делать смещения в массиве
Я об этом даже не подумал. :hack:

Скорее всего у тебя медленно берутся/устанавливаются значения переменных
Может быть, для каждого присвоения создается отдельный объект класса Value, и прожирает не мало памяти. Надо это как то исправить

Изменено Aladdin (19.06 / 17:00) (всего 2 раза)
- 19.06.2016 / 17:10
vl@volk
  Пользователь

vl@volk 
Сейчас: Offline
Aladdin, перед тобой стоит выбор - масштабируемость или производительность :)
__________________
 знает толк
- 22.06.2016 / 06:10
Aladdin
  Пользователь

Aladdin 
Сейчас: Offline
Обновление 0.1.4:
-переписан рантайм, теперь не
потребляет много памяти
-исправлены все баги в тесте
0.1.3
-добавлена операция !
  1. println !true // false
-изменена операция % на mod
-изменена операция сравнения
= изменен на ==
-добавлена операция div
-теперь аргумент step
конструкции for не
объязателен и по умолчанию
равен 1
-в конструкции for можно
использовать downto
-все результаты арифметческих
операций (над типами integer,
float, boolean) возвращаются в
виде float
-при сложении любого типа с
строкой возвращается строка
-если применить операции
сравнения над строками то
сравниваются длины строк,
кроме строк длины которых
равны 1, при этом
сравниваются коды их
символов
-при умножении числа и
строки возвращается
умноженный вид строки
  1. println 'hello '*3 // hello hello
  2. hello
работа с формой
-showform $title показывает
форму с заголовком
-addCommand $command
добавляет команду в
зависимости от текущего
экрана
-removeCommand $command
удаляет команду в
зависимости от текущего
экрана
-appendform $item добавляет в
форму картинку, строку
-clearform очищает форму
-getdisplay() получает текущий
экран, можно сравнить с
константами экрана
-getcommand() получает
последную нажатую команду,
при бездействии возвращает
CMD_NONE
-createcommand($title, $type,
$prior) создает команду
константы command-input
-CMD_NONE
константы screen
-SCREEN_FORM
-SCREEN_CANVAS
-SCREEN_CONSOLE
константы command-type
-COMMAND_SCREEN
-COMMAND_EXIT
-COMMAND_HELP
-COMMAND_ITEM
-COMMAND_BACK
-COMMAND_CANCEL
-COMMAND_STOP
Сокращены названия команд и функций работы с потоками.

Изменено Aladdin (22.06 / 08:45) (всего 1 раз)


Прикрепленные файлы:
Documentation.zip (4.1 кб.) Скачано 29 раз
- 22.06.2016 / 08:18
Aladdin
  Пользователь

Aladdin 
Сейчас: Offline
Sorry, выложил не ту сборку:-D
скачивайте эту


Прикрепленные файлы:
NeoBasic_0.1.4.zip (45.6 кб.) Скачано 71 раз
NeoBasicRuntime.zip (22.03 кб.) Скачано 47 раз
- 22.06.2016 / 08:29
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
все результаты арифметческих операций (над типами integer, float, boolean) возвращаются в виде float:squint:
__________________
 let live
- 22.06.2016 / 08:42
Aladdin
  Пользователь

Aladdin 
Сейчас: Offline
aNNiMON, Это я сделал для сохранения точности, а что ненадо было?:-(
- 22.06.2016 / 08:56
Aladdin
  Пользователь

Aladdin 
Сейчас: Offline
vl@volk, После того как переписал рантайм, прога начала работать намного быстрее, запустил твой тест вот что вышло
  1. 0.0ms 0.128ms 0.0ms
незнаю откуда такие , может сделаешь еще один тест:)
Наверх  Всего сообщений: 71
Фильтровать сообщения
Поиск по теме
Файлы топика (15)