Szukam wersji Scheme lub nawet LISP-a, której mógłbym użyć do odzyskania utraconych umiejętności programistycznych Lisp. Niektóre funkcje internetowe byłyby przydatne, ale nie są niezbędne.
Spojrzałem na schemat Plt i MIT i chociaż oba wyglądają całkiem nieźle, Plt wydaje się być bardziej bogaty w funkcje. Przyjrzałem się również implementacjom Lispa, ale wszystkie wydają się dość drogie.
Preferuję darmowe / niedrogie implementacje, ponieważ jest to naprawdę okazjonalne programowanie hobbystyczne. Jakie masz rekomendacje?
Odpowiedzi:
Poszedłbym z Racketem. Może nie jest tak szybki jak SBCL, ale ma doskonałe biblioteki i dokumentację, a także zintegrowane środowisko zaprojektowane tak, aby umożliwić Ci tworzenie i uruchamianie programów Scheme bezpośrednio z bramy. To, co naprawdę podoba mi się w IDE Racketa, DrRacket, to to, czego nie musisz robić - nie musisz uczyć się Emacsa, nie musisz uczyć się SLIME, nie musisz się martwić o polowanie na trzecie- biblioteki party, tak jak praktycznie wszystkie biblioteki przeznaczone dla Racketa można znaleźć w pakietach . Podsumowując, naprawdę skraca to krzywą uczenia się i pozwala skupić się na aktualnym zadaniu: pisaniu świetnego kodu.
Jest również wyposażony w serwer sieciowy, jeśli chcesz tworzyć strony internetowe oparte na Racket (które obecnie sprawdzam).
źródło
Sporo z tym eksperymentowałem.
Clozure Common Lisp (z domu Open MCL) jest zdecydowanie najszybszy; 25-30 procent szybciej niż następny konkurent na moim Intel Mac Mini.
Schemat MIT działa całkiem dobrze na Macu. Wydaje mi się, że ostatecznie skompilowałem to samodzielnie, ale w tej witrynie są pliki binarne. Schemat PLT jest również fajny i prawdopodobnie trochę lepiej zintegrowany ze światem komputerów Mac. (Schemat PLT jest teraz znany jako Rakieta , ale po zmianie nie eksperymentowałem z nim).
źródło
loop
makra.Jestem wielkim fanem Clojure, SBCL i Clozure CL. Wszystkie są fantastyczne, ale są też przesadą, jeśli chcesz tylko odświeżyć kotlety Lisping. Wszystkie wymagają absurdalnej ilości poszukiwań informacji, przeszukiwania list mailingowych, instalowania pakietów, czyhania IRC itp.
Dr Scheme po prostu instaluje się i uruchamia. Skończyłem pierwsze 3 rozdziały SICP cztery i pół roku temu, używając Dr Scheme. Nie ma nic głębszego niż samo zdefiniowanie ewaluatora schematu. Kiedy już się rozejrzysz, będziesz miał dużo więcej cierpliwości dla braci przemysłowych.
źródło
W przypadku Scheme DrRacket jest niesamowity (zawarty w Racket ).
Dla Common Lisp, Ready Lisp jest świetny. Pojedynczy dmg z SBCL, Aquamacs i Slime działający po wyjęciu z pudełka.
Z witryny internetowej:
źródło
Właśnie zacząłem bawić się Clojure . Najwyraźniej ma fajny framework sieciowy i kompiluje się do kodu bajtowego JVM.
Często też używam DrScheme . To proste, ale użyteczne IDE.
źródło
W zależności od tego, jak zdefiniujesz „Lisp”, Clojure może pasować do rachunku. Działa dobrze na OS X (działa wszędzie tam, gdzie działa JVM). Ma funkcje internetowe i jest bezpłatny.
Ma również tę zaletę, że jest nowy, świeży i przyjemny w użyciu. Może być idealny do programowania hobbystycznego. Łatwo jest pisać aplikacje internetowe lub aplikacje GUI (używając Java's Swing lub nawet Qt).
źródło
Sam go nie używałem, ale Steel Bank Common Lisp otrzymał pozytywną opinię na reddicie. Jest open source i darmowy, więc cena jest odpowiednia dla niektórych programów hobbystycznych.
W przeszłości miałem uruchomionego GNU Common Lisp na moim macbooku pro.
źródło
Jeśli szukasz Scheme, możesz rzucić okiem na właśnie wydany JazzScheme .
źródło
Polecam Racketa nowicjuszom, ponieważ zapewnia jedno z najładniejszych IDE dla początkujących użytkowników Scheme (a raczej początkujących programistów, którzy używają Scheme, lub jeszcze lepiej, przechodzą przez HtDP).
http://racket-lang.org/
Inną opcją dla osób, które są bardziej zainteresowane małym systemem Scheme, aby samodzielnie go zmodyfikować lub odczytać jego kod źródłowy, jest Larceny Scheme, który jest interesujący głównie ze względu na jego kompilator JIT, Twobit, sam jest zaimplementowany w całości w Scheme.
http://www.larcenists.org/
Aktualizacja: Ponadto Chez Scheme został niedawno udostępniony jako open source:
https://github.com/cisco/ChezScheme
(Może nie jest tak „mały” jak Larceny, ale ma bardzo agresywny kompilator optymalizujący).
źródło
Możesz rzucić okiem na to, co jest w Association of Lisp Users lub Common Lisp Wiki, aby zobaczyć, co tam jest. Ustawiłem się z Steel Bank Common Lisp i Emacs, ale jak dotąd niewiele z tym zrobiłem.
źródło
Jeśli jesteś tylko programistą hobbystycznym, LispWorks ma darmową, osobistą wersję, która jest dość potężna i wyrafinowana. Największym problemem jest limit czasu działania wynoszący kilka godzin. Więc nie będziesz w nim pisać żadnych długo działających serwerów, ale to nie znaczy, że nie jest to przydatne narzędzie.
CLISP działa na prawie wszystkim i jest całkiem niezły, po prostu nie obsługuje wątków. (Ważne, jeśli chcesz napisać prawdziwy serwer, ale jak pokazały nam PHP i Perl, Apache + [język wstawiania] jest bardzo opłacalną platformą).
źródło
Clozure CL jest dostępny za darmo w sklepie Mac!
http://itunes.apple.com/us/app/clozure-cl/id489900618
źródło
Ostatnio zadaję sobie to samo pytanie. Używając DrScheme na OS X, byłby to mój pierwszy wybór dystrybucji Scheme dla dowolnej platformy. Bardzo ładne IDE, funkcje debugowania i dobry zestaw bibliotek / frameworków (w tym bardzo fajny zestaw narzędzi GUI, który `` po prostu działa ... nawet na Macu '' ;-))
Jednak teraz szukam podobnie wygodnego środowiska dla Common Lisp. Sprowadziło się do CCL (OpenMCL) kontra SBCL. Wydaje się, że SBCL jest popularnym wyborem, ale czytałem, że na OS X nie obsługuje wątków. (Czy to naprawdę problem?). Z drugiej strony Clozure CL oferuje dobre wsparcie dla natywnych wątków, mostu obcj itp.
Wydaje mi się, że CCL jest trochę dziwne, ale zamierzam się tego trzymać przez chwilę - nadal wygląda na logiczny wybór do integracji.
Używam Emacsa 23 (zbudowanego ze źródeł przy użyciu --with-ns) i Slime'a jako środowiska i to działa dobrze dla mnie. :-)
źródło
Zauważyłem, że Chicken działa dobrze w programie Scheme i jest dostępny za pośrednictwem homebrew.
Większość kodu z SICP działa z niewielkimi modyfikacjami.
źródło
Idź z Racketem . Jestem z tego bardzo zadowolony!
źródło