«clojure» etiketlenmiş sorular

Clojure, işlevsel bir programlama stilini teşvik eden ve çok iş parçacıklı programlamayı basitleştiren etkileşimli gelişimi destekleyen genel amaçlı bir dildir.

4
Rich Hickey, “Arayüzlerin / sınıfların / türlerin bütün bu özelliği, yeniden kullanımınızı öldürür!” Derken ne demek istedi?
Rich Hickey’in 29. dakikada “ Değerlerin Değeri ” konulu açılış konuşmasında , Java gibi bir dilin tepesinden bahsediyor ve “Tüm bu arayüzler yeniden kullanımınızı öldürüyor” gibi bir ifade veriyor. Ne demek istiyor? Bu doğru mu? Cevapları araştırmamda, aşağıdakileri geçtim: En Az Bilgi Prensibi AKA Hava geçirmez API arayüzlerini teşvik eden …

3
Clojure'nin nesi harika? [kapalı]
Son zamanlarda Clojure'a bakıyorum ve en iyi uygulamaları izleyen bazı projeleri ve genel olarak iyi Clojure kodunu gösteren Stackoverflow'ta bu yazıya rastladım . Bazı temel dersleri okuduktan sonra başımın çevresini dolaşmak istedim, bu yüzden bazı "gerçek dünya" projelerine baktım. ClojureScript ve Compojure'a (yukarıda bahsedilen "iyi" projelerden ikisi) baktıktan sonra, sadece …
40 clojure 

6
“Fonksiyonlar ve veriler arasında sıkı bağlantı” neden kötü?
Bu alıntıyı " Clojure'nin Sevinci" sinde p. 32, ancak birileri geçen hafta akşam yemeğinde bana aynı şeyi söyledi ve ben de başka yerlerde duydum: Nesne yönelimli programlamanın dezavantajı [A], fonksiyon ve veri arasındaki sıkı bağlantıdır. Bir uygulamada gereksiz eşlemenin neden kötü olduğunu anlıyorum. Ayrıca değişken durum ve kalıtımın, Nesneye Yönelik …

7
C # Dev - Lisps'i denedim, fakat alamadım [kapalı]
Hem CL hem de biraz Clojure ile birkaç ay boyunca Lisp hakkında bir şeyler öğrendikten ve oynadıktan sonra, hala C # yerine bir şey yazmak için zorlayıcı bir neden göremiyorum. Gerçekten zorlayıcı nedenlerden birini veya birisinin gerçekten büyük bir şeyi kaçırdığımı belirtmesini isterim . Lisp'in güçlü yönleri (araştırmam başına göre): …
37 clojure  lisp 


4
JVM, kuyruk çağrısı optimizasyonuna hangi kısıtlamaları uygular?
Clojure, kuyruk çağrısı optimizasyonunu kendi başına yapmaz: kuyruk özyinelemeli bir işleve sahip olduğunuzda ve optimize edilmesini istediğinizde, özel formu kullanmanız gerekir recur. Benzer şekilde, karşılıklı olarak iki özyinelemeli işleviniz varsa, bunları yalnızca kullanarak optimize edebilirsiniz trampoline. Scala derleyicisi özyinelemeli bir işlev için TCO'yu gerçekleştirebilir, ancak iki özyinelemeli işlev için yapamaz. …
36 scala  clojure  jvm  tail-call 

13
Popüler olmayan dillerle gelişimdeki sorunlar (bakım gibi)
Ekibimde sadece clojure (lisp) ile bir uygulama geliştiriyorum. Küçük uygulama olarak başlar. Sorun değil. Ancak özelliklere sahip olması ve alanı genişletmesi nedeniyle önemli bir program haline geliyor. Bakım ya da bir şey hakkında endişelendim. Takımımdaki hiç kimse clojure veya lisp'i bilmiyor, onlar gibi dillerle de ilgilenmiyor. Yani popüler olmayan dillerde …


5
Lisp topluluğu neden fonksiyonun sonunda tüm parantezleri toplamayı tercih ediyor?
Lisp topluluğu neden fonksiyonun sonunda tüm parantezleri toplamayı tercih ediyor: (defn defer-expensive [cheap expensive] (if-let [good-enough (force cheap)] good-enough (force expensive))) Neden C veya Java gibi bir sözleşme kullanmıyorsunuz? Pekala, Lisp bu dillerden çok daha eski, ama ben çağdaş Lispers'tan bahsediyorum. (defn defer-expensive [cheap expensive] (if-let [good-enough (force cheap)] good-enough …

1
Bir Clojure masaüstü uygulaması nakliye gerçekçi midir?
Şu anda bir masaüstü Java uygulaması gönderiyorum. Düz eski bir Java 5 Java / Swing uygulaması ve şimdiye kadar her şey güzel çalıştı. Bazı kullanıcılar hiçbir zaman Java 6'ya sahip olmayacak OS X sürümünde / bilgisayarlarında olduğu için Java 5 hedeflendi (bu sınırlamayı yakında kaldırabilir ve daha yeni bir Java'ya …



3
Clojure'da süreklilikler / couteinler / vb. Var mı?
Python ile programlamaya başladım ve coroutines ve kapanışlar gibi kavramlarla gerçekten şaşırdım. Şimdi onları yüzeysel düzeyde tanıdığımı düşünüyorum, ama bu "aydınlanma" anını hiç hissetmedim, bu yüzden Clojure öğrenmeyi tercih ediyorum. Kitabı Stuart Halloway'dan satın aldım ve iyi, ama dizine baktığımda coroutine veya devam gibi kelimeler yoktu. Onları aradım, ama orada …

6
Yorum yazma ve dokümantasyondaki en iyi uygulamalar
Bugünlerde yorum yapmak her zamankinden daha kolay. Java'da, yorumları sınıflara bağlamak için bazı güzel teknikler vardır ve Java IDE'leri sizin için yorum kabukları yapmakta iyidir. Clojure gibi diller, işlev kodunun kendisinde bir işlevin açıklamasını bağımsız değişken olarak eklemenize izin verir. Bununla birlikte, hala iyi geliştiriciler tarafından yazılan eski veya zayıf …

4
“Verileri temsil etmek için sınıf yerine haritayı kullan” -Rich Hickey
In Zengin Hickey tarafından bu videoda , Clojure yaratıcısı, o Java tamamlandı olarak yerine onu temsil edecek bir sınıf kullanmanın verileri temsil etmek haritayı kullanmak için önerir. Nasıl daha iyi olabileceğini anlamıyorum, çünkü API kullanıcısı sadece harita olarak gösteriliyorsa giriş anahtarlarının ne olduğunu nasıl bilebilir. Örnek : PersonAPI { Person …
19 java  design  class  clojure  map 

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.