@ProLua

Страница 62 из 307
Philipp
11.03.2017
19:01:50
Запуск Луа при зажатом сочетании клавиш выглядит как-то так

(внизу иконки приложений)

Чай
11.03.2017
19:03:09
Забавно.

Philipp
11.03.2017
19:03:51
Не очень

Google
Philipp
11.03.2017
19:04:16
Меня раздражает отсутствие возможности сбилдить приложение шорткатом

Чай
11.03.2017
19:04:24
Makefile?

all: love .

Philipp
11.03.2017
19:05:00
Так, а ты атомом пользуешься?

Чай
11.03.2017
19:05:04
Да.

Philipp
11.03.2017
19:05:10
Тогда пошли в ЛС, поспрашиваю как раз

Чай
11.03.2017
19:05:15
Хорошо.

Vlad
13.03.2017
00:29:18
кто что знает про сжатие данных и подобную красоту с описанием,разжевавынием и тд тп какой есть хороший архиватор

не архиватор, а компрессор, просто путаю

и можно получить двоичное представление имеющихся данных? (к примеру тот же архив или папка с файлами как будут выглядеть в двоичном виде)

Vlad
13.03.2017
00:45:28
ну

Alexander
13.03.2017
00:46:11
https://abisab.com/kompyuter/chto-takoe-bit

Google
Alexander
13.03.2017
00:46:15
не благодари

Vlad
13.03.2017
00:49:43
я к тому

что нужны описания методов обработки данных

что то типа деревьев хафмана

Alexander
13.03.2017
00:55:51
гугл в помощь

Vlad
13.03.2017
00:56:13
спасибо отец

Alexander
13.03.2017
00:59:26
для базовых вопросов по алгоритмам лучше подходит другой чат

https://telegram.me/joinchat/BYlFbD3eN3JMaG34hyh96w

а здесь специфика луа

Vlad
13.03.2017
01:00:39
и что? а на луа нельзя ничего реализовать или как?

Alexander
13.03.2017
01:02:55
скажем так, проще с привлечением Си. в самом луа с битовыми операциями не очень.

Snusmumriken
13.03.2017
04:20:21
Есть куча либ, работающих с zip/deflate напрямую из lua. Просто загугли.

Самая простая организация, которая, правда, не позволяет удалять файлы из архива, но позволяет добавлять и легко просматривать содержимое: [заголовок] [сжатые данные] [заголовок] [данные] Заголовок, который состоит из сигнатуры начала/конца заголлов имени файла, его размера в сжатом и несжатом виде и прочих мелких параметров. Просмотр - перемещение по заголовкам как по связному списку: у нас есть байты начала и конца заголовка (по сигнатурам), и нам надо только переместить курсор чтения файла на позицию "конец текущего заголовка + длина текущего сжатого файла", и мы тут же попадём на сигнатуру следующего заголовка, откуда можно выдирать маленькими кусочками заголовок, пока не наткнёмся на сигнатуру конца заголовка и не сможем его вытащить и распарсить. Заодно, это крайне просто реализовать: просто забиваем файлы в другой файл. С добавлением новых файлов - тоже элементарно: записываем новые заголовки в конец файла. С удалением - сложнее, ибо приходится забивать некоторый участок нулями и перелинковать конец последнего файла, что не уменьшает размер архива и внутри lua, без ffi, невозможно перезаписывать какие-то участки файлов, только удалять весь файл и записывать по новой.

Group Butler [beta]
13.03.2017
17:12:21
Добро пожаловать в чат pro.lua, Dan.⁠il! Ознакомься с правилами чата (в описании и прикрепленном сообщении), и присоединяйся к обсуждению.

Roman
13.03.2017
20:05:15
А что вы думаете про moonscript?

Tverd
13.03.2017
20:07:26
Хорошо думаем, лично мне нравится

Чай
13.03.2017
20:07:35
Пытаюсь применять немного в "проекте" для Love2d сейчас.

Довольно приятная штука.

Philipp
13.03.2017
20:11:40
Думаю, что штука, которая поможет вам забыть Луа =)

Kinrany
13.03.2017
20:11:48
Смотрю в список чатов: "Чай довольно приятная штука"

Google
Чай
13.03.2017
20:11:49
Нет.

Да, чай — штука хорошая. А Мунскрипт довольно прозрачно в Lua транслируется.

Philipp
13.03.2017
20:12:20
Поэтому использовать мунскрипт можно только с осторожностью

TheRainwildsKeeper
13.03.2017
21:23:44
А что вы думаете про moonscript?
есть ещё sunscript, но он вроде мертвенький

https://github.com/qwook/sunscript

yegorf1
13.03.2017
21:25:03
https://github.com/qwook/sunscript
Блин, жалко, что умер

Классная идея

TheRainwildsKeeper
13.03.2017
21:25:20
Угу

yegorf1
13.03.2017
21:27:56
Хм Может написать простенький сиподобный язык, транслитируемый в луа с сахаром типа этого на яке, или как его там

yegorf1
13.03.2017
21:30:01
ЛуаДжит местами быстрее сишечки

Да и смысл?

Плюшка
14.03.2017
05:44:12
Надо написать компилер crystal в lua

Tverd
14.03.2017
07:40:41
Парни, а обязательно C подобный синтаксис? Вот прямо обязательно? ))))

Snusmumriken
14.03.2017
07:46:01
Нет, можно функциональщину. quicksort [] = [] quicksort (p:xs) = (quicksort lesser) ++ [p] ++ (quicksort greater) where lesser = filter (< p) xs greater = filter (>= p) xs

Tverd
14.03.2017
07:46:44
ну это луче

хоть и не сильно пока понятно )

Snusmumriken
14.03.2017
07:48:51
Для меня, например, сиподобный синтаксис обязателен, потому что фукциональщина - решение долбанутых головоломок и попытки надуть язык так чтоы он этого не заметил, и неожиданно для себя сделал то что нужно.

Но я бы не отказался от расширения семантики луа сокращениями типа тех же стрелочных функций, но нативных.

Эти две штуки эквивалентны. В смысле, что объявляется переменная 'a' и становится функцией. a = function(foo) return foo * bar end => a = foo => foo * bar
Вот типа этого, что я делал транслятором строки в аналогичную функцию (чуть ниже сообщения - пример использования)

Google
Snusmumriken
14.03.2017
07:53:13
Надо ещё аналогичные тернарники намутить, если покатят с локальными переменными.

Ilya
14.03.2017
07:54:46
А как же terra lang?

Snusmumriken
14.03.2017
08:02:48
Ой, какая смешная штука. Названием напоминает текстовый редактор "edm" - как EDitor for Mortals, который был в противовес редакторам для нечеловеков (типа vi). Только "язык для землян" в противовес "языку для лунатиков"

Kon
14.03.2017
13:42:15
А в lua есть оператор, который из функции делает таблицу с десятью одинаковыми функциями?

Или со строками то же самое. Играюсь в minetest, а во внутриигровых компьютерах нехороший админ поставил ограничение по количеству выполняемых функций

fgntfg
15.03.2017
10:02:08
можно сделать таблицу функций

Kon
15.03.2017
10:04:07
Это как ?
что-то вроде fun * 3 = fun2() { fun(); fun(); fun(); }

Snusmumriken
15.03.2017
10:04:16
По количеству одновременно выполняемых функций? То есть, если функция вызывает другую функцию, так вызывает третью и т.д, то оно блочит? (Блок по стактрейсу), или нельзя много раз вызывать одну и ту же функцию потому что есть блокировка и хук на исполнение?

Admin
ERROR: S client not available

Плюшка
15.03.2017
10:04:59
или 5 * "a" = "aaaaa"
можно на строки метатаблицы ставить, емнип или нельзя?

grinchfox
15.03.2017
10:05:28
Можно придумать свой стек на корутинах

Snusmumriken
15.03.2017
10:06:15
Можно хакнуть этого чувака, поставив хук на хук, обнуляющий его действие.

Kon
15.03.2017
10:06:31
звучит как хук в боксе %)

Snusmumriken
15.03.2017
10:07:14
Ничо, ничо. Хуки - это весело и мило.

Но медленно.

fgntfg
15.03.2017
10:07:45
А что в конечном итоге хочешь сделать?

Snusmumriken
15.03.2017
10:07:48
А еще можно научиться композировать функции в одну.

Google
fgntfg
15.03.2017
10:07:53
Нагрифить?

function fn(s, ...) local src = [[ local L1, L2, L3, L4, L5, L6, L7, L8, L9 = ... return function(P1,P2,P3,P4,P5,P6,P7,P8,P9) return ]] .. s .. [[ end ]] return loadstring(src)(...) end

можно попробовать так, но у меня самнения.

Snusmumriken
15.03.2017
10:12:18
Хех, кстати забавно. Таким образом можно перегенерировать функцию в те моменты когда она блокируется.

Типа обновляем.

grinchfox
15.03.2017
10:12:40
Да, храни функции в строках

Кешируй последние n

Kon
15.03.2017
10:13:14
А что в конечном итоге хочешь сделать?
Есть робот внутри игры. Количество инструкций, которые может выполнить робот, ограничено числом 49. Если он захочет выполнить больше - крашнется. При этом размеры программы не ограничены и всяких if'ов и стейтов можно понаделать сколько захочется. Выполнив свои 48 функций, в следующем тике робот начинает исполнение программы заново. При этом в идеале сохраняются объявленные переменные. По факту же иногда они также очищаются и процесс начинается полностью заново, видимо какой-то баг или еще что. Я хочу сделать так, чтобы можно было написать в империческом последовательном стиле 50 фукций, не заморачиваясь при этом с ограничениями тика. Таким образом, программа должна отследить количество выполняемых операций и при необходимости отложить остаток выполнения на следующий тик. Попробую корутинами действительно

fgntfg
15.03.2017
10:13:18
можно table.insert(arr, [вот сюда анонимная функция])

хмм, computer craft для minecraft както по добрее был

grinchfox
15.03.2017
10:14:17
Есть робот внутри игры. Количество инструкций, которые может выполнить робот, ограничено числом 49. Если он захочет выполнить больше - крашнется. При этом размеры программы не ограничены и всяких if'ов и стейтов можно понаделать сколько захочется. Выполнив свои 48 функций, в следующем тике робот начинает исполнение программы заново. При этом в идеале сохраняются объявленные переменные. По факту же иногда они также очищаются и процесс начинается полностью заново, видимо какой-то баг или еще что. Я хочу сделать так, чтобы можно было написать в империческом последовательном стиле 50 фукций, не заморачиваясь при этом с ограничениями тика. Таким образом, программа должна отследить количество выполняемых операций и при необходимости отложить остаток выполнения на следующий тик. Попробую корутинами действительно
Корутины ?

Kon
15.03.2017
10:14:25
Это minetest, тут опенсурс и сервера работающие по 16 часов в сутки

Snusmumriken
15.03.2017
10:14:39
Все что угодно можно сделать злым, если поставить хуки :3

fgntfg
15.03.2017
10:14:50
Может поднять minetest сервачёк, железо есть и простаивает

Kon
15.03.2017
10:15:11
подними

Плюшка
15.03.2017
10:18:32
поиграл в minetest, он крутой конечн, но имхо чего-то не хватает ему

не в плане контента

grinchfox
15.03.2017
10:20:36
Ему нехватает всего

Выживания там нету нормального как в mc

Плюшка
15.03.2017
10:22:06
да были вроде моды какие-то

grinchfox
15.03.2017
10:22:19
А все что есть очень сырое для игры

fgntfg
15.03.2017
10:33:25
Я играл в совершенно бородатые бетки майнкрафт. Только креативный режим, не бесконечная карта, жуткие тормаза явы.

Страница 62 из 307