Войти
BASIC[ProjectYaga]Форум

Рождение (3 стр)

Страницы: 1 2 3
#30
(Правка: 19 фев 2022, 23:36) 21:52, 18 фев 2022

На текущий момент:
Поправил баг с IF... THEN... ELSE....END IF
Переработал основные функции языка  cint, fix, val... и др.
Добавляю списки LIST и  Dictionary (под капотом deque и unordered_map)

#31
19:33, 21 фев 2022

И ещё реализую For Each для LIST и Dictionary

#32
4:22, 22 фев 2022


А массивы итерируются только по счетчику? Или можно будет прогнать как список?

Ну и к дизайну... - Dictionary - как то звучит и пишется не айс. в БлицМаксе оно называется "TMap" ну или "Map". Есть также вариант "THash" или же "Hash".

#33
8:42, 22 фев 2022

LIST и Dictionary - это названия из vb.net все кто на бейсике пишут привыкли к ним
Map и Hash - это ближе к Си-языкам

#34
8:47, 22 фев 2022

mingw
> А массивы итерируются только по счетчику?
Именно массивы реализованы  как классы ARRAY(_DYNAMIC\_STATIC\_STATIC_2D\_STATIC_3D)
да, пока так
и если честно не вижу смысла их гонять как список
только если ради синтаксического сахара)

#35
(Правка: 13:11) 12:01, 22 фев 2022

LIST, Dictionary и For Each
заработали

вот пример кода:

DIM list2 AS DICTIONARY(OF STRING, INTEGER)
DIM list3 AS LIST(OF INTEGER)

list2.ADD("1", 1)
list2.ADD("2", 2)

list3.ADD(5)
list3.ADD(6)

FOR EACH l2 AS KEYVALUEPAIR(OF STRING, INTEGER) IN list2
  PRINT l2.KEYPAIR & " " & l2.VALUEPAIR & VBCRLF
NEXT

FOR EACH l3 AS INTEGER IN list3
  PRINT l3 & VBCRLF
NEXT
#36
10:02, 31 мар 2022

Поправил баги,
начал работу по добавлению StringBuilder и Date (только основу)

#37
10:04, 31 мар 2022

Сделал два варианта объявления массива:
  ARRAY_DYNAMIC textcpp(1) AS STRING
или
  DIM textcpp(1) AS ARRAY_DYNAMIC(OF STRING)
- решил пока оставить оба

Страницы: 1 2 3
BASIC[ProjectYaga]Форум