Size: a a a

2021 May 02

NI

Nick Ivanych in Haskell
А какое тогда определение?
источник

JJ

Joshua Jakowlew in Haskell
Спасити памагити, я хочу запустить в отдельном треде функцию, что-то типа

main = do
forkIO $ forever $ print "hi"
источник

JJ

Joshua Jakowlew in Haskell
Но если главный тред поставить ждать пару секунд, то принты не выводятся
источник

JJ

Joshua Jakowlew in Haskell
Что я делаю не так? ПРобовал forkIO и forkOS, за многопоток не шарю
источник

JJ

Joshua Jakowlew in Haskell
Хочу просто запустить в фоне задачу, чтобы она в вечном цикле что-то делала
источник

OS

Oleksandr Shyshko in Haskell
возможно проблема в буфферизации stdout по-умолчанию.
https://hackage.haskell.org/package/base-4.15.0.0/docs/System-IO.html#g:12
попробуйте добавить в начало main:
hSetBuffering stdout LineBuffering
или
hSetBuffering stdout NoBuffering
если не поможет, пришлите сюда ссылку на gist с минимальным кодом демонстрирующим проблему.
источник

X

XÆA-XII in Haskell
(<$>) <$>  (<$>) <$> (<$>)
источник

N

Nikita Ursol in Haskell
Переслано от Nikita Ursol
main=let(_')=let(_')=((((<$>zip)<$>(<$>)<$>(<$>)<$>uncurry)uncurry<$>([1..]>>))<$>)<$>(<$>(return<$>(<$>($!""))<$>curry(\_'(_)->_')<$>(++)))<$>(++)<$>(curry(id)<$)<$>(\x->[2..x])in((:[])<$>(uncurry($!)))=<<(_'(3)"Fizz"<$>_'(5)"Buzz"$!((:[])<$>((,)id<$>show))=<<[1..])in(putStr)$!(++"\n")=<<(take)100(_')
источник

N

Nikita Ursol in Haskell
ah yes
источник

IO

I O in Haskell
Здравствуйте, это канал о хаскеле? Как мне загольфить KDE3 под FreeBSD?
источник

IO

I O in Haskell
Но раз уж такая пьянка пошла держите и мой любимый загольфеный код

#define F(x)t"x">>x<$>b c,
import Text.ParserCombinators.ReadP
e=l(l(chainr1(choice[readS_to_P reads,b c,F(sin)F(cos)F(tan)F(asin)F(acos)F(atan)F(abs)F(log)F(exp)"pi"%pi,"e"%exp 1,t"logBase">>logBase<$>b(t",")<*>e<*c])$"^"%(**))$"*"%(*)<++"/"%(/))$"+"%(+)<++"-"%(-);c=t")";t=string;b=(t"("*>e<*);l=chainl1;s%f=f<$string s;main=interact(\i->show[s|(s,"")<-readP_to_S e$filter(/=' ')i])

Требует -XCPP

Калькулятор в 389 символов/байт (384 на код + 5 на коммандлайн опцию). Поддерживаемые операции, в порядке уменьшения приоритета:

1. Double-литерал, (x), sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), abs(x), log(x), exp(x), pi, e, logBase(b, x)
2. x ^ y (infixr)
3. x * y, x / y (infixl)
4. x + y, x - y (infixl)
источник

AA

A64m AL256m qn<co... in Haskell
языки в одном семействе, если они имплементировались как фронтенд одного компилятора.
т.е. haskell, clean, lazy ml и agda - одно семейство
источник

AA

A64m AL256m qn<co... in Haskell
потому что были компиляторы
1) с фронтендом хаскель и лмл,
2) клин и хаскель
3) хаскель и агда
источник

AA

A64m AL256m qn<co... in Haskell
а то можно скоко угодно доказывать что языки похожи, а ты попробуй их имплементировать используя эту похожесть
источник

AA

A64m AL256m qn<co... in Haskell
например смл и камл делались как фронтенды одной имплементации - москоу мл и камл лайт, а вот с имплементациями для камла и лиспа и хаскеля и лиспа помаялись немного и на помоечку!
источник

NI

Nick Ivanych in Haskell
А почему петона нет?
Я вот (непрада, конечно, но допустим) сделал транслятор петона в хаскель!
источник

AA

A64m AL256m qn<co... in Haskell
вот сделают, тогда и поговорим!
источник

NI

Nick Ivanych in Haskell
То есть, классификация допускает потенциально иметь петона в качестве языка одного семейства с хаскелем?
источник

A

Arjaz in Haskell
Clojure и ClojureScript — языки из разных семейств, получается?
источник

AA

A64m AL256m qn<co... in Haskell
почему?
источник