Подобно на някои от питащите тук, аз съм нов в Lisp. Преглеждам книгата Practical Common Lisp, но се отклоних, за да видя колко лесно би било за настройка на уеб приложение, така че следвах и този урок като актуализираната версия тук.
Когато стигна до точката, в която стартирам сървъра, моят REPL умира и след това не мога да насоча нищо към *dispatch-table*
.
Така че основно имам код, който работи чудесно в REPL, добавяйки обекти към списък, извличайки ги и т.н., след което стартирам сървъра, използвайки
(setf *web-server* (start (make-instance 'hunchentoot:acceptor :port 8080)))
който работи чудесно и имам достъп до него на http://localhost:8080
. Въпреки това, когато имам достъп до него, регистрационните файлове се отпечатват в REPL и от този момент не мога да използвам действително REPL. Така например, следвайки публикацията на Адам Петерсен, тогава не мога
(push (create-prefix-dispatcher "/retro-games.htm" 'retro-games) *dispatch-table*)
защото REPL не реагира. Опитах да стартирам сървъра от различни прозорци (т.е. от SBCL в терминал), но след това той не осъзнава контекста, в който се намирам - не разбира пакета, върху който работя, или който и да е от моя код.
Използвам малко нестандартна настройка; Аз съм на OSX и използвам Sublime Text 2 със SublimeREPL и SBCL (защото наистина не съм в Emacs и ST2 е страхотен!). Описах как сглобих всичко тук - но всъщност публикувам това само за всеки случай, ще се изненадам, ако настройката ми създава проблеми, а не някои основни неща, които ми липсват .
Както и да е, разбирам, че мога да продължа и да настроя hunchentoot в среда, по-подобна на производствена, и видях някои публикации с подробности за това и достъп до REPL от разстояние, но се надявах, че ще има нещо по-просто, за да се забърквам с това, което аз просто пропуснах.