@spbpython

Страница 491 из 785
Stepan
22.08.2017
10:24:22
лол, как раз о том же думал
в теории можно сделать electron app с javascript версией ipfs, будет такой popcorn time for music )

Dmitry
22.08.2017
10:25:04
кстати, коты, как вам такая штука - DHT + merkle dag сторадж https://ipfs.io/
идея хорошая. но как для больших файлах будет жить?) и как заманить туда людей.

Ilia
22.08.2017
10:25:14
в реальном коде, за гранью туторов, я сспециально у себя смотрел, вот именно так в одном или двух местах было. во всех остальных ошибки возврата хэндлятся мозгами и всегда там есть какая-то логика, ну или просто идет вызов прямо внутри if, типа if err := doSomth; err != nil { handle error case, log it, construct new error message, return it } и очень часто еще на тип ошибки проверяется и тогда разные кейсы отрабатываются. т.е. эта конструкция реально нужная и ни фига не повторяющаяся в человеческом коде
Ну тут вариантов несколько: 1. Обработать на месте - хорошо если хватает контекста, но это обычно не так; 2. Обернуть в другую ошибку с подробностями получения и передать наверх - самый годный вариант в плане дизайна, но не скрывается ли тут потенциальный оверхед от выделения дополнительной памяти? 3. Просто передавать наверх до появления осмысленного контекста - собсна и есть вариант с кнопкой, дёшево и сердито. Обработка типа if err := doSomth; err != nil просится в сниппет, тут согласен

Sergey
22.08.2017
10:25:36
https://twitter.com/NateTheFinch/status/899730215957561344

Google
Aleksandr
22.08.2017
10:25:52
большие файлы режутся на маленькие и хранятся на разных пирах, а их хеши собираются в merkle dag

Aleksandr
22.08.2017
10:26:12
я так понял что изначально они это пилили как стор для больших датасетов

Stepan
22.08.2017
10:26:53
у них там еще не плохая идея с filecoin, всяко лучше чем большинство остальных ICO

Dmitry
22.08.2017
10:27:05
и чё будет когда ты поднимаешь свою ноду - к тебе всё синкается?

Aleksandr
22.08.2017
10:27:22
нет

только то что ты запрашиваешь

но синкается типа перманентно и ты сразу начинаешь раздавать этот кусочек

ну GC понятно там есть

так же есть такая штука как filecoin

криптовалюта где тебя платят за то, чтоб ты хранил обжекты для кого то

но майнить рано, они не запустились пока

Google
Aleksandr
22.08.2017
10:30:21
го за винчестерами

Egor
22.08.2017
10:31:11
Го

Stepan
22.08.2017
10:31:17
Го

Dmitry
22.08.2017
10:31:32
сегодня прям день Го)

Egor
22.08.2017
10:31:36
А есть обзоры на русском?

Aleksandr
22.08.2017
10:31:52
обзоры ipfs?

Egor
22.08.2017
10:32:01
Да

Aleksandr
22.08.2017
10:32:02
вроде нет

оно пока сырое

Egor
22.08.2017
10:33:15
Сколько винчестеров нужно?

Aleksandr
22.08.2017
10:34:02
читай@разбирайся

Egor
22.08.2017
10:34:53
С английским не так хорошо :(

Dmitry
22.08.2017
10:35:11
удобный случай, чтобы стало хорошо!

Ilia
22.08.2017
10:40:56
так же есть такая штука как filecoin
Ох, почитал про правила инвестирования в filecoin. Господа без ежегодного дохода в $200k отсекаются - спасибо SEC за стандарт 506(с).

Aleksandr
22.08.2017
10:41:25
ага, тоже плакал на этом моменте

Denis
22.08.2017
11:47:02
Да, но чаще встречается что-то с результатом. В отличии от С, на гошке коммьюнити, судя по библиотекам, предпочитает возврат значений через return, а не через указатель на структуру )

Serge
22.08.2017
11:47:02
и в таком случае, я не понимаю чем это хуже try..except или, например, питоновоской декларации __init__ с потрохами в классе.

Google
Denis
22.08.2017
11:48:05
и в таком случае, я не понимаю чем это хуже try..except или, например, питоновоской декларации __init__ с потрохами в классе.
Ждём Go2.0, там уже чего только не будет +_+ Страшненько несколько, есть мысль что теряются некоторые идеологии

В идеале бы иметь какой-то оператор вроде check err. Например func A() *B, *C, error { ... if err !=nil { check nil, nil, err } }, но это опять же лишняя семантика и нагрузка языка, а смысл не такой уж большой

и в таком случае, я не понимаю чем это хуже try..except или, например, питоновоской декларации __init__ с потрохами в классе.
try...catch пропагандирует делать один catch на всё ? Не помню реальных причин отказа от этой конструкции, но на практике ощущается что разработчики больше заботятся о ошибках, даже если неделю назад писали на питоне

Andrey
22.08.2017
11:54:09
в расте вот норм сделали

Denis
22.08.2017
11:54:26
В расте красиво сделали, соглашусь

Andrey
22.08.2017
11:54:50
#[must_use] enum Result<T, E> { Ok(T), Err(E), }

Denis
22.08.2017
11:54:57
Но это enchancement, новая штука, которая по сути то же самое, но заставляет изучать новую конструкцию

Andrey
22.08.2017
11:55:18
но хрен ты ее пропустишь

Denis
22.08.2017
11:55:41
Хороший пойнт

Serge
22.08.2017
11:55:59
Да, но чаще встречается что-то с результатом. В отличии от С, на гошке коммьюнити, судя по библиотекам, предпочитает возврат значений через return, а не через указатель на структуру )
кстати, если выше объявить переменную для результата и err, то можно спокойно делать все равно в одну строку и пихать в верхний скоуп

Denis
22.08.2017
11:56:15
Но вообще нет совести у того гошника, который пишет result, _ := transaction.Perform() ?

Denis
22.08.2017
11:58:16
кстати, если выше объявить переменную для результата и err, то можно спокойно делать все равно в одну строку и пихать в верхний скоуп
Да. Так и появляется сомнительного вида код, где в самом начале функции объявляются тучи err, err2, result, internalResult. Я пришёл к выводу что лаконичнее вынести тогда действие из кондишна, тоже тратишь одну строчку, а читаемость лучше и ничего лишнего ?

Но есть один кейс, где иначе никак

Когда ты результат хочешь записать сразу в поле структуры, a.FieldB, err := doSmth() - ошибка, так как FieldB объявлен. Если просто "=", то тоже ошибка, так как err не объявлен. Так вот и приходится делать либо var err error, либо объявлять имя для возвращаемой переменнной: func A() (err error)

Александр
22.08.2017
12:35:55
А кстати, какой язык бы вы посоветовали сегодня изучать в первую очередь, кроме python?

Егор
22.08.2017
12:38:15
Python 2, если знаешь Python 3. Python 3, если знаешь Python 2.

Александр
22.08.2017
12:38:39
хак на хаке. @magniff ты был прав. это ужос какой-то. всё ухожу —в монастырь— писать на Go
похоже, это предварительная оптимизация какая-то что-ли? Типа, зачем нам наполнять этим справочник, если уже и так понятно, что этот кусок кода не пригодится. Раз вмержили, значит кому-то это сильно помогло , наверное ?

С прицелом на что? Работа, кругозор?
Кругозор и работа, например различные эксперты советуют фукнциональный язык поизучать

Google
Dmitry
22.08.2017
12:40:26
зачем python-2-то о_0

Александр
22.08.2017
12:41:16
спасибо

Roman
22.08.2017
12:42:11
А кстати, какой язык бы вы посоветовали сегодня изучать в первую очередь, кроме python?
я бы посоветовал поизучать erlang. в первую очередь идеи из него.

ну и гошечка, да

Admin
ERROR: S client not available

Jonh
22.08.2017
12:42:44
Но это такое себе, главное не языки, а идеи, которые в них реализованы

Ruslan
22.08.2017
12:44:27
ну java же, алло

Michael
22.08.2017
12:45:22
ну java же, алло
и что нового для кругозора в жаве?

Ruslan
22.08.2017
12:46:08
и что нового для кругозора в жаве?
можно наконец научиться писать хайлоад)

Александр
22.08.2017
12:46:47
https://insights.stackoverflow.com/trends?tags=scala%2Chaskell%2Cgo%2Cjava%2Cpython-3.x%2Cerlang%2Cjavascript

Andrey
22.08.2017
12:47:03
rust еще добавь

и что это должно показывать?

Jonh
22.08.2017
12:48:33
и что нового для кругозора в жаве?
public static final Борщ борщ = new Борщ

Александр
22.08.2017
12:48:45
да, просто интересно стало.

Andrey
22.08.2017
12:48:51
понятно что индусов на джаве больше всех, и они даже ее не знают и спрашивают

Google
Andrey
22.08.2017
12:50:58
public static final Борщ борщ = new Борщ
картинка про джава-господ.jpg

Aleksandr
22.08.2017
12:53:55
А кстати, какой язык бы вы посоветовали сегодня изучать в первую очередь, кроме python?
К словам парней добавлю ещё хаскелл. Причем не учить, а хорошо ознакомиться, мозг прочищает весьма неиллюзорно - все устроено совсем не так как ты привык и работает (почти работает, ладно. Хорошо, не работает нихрена, но поинт не в этом). Еще для ознакомления могу посоветовать julia - там интересные идеи с мультидиспатчем и такой штукой как promotion.

Джаву так и не осилил, кстати. Не лезет она в глазки мне ну вот никак.

Michael
22.08.2017
13:00:50
Java.
http://durgasoft.com/

Aleksandr
22.08.2017
13:01:46
мне показалось что окасаки уже не ознакомление

тут бы просто посмотреть что такое io в чистом языке, как можно вообще получить профит от чистоко языка, почему профитно иметь нестрогие вычисления и почему не выгодно

Alexey
22.08.2017
13:03:01
http://durgasoft.com/
Не, ну тогда С.

Jonh
22.08.2017
13:04:09
мне показалось что окасаки уже не ознакомление
Ну да, это если захочется углубляться. Да и примеры там как раз на хаскеле, так что придется осилить.

Aleksandr
22.08.2017
13:04:28
ещё, если ты совсем задрот и жизни нет и не планируется, то можно попробовать заимплементить какой нить язык, тогда срузу многие вопросы встают на место.

Aleksandr
22.08.2017
13:04:48
там мл да

смл вроде

он не ленивый, и афтар как раз сетует об этом

Jonh
22.08.2017
13:06:45
там ML вроде
Ага, память подводит

Stepan
22.08.2017
13:06:57
ещё, если ты совсем задрот и жизни нет и не планируется, то можно попробовать заимплементить какой нить язык, тогда срузу многие вопросы встают на место.
Заимплементил стековую vm на си и компилятор scheme для неё (который даже call/cc умел, так как транслировал всю программу в continuation passing style). Чудесные времена задротства :3

Aleksandr
22.08.2017
13:07:27
ну стековая машина это самый пресамый примитив

Страница 491 из 785