Имбирь - твой спиритический овощ. Войти !bnw Сегодня Клубы
Привет, TbI — HRWKA! 1083.7 пользователей не могут ошибаться! Официальная конфочка бнвача: bnw@conference.jabber.ru
?6053
говно5680
прекрасное5308
говнорашка4558
хуита3938
anime2688
linux2431
bnw2246
music2240
log2037
рашка1971
pic1867
ололо1734
быдло1411
украина1336
гімно1119
дыбр1091
роботы_не_одобряют1004
сталирасты871
bnw_ppl851

Мне кажется, или у него на дисплее не ЛИСП? https://d262ilb51hltx0.cloudfront.net/max/1200/1%2AWI5iU4WFX1NStZ-b4qaiSw.jpeg
#XP8671 (1) / @dluciv / 20 дней назад
Устроился в фирму по продаже сантехники, кек
#ARLJJG (0) / @anonymous / 61 день назад
Есть пожалуй два языка программирования, вызывающих у меня иррациональное раздражение. Это Perl и Go. Ну если на Perl я забил в какой-то момент, то с Go у меня периодически возникает надежда, что я просто чего-то не понял, а на самом деле именно так и надо. Ну вот например: * Для присваивания используется `=`, а для инициализации можно использовать `:=`. Ну я понимаю ещё, если бы наоборот. По-моему это похоже на довольно толстое глумление, не правда ли? * С какого-то перепуга при параметризации типа `map` (и кстати при отсутствии обобщённых типов в принципе) используется такой идиотский синтаксис `map[string]float64`. Это намёк на функцию `string -> float64`, или что это за херь? * Некоторые вещи надо делать при помощи `make()`. Вещи, вполне себе встроенные в язык. По-другому их не сделать. Нафиг тогда `make`, если для создания встроенных в язык вещей логично сделать языковые же конструкции? При этом про Go любят говорить, что он как компилируемый статически типизированный Питон и т.д. Да Питон со всеми его косяками и общим убожеством в 10 раз ортогональнее по-моему...
#87UTX8 (12+1) / @dluciv / 81 день назад
А вот кстати на засыпку вопрос. Прежде всего потому, что те, кто на Бнваче что-то понимают в программировании, Скалой преимущественно брезгуют, думается мне. Тем не менее. В Скале есть вполне себе монада `Future`, у которой операция **bind** (в терминах Скалы — `flatMap`) вызывает функцию по готовности. В Java есть NIO — эдакий ввод-вывод в стиле JavaScript. Почему в Скале из коробки нету обёртки, которая бы позволяла использовать NIO при помощи Future? Это ж, блин, логично...
#0XBGE2 (7+1) / @dluciv / 94 дня назад
Я опять за своё пердунство. Многие существующие языки программирования очень украсило бы, если бы они были expression oriented, т.е. если бы тела функций и управляющие конструкции были бы выражениями. По сути для тех, кто пишет на JS вручную, это единственное, чего не хватает в современном JS и всяких TypeScript — даже pattern matching какой-никакой появился, а этого нет. После появления намёков на лямбды этого не хватает Плюсам. Ну ладно, JS и Плюсы — в ногу стреляющие языки с большим количеством старого кода, и в них стрёмно дополнять семантику существующих конструкций. А TypeScript — да тоже в ногу стреляющий — поскольку на него копипастят код с JS, только типизированный. Но ведь есть языки сравнительно новые — Go тот же самый. В него так просто сишный код не скопипастишь, переписывать надо. Почему тело функции, `if` и блок не сделать было выражениями?.. D опять же — тоже делали с нуля, тоже в последние 20 лет и кода на нём немного. Да до фига их. В которых явно надо писать `return`. Как будто это очень круто — специально писать `goto` там, где можно его не писать. Опять же, когда управляющие конструкции — выражения, компилятору легче типы выводить, оптимизировать и т.д., потому что ненужной императивщины меньше. Почему создатели языков так не любят делать их expression oriented? **P.S.** Мой пост похоже примерно как звонок в редакцию журнала «За рулём» с вопросом «А почему вы не пишете **только** про BMW?» Только тот звонок был хотя бы в редакцию.
#T3KUND (11+2) / @dluciv / 144 дня назад
Попробовал сделать при помощи WebAssembly программку "Здравствуй, жопа" с SHA1. Чтобы посмотреть, как примерно это всё работает. Сразу на Rust до кучи, хотя с тем же успехом мог и на Плюсах. Не понял главного. Чем WebAssembly принципиально лучше Java-апплетов или Silverlight?
#3EUVOG (14+2) / @dluciv / 146 дней назад
Да этот [срач в комментах](https://habrahabr.ru/post/349624/?utm_campaign=349624#comment_10681376) (да и весь пост тоже) — прямо таки продолжение [моего вчерашнгего поста](/p/0UWIKT) каким-то физиком! @kuro перелогиниться забыл?..
#KNM6L8 (1) / @dluciv / 147 дней назад
А вот почему так недооценивают Руби? Хороший же язык. С точностью до совсем уж синтаксической вкусовщины сам по себе явно мощнее и красивее Питона того же. Но как кто ни начнёт для него что-нибудь делать — всё какое-то пинание трупа получается. Моя версия будет в треде. Призываю тред не читать @ сразу отвечать. А потом уже читать.
#0UWIKT (63+3) / @dluciv / 148 дней назад
Я вот тут на самом деле понял, что такое высокоуровневый язык программирования. Это язык, в котором из коробки `"🤦🤢🧔"[1]=='🤢'`. Или `[2]`. Или `=`. Или даже `"🤢"` вместо `'🤢'`, хотя это уже конечно безобразие. Но без разницы. Так вот таких на самом деле c гулькин хер. А из компилируемых я только Хаскелль и Crystal такие встречал. Я не утверждаю, понятно, что больше не бывает, но всё равно с гулькин хер.
#M8OTX3 (36) / @dluciv / 167 дней назад
/Его однокурсник рассказал «Медузе», что раньше Исхаков хорошо учился и всерьез увлекался программированием на Java, но в последний год начал часто выпивать, употреблял легкие наркотики./ [Отсюда](https://meduza.io/feature/2018/01/23/student-mgtu-ubil-svoyu-podrugu-iz-za-nerazdelennoy-lyubvi-i-napisal-ob-etom-vo-vkontakte-glavnoe) Я так полагаю, что наркоманы Бнвача тоже сперва **всерьёз увлекались программированием на Java**, да? P.S. Да, есть ещё и пост @anonymous со ссылкой на текстовый файл, лежащий на каком-то сервере во Франкфурте, и я его даже на web.archive.org и на archive.is закачал, но ссылаться я на него тут не буду, не... Не за чем это.
#2BX37Q (7+1) / @dluciv / 177 дней назад

Программисты, каковы ваши оправдания, почему вы поднимаете всякие dump.bitcheese.net rss2tg avito2rss, если вам за это не платят денег, или платят мизерное кол-во донатов?

#ZR6YOX (27+2) / @cat-o-nine-tails / 178 дней назад
МЕНСТРУКТОР
#OD0THW (0+1) / @anonymous / 258 дней назад
Попался тут девайс с Tizen. По идее у Tizen есть TTS. И для него есть API. Но у Tizen по хорошей самсунговской традиции есть два типа приложений — что-то на Си, что я не особо знаю, как делать, и что-то на HTML упакованном в ZIP, что я тоже конечно не знаю, как делать, но там, подозреваю, и знать ничего не надо. Ну и для мелкой утилитки как-то второе выглядит адекватнее. Так вот, я TTS API нашёл только для нативных приложений. А для JavaScript — нет. Я плохо смотрел? А если не плохо, то в чём глубокий смысл такого различия?..
#AY1Q7Y (2+1) / @dluciv / 279 дней назад
Я вот как-то спрашивал, кто назовёт менее архаичную и более умную замену CSV. Чтобы это был не формат для хранения объектов, как JSON или YAML, а всё-таки для формат для датасетов. Но чтобы и не такая совсем уж тупая штука, как CSV. Так вот, есть же NetCDF и HDF5. У кого каие субъективные впечатления о них? Кроме того, что они бинарные.
#22CVDU (12+1) / @dluciv / 313 дней назад
Питон впервые за несколько лет реально порадовал. Вот реально. На самом деле не сам Питон, сам Питон похоже порадовать не может, но не суть. Берёшь, значит, свой несчастный код, который уже вылизывал во всех местах, а он всё равно тормозит. Уже не потому что алгоритм плохой или реализация плохая, а именно потому что это Питон. Ставишь вот эту вот хрень: http://numba.pydata.org/. Ставишь перед критичными функциями `@numba.jit('и тут аннотация типов')`. И оно начинает работать в 15 раз быстрее. Само. Само, Карл.
#4RUSC7 (22+2) / @dluciv / 323 дня назад
В общем такой вопрос. Есть здоровая (несколько метров) HTMLина, в которой, по большей части, plain text, но куски в нём выделены при помощи ололо <span id="..." style="background-color: rgb(0, 255, 255);" title="...">азаза</span> кекеке И хочется без особых извратов выделить кусок "оло**ло азаза ке**кеке". Т.е. дать координаты в видимых буковках, а получить выделение в живом документе. Типа вот. Каким макаром это делается?..
#BDNEWE (4) / @dluciv / 347 дней назад
Пример того, почему для всяких раздолбаев мало просто CPS, а нужны ещё и нормальные монады в системе типов. Вот посмотрите пример на LiveScript: ``` f = (p, cb)!-> cb(p + 1) main =!-> x = 3 global.z = void if x > 0 x += 1 y <-! f x global.z = y + x else x -= 1 y <-! f x global.z = x - н alert global.z ``` Зайдите на LiveScript.net, скопипастите это, нажмите Compile, и убедитесь в том, что компилятор даже близко не понял, чего от него хотели.
#J6BJRY (2) / @dluciv / 361 день назад
async/await в Питоне — хорошая иллюстрация готовности сделать всё через какую угодно непонятную жопу, только бы не использовать человеческие анонимные функции и `>>=`. Нет, ну правда. Даже в если Хаскелль с его `IO` и типами не брать, а взять только оператор `<-` из LiveScript, например — всё же ведь понятно и красиво. Да, модель `asyncio` в Питоне примиряет различные циклы обработки сообщений, и даже для PyQt сделали `quamash`, который запускает `asyncio` поверх Qt-шного цикла обработки сообщений. Все очень обрадовались её появлению, потому что сама модель действительно ничего, а главное — её очень долго ждали. Но зачем при этом было вместо более общих и более понятных примитивов тащить внутрь языка эту псевдоимперативную дребедень?..
#45EM35 (7+1) / @dluciv / 377 дней назад
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.