alexey_rom: (Default)
В Яндексе используют Эрланг, оказывается. Вот вакансия: http://habrahabr.ru/job/3829/ Чем больше, тем лучше.
alexey_rom: (Default)
Для одного проекта понадобилась библиотека для работы с SQLite 3 из Erlang. Она на GitHub нашлась (автор [livejournal.com profile] levgem), но пришлось несколько расширить. Так что вот моя ветка. Главные добавления:

1. Поддержка Windows.
2. Параметризованные и подготовленные запросы.
3. Правильная работа с целыми числами, не вмещающимися в 32 бита.

Конечно, нужно ещё добавить тестов...
alexey_rom: (Default)
Официальное объявление. Теперь нужно смотреть, достаточно ли там всё просто, чтобы просить студентов писать на нём тесты...

UPDATE: А только что объявили об очередной вариации на тему: http://github.com/manopapad/proper Кроме того, уже некоторое время назад появился http://github.com/krestenkrab/triq от автора Erjang (реализации Erlang на JVM).
alexey_rom: (Default)
Уже третий год в весеннем семестре я веду курс "Функциональное и логическое программирование" у двух групп. У нас будет 7 лекций и 7 лабораторных (по две пары). (В одной группе, возможно, 6).

Выбор языков:
По ЛП, понятно, Пролог. По ФП Эрланг ради простоты и синтаксической близости с Прологом.

Мои планы:
3 занятия по ФП, 4 по ЛП

Лекция 1. Преимущества неизменяемых данных, списки в ФП, хвостовая vs нехвостовая рекурсия
Лабораторная 1. Знакомство с Эрлангом, написание первых функций.
Лекция 2. Функции как значения. Напомнить лямбда-исчисление. Замыкания. Сравнить с указателями на функции в C и поговорить о ситуации в других языках.
Лабораторная 2. ФВП. Применение для работы со списками и как управляющих конструкций.
Лекция 3. Алгебраические типы данных. Если успею -- немного о выводе типов. Ленивость.
Лабораторная 3. List comprehensions. Представление сложных данных. Пример: деревья.

По ЛП куда меньше теории, которая не связана непосредственно с Прологом.

Лекция 4. Идея логического программирования. Синтаксис Пролога.
Лабораторная 4. Знакомство с Прологом. Простая БД. Написание правил и запросов.
Лекция 5. Арифметика. Операторы.
Лабораторная 5. Работа со списками. Представление сложных данных. Деревья.
Лекция и лабораторная 6. Алгоритм унификации и поиска с откатом. Порядок клозов в правилах. Сечения (зелёные и красные). Отрицание.
Если успеваю: Работа со свободными переменными. Разностные списки.
Лекция и лабораторная 7. Грамматики (DCG). Код как данные.

Ваше мнение? Есть ли что-то, о чём обязательно нужно рассказать, а у меня этого нет? Есть ли что-то явно лишнее?

Кроме того, выложил на Dropbox материал и задание к первой лабораторной. Может быть, кому-нибудь будет интересно. Те же вопросы, что по общему плану занятий.
alexey_rom: (Default)
Это инструмент для автоматического рефакторинга кода на Erlang. Статьи меня сильно заинтересовали, а тут ещё оказалось, что авторы сделали бесплатный веб-интерфейс. Правда, он сохраняет код и применённые преобразования — не нравится, не пользуйтесь или покупайте лицензию.
alexey_rom: (Default)
Видео и транскрипт на InfoQ (вот как можно сделать такой неудобный видеоплеер на Flash, когда давно есть YouTube -- я не понимаю!)

Транскрипт на Google Docs (via [livejournal.com profile] avva)
alexey_rom: (Default)
Learn You a Haskell for Great Good! Курс по Haskell с картинками. Ещё не закончен, но то, что есть -- вполне неплохо.
Learn You Some Erlang for Great Good! Автору так понравился Learn you a Haskell, что он решил сделать то же самое, но для Erlang. Пока есть только начало.

Profile

alexey_rom: (Default)
alexey_rom

April 2012

S M T W T F S
1 234567
89 1011121314
15161718192021
22232425262728
2930     

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 24th, 2017 12:52 pm
Powered by Dreamwidth Studios