Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Открыта регистрация участников на Международную конференцию по функциональному программированию

Lisp *Erlang/OTP *Haskell *Функциональное программирование *Конференции


ICFP 2020 — двадцать пятая конференция под эгидой ACM SIGPLAN. В этом году конференция будет проводиться онлайн, и все события, проходящие в её рамках, будут онлайн.


Соревнование ICFP по программированию будет проводиться с 17 июля по 20 июля 2020 года (то есть, уже через два дня).


Сама конференция будет проходить с 24 по 26 августа 2020, и укладываться в два тайм-слота. Первый слот будет проходить с 9:00 до 17:30 по времени Нью-Йорка, и будет включать как технические, так и социальные мероприятия. Второй тайм-слот будет проходить с 9:00 до 17:30 по Пекинскому времени, на следующий день, и будет с незначительными вариациями повторять содержимое предыдущего дня, включая технические и социальные мероприятия.

Читать дальше →
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 1K
Комментарии 2

Шесть принципов при создании новых вещей.

Чулан

Шесть принципов при создании новых вещей.



Пол Грэм.
Бурная реакция на релиз Arc[1] имела неожиданные последствия: я осознал
что у меня есть своя философия при создании вещей. Основная претензия
наиболее внятных критиков заключалась в том, что Arc выглядит
недоделанным. Пара тысяч строк макросов — это все, что я сделал за
несколько лет работы? Почему я не занимался прикладными задачами?

Читать дальше →
Рейтинг 0
Просмотры 590
Комментарии 0

Io Language: Синтаксис

Ненормальное программирование *Lisp *Smalltalk *

В продолжение серии статей про Io, хотелось бы отдельно остановиться на синтаксисе языка.
В двух словах синтаксис Io можно описать так: простой, но странный. Многих удивит такой подход, но, спешу заверить, как и в Lisp, синтаксис неудобен только при взгляде со стороны. С эстетической точки зрения можно отдельно выделить тот факт, что многие прогаммы на Io внешне кажутся излишне разреженными, на экране остается много «лишнего», незаполненного полезным кодом места, это ощущение меня не покидает довольно давно, я пока не придумал, как полностью избавиться от этого вывиха мозга, я просто придумал для себя некоторые правила оформления кода, при соблюдении которых эффект значительно сморщивается:
  • Длина строки не должна превышать 80 символов (Привет, text mode!)
  • Между клонированием объекта и описанием тела нового должна быть пустая строка
  • Методы и свойства группируются
  • Без лишней необходимости скобки на новую строку не переносятся


Ну что, поехали. Вынос мозга №2.
Читать дальше →
Всего голосов 50: ↑45 и ↓5 +40
Просмотры 3.2K
Комментарии 17

Шесть принципов при создании новых вещей.

Чулан
Перевод

Шесть принципов при создании новых вещей.


Пол Грэм.
Февраль 2008 года.
Бурная реакция на релиз Arc[1] имела неожиданные последствия: я осознал
что у меня есть своя философия при создании вещей. Основная претензия
наиболее внятных критиков заключалась в том, что Arc выглядит
недоделанным. Пара тысяч строк макросов — это все, что я сделал за
несколько лет работы? Почему я не занимался прикладными задачами?

Читать дальше →
Всего голосов 9: ↑8 и ↓1 +7
Просмотры 579
Комментарии 8

Открываем файлы во внешних приложениях

Emacs *
Emacs имеет крутую курву обучения, но чем дальше, тем больше хочется делать в нем все, что можно и нельзя. В частности он обладает большим числом средств для навигации по файловой системе.
Я, например, использую Dired mode, ido, Org mode и закладки. Но существует проблема с открытием файлов во внешних приложениях: pdf в evince, avi в mplayer и т.д. Причем хочется задавать эти связи в одном месте. Emacs не был бы Emacs'ом, если бы не позволял сделать для этого какой-нибудь грязный хак =)
Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 2.2K
Комментарии 5

LISP-программирование как жанр искусства

Ненормальное программирование *
Нереальный, фееричный перфоманс с использованием LISP и OpenGL.
Поначалу ничего непонятно, но все завораживающее действо начинается с 5 минуты где-то. Может быть это и есть один из видов искусства будущего?


Уже представляю себе «выступает заслуженный LISP-ист России, лауреат международных премий Иван Лямбдин»
Всего голосов 88: ↑78 и ↓10 +68
Просмотры 5.1K
Комментарии 60

Самый быстрый мини веб-сервер

Lisp *
Джон Фремлин (John Fremlin) выпустил, по его мнению, самый быстрый мини веб-сервер для динамического контента. Сервер teepeedee2 целиком написан на Common Lisp (CL), диалекте LISP, второго по древности языка программирования высокого уровня.

О своей разработке Фремлин рассказывал ещё в прошлом году, задолго до релиза, на токийской встрече Linux Users Group, там же он показал и результаты замеров производительности (PDF), которые демонстрируют, что «функциональные языки могут превзойти C».

via slashdot
Всего голосов 72: ↑62 и ↓10 +52
Просмотры 5.9K
Комментарии 93

LISP. Атом первый

Программирование *
Привет, Хабр!
LISP заинтересовал меня уже давно, но, к сожалению, активно использовать свои знания и стремления на практике шанса не было. Скоро новый учебный год, а значит у меня опять будет возможность изучать и, уже второй год, преподавать студентам LISP. Еще одной проблемой, кроме традиционного отсутствия интереса к сложным вещам, кажется отсутствие литературы. Да и вообще, тема LISP-а в интернете, а тем более в рунете освещена слабо. Вот и на Хабре публикаций довольно мало.

Надеюсь, эта статья понравится общественности и откроет серию, повествующую об одном из наиболее интересных и наименее понятных (хотя до brainfuck и далеко) языков программирования – LISP. Ведь, как это не банально, еще один язык — еще одна жизнь
Узнать про LISP
Всего голосов 91: ↑88 и ↓3 +85
Просмотры 56K
Комментарии 64

Древнейший домен продан

Администрирование доменных имен *
Инвестиционная компания XF.com выкупила самый старый домен в интернете.

Домен symbolics.com был зарегистрирован 15 марта 1985 года американской фирмой Symbolics, которая желала показывать публике свои персональные компьютеры, оптимизированные для выполнения команд на языке LISP. Это были первые компьютеры, которые получили название «рабочих станций» (“workstation”).

За четверть столетия домен ни разу (!) не сменил владельца. Вот только сейчас. Сумма сделки неизвестна, зато вполне понятна её цель. Ведь это просто идеальная инвестиция. Первый в интернете домен навсегда останется первым, а его ценность только растёт с каждым годом, как ценность любого исторического экспоната. Туда всегда будут заходить люди, а PageRank сайта практически невозможно уничтожить, потому что домен уже внесён в анналы истории.

На сегодняшний день во Всемирной сети более 180 млн зарегистрированных доменов, и каждый день их число растёт на несколько тысяч. Вот список 100 самых старых доменов, частично уже публиковавшийся на Хабре.
Читать дальше →
Всего голосов 60: ↑49 и ↓11 +38
Просмотры 1.4K
Комментарии 52

Язык Scheme

Lisp *

Если здесь HD-режим недоступен, значит нужно перейти на vimeo.

Знакомство с языком программирования Scheme в рамках проекта CS Student. В видео мы познакомимся с некоторыми простыми типами данных, порядком обработки процедур и выполним парочку заданий из моего курса Programming Paradigms. Во второй части будет решение задачек немного посложнее и знакомство с другими возможностями языка. Ссылки:

Интерпретаторы
Всего голосов 53: ↑44 и ↓9 +35
Просмотры 18K
Комментарии 14

Изучай Haskell ради… Haskell'а

Haskell *
Я долго (несколько лет) не решался составить окончательное мнение о Haskell'e: слишком противоречивы были мысли. И вот, наконец, благодаря этой записи о разборе программки определения двудольности графа я могу это сделать :)

Я понял, что Haskell-программисты — в основном, нужно сказать, хобби-программисты — это те, кто программирует не решение задачи, алгоритм, систему, а Haskell! [1] Посмотрите, какой простой алгоритм описан в заметке, а сколько вокруг него нагромождено языковых конструкций, объяснений и дискуссий. (Чтоб понять, насколько алгоритм прост, можете посмотреть в комментариях варианты на Lisp'е, Python'е).

Мне хорошо знакомо это умонастроение — когда в погоне за максимальным использованием мощи языка забываешь о самой задаче,— поскольку в Lisp-мире оно тоже часто встречается: есть языки, которые способны действительно увлечь. И выражение «это взорвало мне мозг» часто звучат и по поводу Lisp'а, и по поводу Haskell'а. Но это же — фигня! Конечно, не может не радовать узнать что-то новое, но не нужно же радоваться этому, как ребенок новой игрушке. Хороший язык программирования должен быть максимально понятен и прост, должен давать человеку свободу самовыражения. Честно говоря, именно этому я обрадовался, когда открыл для себя Lisp: что нашел то, что искал. А не тому, что увидел какую-то конструкцию или изворот, который не доводилось встречать раньше.

Вывод
Всего голосов 40: ↑29 и ↓11 +18
Просмотры 16K
Комментарии 50

Допиливание Emacs для нетбуков

Emacs *
Здравствуй %username%!
Недавно начал использовать Emacs. Мне очень нравится за скорость и простоту. После покупки нетбука столкнулся с тем, что Emacs под Windows не влазит в его 1024x600 когда он запускается, и приходится каждый раз менять размен окна и его двигать. Как решение написал маленькую функцию, которая восстанавливает размер окна при старте. Думаю, это может быть полезно не только пользователям нетбуков.
Сам код за катом.
Всего голосов 9: ↑7 и ↓2 +5
Просмотры 1.7K
Комментарии 6

HomeLisp

Lisp *
Недавно мой отец закончил разработку своей реализации языка LISP под Windows. Проект называется HomeLisp. Для того, чтобы проект был доступен любителям LISP-а был создан простейший сайт, куда будут выкладываться обновления, документация и где отец будет отвечать на вопросы пользователей. Собственно передаю ему слово.

HomeLisp – простой, свободно распространяемый Лисп на платформе Windows!


Среди языков программирования, разработанных к настоящему времени, имеется один совершенно уникальный. Это язык Лисп.

Идея, лежащая в основе Лиспа, чрезвычайно красива: все конструкции языка (программы и данные) представляются с помощью единой универсальной структуры – списка. Методология программирования на Лиспе в корне отличается от методологии программирования на традиционных языках (типа Си или Паскаля).

Лисп-программист не разбивает алгоритм на отдельные элементарные шаги, не использует циклы, ветвления, присвоения значений переменным, а строит функцию, решающую поставленную задачу. При этом структура функции почти дословно соответствует математической формулировке решаемой задачи.
Подобная методология сейчас называется функциональным программированием. Лисп – первый функциональный язык программирования и, вероятно, первый язык, который явно приветствовал использование рекурсии.

Языки, появившиеся после Лиспа, превзошли Лисп по изобразительным возможностям… но по соотношению «сила/простота» рекорд Лиспа не побит до сих пор!

Лисп – абсолютно не попсовый, элитарный язык программирования. И не удивительно, что хотя с момента его изобретения Дж. МакКарти прошло уже более 50 лет, Лисп жив по сей день! Далеко не каждому языку суждена столь долгая жизнь, – где сейчас Алгол-60 (которому пророчили большое будущее)? А по Лиспу издаются книги (к сожалению, не на русском языке…); появляются новые и новые реализации Лиспа на разных аппаратных платформах.

Одну из таких простых реализаций Лиспа и предлагает автор этих строк.

Читать дальше →
Всего голосов 63: ↑48 и ↓15 +33
Просмотры 7.7K
Комментарии 261

Clojure и Project Euler, часть 1

Lisp *Clojure *

Предисловие


Недавно я начал изучать язык Clojure. Заинтересовал меня он потому, что это диалект lisp'a, выполняющийся на jvm. Сам я программирую на java, а lisp удивил меня своими скобочками. И тут такая смесь интересная. Да и с функциональным программированием тоже хотел познакомиться. Но тут же появилась проблема: как изучать clojure? Надо на нём что-то писать… А что? И пришёл к выводу, что очень удобно при изучении языка решить какие-нибудь несложные математические задачки: и к синтаксису привыкнешь, и с функционалом немного познакомишься. Для этого очень хорошо подходит Project Euler. Здесь я попробую показать, как начать работать с clojure и решить пару задач на нём. Я новичок в функциональном программировании и lisp'е, так что буду очень рад увидеть решения более близкие и красивые с точки зрения функционального и lisp'а.
Читать дальше →
Всего голосов 39: ↑35 и ↓4 +31
Просмотры 5.3K
Комментарии 25

Clojure и Project Euler, часть 2

Lisp *Clojure *
В предыдущей статье (Clojure и Project Euler, часть 1) я описал решение первых 3 задач из проекта Эйлер с использованием clojure — достаточно молодого языка, но имеющего известных родителей.
В этой статье я продолжу знакомить читателя (да и себя тоже) с этим забавным джава-лиспом. И покажу решение ещё 3 несложных задач из Эйлера.
Читать дальше →
Всего голосов 26: ↑21 и ↓5 +16
Просмотры 2.6K
Комментарии 6

Lisp — экзотика рулит

Чулан
Когда то, когда еще учился в университете, мне приходилось писать небольшие учебные задания на языке Lisp. Этот язык довольно интересен, и отличается практический от всего что используют разработчики в своей работе сегодня… ну я сдал практикум и, как говорится, забыл.
… но вчера, увидев пост habrahabr.ru/blogs/lisp/89097 позволил себе указать автору, что, по моему мнению, проблема Lisp-a не в отсутствий библиотек, а отсутствие библиотек следует из проблем самого Lisp-a — очень плохой читаемостью программного кода, которая делает очень сложной разработку больших программ.

Не из людей, который любит похоливорит, но взрывная дебата меня очень повеселила =), вот и решил процитировать спецов по данной экзотике и больших гуру программирования.

Ну с моими же комментариями, конечно.

PS
Ничего личного, просто смешно.

Читать дальше →
Всего голосов 54: ↑17 и ↓37 -20
Просмотры 802
Комментарии 59

Практика функционального программирования №5

Ненормальное программирование *
Анонсы новых выпусков журналов или обновлений сайтов — это не то, о чём обычно пишут. Мы не видели объявлений новых номеров Компьютерры (когда она ещё была) или Vogue на страницах Хабра. Тем интереснее наблюдать, как небольшой, весьма специализированный журнал для программистов «Практика функционального программирования» регулярно привлекает живой отклик у читателей даже таких в некотором роде особенных сообществ как Linux.Org.Ru или Хабрахабр.

Недавний выпуск последнего, пятого номера журнала ПФП уже вызвал множество интересных споров. А всё потому, что в конкурсе, объявленном журналом в конце прошлого года, вместо запланированной безоговорочной победы языков Haskell и OCaml, победили Python и C#.

Неожиданно обнаружилось, что один из дизайнеров C#, Eric Meijer признался, что Visual Basic — это функциональный язык (http://mr-aleph.livejournal.com/255073.html)

А еще обнаружилось, что...
Всего голосов 46: ↑42 и ↓4 +38
Просмотры 3.2K
Комментарии 16

Миф о супер языке

Разработка веб-сайтов *
Перевод
Я только что прочитал очередную версию мифа о том, как какой-то эзотерический язык программирования (чаще всего Lisp или Haskell) может стать секретным оружием, позволяющим команде на порядки превосходить ожидания. Пол Грэм глобально распространил это миф (Побеждая посредственность / Beating the Averages), и миф передавался из поколения в поколение. Но это враньё. Еще хуже то, что он усиливает настоящий бич нашей индустрии – интеллектуальный элитизм.
Читать дальше →
Всего голосов 136: ↑103 и ↓33 +70
Просмотры 3.4K
Комментарии 152

SICP теперь по-русски

Программирование *
image

Удивительно, что до сих пор никому еще не пришла в голову идея перевести эти легендарные лекции на русский язык.

В качестве эксперимента выкладываю перевод первой из 20 лекций. Если это получит должный отклик, буду переводить дальше.
Читать дальше →
Всего голосов 97: ↑92 и ↓5 +87
Просмотры 37K
Комментарии 61

Структура и интерпретация компьютерных программ

Софт
image
Перевод второй лекции Джеральда Сассмана
«Процедуры и процессы: подстановочная модель.»

Эти лекции были прочитаны 25 лет назад сотрудникам HP, но на самом деле это тот легендарный вводный курс 6.001, который читался в MIT в 1980 году. С тех пор эти лекции sine qua none во всем мире программирования. Хотелось бы чтобы каждый программист посмотрел этот курс, ничего не учит абстрактному мышлению лучше, чем SICP.
Приятного просмотра на ночь глядя.
Читать дальше →
Всего голосов 75: ↑75 и ↓0 +75
Просмотры 6.4K
Комментарии 37