Lispanie przez szybkę

Posted on Mon 10 July 2006 in Pamietniczek • 2 min read

Porzuciłem Lisp in a box bo nie daje się bezproblemowo zainstalować na Slacku, a co dopiero na Irixie. Skompilowałem CLISP jednak ewidetnie bez modułu rawsocket, zatem nie mogę go użyć w Emacsowym Slime. A bardzo chciałbym, bo przy nauce wyświetlanie składni, to rzecz przyjemna i przyśpieszająca wkuwanie. Poza tym chcę to mieć! Slime uruchamia się bez problemowo, Emacs 21.3.1 z paczki freeware, ale nie gada z kompilatorem Lispa. W tak zwanym międzyczasie próbowałem jeszcze CMUCL ale miałem coredumpy, a firma Fritz nie udostępnia już starych wersji Allegro pod Irixa.
Pozostaje więc walka o obsługę socketów w CLISP-ie, czyli ręczna dłubanina przy kompilacji bo autoconf, niestety, jest drogą przez mękę na tutejszej platformie. Nie włącza prawidłowo plików nagłówkowych i czasem muszę robić jakieś okropności od ktorych cierpnie mi skóra pod paznokciami, jak np. ręczne wklejanie definicji zmiennych z sys/file.h do źródeł. Ohyda ale cóż zrobić skoro autoconfa nie znam.
Przy okazji esploracji internetowych zasobów Lispa znalazłem piękną historię o AARON-ie, programie-artyście, który maluje czyli Tworzy czyli robi coś zarezerwowanego dla istot udzkich.
Zacząłem też czytać o debugowaniu kodu w LISP-ie na odległość... bagatela... 100 milionów kilometrów, w dodatku na sprzęcie wartym miliardy dolarów. Chodzi historię błędu oprogramowania w jednym z próbników marsjańskich.
Udało mi się w końcu postawić SLIME na FreeBSD w domowym laptopie, sercem inerpretera został jednak CMUCL zamiast CLISP-a. Ten ostatni ma takie same problemy z socketami jak w IRIX-ie, a już się bałem, że moje "kreatywne" hackowanie rozwaliło kod. Wynalazłem też, że przyczyną błędów może być moduł regexp w CLISP-ie, jest na to nawet jakiś patch. To na jutro.
Przed chwilą zmaściłem pierwszy przykład kodu z książki "Practical Common Lisp" - baza cedeków, kto chciałby coś takiego napisać np. w PHP w tak niewielu linijkach jak w Lispie, to życzę powodzenia!
A teraz idę spać.

Pijani Polacy, k i j m.