
Evgeny
12.12.2017
15:49:55
Вот эта игра на D написана :) http://store.steampowered.com/app/712430/Vibrant/

Alexey
12.12.2017
15:51:50
на мапах быстрее, чем на списке. что и логично, в общем
на списках
{5204943, 359348} обычный
{5114378, 359348} hipe
на мапе
{261189, 359348} обычный
{284189, 359348} hipe

Google

Evgeny
12.12.2017
15:52:39
конечно, в списке нормально по индексам не попрыгаешь

Alexey
12.12.2017
15:52:39
ну. то есть, на мапе 0.261 секунды

Evgeny
12.12.2017
15:53:21
но кстати тоже ничего
а теперь вторую часть

Alexey
12.12.2017
15:53:57
дык. логично. во первых - список - там пропрыгать надо до элемента. во вторых - элементы могут быть любого типа. поэтому там, где массивы гомогенны(или как там слово то), то адрес вычисляют на раз размер_элемента*индекс

Evgeny
12.12.2017
15:54:40
это как раз не проблема
массив указателей на объекты

Alexey
12.12.2017
15:55:22
если код интересно, могу сюда закинуть

Evgeny
12.12.2017
15:55:50
как быстро в эликсире загрузить числа из файла в мапу?
одной строкой короткой можно?

Alexey
12.12.2017
15:57:12
map = File.read!("input5.txt")
|> String.trim
|> String.split("\n")
|> Enum.map(fn (n) -> String.to_integer(n) end)
|> Enum.with_index
|> Map.new(fn {k, v} -> {v, k} end)
кстати, достаточно быстро получилось. 0.003s

Dmitry
12.12.2017
16:22:25
В эрланге нету массива

Google

Dmitry
12.12.2017
16:22:31
А это задача на массив
Его можно попробовать смоделировать заспавнив процесс как элемент
Если удастся запустить их по порядку

Evgeny
12.12.2017
16:23:41
будет еще тормознее

Dmitry
12.12.2017
16:23:41
И скакать по пидам

Alexey
12.12.2017
16:23:56
так по пидам ты тоже будешь искать в мапе
я вот думал на счет работы с binary
там можно покласть в элементы одинаковой длины

Dmitry
12.12.2017
16:24:18
Если у тебя Pid100 - PidN

Alexey
12.12.2017
16:24:23
наверное

Dmitry
12.12.2017
16:24:40
То возможно можно напрямую разыменовать пид
Хотя я не встречал такого - может быть и нет
А бинарь - стопудово массив

Alexsey
12.12.2017
16:26:06
Эээ
А туплы?

Alexey
12.12.2017
16:26:19
я думаю, бинарь можно будет кусать пополам, вокруг элемента

Dmitry
12.12.2017
16:26:38
Из-за иммутабельности
Хотя быстрее чем в МАП должно получиться

Alexey
12.12.2017
16:27:38
очевидно, мапа под капотом полностью все равно не пересоздается

Google

Dmitry
12.12.2017
16:28:07

Alexey
12.12.2017
16:28:31
значит надо делать nif аррай оф интеджер )

Evgeny
12.12.2017
16:28:54
на чистой сяшке :)

Dmitry
12.12.2017
16:28:58
Так а прикрутит numpy биндинг никак?
Это же сишная либа, питон там сбоку стоит
Я честно понятия не имею
Но по идее как то можно

Evgeny
12.12.2017
16:29:54
ну а зачем лишний посредник?

Dmitry
12.12.2017
16:30:17
Всмысле лишний
Кто лишний?

Evgeny
12.12.2017
16:30:43
правильный ответ: а зачем вы гешаете эту задачу на эгланге?
питон лишний

Alexsey
12.12.2017
16:31:06
Напишите ниф на расте уже и успокойтесь

Dmitry
12.12.2017
16:31:27
Я по-моему сказал «взять сишный numpy и прибиндить его вместо питона к эликсиру»

Evgeny
12.12.2017
16:32:00
ради жалкого массива интов целую либу?
эта задача не про эликсир

Dmitry
12.12.2017
16:32:37
Зато она точно лучшая
А во вторых завтра понадобятся и не инты, и не массивы

Evgeny
12.12.2017
16:33:41
существуют ли реализации иммутабельных персистентных массивов?
полагаю нет

Google

Alexey
12.12.2017
16:35:02
ну. вот это типичная такая задача, которая для эликсир/эрланг плохо подходит
меняем немного условия задачи
например, что там вместо чисел могут быть еще и буквы
и все. пиздец. все программы на сях D и прочем придется полностью переписать

Evgeny
12.12.2017
16:35:59
не особо
в D есть тип Variant

Admin
ERROR: S client not available

Evgeny
12.12.2017
16:36:36
точнее в его стдлибе

Taras ?
12.12.2017
16:37:06

Evgeny
12.12.2017
16:39:49
на самом деле, главная няшность эрланга/эликсира для меня - хот релоад кода и возможность относительно просто диагностировать баги не останачливая прод.
это, господа, киллер-фича

Slava
12.12.2017
16:47:39

Evgeny
12.12.2017
16:49:44
в D нет хот релоада, а был очень нужен
сраный диагностический лог вставить - уже хот релоад
а что все на так радужно?
и кстати, феникс, насколько я понял, в режиме разработки постоянно хотрелоадид код при его изменении.

MrFlorius
12.12.2017
22:08:30
Есть ли альтернативы фениксу?

Dmitry
12.12.2017
22:09:25

MrFlorius
12.12.2017
22:09:58
Для элексира единственный?

Dmitry
12.12.2017
22:10:07
Точно

Google

Aldar
12.12.2017
22:10:21

Dmitry
12.12.2017
22:11:01
Как и рэльсы, спринг, асп.нет

MrFlorius
12.12.2017
22:17:38
Спасибо

Taras ?
12.12.2017
22:20:18
для эликсира вроде уже воткнули)

MrFlorius
12.12.2017
22:24:52
/stat@combot

Combot
12.12.2017
22:24:53
combot.org/chat/-1001061355522

Alex
12.12.2017
23:39:31
Есть ли альтернативы фениксу?
берешь второй ковбой и наворачиваешь поверх него все, что нравится, это довольно просто. все основные вещи придуманы до нас - адаптировать их в свой проект будет не очень сложно.

Alexander
13.12.2017
00:33:16
обсудил тут с колегами бывшими дела в эликсире, ну и попутно в js:
вообще я уже привык к эликсиру и тому, как идут дела. Но вот новый проект стартовать на нем пока очень ссыкотно
сейчас как раз появился занятный проект(опять с ретейлом) и вроде бы все звезды сложились - пиши на эликсире

Evgeny
13.12.2017
04:37:42
да уж, "три блога на фениксе в виде пакетов" - от такого только живительная эвтаназия поможет.

Den
13.12.2017
06:22:39
Думаю говна в любом яп можно найти, это же так просто) если не Elixir то что?)
Php, js, java?)

Dorzhi
13.12.2017
06:53:26
питон, руби как минимум

Evgeny
13.12.2017
06:54:41
руби нет