Схема проекта Идеи - PullRequest
5 голосов
/ 13 января 2009

Я заинтересован в совершенствовании своих навыков функционального программирования и считаю, что лучший способ сделать это - работать над проектом среднего размера. В прошлом я работал со Scheme и хотел бы продолжать это делать. Может кто-нибудь предложить какие-нибудь идеи проекта Схемы среднего размера? (Примечание: я хорошо разбираюсь в C (ANSI C89 / ISO C90), поэтому использование интерфейса внешних функций Scheme для (например) взаимодействия с библиотекой, такой как ncurses, не только возможно, но и предпочтительнее.)

Ответы [ 5 ]

4 голосов
/ 16 января 2009

Вы можете получить некоторые идеи из недавней ветки «Проекты PLT, ожидающие участников» в списке рассылки PLT Scheme.

В частности, взгляните на пост Флатта:

http://list.cs.brown.edu/pipermail/plt-scheme/2009-January/029585.html

Мы могли бы использовать некоторые библиотеки файлов изображений:

  • чтение файлов GIF (у нас уже есть библиотека для записи)

  • чтение и запись файлов BMP

  • чтение и запись файлов XPM и XBM

Все эти форматы в настоящее время встроены в MrEd с использованием кода C, но код ужасен, и мы хотели бы от него избавиться. Кроме того, эти форматы изображений довольно просты.


4 голосов
/ 13 января 2009

Курс 6.001 в Массачусетском технологическом институте преподается в LISP, попробуйте некоторые из лабораторных заданий .

1 голос
/ 02 февраля 2009

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

Осторожно: бумага, учебное пособие и контрольные примеры не совсем совпадают. Вы должны сохранять свое остроумие и разбираться с собой. В частности, следуйте руководству до лямбды, затем следуйте документу для меток / кода / labelcall, затем вернитесь к учебнику по выделению кучи, затем вернитесь к статье для продолжения и далее к следующим шагам. (Извините, что усложнил, но этот маршрут мне помог.)

1 голос
/ 13 января 2009

Как насчет продолжения веб-сервера. У Smalltalk уже есть один (Seaside), а у PLT Scheme есть один в его дистрибутиве, но я думаю, что это был бы хороший всесторонний проект, который охватывал бы работу в сети, многопоточность, ввод-вывод, расширяемость пользователя и т. Д. *

Здесь есть интересная статья , с которой можно начать.

Удачи !!!

0 голосов
/ 20 июля 2012

Хороший набор упражнений, решения в основном на схеме, доступен по адресу Программирование Praxis .

...