@ProLua

Страница 68 из 307
Philipp
29.03.2017
21:04:49
По названиям можно искать

Мне просто с телефона не особо удобно

Philipp
29.03.2017
21:07:51
Подари мне)
А тебе зачем?)

Google
Alex Фэils?︙
29.03.2017
21:08:38
Да хочу по беседам из pro.cxx чо-нибудь интересное писать

Sergey
29.03.2017
21:08:53
Напиши статью в песочницу. Там уже дадим.

Philipp
29.03.2017
21:09:00
+

Кстати, если кто еще ждет новую статью про лабиринты - 1/3 готова

Осталось расписать сами алгоритмы, подправит реализацию и заняться самым унылым - готовить картинки

https://meduza.io/shapito/2017/03/28/uchenye-koshkam-nravitsya-obschenie-s-lyudmi-bolshe-chem-eda

Да, оффтоп

Ну и что?

Доброй ночи всем

yegorf1
29.03.2017
22:18:29
Доброй

Snusmumriken
30.03.2017
00:34:32
Я тип могу писать. С другой стороны, когда мне не будет лень - просто напишу что-нибудь в песочницу, и получу инвайт заслуженно.

Google
Vadim
30.03.2017
04:53:21
Квантовая интерференция на -кошках- каплях: https://youtu.be/WIyTZDHuarQ

TheRainwildsKeeper
30.03.2017
10:29:39
Какой же он шикарный
Угу, и про теорию относительности тоже, и про математика и черта... вот умели фильмы делать)

https://youtu.be/52yhBkkulXw

yegorf1
30.03.2017
10:35:30
Мы уже в лс оьмазываемчся

TheRainwildsKeeper
30.03.2017
10:39:30
https://youtu.be/52yhBkkulXw
Тут математик кстати зав. кафедры моего факультета был)

Snusmumriken
31.03.2017
18:00:05


Group Butler [beta]
01.04.2017
01:32:44
Добро пожаловать в чат pro.lua, Dneproit! Ознакомься с правилами чата (в описании и прикрепленном сообщении), и присоединяйся к обсуждению.

Добро пожаловать в чат pro.lua, Анна! Ознакомься с правилами чата (в описании и прикрепленном сообщении), и присоединяйся к обсуждению.

Vlad
02.04.2017
22:28:12
как организовать вызов самого себя?

в плане, без привязки к расположению

типа мы можем применить что то типа dofile(фулл путь к файлу) \\ профит а есть ли возможность без указания всего пути а только лишь указание файла?

Alexander
02.04.2017
22:35:24
что-то говорили про три точки в этом плане

Philipp
02.04.2017
22:35:27
типа мы можем применить что то типа dofile(фулл путь к файлу) \\ профит а есть ли возможность без указания всего пути а только лишь указание файла?
Чисто теоретически, такое возможно, т.к. там есть конкретные пути у реквайра, по которым он ищет

Snusmumriken
02.04.2017
22:35:42
Воу-воу-воу

Я делал отдельный модуль "relativepath"

Google
Philipp
02.04.2017
22:36:26
Это же решение в лоб

Где красивое решение?)

Alexander
02.04.2017
22:36:40
три точки?

Snusmumriken
02.04.2017
22:37:07
local path = love and arg[1]:match'(.*[\\/])' or arg[0]:match'(.*[\\/])' local luapath = { path..'?.lua', path..'?/init.lua' } local cpath = { path..'?.dll', path..'?/core.dll' } luapath = table.concat(luapath, ';') cpath = table.concat(cpath, ';') if not package.path:find(luapath) then package.path = luapath..';'..package.path end if not package.cpath:find(cpath) then package.cpath = cpath..';'..package.cpath end

Тут отдельно для love2d и без love2d.

После применения этой фигни, можно катать require'file' на относительные модули.

Это не шибко красиво, но самое красивое, на что хватило моих мозгов. Зато если несколько раз вызывать эту фигню, она не захламит пути кучей дубликатов, и работает из любого модуля.

Три точки можно использовать для хитрых манипуляций с модулями, которые используют другие модули. Там уже: package.path = arg[0]..'/'..(...)..'?.lua;'..package.path Таким образом, мы в файле init.lua нашего модуля добавляем в пути папку со скриптами модуля, чтобы имя папки модуля могло быть произвольным и находиться в произвольном месте.

Vlad
02.04.2017
22:54:38
Позвони себе на телефон
ну должно ж что то быть

а если не затруднит можно про это подробнее, в частности про "произвольное местоположение", или хоть ссылочку на мануалы годные?

Snusmumriken
03.04.2017
02:03:25
Хе-хе, в мануалах этого нема. Допустим, ты вызываешь модуль: require'folder/modulename' Если в папке folder есть папка modulename со скриптом init.lua - запустится init.lua, которому первым аргументом (в "трёх точках") передастся 'folder/modulename'. С этим уже можно играться.

Допустим, в папке modulename сидит пять скриптов, которые нужны init.lua. Как вызывать их, если modulename имеет любой путь и любое имя? Ну, переименовал чувак библиотеку, что, падать с этого? Динамически прописываем в пути путь до своей папки, и вызываем из неё скрипты.

Mirocow
03.04.2017
03:55:40
Всем привет пипл чем лучше всего разделить массив на равные части, допустим на 4 равные части (понятно что 4 часть может быть недобита)

Snusmumriken
03.04.2017
06:20:14
Луа-табличку - разве что циклом. Это офигенно долго. Или мета-индексами выдать четыре хендлера на этот же массив, каждый на свой диапазон. Это моментально, но только создаёт видимость разбиения: на потоки это не разделишь. Чот типа такого: function genFourHandlers(array) local n = math.floor(#array/4) local function indexgen(n) return function(self, key) if type[key] == 'number' then return array[key + n] end return array[key] end end return setmetatable({}, {__index = indexgen(n)}), setmetatable({}, {__index = indexgen(n*2)}) setmetatable({}, {__index = indexgen(n*3)}) setmetatable({}, {__index = indexgen(n*4)}) end А шо? У тебя огромные массивы?

Group Butler [beta]
03.04.2017
06:43:20
Добро пожаловать в чат pro.lua, Vasil! Ознакомься с правилами чата (в описании и прикрепленном сообщении), и присоединяйся к обсуждению.

Mirocow
03.04.2017
09:05:40
массивы огромные

Oleg
03.04.2017
11:12:39
Пощупал ZeroBrane. Неплохо. Жаль что vim bindings нету. Может кто колхозил?

Чай
03.04.2017
11:15:09
Можно впихнуть в Vim часть её фич.

Vim-luainspect.

Oleg
03.04.2017
11:41:51
Как бы впихнуть лайвкодинг и дебагер.

Google
Oleg
03.04.2017
11:42:01
В виме было бы идеально.

Snusmumriken
03.04.2017
11:42:02
Слишком много хочешь :3

Кстати, зачем лайв кодинг? Ошибки очень неудобно исправлять, перезагружать приходится в любом случае.

Oleg
03.04.2017
11:44:17
Ну чтобы играться значениями переменных на ходу. Типа нарисовал плюху на экране, покрутил переменную и смотришь куда плюха двигается.

Хотя не критично, можно и без неё.

Snusmumriken
03.04.2017
11:46:12
Ты на чём пишешь и графику рисуешь?

Oleg
03.04.2017
11:46:44
Я тут в hammerspoon колхожу прогу, для облегчения работы в иллюстраторе.

Автоматор такой под макось.

Admin
ERROR: S client not available

Oleg
03.04.2017
11:50:03
Он на луа. Перехват кнопок, руление интерфейсом, и т.п. В люстре много кнопок, помнить их я уже устал. Мысль такая: сделать прогу, которая будет рисовать хинты по хоткам.

Ну и упростит их использование. Вместо всяких «cmd-shift-b» можно будет клацнуть «b b» или типа того. Как в vim =)

Vadim
03.04.2017
11:53:50
Как бы впихнуть лайвкодинг и дебагер.
а как ты себе видишь дебаггер в виме?

// да и вообще дебаггер Lua

Oleg
03.04.2017
11:55:05
Также как и везде. Брекпоинты, просмотр переменных.

Snusmumriken
03.04.2017
12:00:03
Брейкпоинты при лайв-кодинге - весело

Oleg
03.04.2017
12:00:58
При дебаге.

Vadim
03.04.2017
12:01:48
кстати, не то, чтобы я пробовал, но, вроде даже с gdb такое может получиться :)

Snusmumriken
03.04.2017
12:01:50
А на тему лайв-кодинга - делаешь контрол типа скролла, при наведении на который можно крутить колесом мыши, дабы увеличивать-уменьшать прикреплённую к нему переменную. Если есть доступ к мыши-клаве-дисплею для рендера примитивов-текста - делов на три минуты.

Это, правда, love2d, и тут прямой доступ к произвольной фигне, и вообще дофига свобод.

Philipp
03.04.2017
12:06:58
Сколько лет этой гифке?

Google
Snusmumriken
03.04.2017
12:07:09
Где-то с пол года :3 Но тут хороший пример скроллов, которые не дают упарываться лайвкодингом ибо он напряжен и падуч.

Philipp
03.04.2017
12:08:17
Лайвкодинг - прикольная штука побаловаться

Но имхо с ней работать очень трудно

Snusmumriken
03.04.2017
12:08:39
Но только побаловаться :< Для реальной разработки мало возможно. Всё равно перезагружать.

Philipp
03.04.2017
12:08:59
Да и чаще всего приходится править ошибки в логике, а не в переменных

Или условиях

И там лайвкодинг уже не канает

Snusmumriken
03.04.2017
12:09:15
Плюс если много модулей, которые реквайрят другие модули которые реквайрят третьи модули - слишком много мусора собирается.

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

Mirocow
03.04.2017
14:51:44
https://www.youtube.com/watch?v=sHVla9j2VJA

Snusmumriken
03.04.2017
15:00:59
Ой мама, я далёк от политики. У меня - маленький воображаемый мирок, в котором я пишу прожки. И этот же мирок позволяет мне писать много хороших прожек.

Боюсь что не я такой один. Но тут сама группа - воплощение моего мирка.

Vlad
03.04.2017
15:31:56
карочи сложна все, каждый пишит про свое болото как ему краше (...) и прочие радости поясняют люди как то со скрипом

в конце концов просто воткнул дистрибутив в папку с проектом (благо он весит 1,5 мб) и проблем стало меньше, оно теперь без особого гемороя ищет все что необходимо, правда как то странно временами идет по папкам которые располагаются над а временами рунается что ничего не находит

я уже сам не помню чего хотел, вроде перезапускать консоль без необходимости каждый рас прописывать по мелочи dofile с полным указанием путей расположения, и что б в целом сделать проект отвязаным от расположения всякого, но что то не получилось, в итоге в проекте лежит дистрибутив и батник который при желании выведет текстовый файл с расположением и слегка отформатированным (в луа ж не \ а /) это пожалуй все на что меня хватило ?

Snusmumriken
03.04.2017
15:45:35
Ну, мой мирок довольно широк. Правда, там нет места политике.

Политика отнимает эмоциональные силы, а я на них работаю.

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