Articles of clojure

Routes Compojure avec différents middleware

J’écris actuellement une API dans Clojure en utilisant Compojure (et Ring et le middleware associé). J’essaie d’appliquer un code d’authentification différent selon l’itinéraire. Considérez le code suivant: (defroutes public-routes (GET “/public-endpoint” [] (“PUBLIC ENDPOINT”))) (defroutes user-routes (GET “/user-endpoint1” [] (“USER ENDPOINT 1”)) (GET “/user-endpoint2” [] (“USER ENDPOINT 1”))) (defroutes admin-routes (GET “/admin-endpoint” [] (“ADMIN ENDPOINT”))) […]

Homoiconicity, comment ça marche?

Quelqu’un peut-il proposer des articles qui expliquent le concept d’homoiconicité, en particulier en utilisant Clojure. Pourquoi est-ce que Clojure est homoiconique mais c’est difficile à faire dans d’autres langages comme Java?

Un moyen simple de remplacer nième élément dans un vecteur en clojure?

Par exemple, j’ai un vecteur [1, 2, 3] et je souhaite mettre à jour le deuxième élément pour que le vecteur devienne [1, 5, 3] . Dans d’autres langues, je ferais simplement quelque chose comme array[1] = 5 , mais je ne suis au courant de rien qui me permettrait de le faire facilement dans […]

Clojure: Comment se reproduire sur exception?

J’essaie d’exécuter un func plusieurs fois avant d’abandonner les exceptions. Mais il n’est pas valable en Clojure de se reproduire à partir d’un bloc de capture. Comment cela peut il etre accompli ? (loop [sortinges 10] (try (might-throw-exception) (catch Exception e (when (pos? sortinges) (recur (dec sortinges)))))) java.lang.UnsupportedOperationException: Cannot recur from catch/finally Le mieux que […]

Conversion de structures de données Clojure en collections Java

Quel est le moyen Clojure-idiomatic de convertir une structure de données en collection Java, en particulier: [] à un java.util.ArrayList {} sur une java.util.HashMap #{} à un java.util.HashSet () à une java.util.LinkedList Y a-t-il une bibliothèque clojure.consortingb pour faire cela? CAS D’UTILISATION : Afin de faciliter l’intégration de Clojure dans mon organisation, j’envisage d’écrire une […]

Conventions, style et utilisation pour les constantes Clojure?

Quelles sont les meilleures pratiques pour définir des constantes dans Clojure en termes de style, de conventions, d’efficacité, etc. Par exemple, est-ce exact? (def *PI* 3.14) Des questions: Les constantes doivent-elles être capitalisées dans Clojure? Stylistiquement, devraient-ils avoir le caractère astérisque (*) sur un ou les deux côtés? Des considérations d’efficacité informatique dont je devrais […]

Comment faisons-nous les plis à gauche et à droite dans Clojure?

Réduire fonctionne bien, mais c’est plutôt comme un pli à gauche. Y a-t-il une autre forme de réduction qui me permette de plier à droite?

Comment fonctionne Clojure ^: const?

J’essaie de comprendre ce que fait ^:const en clair. C’est ce que disent les développeurs. http://dev.clojure.org/display/doc/1.3 (constantes def {: pi 3.14: e 2.71}) (def ^: const pi (: constantes pi)) (def ^: const e (: e constantes)) La surcharge de la recherche: e et: pi dans la carte se produit au moment de la compilation, […]

Les langages de programmation fonctionnels sont-ils adaptés à la programmation graphique?

Très curieux à ce sujet, de ma propre expérience, toute la programmation graphique semble liée à C ou C ++. Comme le Direct10X. Le langage de programmation fonctionnel fournit-il une sorte de bibliothèque graphique pour développer un jeu vidéo?

Learning Clojure – Que dois-je savoir sur Java et plus

J’ai commencé à apprendre le Clojure récemment, mon principal langage de programmation est Ruby et je n’ai aucune expérience Java. Quelles classes Java standard sont indispensables pour travailler avec Clojure? De toute évidence, Clojure ne comprend pas de wrapper pour tout et de nombreuses fonctionnalités sont fournies par les bibliothèques de Java. Il y en […]