haskell,?
А где почитать инстансы тайпклассов? Вот в документации к Monad пишут, что есть инстанс для Either e, а в коде его не видно. :info в ghci тоже не помогло — говорит, что инстанс есть (если испортировать Control.Monad.Instances), но сами определения не показывает. Как быть?
*haskell
Задача из #ttingt сводится к следующему вопросу: можно ли заставить компилятор преобразовывать ; в `>>=`, а не `>>`? Тогда в do notation можно будет записывать такой себе dataflow: do { return 1; return . (+1); print }. Сейчас это можно сделать, только введя явные названия для аргументов: do { s ← return 1; s' ← ... more →
Можно ли написать свою do notation, не меняя код компилятора, и если да, то как?
Например, в главе 10 RWH[1] мы пишем такой код:
```
arseP5_take2 s =
matchHeader (L8.pack "P5") s >>?
\s → skipSpace ((), s) >>?
(getNat . snd) >>?
skipSpace >>?
\(width, s) → getNat s >>?
skipSpace >>?
\(height, s) → ... more →
> All these refactoring processes are doable by pleasant conversation with ghc typecheckers.
http://www.reddit.com/r/haskell/comments...
http://www.reddit.com/r/haskell/comments... — помогите уже человеку обобщить идею на кубики с n² квадратами на каждой стороне, а то я рехнусь скоро — у меня была идея, но я никак не могу довести её до ума (постоянно получаю <<loop>>).
Одна из цитат недели по версии Haskell Weekly News (выпуск 239):
> romm: i thought i knew programming. this is like discovering a new continent.
Не знаю, под каким тегом спрашивать такие вопросы, так что поставил названия языков, пользователи которых могут знать ответ.
Читаю про structural и nominal typing, возникла пара вопросов:
• в примерах структурной типизации[1] мы определяем функцию, которой от параметра нужен лишь метод set_x. Это разве не duck ... more →
Avoid success at all costs это, конечно, хорошо, но когда из-за каких-то конфликтов версий нельзя просто сделать cabal install --reinstall --flags="with_xft" xmobar — это печалит. Переустанавливаю теперь заново десяток библиотек, да. Пакетного менеджера ещё нет? Cabal nirvana во что-то юзабельное выросла?
GPL — монада. Доказательства законов приводить не буду из-за того, что они не проходят мысленный тайпчекинг (можете представить себе рефакторинг, который из обычной программы делает GPLную? Вот и я не могу). Inspired by http://bnw.im/p/BIZZJN#I2H
Если вы запомните из Haskell всего одну вещь, пусть это будет привычка ставить в списках запятую *в начале строки*.
Example: http://xmonad.org/xmonad-docs/xmonad-con...
Further reading: https://research.microsoft.com/en-us/um/...
Наткнулся когда-то на haskcomplete.vim[1] — плагин к vim для автодополнения кода на Haskell. Сегодня обратил внимание на то, что за те полгода (или около того), что плагин провалялся у меня в ~/.vim/ftplugin, я его юзал ровно один раз — когда смотрел, что он умеет. Отсюда две мысли:
1. Haskell code is so dense that ... more →
В lhs2TeX немного огорчает то, как приходится уродовать код ради формата poly.
Любви и обожания вечер: /me открыл для себя lhs2TeX и пытается заюзать на практике знаменитый кнутовский стиль программирования.
А в Haskell можно как-то без монад в чистых функциях исключения обрабатывать? Делаю упражнения из «Purely Functional Data Structures», очень не хочется городить огород с Maybe в 2.3.
Насколько я знаю, в Haskell считается хорошим тоном выносить как можно больше информации в сигнатуры функций. Я сейчас пишу программу, строящую коды Хаффмана, и не могу придумать, как мне объявить структуру данных для соответствующего дерева.
Обычное дерево (которое data Tree a = Tree (Tree a) (Tree a) | Leaf a) ... more →
If you're havin' trouble with the Haskell 'head'
He's givin' you the blues
...
AC/DC — Dirty Deeds Done Dirt Cheap
Интересно, а почему списки рассылки Haskell не требуют ограничения постов по ширине до 80-ти символов? Некоторые следуют этому соглашению, но не все (в число последних входит даже SPJ!). Вроде образованные люди, а тут такое…
Хаскеллисты настолько суровы, что даже в haskellwiki в секции «Tutorials» указывают ссылки на научные публикации.
До собственного туториала по монадам мне ещё расти и расти, а пока я решил поделиться прозрением, снизошедшим на меня по мере чтения нескольких глав «Learn You a Haskell for Great Good!»
В общем, оказалось, что пока я продирался сквозь «Real World Haskell» и пытался понять, как же на двух нещасных функциях — return ... more →
http://www.cs.caltech.edu/courses/cs11/m... — /a list of some interesting and relevant books and papers written in Haskell/
И снова я, и снова интерполяция, и снова сплайны… Вдумчиво переписал код по вот этой методичке: collab.cc.gatech.edu/humanoids/sites/edu.humanoids/files/cubicspline.pdf
И все равно вместо сплайна имеем загогулину. Что я делаю не так?
Код: http://paste.org/pastebin/view/32451
Полученный график: ... more →
Интерполяция кубическими сплайнами в моём исполнении на Haskell упорно не хочет работать, выдавая какую-то угловатую кривулину :(
А ещё я не могу написать это в функциональном стиле, с map'ами, лямбдами и прочим — сплошные !!, хнык-хнык.
Псто, в связи с повышающимися расходами на жильё мне нужна онлайн-работа (в смысле, связь с работодателем по инету, а не ножками в контору топать) с неполным рабочим днём.
Кратко о себе: линуксоид-дебианщик с почти трёхлетним стажем, более-менее владею Си (написал пару патчей для любимого pdf ридера Zathura), ... more →
http://blog.sigfpe.com/2006/08/you-could... Could Have Invented Monads! (And Maybe You Already Have.)
Превосходное разъяснение того, что такое монады. За ссылку спасибо ребятам с haskell@conference.jabber.ru
Ура, я успешно решил liarliar! Писал на Haskell, бот сказал, что на самой большой проверке мой код работал 7941.219 мс.
Интересно, есть у них где-нибудь страничка со статистикой по используемым языкам и времени выполнения программ? Было бы интересно узнать, на чём больше всего пишут, какова кореляция между языком и ... more →
*haskell is used by:
0xd34df00d
0xd34df00d
профессиональный говноед
ulidtko
kb
kb
Minoru
Minoru
Александр Марков
komar
Spiritual ecstasy
rapture
λ
lukish
zw0rk
zw0rk
16+
238328
Crazy_Owl
Crazy_Owl
4DA
4da
L29Ah
L29Ah
werehuman
werehuman
Evgeny I. E. Omelchenko
Elemir
amd63
amd63
Octocat
octocat
Mагог Магогович
magog
Voker57
Voker57
cirno
cirno
asmer
asmer
rhinze
rhinze
8
Eight
gelraen
gelraen
Michael Pogoda
MPogoda
desperate donkey
odin
lexszero
lexszero
Darth Bricktop
Like-all
folex
folex
folone
folone
nexeuse
nexeuse
Оранжевус Охуеннус
utros
Fess
zetoke
18+ Запрещено для детей.
hedgehog
beardog
beardog
oreolek
oreolek
Hirthwork McGillah
hirthwork
Andrew Motrenko
werdn
Klayraat
clayrat
SirAnthony
SirAnthony
Псикукумбер Томатический
Psykukumber
Ky6uk
Ky6uk
eurekafag
eurekafag
Bender Bending Rodríguez
DJm00n
Oleg Tsarev
zamotivator
failman
failman
lkdjvsdkjfgh
saransk
jabber
jabber
Лисий хвост
madInsane
Андрей
whisper
svtk
svtk
Jarkko
Jarkko
0xd34df00d
ulidtko
kb
Minoru
komar
rapture
lukish
zw0rk
238328
Crazy_Owl
4da
L29Ah
werehuman
Elemir
amd63
octocat
magog
Voker57
cirno
asmer
rhinze
Eight
gelraen
MPogoda
odin
lexszero
Like-all
folex
folone
nexeuse
utros
zetoke
hedgehog
beardog
oreolek
hirthwork
werdn
clayrat
SirAnthony
Psykukumber
Ky6uk
eurekafag
DJm00n
zamotivator
failman
saransk
jabber
madInsane
whisper
svtk
Jarkko