2010-05-19 5 views
7

Я не могу найти это в Google (так, может быть, его нет), но я в основном хотел установить что-то на веб-сервере, чтобы я мог запускать сайт на Scheme, PHP начинает меня раздражать, я хочу, чтобы избавиться от него, что я хочу:Запустить сайт на Схеме

  • источники Run Схема по отношению к UTF-8 выходов (ДУХ)
  • поддержки для SXML, SXLT и так далее, я планирую составить проклятую вещь в SXML и -> к нормальному представлению в конце.
  • Способность читать другие файлы с сервера, запишите их, установить права доступа и так далее
  • Кроме того, некоторые вещи, чтобы, например, определить размер файла файлов, высота изображения, мим-типов и все, что фетиша
  • (необязательно) подключиться к базе данных, но для того, что я хочу сделать, хранение всей базы данных в S-выражениях вполне возможно

Мне не нужны какие-нибудь причудливые библиотеки и другие вещи, которые поставляются с ним, как CMS 'es и что-нет, кроме поддержки SXML, но я уверен, что могу просто найти lib для этого в любом случае, который я могу загрузить.

+0

Там существуют рамки Python я бы recommond, если вы хотите, функционально-программирование чувствовать с легкостью большой базой существующего кода, который реализует стандарты связи (XML, интерфейсы базы данных и т. д.). Я слышал, что Plone популярен. –

+1

Подождите, PHP начинает вас раздражать, поэтому вы хотите перейти на * Схему * ??? Я думаю, вы должны быть полностью противоположны мне ... – Josh

+2

@ Josh Я знаю, что это кажется странным движением, но я могу следовать за ним. Я забыл, кто сказал это первым, но PHP действительно чувствует ко мне, как будто на фабрике зарезервированных слов произошел взрыв. –

ответ

2

Spark-Scheme имеет полный веб-сервер. Если вам это не нужно, у него также есть интерфейс FastCGI, чтобы вы могли обслуживать сценарии Scheme с веб-серверов, таких как Apache, Lighttpd и т. Д. Spark-Scheme также, похоже, соответствует вашим требованиям к поддержке базы данных, UTF-8, обработке файлов и SXML. Дополнительную информацию см. На странице Spark-Scheme Programming Guide (pdf).

+0

Это похоже на меня. – Zorf

+0

Ваша ссылка мертва, новый адрес: http://vmathew.in/spark/index.html –

+0

@Joe D. Спасибо Джо, я обновил ссылку. –

1

Вы столкнулись с Фермионом (http://vijaymathew.wordpress.com/2009/08/19/fermion-the-scheme-web-server/)?

+0

Я этого не делал, но это кажется чтобы быть полной заменой apache, а не просто чем-то, что я могу установить, например, распознает файлы, которые заканчиваются на .scm, и запускает их, когда они запрашиваются, и возвращает результат, который записывается на их стандартный порт вывода. альтернатива php. – Zorf

+0

Новая ссылка на Fermion: http://spark.vmathew.in/tutorial/web-applications –

+0

@Lajla: извините - я неправильно интерпретировал веб-сервер как аппаратное, а не программное обеспечение. Похоже, у вас есть другие альтернативы сейчас, хотя :) – pdbartlett

2

mod_lisp и FastCGI - это только два модуля Apache, о которых я знаю, которые могут работать в это время. mod_lisp предоставляет поддержку схемы, потому что архитектура похожа на FastCGI, где параметры, подобные CGI, отправляются через сокет ко второму процессу, который остается запущенным в качестве бэкэнда схемы на веб-сервере. В основном вы используете тот или иной для отправки CGI-подобных параметров через сокет в исполняемый сервер.

Вы можете найти информацию об этих решениях here. Было еще одно усилие FastCGI под названием SCGI, которое продемонстрировало простой приемник SCGI в Scheme, называемый гамбит. Этот код, вероятно, больше не поддерживается, но полезно использовать scheme receiver.

Назад в Apache 2.0 дня, было больше проектов, играющих со схемой и четкими привязками. Я не верю, что mod_scheme когда-либо выпускал что-либо, но если они это сделали, то это несовместимо с современными выпусками Apache.

1

Если вы ищете lispy-язык для разработки веб-приложений, я бы рекомендовал посмотреть на Clojure. Clojure - это вариант, который близок к схеме; here is a list некоторых отличий.

Clojure работает на виртуальной машине Java и хорошо интегрируется с Java-библиотеками, а также имеется отличная инфраструктура webapp, которая называется Compojure.

+0

Хмм, я слышал о Clojure, но никогда не пробовал, так как думал, что это в основном основано на Common Lisp, так как у него нет оптимизации хвостового вызова. Чтение об этом сейчас кажется интересным, он исправляет некоторые ошибки на Схеме, но, к сожалению, это также вводит некоторые новые для меня. В какой-то момент я мог бы поклясться, что это Lisp-2, но здесь сказано, что это Lisp-1. – Zorf

1

Check Chicken Scheme's Eggs Unlimited. Я думаю, что вы хотите, это комбинация пакетов sxml вместе с пакетом fastcgi.

Смежные вопросы