Чтобы добавлять сообщения и комментарии, .

@ndtimofeev:
ndtimofeev

Проебал ночь машинного времени потому что запустил программу в тестовом режиме. Как бы мне сделать :set prompt в ghci-скрипте на основание значения let-биндинга из того же скрипта?

@segfault:
segfault

Чтобы уменьшить потребление памяти ghci под stack удобно задать переменную
export GHCRTS="-M2000m"
значение подбираем эмпирически.

@segfault:
segfault

Once you have a library of GHCi macros, you may want to source them from separate files, or you may want to source your .ghci file into your running GHCi session while debugging it
:def source readFile
With this macro defined in your .ghci file, you can use :source file to read GHCi commands from file.

Сложил импорты, инициализацию глобальных переменных для работы, всего вот этого вот в файл, потом :source file.hs и все загружено. Только я so slow в этом плане?

@ndtimofeev:
ndtimofeev

А можно как-нибудь на уровне ghci обработать все не перехваченные исключения? Например запихнуть их в лог.

@ndtimofeev:
ndtimofeev

Есть шанс как-нибудь прервать выполнение .ghci скрипта, в случае ошибки?

@qnikst:
qnikst

ghc.haskell.org

@qnikst:
qnikst

.ghci:

:def l! \s -> return (unlines [ ":set -fdefer-type-errors", ":load " ++ s, ":set -fno-defer-type-errors"])


@qnikst:
qnikst

а что такое instance chains которых нет в ghc?

@qnikst:
qnikst

как в ghci добавить в окружение переменную, вот у меня в десахарере появляется (Id,CoreExpr) в обычной компиляции он тупо добавляется в список, а вот что делать тут мне уже не понятно.

@segfault:
segfault

А можно как нибудь показать сгеренированный в TH data family ?
хотел типа
:i (Route App)
А оно мне херню показывает, список конструкторов надо.

@qnikst:
qnikst

хочу сделать конфиг файл, который меняется в зависимости от опций (окружения), как лучше всего? т.е. например, хочется в конфиге делать или :m A или :m B в зависимости от того есть ли параметр --module-impl=A или переменная окружения

@qnikst:
qnikst

а кто-нить может меня просветить, как ghci работает со стеком, а то подгружаемая .so-шка ругается на то, что stack usage is close limit и радостно падает, это как-нибудь конфигурировать можно?

@qrilka:
qrilka

а можно как-то заставить ghci понимать несколько секций build-depends из 1 cabal-файла? Ну вот есть уменя library, там есть зависимости нужные, а рядом test-suite со своими квикчеками и т.п. — запускаю cabal-dev ghci и ес-но файл с тестами загрузить не выходит, т.к. тестовые build-depends не видятся, wtf?

@fmap:
fmap

:browse Package.Name удобная штука, позволяет меньше лазить на hackage и долбить по TAB.

@segfault:
segfault

жуик а расскажи в чем дело а ?
% ghci
GHCi, version 7.4.2: haskell.org :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... ghc: /usr/lib64/ghc-7.4.2/base-4.5.1.0/HSbase-4.5.1.0.o: unknown symbol `stat'
ghc: unable to load package `base'

@qnikst:
qnikst

1). включил ghci 2). поставил новые либы 3). как застравить ghci их увидеть, не перезапуская его?

@gli:
gli

Кто-нибудь знает, как заставить ghci печатать Float в виде 0.0006, а не 6e-4?

@qnikst:
qnikst

cat ~/.ghci
:def ihoogle \str -> return $ ":! hoogle --count=15 \"" ++ str ++ "\""

via
haskell.org

thanks to slyfox

@klapaucius:
klapaucius

Пока у меня складывается впечатление, что самые нижние этажи F#-ада, стигийские лиды — это REPL. Предположим, вы пишете в командной строке fsi Fancy.fs — ну понятно, Fancy.fs должен существовать. Если бы вместо fsi был ghci, а вместо fs был hs, мы бы получили открытое окно интерпретатора в котором загружен модуль, можно было бы что-то делать с объявленными в модуле и импортированными функциями, конструкторами и т.д. Но мы-то имеем дело с F# и тут ничего такого не получится по ряду причин. Во-первых, не знаю как у вас, но у меня fsi при установке VS не прописался в путях, так что команда fsi просто не будет найдена. Ну это легко исправить. Дальше — хуже. Файл Fancy.fs не представляет из себя какой-то самодостаточной единицы — это просто один из кусков кода, которые нужно подгрузить в определенном порядке в духе суровых инклюдов. Ghci подгрузил бы установленные пакеты, от которых зависит открываемый файл, но fsi это делать не станет. Да, FSharp.PowerPack в Assembly Cache — ну так что с того? Давайте, не ленитесь, ручками, ручками — #r "FSharp.PowerPack.dll";; Автоматика, модульность — это все зло и грех, все необходимо отсечь: программист на F# должен знать только келью, духовника и все!

@smeea:
smeea

~ % ghci
GHCi, version 6.10.4: haskell.org :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer ... linking ... done.
Loading package base ... linking ... done.
Prelude> sin(pi)
1.2246063538223773e-16
Prelude>
ильхам зюлькорнеев учить математику мокрые письки скачать бесплатно функциональное программирование арифметика элитные кодеры