
Alexander
25.08.2017
19:18:28
что ты передаешь как file когда вызываешь runApp

Kirill
25.08.2017
19:18:35
нет, "~/.todos"

Alexander
25.08.2017
19:19:09
а, ну да тильду никто раскрывать не будет
это видать была сессия программы?

Google

Alexander
25.08.2017
19:19:34
а то я думал что это терминал:/

Kirill
25.08.2017
19:19:47
а в чём тогда вопрос?
Уже ни в чём - разобрался, проблема была в том, что пути не резолвятся автоматом и из-за этого writeFile падает не с самой очевидной ошибкой

Alexander
25.08.2017
19:20:28
я думал что ты вызываешь утилиту ./todos из command line
а там резолв путей делается башем
ну или что вместо шела

Kirill
25.08.2017
19:21:17
баш не делает резолв
и да я из баша вызывал
Вот исходники, если вдруг кому интересно: http://git.home.smt.run/experimental/haskell-todo/blob/develop/src/Main.hs
P.S. Был бы рад услышать здоровую критику :)

Alexander
25.08.2017
19:25:26
если в кавычках, то не ресолвит, без кавычек ресолвит

Donat
25.08.2017
19:25:55
#offtop а у меня todo в vimwiki и мне нравится...

Kirill
25.08.2017
19:27:02

Google

Donat
25.08.2017
19:32:17
я бы хотел для себя фронтенд к vimwiki на ведроид, но на хаскелле не получится :(

Kirill
25.08.2017
19:32:37
Почему?
ndk и вперёд
Правда не уверен что оно того стоит

Donat
25.08.2017
19:33:07
а гуй?

Kirill
25.08.2017
19:33:23
FFI и биндинге к джавке
через ndk

Donat
25.08.2017
19:33:44
там вроде всё очень печально было когда я смотрел

Kirill
25.08.2017
19:34:17
сейчас вроде все крупные приложения на ndk и плюсах
Так что наверно и хаскел можно прикрутить при желании
Есть кстати ещё вот такая штука: http://eta-lang.org/

Ilya
25.08.2017
19:36:05
о да, расскажите побольше про хаскель и андроид
я как раз пилю одну программку, пока десктоп (интерфейс текстовый), но вообще ей на роду написано быть на телефоне

Donat
25.08.2017
19:38:06
гугол кстати настоятельно нерекомендуют использовать ndk

Kirill
25.08.2017
19:41:28
Во: https://brianmckenna.org/blog/eta_android

Ilya
25.08.2017
19:43:45
но эта будет медленно:(

Kirill
25.08.2017
19:44:19
там вроде надо в объектники и потом особым образом линковать
или как-то так
К слову eta себя пиарит, что в худшем случае у них скорость хаскеля, а в лучшем в 2 раза быстрее

Google

Ilya
25.08.2017
19:45:17

Kirill
25.08.2017
19:45:37
Типа JIT и все дела

Ilya
25.08.2017
19:46:01
да не, у меня NP-полная задача =)
JIT наверное для другого
тут просто алгоритм бы вылизать, да поближе к железу

Kirill
25.08.2017
19:46:36
JIT просто оптимизирует код на основе статистики
Т.е. если функцию дёргали только для списка с одним элементом, то он сотворит оптимизированную версию для этого дела
Сэкономив пару тройку вызовов

Donat
25.08.2017
19:53:20

Yuriy
25.08.2017
20:11:28
кстати, нехорошо проверять существование файла перед открытием. между этими двумя действиями файл может исчезнуть. надёжнее открывать и ловить исключение

Ilya
25.08.2017
20:12:57

Yuriy
25.08.2017
20:13:06
а, вы про Яву как раз
надо же для этого JIT код сгенерить такой, который он поймёт. та же ленивость разве не создаёт лишнего оверхэда?

Kirill
25.08.2017
20:35:21

Alexander
25.08.2017
20:37:21
дешевые
или надо цифры?

Dmitry
25.08.2017
20:37:53
сразу хочется написать - и тьюринг-полные. но они и так тьюринг-полные

Dmitry
25.08.2017
20:38:24
А каким разумным способом можно бенчмаркать стоимость исключений? И делал ли это кто-нибудь? Цифры, конечно, интересно увидеть)

Kirill
25.08.2017
20:38:51
Я просто с джавой сравниваю

Google

Alexander
25.08.2017
20:39:00
проверить разницу throwIO 17 и pure $ Left 17

Kirill
25.08.2017
20:39:04
И там они ооочень дорогие

Alexander
25.08.2017
20:39:22
только наверное надо внутри чего-то разумного их сделать
и потом попробовать вложенные pure $ Left 17
@saksmt с другой стороны doesFileExist использует внутри исключения
там делается (not . isDirectory <$> getFileMetadata file) `catchIOError \_ -> pure False`
что-то в таком духе
doesFileExist :: FilePath -> IO Bool
doesFileExist path = do
(not <$> pathIsDirectory path)
`catchIOError` \ _ ->
return False
поиск по стоимости исключений ничего не показывает
видимо никто особо не парился, т.к. все остальные варианты не выглядят более дешевыми

Dmitry
25.08.2017
20:47:31
о каком дорого/дешево можно говорить, если мы полезли к фс ?
разве что подъем из свопа

Yuriy
25.08.2017
20:49:23

Alexander
25.08.2017
20:52:34
я думаю вопрос в целом, а не про данную ситуацию

Kirill
25.08.2017
20:53:36
Да, в целом, просто в джавке вырабатывается привычка на эту тему, вот и интересно насколько она актуальна для хаскеля

Alexander
25.08.2017
20:54:17
если ты в IO, то вполне нормально
всякие ExceptT поверх IO очень часто выглядят странно

Dmitry
25.08.2017
20:54:36
о каком дорого/дешево можно говорить, если мы полезли к фс ?
Именно поэтому надо делать разумные бенчмарки. Например, в IO без ФС/OS(хотя это надо ещё подумать, как без OS)/интернета/etc. и отдельно со всякими функциями типа doesFileExist, чтобы понять, насколько большой процент от времени занимают исключений. Отдельным вопросом интересно про асинхронные исключения, потому что не очевидно, что стоимость будет одинаковая.

Alexander
25.08.2017
20:55:16
асинхронные это другой мир
на safe-point тред проверяет не "положили" ли в него исключение, и если да, то идёт в ветку с хендрлерами

Google

Alexander
25.08.2017
20:55:46
ЕМНИП

Evgeniy
25.08.2017
23:34:00
Dependent Types in Haskell: Theory and Practice https://arxiv.org/abs/1610.07978


Q
26.08.2017
11:37:55
Q Q:
Здравствуйте, подскажите пожалуйста мне 36 , память и вообще мышление не так остро работают как прежде. Хочу уйти в онлайн профессии , где можно работать по удаленке.
Рассматривал позиции seo,smm , директоров, но сейчас все это упростилось , что эти профессии не востребованы и платят не много, я уже не говорю про дизайнеров, всех этих профессий , закат наступил в 2014 году, да безусловна ассы своего дела востребованы Но это ассы, к которым я себя не отношу.
И из всех "онлайн профессий" я так понял , возможно я ошибаюсь поправьте меня если не так являются программисты, даже плохой программист получает не плохо.
Но этих видов программистов тысячи.
Теперь собственно вопросы:
Какую именно специализацию выбрать, чтобы было бы поменьше изучения и стабильная востребованность
И второй вопрос есть, ли что нибудь, чтобы ты пришел одновременно работал бы программистом и обучался этому в команде по удаленке?
P.s / понимаю сейчас будет много флуда, но Гугл ответов не дал


? animufag ?
26.08.2017
11:40:54
Q Q:
Здравствуйте, подскажите пожалуйста мне 36 , память и вообще мышление не так остро работают как прежде. Хочу уйти в онлайн профессии , где можно работать по удаленке.
Рассматривал позиции seo,smm , директоров, но сейчас все это упростилось , что эти профессии не востребованы и платят не много, я уже не говорю про дизайнеров, всех этих профессий , закат наступил в 2014 году, да безусловна ассы своего дела востребованы Но это ассы, к которым я себя не отношу.
И из всех "онлайн профессий" я так понял , возможно я ошибаюсь поправьте меня если не так являются программисты, даже плохой программист получает не плохо.
Но этих видов программистов тысячи.
Теперь собственно вопросы:
Какую именно специализацию выбрать, чтобы было бы поменьше изучения и стабильная востребованность
И второй вопрос есть, ли что нибудь, чтобы ты пришел одновременно работал бы программистом и обучался этому в команде по удаленке?
P.s / понимаю сейчас будет много флуда, но Гугл ответов не дал
по какому принципу ты выбирал группу где задать вопрос?


Leonid
26.08.2017
11:55:13
Ну, это канал про хаскель, а значит тут сидят самые умные и крутые альфа-программисты.

Q
26.08.2017
11:56:34

kir
26.08.2017
12:13:44
@seogud Навыки? Математика? Логика?

Denis
26.08.2017
12:15:17
шо за хуйня?

kir
26.08.2017
12:16:44
Поменьше изучения - это в питон. Но там с востребованностью плохо, в России, по крайней мере.
Востребованность есть в JS и PHP, но на них писать - себя не любить.
Готовых решений у меня нет.

Диёр
26.08.2017
12:17:45
Джава же какая-нибудь
В интерпрайз или андроид писать

Yurii
26.08.2017
12:18:48
Так понял, что не принципиально именно программистом.
Игроделы жалуются, что хорошего (выше среднего) моделлера днём с огнём не сыщешь.

Leonid
26.08.2017
12:22:37
Игроделы мало платят, и моделлер должен быть ещё и художником

Serj
26.08.2017
12:22:59
Кем раньше то был, 36 лет до этого?