Вниз  OwnLang
- 13.12.2019 / 17:31
vl@volk
  Пользователь

vl@volk 
Сейчас: Offline
Тупа кафе, попробуй еще сделать деление на ноль в коде
__________________
 знает толк
- 13.12.2019 / 19:56
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
Alexandr, ты только g используешь при отрисовке, но в update у тебя используется b, как и в touch.
Предлагаю завести массив
buffer = []
В touch добавлять не в b, а в buffer
А перед отрисовкой добавлять из буфера в b:
  1. if (!buffer.isEmpty()) {
  2.   b <<= buffer
  3.   buffer = []
  4. }

__________________
 let live

Изменено aNNiMON (13.12 / 19:59) (всего 1 раз)


Прикрепленные файлы:
x.own (1.95 кб.) Скачано 205 раз
- 13.12.2019 / 22:23
Alexandr
  Пользователь

Alexandr 
Сейчас: Offline
aNNiMON, классный фор :gg:
у меня еще вопрос:
  1. b <<= buffer
  2. buffer = []
как работает <<=?
:ps: твой скрипт тоже падает :hack:

Изменено Alexandr (13.12 / 22:24) (всего 2 раза)
- 14.12.2019 / 00:57
Aladdin
  Пользователь

Aladdin 
Сейчас: Offline
aNNiMON, есть пару предложений насчет синтактиса языка
сделать в добавок к анонимным функциям лябмды
тогда вместо
  1. onTouch(def(event) {
  2.  ...
  3. }
  1. onTouch( { event ->
  2.  ...
  3. }
а мапы заменить на
  1. map = [key : value, ...]


Изменено Aladdin (14.12 / 00:58) (всего 1 раз)
- 14.12.2019 / 06:22
snaulX
  Пользователь

snaulX 
Сейчас: Offline
Aladdin, я бы лямбды по другому реализовывал (но анонимные функции мне здесь вполне нравятся):
  1. onTouch((event) => expr)
  2. onTouch((event) => { a lot
  3. of
  4. expressions
  5. })
И кстати требуется доки по классам и include (как он работает) и т.д. А то об include не знал пока не увидел чей-то код который юзает этот оператор :hack:
- 14.12.2019 / 09:55
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
Alexandr, << это merge array
  1. arr = [1, 2, 3]
  2. println arr << [4, 5, 6]
В примерах всё есть.


Aladdin, я хочу как в Котлине. Если последний аргумент функции принимает функцию, то писать так:
onTouch { e -> code }
uithread {
   // code
}
http(url, method) { data ->
}
Хотя такие лямбды не нравятся, постоянно норовит написать func { data -> {
  // Code
}}

snaulX, include просто подключает исходник, находящийся по заданному пути в файлах или в ресурсах. Он не встраивает контент в текущий исходник. Как только исполнение доходит до него, то выполняется всё, что там есть. Никакие новые области видимости тоже не создаются под него.

А класс это сахарная обёртка над map.
  1. class X {
  2.   a = 1
  3.   b = "abc"
  4.   def f1() = 4
  5.   def getB() = this.b
  6.   def toMap() = this
  7. }
  8. x = new X()
  9. println x.toMap()

__________________
 let live

Изменено aNNiMON (14.12 / 10:17) (всего 5 раз)
- 19.06.2021 / 12:56
Dimonik
  Пользователь

Dimonik 
Сейчас: Offline
Была возможность проверить Ownlang Pro на планшете с Андроид 4.4.2 , но при попытке собрать в apk приложение (ownlang) закрывается и ничего не собирает. А вот на андроид 8.1 все работает.
- 20.06.2021 / 10:41
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
Dimonik, при сборке, библиотека для дексирования (которая jar в dex конвертирует), ссылается на внутренние API андроида. И вот от версии к версии там могут быть несовместимости (отсутствовать параметр метода, или вообще метод иначе назван быть). Отловить это из самого приложения OwnLang можно, но вот сделать ничего нельзя, потому что нужны разные версии библиотеки dx, а их в одну версию не встроишь.
Могу в лс отправить пару старых версий, там чуть старее версия dx, наверняка заработает на 4.4.2.
__________________
 let live
- 20.06.2021 / 11:48
Dimonik
  Пользователь

Dimonik 
Сейчас: Offline
aNNiMON, спасибо! Было бы не плохо пару старых версий проверить.
Ещё раз спасибо!
- 22.06.2021 / 05:30
MasterOS
  Пользователь

MasterOS 
Сейчас: Offline
Начало
А можно как-то создать учебник? Ebook(pdf) чтобы изучать внимателно.
Онлайн невозможно узнать все секрети. Было б круто
__________________
 Что? Где? Когда?

Изменено MasterOS (22.06 / 05:30) (всего 1 раз)
Наверх  Всего сообщений: 592
Фильтровать сообщения
Поиск по теме
Файлы топика (60)