Clojure to nowoczesny dialekt Lisp dla wirtualnej maszyny Java (z wersjami dla CLR i JavaScript). Clojure to coś więcej niż tylko implementacja Lispa w Javie. Clojure zapewnia dostęp do klas i ekosystemu Java.
W obecnym stanie to pytanie nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi będą poparte faktami, referencjami lub ekspertyzą, ale to pytanie prawdopodobnie będzie wymagało debaty, argumentów, ankiet lub rozszerzonej dyskusji. Jeśli uważasz, że to pytanie można poprawić i prawdopodobnie ponownie otworzyć, odwiedź centrum pomocy, aby uzyskać …
Zamknięte . To pytanie wymaga szczegółów lub jasności . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Dodaj szczegóły i wyjaśnij problem, edytując ten post . Zamknięte 21 dni temu . Popraw to pytanie Ostatnio widziałem wiele na temat programowania funkcjonalnego, a Clojure wygląda szczególnie interesująco. Chociaż `` rozumiem '' …
Przeprowadzam się do Emacs, aby pracować nad Clojure / Lisp. Jakie są wszystkie informacje potrzebne do skonfigurowania w Emacsie, aby móc wykonać następujące czynności? automatyczne dopasowywanie / generowanie odpowiednich nawiasów zamykających autoindent w stylu Lisp / Clojure, a nie w stylu C ++ / Java Podświetlanie składni Wywołanie REPL Aby …
Szukam algorytmu do generowania permutacji zestawu w taki sposób, żebym mógł zrobić leniwą ich listę w Clojure. tj. chciałbym powtórzyć listę permutacji, w przypadku której każda permutacja nie jest obliczana, dopóki o nią nie poproszę, a wszystkie permutacje nie muszą być przechowywane w pamięci naraz. Alternatywnie szukam algorytmu, w którym …
Jest coś, czego nie rozumiem w przypadku funkcji anonimowych używających krótkiej notacji # (..) Następujące prace: REPL> ((fn [s] s) "Eh") "Eh" Ale to nie jest: REPL> (#(%) "Eh") To działa: REPL> (#(str %) "Eh") "Eh" Nie rozumiem, dlaczego (# (%) "Eh") nie działa i jednocześnie nie muszę używać str …
Clojure ma klasy gen, reify, proxy, a także deftype i defrecord, aby zdefiniować nowe typy danych podobne do klas. Jak na język, który ceni prostotę składni i brzydzi się niepotrzebną złożonością, wydaje się to aberracją. Czy ktoś mógłby wyjaśnić, dlaczego tak jest? Czy defclass w stylu Common Lisp byłby wystarczający?
Jakieś pomysły, co ????powinno być? Czy jest wbudowany? Jaki byłby najlepszy sposób wykonania tego zadania? (def v ["one" "two" "three" "two"]) (defn find-thing [ thing vectr ] (????)) (find-thing "two" v) ; ? maybe 1, maybe '(1,3), actually probably a lazy-seq
Rozumiem słowa kluczowe w Clojure :keyword. Ale do czego ::służy? Dlaczego wygląda na to, że ma wiązanie? user=> :foo :foo user=> ::foo :user/foo
Przeczytałem już różne relacje Clojure vs. Scala i zdaję sobie sprawę, że oba mają swoje miejsce. Jest kilka uwag, których nie uzyskałem pełnego wyjaśnienia, jeśli chodzi o porównanie obu Clojure ze Scalą: 1.) Który z dwóch języków jest generalnie szybszy ? Zdaję sobie sprawę, że będzie się to różnić w …
Uczę się Clojure i próbuję zdefiniować funkcję, która pobiera zmienną liczbę parametrów ( funkcja wariadyczna ) i podsumowuje je (tak, podobnie jak procedura +). Jednak nie wiem, jak zaimplementować taką funkcję Wszystko, co mogę zrobić, to: (defn sum [n1, n2] (+ n1 n2)) Oczywiście ta funkcja przyjmuje tylko dwa parametry …
Na tej stronie mówią, że jest 10 prymitywów LISP-a. Prymitywy są: atom, quote, eq, car, cdr, cons, cond, lambda, label, apply. http://hyperpolyglot.wikidot.com/lisp#ten-primitives Stevey uważa, że jest ich siedem (lub pięć): Jest to część czystości idei LISP-a: potrzebujesz tylko siedmiu (a może pięciu?) Prymitywów do zbudowania pełnej maszyny. http://steve-yegge.blogspot.com/2006/04/lisp-is-not-acceptable-lisp.html Jaka jest …
Właśnie zacząłem w / Clojure (pochodzący z Rubiego) i chciałbym zbudować małą aplikację z interfejsem wiersza poleceń. Jak obsłużyć wejście / wyjście do CL? Zauważyłem, że istnieje clojure.contrib.command-line, ale dokumentacja jest niewielka. http://github.com/richhickey/clojure-contrib/blob/ffa868411cda6c617105b52b4f6f9e0f37ee8c24/src/clojure/contrib/command_line.clj
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.