«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
Python dekoratörleri ve Lisp makroları
Python dekoratörlerine bakarken birisi Lisp makroları (özellikle Clojure) kadar güçlü olduklarını ifade etti. PEP 318'de verilen örneklere baktığımda bana Lisp'teki eski düz üst düzey işlevleri kullanmanın sadece süslü bir yolu gibi bakıyorlar: def attrs(**kwds): def decorate(f): for k in kwds: setattr(f, k, kwds[k]) return f return decorate @attrs(versionadded="2.2", author="Guido van …
18 python  lisp  clojure  macros 

1
Okunabilir Clojure Kodu nasıl yazılır?
Clojure'da yeniyim. Yazdığım kodu anlayabiliyorum ama daha sonra anlamak çok zor oluyor. Parantezleri eşleştirmek zorlaşır. Çeşitli durumlarda adlandırma kuralları ve girinti konusunda izlenecek genel kurallar nelerdir? Örneğin anlamak için örnek bir yapılanma örneği yazdım ama ikinci kez tamamen okunamaz görünüyor. (defn f [{x :x y :y z :z [a b …

3
Clojure Java'dan ne kadar bağımsız?
Clojure dünyasında oldukça yeniyim. Birinin Clojure birlikte çalışma özellikleri aracılığıyla tüm Java kitaplıklarına kolay erişimi olduğu gerçeğini takdir ediyorum, ancak Clojure'un kendi ayakları üzerinde ne kadar durduğunu merak ediyordum. Tabii ki Android gibi, Java ile birlikte çalışabilirliğin her zaman gerekli olacağı bazı platformlar vardır, çünkü çekirdek kütüphaneler Java'da yazılır veya …

1
Clojure vs Scala'da desen eşleştirme
Bu iki dilde kalıp eşleştirme arasındaki temel farklar nelerdir? Sözdiziminden bahsetmiyorum, ancak yetenek, uygulama ayrıntıları, kullanım alanları ve gereklilik. Scala uygulamaları (örneğin, Kaldır ve Oynat), desen eşleştirme becerilerini gururla konuşur. Clojure, bir kütüphane, core.match ve güçlü gibi görünen yıkım inşa etti. * Not: Bu soruyu sormak için ilham almamın nedeni, …

2
İşlevsel bir bilgisayar yapabilir miyiz?
FP'nin yaptığı gibi, sonuçta tüm programlarımız yapılandırılmıştır. Yani, onları ne kadar saf ya da işlevsel yaptığımız önemli değil - her zaman meclise çevrilirler, bu yüzden aslında davlumbazların arkasında yatan şey talimatlar, durumlar ve döngülerdir. FP'yi taklit ediyoruz. Bir donanım noob olarak, sorum şu: neden şeyleri işlevsel bir tarzda hesaplayan bilgisayar …

2
Clojure'daki köşeli parantezler ve kıvırcık parantezler hala S ifadeleri mi?
Lisp'i öğrenmeye çalışıyorum ve orada bulunan tüm Lisps'lere ve farklılıklarına bakıyorum. Şema'nın bazı uygulamalarında, okunabilirlik için yuvarlak köşeli parantezler ile değiştirilebilir şekilde köşeli parantezler kullanabileceğinizi görüyorum, bu yüzden aynı muamele gördükleri için, hala her şey gibi sadece S-ifadeleri olduğunu varsayıyorum. Bununla birlikte, Clojure'da, köşeli parantezlerin ve süslü parantezlerin vektörler ve …
12 lisp  clojure 


2
Şema yerine Clojure'da SICP'ye yaklaşma
Yazılım mühendisliği programında üçüncü sınıf lisans öğrencisiyim ve mühendis olduğumuz tüm bu yazılımların arkasındaki ilkeleri daha derin ve daha temel bir anlayış kazanmak için bir danışmana SICP okuma fikrini gündeme getirdim. Kitabı tamamlamak için Şema öğrenmemeyi önerdi (çünkü Lisp'in modern lehçeleri kadar yaygın değil), bunun yerine Clojure'daki egzersizleri yapmayı önerdi. …
11 clojure  scheme  sicp 

3
Bayt kodu dokuma vs Lisp makroları
Ben insanların intercept fonksiyon çağrıları, günlük kaydı kodu eklemek, vb gibi şeyler yapmak için bayt kodu dokuma kullanan Java ve C # gibi diller için yazmış kütüphaneler hakkında okuyordum Ayrıca bir Lisp / Clojure makroları üzerinde okudum onları nasıl kullanacağını daha iyi anlamaya çalışmak. Makrolar hakkında ne kadar çok okursam, …

2
Java'nın yeni gelişimi Scala ve Clojure gibi dillerle birlikte çalışabilirliğini nasıl etkileyecek?
Anladığım kadarıyla, hem Scala hem de Clojure yeni diller olarak tasarlandı JVM'ye bağlıdır ve Scala ve Clojure kodunda Java sınıflarının kullanılmasına izin vermeleri açısından Java koduyla kolayca entegre edilebilir. Java 8 ile başlayarak (ve belki de Java'nın sonraki sürümlerinde daha da güçlü bir şekilde), Java dilinin anlamında değişiklikler olacaktır. Bu …
11 java  scala  clojure 


3
Scala veya Clojure Fonksiyonel Programlama en iyi uygulamaları
Çok fazla kendi kendine çalışma kodlaması yaptım, Paralel Programlama Modelleri ile ilgili bazı deneyimler edindim: Aktörler, Yazılım İşlemsel Bellek, Veri Akışı. Bu mimarileri gerçek hayata - yüksek yüklü web uygulamasına - uygulamaya çalışırken, herhangi bir model veri için dayanıklılığı ve kalıcılığı desteklemez. Gerçek hayat görevleri sonunda verilerin kaydedilmesini gerektirir. Bu …

1
Yazılım İşlem Belleğinin Birleştirilebilirlik Örneği
Her zaman bahsedilen yazılım işlem belleğinin en büyük avantajlarından biri, birleştirilebilirlik ve modülerliktir. Daha büyük bileşenler üretmek için farklı fragmanlar birleştirilebilir. Kilit tabanlı programlarda, durum genellikle böyle değildir. Bunu gerçek kod ile gösteren basit bir örnek arıyorum. Clojure'da bir örnek tercih ederim, ama Haskell de iyi. Örnek ayrıca kolayca oluşturulamayan …
11 haskell  clojure  stm 

3
Eğer değişkenleri yeniden tanımlamak için def kullanabilirsinizse, bu nasıl değişmez olarak değerlendirilir?
Clojure'u öğrenmeye çalıştığınızda yardım edemezsiniz, ancak Clojure'un tamamen değişmez verilerle nasıl ilgili olduğu sürekli olarak söylenir. Fakat bir değişkeni defdoğru kullanarak yeniden tanımlayabilirsiniz. Clojure geliştiricilerinin bundan kaçındığını anlıyorum, ancak herhangi bir dilde değişkenleri aynı şekilde değiştirmekten kaçınabilirsiniz. Birisi bana bunun nasıl farklı olduğunu açıklayabilir mi, çünkü okuduğum derslerden ve kitaplardan …
10 clojure 

2
Hesaplamayı yan etkilerden ayırdığımızda “dünyayı sorma” kodunu nereye koyacağız?
Göre Komut Sorgu Ayırma ilkesi yanı sıra Veri Düşünce ve Clojure ile DDD biri, hesaplamalar ve kararlarından (dünyanın değiştirme) yan etkileri ayırmak gerekir sunumlar yüzden her iki bölümü anlamak ve test etmek daha kolay olacağını. Bu cevaplanmamış bir soru bırakıyor: "dünyayı sormayı" sınır olarak göreceli olarak nereye koymalıyız? Bir yandan, …

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.