@haskellru

Страница 225 из 1551
Alexander
05.03.2017
17:14:02
и linux-way-но
Ну это не совсем..

melancholiac
05.03.2017
17:14:22
Ну это не совсем..
это был сарказм

Alexander
05.03.2017
17:14:38
А у меня не сарказм, дважды

melancholiac
05.03.2017
17:15:03
(:V)

Google
Sasha
05.03.2017
18:44:36
Здравствуйте, тупые вопросы можно задавать?

ollerus
05.03.2017
18:44:58
Можно

melancholiac
05.03.2017
18:45:06
Sasha
05.03.2017
18:45:22
как остановить программу после выполнения

ollerus
05.03.2017
18:46:00
Выключи комп

Sasha
05.03.2017
18:46:26
ну тип у меня окошко вылетает и сразу закрывается

melancholiac
05.03.2017
18:46:41
что за программа?

Sasha
05.03.2017
18:47:05
да просто хеллоуворлд

melancholiac
05.03.2017
18:47:42
сорцы кинь

(и так ясно что он не поставил паузу перед возврата мейна, я из вежливости спросил)

Evgeniy
05.03.2017
18:50:26
Sasha
05.03.2017
18:50:31
main = do print "Name ?" name <- getLine print ("Hello " ++ name ++ "!")

? animufag ?
05.03.2017
18:50:39
Я бы хотел помочь но не понимаю что происходит

Google
? animufag ?
05.03.2017
18:52:58
Запускай из командной строки
Ну разве что такой ответ подходит, но всё равно не факт что это значит остановить

Sasha
05.03.2017
18:55:38
хочу чтото как в плюсах system("pause")

Alexander
05.03.2017
18:58:01
void $ getLine

наприме

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

какие-то виндо/IDE-проблемы

Artem
05.03.2017
19:00:13
Sasha
05.03.2017
19:00:53
Да все, из командной строки запустил

норм

Evgeniy
05.03.2017
19:02:24
? animufag ?
05.03.2017
19:02:43
Да все, из командной строки запустил
ghci лучше как можно скорее начать осваивать (если ещё не начинал), так гораздо быстрее всё пойдёт

Sasha
05.03.2017
19:03:25
ghci лучше как можно скорее начать осваивать (если ещё не начинал), так гораздо быстрее всё пойдёт
я чет не понял как в нем работать если честно(мой хаскель равен 3м часам)

поэтому пишу и компилю в нотпаде, а запускаю черз командную строку

? animufag ?
05.03.2017
19:11:07
ну к примеру, пишешь что-нибудь в нотпаде, помнишь название функции которая тебе нужна но не помнишь в каком порядке она принимает аргументы > :t take Int -> [a] -> [a] проверяешь как она работает > take 3 "substring" "sub"

Alexander
05.03.2017
19:12:04
:main в ghci же

? animufag ?
05.03.2017
19:12:33
ну или запускаешь ghci (твой файл) и проверяешь все свои функции, проверяешь тот же main пишешь :reload когда что-нибудь добавил в файл

Alexander
05.03.2017
19:12:45
:r/:reload если перезагрузить если файл изменил в другом месте

? animufag ?
05.03.2017
19:13:17
:main в ghci же
кстати есть разница, если просто применить main?

Alexander
05.03.2017
19:13:39
хз, я не пользую эту функцию обычно

Владислав
05.03.2017
19:13:40
Как в монады попроще въехать, чтобы побыстрее начать быдлокодить?

Google
Alexander
05.03.2017
19:13:57
быдлокодь без въезжания

? animufag ?
05.03.2017
19:13:59
не въезжай

Владислав
05.03.2017
19:14:07
Рофл

Alexander
05.03.2017
19:14:27
монады просто средство связывания действий с эффектами. т.е. передача из однго в другое значение

чего тут понимать

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

т.е. методом демидовича набирать опыт

? animufag ?
05.03.2017
19:15:47
монады просто средство связывания действий с эффектами. т.е. передача из однго в другое значение
да ну. монады и без эффектов могут существовать. этим большинство туториалов по монадам страдают

Владислав
05.03.2017
19:15:48
А и, кстати, как предотвратить зацикливание, если напортачил?

Sasha
05.03.2017
19:15:51
вопрос на вырост, сложно ввод вывод из файла сделать?

Владислав
05.03.2017
19:15:52
Есть какие-то инструменты?

Владислав
05.03.2017
19:16:18
Тайм-лимит, например

Alexander
05.03.2017
19:16:20
@vlastachu очевидно, что ты не прав

Sasha
05.03.2017
19:16:34
не
ок

Igor
05.03.2017
19:16:48
Как в монады попроще въехать, чтобы побыстрее начать быдлокодить?
посмотреть определение и реализации класса типов Monad, например: http://hackage.haskell.org/package/base-4.9.1.0/docs/src/GHC.Base.html#line-656

Alexander
05.03.2017
19:17:03
@t1mee System.Timeout.timeout например

^C

@vlastachu все монады это инкапсуляция какого-либо эффекта в типе данных

? animufag ?
05.03.2017
19:18:02
@vlastachu очевидно, что ты не прав
оукей. ну давай хотя бы определимся, что речь не про побочные эффекты?

Google
? animufag ?
05.03.2017
19:18:28
сайд

Alexander
05.03.2017
19:18:31
речь идёт про побочные эффекты

? animufag ?
05.03.2017
19:19:18
и что является побочным эффектом для списка?

Alexander
05.03.2017
19:19:24
давай определимся, знаком ли ты знаком ли ты со статьей Moggi "Computational lambda-calculus and monads" 1989 года

что такое list monad?

? animufag ?
05.03.2017
19:19:46
Ну конечно же нет

Alexander
05.03.2017
19:20:15
тогда давай не будем тратить время на споры, а ты её почитаешь, хотя бы вступление и 1-2 части

а не, там примеров нету, за примерами к Вадлеру

в общем List это инкапсуляция эффекта недетерминированных вычислений и это side эффект

@t1mee а ты это не читай, это теоритические разборки ;)

Igor
05.03.2017
19:22:53


Владислав
05.03.2017
19:23:27
Та я пока на и stepik.org развлекаюсь, есть время до монад, экшели)

Alexander
05.03.2017
19:24:48
@vlastachu то что монады это зачастью чистые вычисления, когда они вычисляются - это да

Владислав
05.03.2017
19:25:22
Кстати, об этом. Есть предложения, как через хвостовую функцию запилить: SeqA n = seqA (n-1) + seqA (n-2) - 2*seqA (n - 3)?)

Alexander
05.03.2017
19:27:13
наверное нечестно будет решать задачу из курса, там вроде были какие-то задачи, с завязыванием узла, которые как подсказку использовать можно?

Владислав
05.03.2017
19:29:38
Так-то оно так, вот только даже дефолтный код без let и стражевых операторов требует запредельные ресурсы по времени

seqA :: Integer -> Integer seqA n | n == 1 = 0 | n == 2 = 1 | n == 3 = 2 | n >= 4 = seqA (n - 1) + seqA (n - 2) - 2 * seqA (n - 3) | otherwise = error "arg must be >= 1"

В оригинале форматирование ровное, для заметки)

Alexander
05.03.2017
19:31:23
это не tailrec

Владислав
05.03.2017
19:31:32
Это - да)

Google
Владислав
05.03.2017
19:31:41
Но мне нужно, чтобы хоть как-то работало

Для начала

Alexander
05.03.2017
19:31:43
для кода есть markdown выделение три символа ` вначале и вконце кода

переписать как tailrec проще, чем заставить этот вариант не жрать ресурсы

@vlastachu ты пишешь что-то очень-очень длинное? ;(

;) т.е.

? animufag ?
05.03.2017
19:33:20
Ну ладно, ок. В определенный момент моё развитие в плане хаскеля и теорката остановилось и вполне осознанно. Многие вещи я не понимаю при достаточных затратах времени на них. В этом плане ты можешь относится ко мне как к инвалиду к которому отсылать фундаментальную литературу будет излишним. Но вот что наверное можно объяснить тут сразу на месте: монады существовали и без хаскеля. Они сразу подразумевали эффекты? А прочие штуки из теорката тоже чтоли под собой имеют интуитивную такую интерпретацию? Когда мы определяем структуру данных и монаду над ней можно тут также красиво предугадать какой эффект она интерпретирует? Или есть конечное число возможных вариаций для построения хаскельных типов и они уже все удачно проинтерпретированы? (ну типа как мы добавим в Either ещё один конструктор и вроде бы ничего толком не поменялось) Неоднозначность определения монады над типом никак не влияет на эту эффектную интерпретацию

как видишь

ну скинул так

там могут быть несвязные предложения

речь идёт про побочные эффекты



ещё вот это не укладывается

типа как у них конечно у всех сайд эффекты, но у IO совсем сайд

Alexander
05.03.2017
19:36:45
да, монады сразу подразумевали эффекты (про теоркат не скажу, я в нём не силен); тут последовательноть обратная исторически была - есть эффект находим структуру; но про типы если можно написать инстанс Monad значит можно найти и смысл

? animufag ?
05.03.2017
19:36:50
Тогда уж интересно узнать что такое сайд эффекты

Alexander
05.03.2017
19:37:06
я могу пересказать стью для как для dummies типа меня

сейчас найду одно из старых определний если не потерял статью

? animufag ?
05.03.2017
19:37:56
я могу пересказать стью для как для dummies типа меня
забей. я могу сказать, что почитаю, а потом не почитаю и всё ок

Страница 225 из 1551