Перейти к содержимому

Настройка GNU/Emacs для программирования на Haskell

06.08.2010

Вот взялся за изучение функционального программирования. Выбрал для этого ни без известный Haskell. В этом посте хотелось бы рассказать как проходит начальная настройка GNU/Emacs для работы на Haskell.

Для этого нам понадобится:

Gnu/Emacs 23.1

Устанавливаем в Debian:

#aptitude install emacs

Далее ghc 6.12.3, скачиваем с официального сайта и далее собираем из исходников:

../configure

make

make install

Либо можно взять haskell-platform

Затем скачиваем haskell-mode для GNU/Emacs. Распаковываем архив и копируем папку с haskell-mode, себе в .emacs.d.

Далее открываем наш конфигурационный файл .emacs и добавляем туда следующие строки:

(load "~/.emacs.d/haskell-mode/haskell-site-file")
(add-hook ‘haskell-mode-hook ‘turn-on-haskell-doc-mode)
(add-hook ‘haskell-mode-hook ‘turn-on-haskell-indentation)
(add-hook ‘haskell-mode-hook ‘haskell-font-lock-symbols t)
(put ‘downcase-region ‘disabled nil)

Вот и все запускаем наш GNU/Emacs, включаем haskell-mode командой M-x haskell-mode, создаем файл например test.hs

Набираем какой-нибудь код на haskell:

fac :: Integer -> Integer
fac 0 = 1
fac n | n > 0 = n * fac (n — 1)

Далее выполняем команду C-с C-l появляется новый буфер, и теперь можем тестировать нашу функцию:

*Main> fac 5
120

Выглядит это примерно так:

Реклама

From → emacs, haskell

2 комментария
  1. А что, Debian не имеет пакета ghc? Зачем компилировать? Я просто не верю. Я слышал, что в Debian больше всего пакетов по сравнению с другими дистрибутивами.

  2. Да конечно вы правы в Debian есть все. Но мне в моем случае нужен был компилятор последней версии, а в Debian все как вы знаете стабильное и не совсем свежее 🙂

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google photo

Для комментария используется ваша учётная запись Google. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s

%d такие блоггеры, как: