Author Topic: [Alpha/Beta Testing] Тестируем сырые обновления (ссылки в первом посте)  (Read 305396 times)

0 Members and 3 Guests are viewing this topic.

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #390 on: December 25, 2017, 12:02:51 PM »
Quote
+ Доработка READMEM(), теперь функция
Теперь функция, а раньше тогда что это было? Или тут недописано?
Дописано. А раньше была не функция  :D
Команда/оператор, вызывалась READMEM(), результат возвращался в $_return1
Теперь это функция и вызывается типа так:
$result = READMEM()

Quote
STRPOS
Функция. Возвращает позицию начала искомой подстроки во входной строке.
Та же байда, что и со стринг-реплейсом: работает только с первым элементом вместо того, чтоб создать массив позиций всех найденных строк.
Всё нормально, для "поиска всех" обычно существует другая команда. Чтобы тупо не тратить время на поиск в больших строках того, что часто нельзя использовать. Даёшь STRPOSALL!!!
Именно в таком виде (поиск первого) она чаще всего и используется. Потом могут идти изменения строки и все остальные позиции будут не актуальны.

1) Создание из скрипта формы произвольной, конфигурируемой формы и размера (простите за тавтологию) + создание на этой форме любого количества кнопок опять же произвольного, задаваемого в скрипте размера
:) Ты просто не представляешь сколько это функций, параметров и режимов. Для простоты - это больше чем сейчас есть в кликере всего остального.

Регексп, кстати, проще прикрутить. Это сторонние модули.
« Last Edit: December 25, 2017, 12:04:38 PM by Vint »


Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #391 on: December 25, 2017, 05:18:22 PM »
Вчера обнаружил во время попыток запустить новые релизы в свойствах исполняемого файла вот такую новую галочку:

Установка галочки никак не повлияло на возможность запуска. Тесты совместимости тож не помогли, добавил в деп-список, теперь нужен ребут.

Quote
STRPOS
Функция. Возвращает позицию начала искомой подстроки во входной строке.
Та же байда, что и со стринг-реплейсом: работает только с первым элементом вместо того, чтоб создать массив позиций всех найденных строк.
Всё нормально, для "поиска всех" обычно существует другая команда. Чтобы тупо не тратить время на поиск в больших строках того, что часто нельзя использовать. Даёшь STRPOSALL!!!
Именно в таком виде (поиск первого) она чаще всего и используется. Потом могут идти изменения строки и все остальные позиции будут не актуальны.
"Даёшь STRPOSALL!11"? Намекаешь, что в реале эта команда никогда и никем не используется? И что вот, каждый раз в цикле заново искать? "Потом могут идти изменения строки и все остальные позиции будут не актуальны" -- я подозревал об этом, когда пытался в уме себе представить работу функции, но допускал, что в реальности дела получше, а что, разве нельзя к полученнным найденным индексам позиций прибавлять смещения на количество добавляемых/вставляемых символов? Ведь их число мы всегда знаем или можем подсчитать.

1) Создание из скрипта формы произвольной, конфигурируемой формы и размера (простите за тавтологию) + создание на этой форме любого количества кнопок опять же произвольного, задаваемого в скрипте размера
:) Ты просто не представляешь сколько это функций, параметров и режимов. Для простоты - это больше чем сейчас есть в кликере всего остального.

Регексп, кстати, проще прикрутить. Это сторонние модули.

Ну а что, эволюцирнировать-то надо  :) Рано или поздно всё равно это всё появится, а щас вижу пошёл у нас весёлый период экспериментов и устранения багов/ добавления новых плюшек, я токк за! С регулярками подозреваю, что было б просто, так Джонни б уже прикрутил, а так надо будет ещё их сравнивать/ тестить на предмет больших перловой поддержки и вменяемого АПИ, чтоб после введения regEx не отвалилась работа строчных функций. Хотя даст бог, и кавычки станут на место)) Так что мож щас и время пришло для начала введения создания формочек, ну не сразу все функции вводить, а постепенно, но с сохранением бек-компатибили, не так как с != вышло, а то скоро такими темпами и === заступят на дежурство.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #392 on: December 30, 2017, 04:47:39 PM »
Ошибка при сравнении строк с числами v4.13.007
Code: (clickermann) [Select]
if(1="text")
   print("стаботало")
end_if
halt

Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
[Alpha/Beta Testing]
« Reply #393 on: January 01, 2018, 02:28:24 AM »
Ошибка при сравнении строк с числами v4.13.007

Почему только строк? На сравнении двух чисел тож спотыкается. Ну ведь результат, возвращаемый ф-цией ArrSize, это число, верно? Подозреваю, собака порылась в новых матоператорах, а не в ифе. Оказывается, пытался запихнуть в ячейку с помощью $uniqz[0]=$curr, и понял свою тупость только после тестирования в 4,13,3. Кстати, почему не сделать рабочей эту тему схему присвоения $array[$idx]=$defvar?! .....Хотя стоп, поменял $uniqz[0]=$curr на соответствующий arrpush($uniqz[0],$curr), но дело не сдвинулось, иф не выполняется как положено. Даже в 4,13,3 не работает, наверно мой загон закрался... Почему arrpush($uniqz,$curr) можно присваивать, а arrpush($uniqz[0],$curr) нельзя?  :'(

Ещё заметил, что "блокируемый" ввод в редактор при исполнении скрипта вовсе не блокируется с клавиатуры, точнее, блокируется, но.. В общем я сделал очередной скрипт с while+iskeydown и бесстрашно жал хоткеи прям с фокусом на редакторе, а потом через какое-то время заметил, что некоторые части строк в скрипте хаотично перемешались. Не наю, может причина не в блокировке, но покрайняку нажатия в редактора шли и возможно некоторые он не обработал или сделал это не верно. В общем, пришлось потерять несколько минут на устранение мешанины (это ещё скриптик небольшой был и был предыдущий сейв, слегка отличающийся от кода в эдиторе). Было такое кстать несколько раз, три раза в 2-х скрипта, кажися.

ПСы. Ой чуть не забув, аррСорт тож не робит у мя.
« Last Edit: January 01, 2018, 03:58:12 AM by Cleoss »

i7330

  • Зашел в гости
  • *
  • Posts: 19
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #394 on: January 01, 2018, 01:52:48 PM »
функции Кликермана после релиза 4.13.3b
Clickermann осваиваю недавно, использую 4.12.001  (2 008 780 байт). Хотелось бы сразу разбираться и вникать в свойства и методы наиболее поздней, пусть даже нестабильной, версии. Если такая возможность для новичков существует, то откуда её (последнюю версию) загрузить?
« Last Edit: January 01, 2018, 02:05:45 PM by i7330 »

Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #395 on: January 01, 2018, 03:02:56 PM »
функции Кликермана после релиза 4.13.3b
Clickermann осваиваю недавно, использую 4.12.001  (2 008 780 байт). Хотелось бы сразу разбираться и вникать в свойства и методы наиболее поздней, пусть даже нестабильной, версии. Если такая возможность для новичков существует, то откуда её (последнюю версию) загрузить?

В самом низу 26-ой страницы данной темы товарищ Челледжер ака автор программы скидывал линк на версию Clickermann 4.13.007, here u have.

Oraven

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3685
  • Котэ
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #396 on: January 02, 2018, 05:08:13 PM »
функции Кликермана после релиза 4.13.3b
Clickermann осваиваю недавно, использую 4.12.001  (2 008 780 байт). Хотелось бы сразу разбираться и вникать в свойства и методы наиболее поздней, пусть даже нестабильной, версии. Если такая возможность для новичков существует, то откуда её (последнюю версию) загрузить?

Вот полная сборка последней версии Clickermann 4.13.007b
https://yadi.sk/d/hyLYf0_23QgUfn

Johnny

  • Создатель
  • Герой форума
  • *
  • Posts: 593
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #397 on: January 02, 2018, 07:47:03 PM »
Ошибка при сравнении строк с числами v4.13.007
Code: (clickermann) [Select]
if(1="text")
   print("стаботало")
end_if
halt

ну вываливаться оно конечно не должно, но чисто концептуально:
вот к примеру условие 1 = "1" что должно вернуть? истину или ложь?


Quote
Clickermann осваиваю недавно, использую 4.12.001  (2 008 780 байт). Хотелось бы сразу разбираться и вникать в свойства и методы наиболее поздней, пусть даже нестабильной, версии. Если такая возможность для новичков существует, то откуда её (последнюю версию) загрузить?
у нас тут клуб перфекционистов. дай бог году к 2020 выкатим релиз. а пока тыщи активных пользователей продолжат страдать и ждать версию х64


Quote
Почему arrpush($uniqz,$curr) можно присваивать, а arrpush($uniqz[0],$curr) нельзя?
потому что первый аргумент - имя массива. $uniqz[0] же является уже ссылкой на его первый элемент. в справке так то написано.

i7330

  • Зашел в гости
  • *
  • Posts: 19
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #398 on: January 02, 2018, 10:21:00 PM »

ну выва... условие 1 = "1" что должно вернуть? истину или ложь?
Истину! На худой конец -1 (минус единицу, эквивалент true). Именно простотой своей макроязык Clickermann-а в его текущем состоянии увлекателен, обаятелен, очарователен и притягателен.. наверное.

у нас... дай бог году к 2020 выкатим релиз. а пока тыщи активных пользователей продолжат страдать и ждать версию х64
Не страдать (Win 10 64x + 4.12.001  (2 008 780 байт) - полёт нормальный), но терпеливо ожидать специализированной для х64 - это факт; хотя какие преимущества - по существу непонятно.

- Почему arrpush($uniqz,$curr) можно присваивать, а arrpush($uniqz[0],$curr) нельзя?
- потому что первый аргумент - имя массива. $uniqz[0] же является уже ссылкой на его первый элемент. в справке так то написано.
Спросив, вложенные? массивы что ли... предполагаются Cleoss-ом в #412


И от себя вопрос:
- Продолжающаяся разработка Clickermann кроме:
Quote
Плагины представляют собой стандартную DLL библиотеку с одной единственной экспортной функцией... Техническая реализация... Все что вам необходимо знать - это формат экспортной функции, которую вызывает кликер. Она выглядит так в стандарте С++:

int execute(int* _arr, int _size)

То есть... Данный подход позволяет передать в плагин практически неограниченное количество параметров. В кликере вызов плагина реализуется следующим (к примеру) образом:

CALL("plugin.dll", 1, 2, 3)
print("result: ", $_return1)

Инструкции CALL передается любое число... его функция вернет свое значение в системную переменную $_return1.
предполагает? ли добавление иных интерфейсов? для последующей интеграции, скажем: а) функции чтения Command Line Parameters переданных при запуске Clickermann, б) внутренние ActiveX/COM и внешние интерфейсы, в) может быть чего-то в таком направлении следует ожидать? Собственно, чем х64 к 2020-му году, мне хочется более прямой интеграции с javascript-ом браузеров.

Я недавно на форуме, однако прошу: насколько это возможно оперативнее рассмотреть предложенные мной ссылки, дабы ими не нарушить сложившейся приятной, ламповой атмосферы этого форума.




Вот полная сборка последней версии Clickermann 4.13.007b...
Годно! Благодарю, загружено ;)
« Last Edit: January 02, 2018, 10:33:12 PM by i7330 »

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #399 on: January 02, 2018, 11:22:55 PM »
Истину! На худой конец -1 (минус единицу, эквивалент true).
Вот и JS-теры подкатили  :) Господь с вами, какую истину. И иж тем более откуда такой "худой конец"? Кто здесь поймет эти заморочи и главное, зачем их сюда тащить?
Ни в коем случае не истина и тем более -1 (разрешите полюбопытствовать в каких языках -1 это истина. Так, для себя, чтоб держаться от них подальше).

Раз у нас динамическая типизация. Предлагаю не выдумывать велосипед и в условиях содрать сделать так:
Все числа кроме 0 это True, 0 - False.
Все не пустые строки True, пустые "" - False.
Если логические операнды числа - здесь всё понятно.
Если строки = - полное соответствие, != понятно, < > предлагаю варианты или классическое лексикографическое сравнение или более полезное в кликере по длине строк.
Если логические операнды разных типов - это всегда False!
Никакие неявные преобразования типов не происходят.


Cleoss

  • Активный участник
  • ***
  • Posts: 260
  • Автоматизируй это!
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #400 on: January 03, 2018, 05:42:49 AM »
Раз у нас динамическая типизация. Предлагаю не выдумывать велосипед и в условиях содрать сделать так:
Все числа кроме 0 это True, 0 - False.
Все не пустые строки True, пустые "" - False.
Если логические операнды разных типов - это всегда False!
Никакие неявные преобразования типов не происходят.

Тогда почему б не заиметь хоть парочку операторов функций для приведения на случай всяких эксепшнов?! Смутно помнится, они даже были раньше в кликере, но по (не)понятным причинам выпилены вместе с delvar. Хотя мб они работают недокументированно?)) Вон трейсей норм ся чувствует. Всего-то и нужно, что tostr/tofloat. И может ещё проверялку для необъявленной переменной?) Не кошерно возвращать ноль из ничего)) Чтот вроде if($quantity!=_nill). А вот if($string) для заданной строки БЕЗ сравнения это вполне себе по-яваскриптовому бодро, в птинципе таким же макаром можно было б и необъявленную выявлять. А то ужо дожились: неизвестно какие типы у ячеек массива и с чем их опосля сравнивать, какой огород нужен)

Johnny

  • Создатель
  • Герой форума
  • *
  • Posts: 593
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #401 on: January 03, 2018, 01:47:48 PM »
у нас... дай бог году к 2020 выкатим релиз. а пока тыщи активных пользователей продолжат страдать и ждать версию х64
Не страдать (Win 10 64x + 4.12.001  (2 008 780 байт) - полёт нормальный), но терпеливо ожидать специализированной для х64 - это факт; хотя какие преимущества - по существу непонятно.
корректное отрабатывание оберток для функций, взаимодействующий со сторонными приложениями и системой через WinAPI, например.
х32 приложение не может полноченно существовать в х64 системе и работать даже с банальный х64 блокнотом


Спросив, вложенные? массивы что ли... предполагаются Cleoss-ом в #412
на случай если кто до сих пор не понял. если что то не всунуто в кликер, то это я тупо не знаю как воткнуть это что то в уже существующие реалии. а не потому что я вредный.
не боги горшки обжигают как бы и я кликер пишу на нормальном ЯП в соверменной среде и тимею понимание как должен выглядеть инстурмент.
мне вообще все больше импанирует идея что пора все переписывать по новой, потому что архитектура "четверки" уже упирается макушкой в потолок. с другой стороны писать клон AutoIt мне никогда не хотелось.


Quote
Плагины ...

были введены в бородатом году как решение для довольно скудного на то время функционала. я вообще не знаю пригодилось ли это хоть раз потмоу что имхо тем кто может понять что там написано и как собратьс вою DLL кликер то собственно особо и не нужен.
идея кстати с получением параметров вызова довольно интересная но на практике что она может дать? ну у нас как бы итак параметр анализируется, позволяя одним щелчком запускать скрипт. а кроме того что?



Johnny

  • Создатель
  • Герой форума
  • *
  • Posts: 593
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #402 on: January 03, 2018, 01:52:08 PM »
Раз у нас динамическая типизация. Предлагаю не выдумывать велосипед и в условиях содрать сделать так:
Все числа кроме 0 это True, 0 - False.
Все не пустые строки True, пустые "" - False.
Если логические операнды разных типов - это всегда False!
Никакие неявные преобразования типов не происходят.

Тогда почему б не заиметь хоть парочку операторов функций для приведения на случай всяких эксепшнов?! Смутно помнится, они даже были раньше в кликере, но по (не)понятным причинам выпилены вместе с delvar. Хотя мб они работают недокументированно?)) Вон трейсей норм ся чувствует. Всего-то и нужно, что tostr/tofloat. И может ещё проверялку для необъявленной переменной?) Не кошерно возвращать ноль из ничего)) Чтот вроде if($quantity!=_nill). А вот if($string) для заданной строки БЕЗ сравнения это вполне себе по-яваскриптовому бодро, в птинципе таким же макаром можно было б и необъявленную выявлять. А то ужо дожились: неизвестно какие типы у ячеек массива и с чем их опосля сравнивать, какой огород нужен)

вот этого говна мы старательно избигаем. никаких заморочек по поводу типов данных и инициализации переменных у нас быть не должно.
задача написать С++ на Delphi у нас никогда не стояла. у нас на первом месте всегда была нубоориентированность.
мы тут конечно все уже спецы, но вот остальные тыщи пользователей - не очень

рано или поздно конечно начнется мракобесие с сортами целых чисел, без которого на самом деле даже DLL корректно не вызвать. но пока - не.
надо просто допилить инструмент для самых маленьких и решите уже наконец сколько будет 1 = "1"
« Last Edit: January 03, 2018, 01:54:34 PM by Johnny »

i7330

  • Зашел в гости
  • *
  • Posts: 19
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #403 on: January 03, 2018, 07:14:58 PM »

с другой стороны писать клон A##t мне никогда не хотелось.
Позвольте.. Clickermann - не клон, отнюдь. Ваши слова: "вот этого... мы старательно избигаем. никаких заморочек по поводу типов данных и инициализации переменных у нас быть не должно... у нас на первом месте всегда была нубоориентированность", (#421) - а так же моё участие в этом форуме тому в подтверждение. Ваш Clickermann - самодостаточный проект. В чём-то похожий на множество других, не спорю; но другой, самобытный и развивающийся. Отличный проект, короче.

идея ... с получением параметров вызова ... на практике что она может дать? ну у нас как бы итак параметр анализируется, позволяя одним щелчком запускать скрипт. а кроме того что?
Интеграция с другими макрос-языками, например bat(cmd,vbs,js)-скрипты. Да с чем угодно, даже из 1С 7.7, к примеру будет возможно сделать скрин области экрана и пр. всего 1-ной командой:
КомандаСистемы("clickermann.exe getScreen.cms 100 100 800 600 screenshot.jpg"); -- разумеется, в getScreen.cms (без параметров, даже сейчас) можно командами INIREAD, TFREAD, TFREADARR  выкручиваться через файл(-ы), но это: 1) снижает отклик, 2) нагружает файловую, 3) раздувает скрипт-источник командами сохранения в файл. Впрочем, извиняюсь.. это пожалуй действительно не самое необходимое.

Quote from: Johnny
решите уже наконец сколько будет 1 = "1"
Голосую: истинно
Code: (clickermann) [Select]
// Файл констант Clickermann
// --- Логика ---
#TRUE   1
« Last Edit: January 03, 2018, 07:59:18 PM by i7330 »

i7330

  • Зашел в гости
  • *
  • Posts: 19
    • View Profile
Re: [Alpha/Beta Testing]
« Reply #404 on: January 03, 2018, 08:44:52 PM »
Ещё идея, но тоже в плане бреда.. хочется дерективу #icon

Code: (clickermann) [Select]
#icon "vote_yes.png" // vote_yes.bmp
[spoiler=см. подробнее]

(!) только зелёные направления; красными - нет, однозначно не обсуждаем; а вот количество ЯД(WMR, QIWI) за такую хотелку - напротив можем на полном серьёзе обсудить. Вам надеюсь, моё предложение не покажется чем-то сверх.. Но, как живописец художнику(-кам), ответственно заявляю: с художественно-эстетической точки зрения текущий icon.. что в tray, что на панели задач - лично мне как-то не очень.

[/spoiler]
« Last Edit: January 03, 2018, 09:17:01 PM by i7330 »