*haskell

ulidtko 23.03.2013 12:10

http://hackage.haskell.org/trac/ghc/tick... потные хуйцы SPJ без смс

ulidtko 02.01.2013 18:23

Для тех, кто неспешен, палю: http://www.yesodweb.com/blog/2013/01/so-...

ulidtko 19.10.2012 14:53

Inspired by the cellular automata thread, I've recently realized that one can represent a semantically infinite gap buffer using a comonad. The idea is that the result of applying cojoin to a pointed array is an array of all possible shifts of the original pointed array. The "point" in pointed array is the cursor ... more →

ulidtko 16.09.2012 07:39

http://tim.dreamwidth.org/1762846.html
tl;dr бугурт какого-то трапа от сексистской шуточки, сказанной профессором-натуралом на симпозиуме.

Я так и не понял, при чем там хачкель, правда.

ulidtko 04.09.2012 23:56

Чего только хачкелисты не придумают...
http://vimeo.com/42399455

ulidtko 04.09.2012 11:35

Плюсцы (снова) соснули
http://newartisans.com/2012/08/parsing-w...

Хачкель парсит быстрее, а кода на порядок меньше.

ulidtko 23.08.2012 10:44

Функторы, монады, стрелки для самых маленьких http://newartisans.com/2012/08/monads-in...

ulidtko 16.07.2012 17:37

http://www.yesodweb.com/blog/2012/07/cla...

> The motivation here is a simple hypothesis: programmers are lazy. Writing:
> "foo" ++ "bar"
> is far easier than:
> import qualified Data.Text as T
> T.pack "foo" `T.append` T.pack "bar"

THIS.

ulidtko 16.07.2012 02:17

Ещё чуть-чуть, и я научусь совсем без затруднений писать на хачкеле в императивном стиле.

ulidtko 14.07.2012 17:39

Лолшто

<interactive>:1:25:
No instance for (Num ())
arising from the literal `1'
Possible fix: add an instance declaration for (Num ())
In the expression: 1
In a stmt of a 'do' block: y ← [1 .. 3]
In the expression:
do { x ← [1 .. 5];
y ← [1 .. 3];
return $ when (y > 2) $ (x, y) }

ulidtko 14.07.2012 13:36

Понял, что меня до сих пор напрягает в хачкеле: из-за богатых возможностей абстракции я совершенно теряюсь при разграничении interface/implementation detail. Частенько приходится делать сознательное усилие и спешиалкейсить говны, отбрасывая излишние абстракции. Такие дела.

ulidtko 29.05.2012 09:45

Программистское сравнение «если бы \2 был \1» http://www.xent.com/pipermail/fork/Week-...

ulidtko 28.05.2012 18:01

http://lionet.livejournal.com/96829.html
«[...] начал записывать мою интерпретацию в текстовый файл... который сразу оказался в Хаскелевой нотации почему-то. Чисто случайно, так сказать.
b3 n = b4
where
b4 f x = f (n f x)

b5 n m = b6
where
b6 f x = n f (m f x)

toint n = n b0 0

Написав такое, я понял, ... more →

ulidtko 14.03.2012 01:25

le me пролистывающий темплейтосрань в листинге дизасемблера плюсцов
http://i.imgur.com/NcmKJ.png

function<_Res(_ArgTypes...)>::
operator()(_ArgTypes... __args) const
{
if (_M_empty())
__throw_bad_function_call();
...

> _M_empty()
> _M_empty()
HASKELL FLASHBACK

ulidtko 09.03.2012 02:07

Гуглю "observable sharing", keywords одной хаскель-related статьи. У третьей же ссылки вместо заголовка матан:
[PDF] let {x = M} in N = N [Mvx ]( x /∈ M )
www.cse.chalmers.se/~dave/papers/observable-sharing.pdf < http://www.cse.chalmers.se/~dave/papers/...

ulidtko 14.02.2012 02:03

Олололол, товарищ тут сделал простенький бенчмарк языков в тегах.
https://plus.google.com/1129120514579983...
Угадайте, кто соснул: плюсы, питон или хаскель?..

Вкратце, для неосиливших, суть такова: пишется наивный спелчекер на 20 строк. Слова из /usr/share/dict/words загружаются в ... more →

ulidtko 10.02.2012 02:29

cellAt tree point = rec (rootbox tree) (root tree)
where
rec :: (NodeStorage s) => Box2 → NodeID → s (Maybe NodeID)
rec box nid = [...] zipWithM rec [b1, b2, b3, b4] [q1, q2, q3, q4] >>= (return . msum)

Как-то мне всё ещё очень сложно изолировать существенный код от монадического бойлерплейта :\

inb4: нужно ... more →

ulidtko 04.02.2012 03:35

Смотреть выступление SPJ в HTML5 бесплатно без регистрации
http://yow.eventer.com/events/1004/talks...
1:00+

ulidtko 20.12.2011 13:01

import Data.List
next (r,i) = ((r + (i-3)*2 + 1) `mod` 8999, i+1)
getcode exp = iterate next (1000, 11) !! (exp — 11)

ололо, ололо, я кулхацкер и хуйло.

ulidtko 26.10.2011 09:08

Посоны, гм-гм, поддержите мнение что ли: http://stackoverflow.com/questions/77945...

Ну правда ведь, ФП охуенно подходит по сабжу.

ulidtko 05.09.2011 22:12

string build_reverse(Tree tree) {
if(!tree)
return "";

string result = build_reverse(tree→l_son) ++ build_reverse(tree→r_son) ++ tree→value;
return result;
}

ХГМ детектед.

ulidtko 16.08.2011 21:51

fact 0 = 1
fact (n+1) = (n+1) * fact n

Это работает. Почему?
То есть, почему можно патерн-матчить по арифметическим выражениям?
(+) является ещё и конструктором? в каком месте это проверяется?

ulidtko 03.08.2011 13:05

$ cat test.hs
module Test where

data Test = Test
instance Eq Test where

$ ghci
Prelude> :l test.hs
[1 of 1] Compiling Test ( test.hs, interpreted )
Ok, modules loaded: Test.
*Test> let t1 = Test
*Test> let t2 = Test
*Test> t1 == t2
^C^C^C^C*** Exception: stack overflow

.\__/.

Да, я понимаю, где происходит ... more →

Do you really want to delete ?

*haskell is used by:

0xd34df00d

0xd34df00d

kb

kb

Minoru

Minoru

λ

lukish

zw0rk

zw0rk

16+

238328

Crazy_Owl

Crazy_Owl

4DA

4da

L29Ah

L29Ah

werehuman

werehuman

amd63

amd63

Octocat

octocat

Rayslava

Voker57

Voker57

cirno

cirno

asmer

asmer

rhinze

rhinze

gelraen

gelraen

Michael Pogoda

MPogoda

lexszero

lexszero

8

Eight

folex

folex

folone

folone

nexeuse

nexeuse

Darth Bricktop

Like-all

oreolek

oreolek

Hirthwork McGillah

hirthwork

Klayraat

clayrat

SirAnthony

SirAnthony

Ky6uk

Ky6uk

eurekafag

eurekafag

hanyuupoke

Oleg Tsarev

zamotivator

failman

failman

lkdjvsdkjfgh

saransk

jabber

jabber

Андрей

whisper

svtk

svtk

Jarkko

Jarkko

Fess

zetoke

beardog

beardog