«clojure» 태그된 질문

Clojure는 대화 형 개발을 지원하는 범용 언어로 기능적인 프로그래밍 스타일을 장려하고 멀티 스레드 프로그래밍을 단순화합니다.

4
파이썬 데코레이터와 Lisp 매크로
파이썬 데코레이터를 볼 때 누군가가 Lisp 매크로 (특히 Clojure)만큼 강력하다고 진술했습니다. PEP 318에 주어진 예제를 보면 Lisp에서 오래된 오래된 고차 함수를 사용하는 멋진 방법 인 것처럼 보입니다. 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 Rossum") def mymethod(f): ... Clojure …
18 python  lisp  clojure  macros 

1
읽을 수있는 Clojure 코드를 작성하는 방법?
Clojure를 처음 사용합니다. 작성한 코드를 이해할 수 있지만 나중에 이해하기가 너무 어려워집니다. 괄호를 일치시키기가 어렵습니다. 다양한 상황에서 명명 규칙 및 들여 쓰기와 관련하여 따라야 할 일반적인 규칙은 무엇입니까? 예를 들어 이해하기 위해 샘플 구조 해제 예제를 작성했지만 두 번째로 완전히 읽을 수없는 것처럼 보입니다. (defn f [{x :x y :y …

3
Clojure는 Java와 얼마나 독립적입니까?
나는 Clojure 세계에 새로운 사람입니다. Clojure interop 기능을 통해 모든 Java 라이브러리에 쉽게 액세스 할 수 있다는 사실에 감사하지만 Clojure가 자신의 다리에 얼마나 많은지 궁금합니다. 물론 핵심 라이브러리는 Java로 작성되거나 공개되기 때문에 Java와의 상호 운용성이 항상 필요한 Android와 같은 일부 플랫폼이 있습니다. 또한 Clojure 문자열은 Java 문자열이므로 문자열 조작 라이브러리가 …

1
Clojure와 Scala의 패턴 일치
이 두 언어에서 패턴 일치의 주요 차이점은 무엇입니까? 구문이 아니라 기능, 구현 세부 정보, 사용 사례 범위 및 필요성을 언급하고 있습니다. 스칼라 응용 프로그램 (예 : Lift and Play)은 언어 패턴 일치 능력에 대해 자랑스럽게 말합니다. 반면 Clojure는 core.match라는 라이브러리를 가지고 있으며 구조화에 내장되어 있으며 강력한 것으로 보입니다. * 참고 …

2
실용적인 컴퓨터를 만들 수 있을까요?
FP가했던 것처럼, 결국 우리의 모든 프로그램은 구조화되어 있습니다. 즉, 우리가 그것들을 얼마나 순수하거나 기능적으로 만드는지는 중요하지 않습니다. 그것들은 항상 어셈블리로 변환되므로 실제로 후드 뒤에서 실행되는 것은 명령, 상태 및 루프입니다. 우리는 FP를 모방하고 있습니다. 하드웨어 멍청한 놈으로서, 제 질문은 : 실제로 기능적인 스타일로 물건을 계산하는 컴퓨터 아키텍처를 사용하지 않는 이유는 …

2
Clojure의 대괄호와 중괄호는 여전히 S- 표현입니까?
나는 Lisp를 배우려고 노력하고 있으며 거기의 모든 Lisp와 그 차이점을보고 있습니다. Scheme의 일부 구현에서 가독성을 위해 대괄호와 대괄호를 상호 교환하여 사용할 수 있다는 것을 알았습니다. 따라서 동일하게 취급되기 때문에 여전히 다른 모든 것과 마찬가지로 S- 표현이라고 가정합니다. 그러나 Clojure에서 대괄호와 중괄호는 벡터 등과 같은 다른 데이터 유형을 나타내는 데 사용됩니다. …
12 lisp  clojure 


2
Scheme 대신 Clojure에서 SICP에 접근
저는 소프트웨어 엔지니어링 프로그램의 3 학년 학사이며 SICP를 고문에게 읽어서 우리가 엔지니어링하는 모든 소프트웨어의 기본 원리에 대해 더 깊이 있고 근본적으로 이해하는 아이디어를 얻었습니다. 그는 책을 완성하기 위해 계획을 배우지 말라고 제안했습니다 (Lisp의 현대 방언만큼 일반적이지 않기 때문에) 대신 Clojure에서 연습을 수행하십시오. 좀 더 현대적인 Clojure에서 책의 연습을 시도하면 이미 …
11 clojure  scheme  sicp 

3
바이트 코드 위빙 vs Lisp 매크로
나는 사람들이 자바 및 C #과 같은 언어로 작성된 라이브러리에 대해 읽었으며 바이트 코드 직조를 사용하여 함수 호출 차단, 로깅 코드 삽입 등을 수행했습니다. 또한 Lisp / Clojure 매크로를 읽었습니다. 활용 방법을 더 잘 이해하려고 노력하십시오. 매크로에 대해 읽을수록 바이트 코드 직조 라이브러리와 동일한 종류의 기능을 제공하는 것처럼 보입니다. 기능상 …

2
Java의 새로운 개발은 Scala 및 Clojure와 같은 언어와의 상호 운용성에 어떤 영향을 미칩니 까?
내가 이해하는 한, Scala와 Clojure는 모두 새로운 언어로 설계되었습니다. JVM에 의존하고 Scala 및 Clojure 코드 내에서 Java 클래스를 사용할 수 있다는 점에서 Java 코드와 쉽게 통합됩니다. Java 8부터 (그리고 이후 버전의 Java에서는 더 강력하게) Java 언어의 의미에 변화가있을 것입니다. 이러한 변경 사항이 Java와 Scala / Clojure 간의 상호 운용성에 어떤 …
11 java  scala  clojure 

3
Clojure에서 중첩 속기 함수를 작성할 수없는 이유는 무엇입니까?
오늘 중첩 된 속기 함수를 사용하여 Clojure 표현식을 평가하려고했지만 그렇게 할 수 없었습니다. 표현은 다음과 같습니다. (#(+ % (#(+ % (* % %)) %)) 5) ; sorry for the eye bleed 결과는 다음과 같습니다. IllegalStateException Nested #()s are not allowed clojure.lang.LispReader$FnReader.invoke (LispReader.java:630) ...and a bunch of other garbage

3
스칼라 또는 클로저 기능 프로그래밍 모범 사례
나는 많은 자기 연구 코딩을했고, 병렬 프로그래밍 모델에 대한 경험을 얻었습니다 : 액터, 소프트웨어 트랜잭션 메모리, 데이터 흐름. 이러한 아키텍처를 실제 (고부하 웹 애플리케이션)에 적용하려고 할 때 모든 모델은 데이터의 내구성과 지속성을 지원하지 않습니다. 실제 작업은 데이터를 마지막에 저장해야합니다. 이것은 여전히 ​​DB와 트래핑 DB 동기화, 가능한 확장 성 병목 등을 …

1
소프트웨어 트랜잭션 메모리의 구성 예
항상 언급되는 소프트웨어 트랜잭션 메모리의 주요 장점 중 하나는 구성 성 및 모듈성입니다. 더 큰 부품을 생산하기 위해 다른 조각을 결합 할 수 있습니다. 잠금 기반 프로그램에서는 종종 그렇지 않습니다. 실제 코드로 이것을 보여주는 간단한 예제를 찾고 있습니다. Clojure의 예제를 선호하지만 Haskell도 좋습니다. 예제에 쉽게 구성 할 수없는 일부 잠금 …
11 haskell  clojure  stm 

3
def를 사용하여 변수를 재정의 할 수 있다면 어떻게 불변으로 간주됩니까?
Clojure를 배우려고 노력하면 Clojure가 불변 데이터에 관한 모든 방법을 지속적으로 알 수는 없습니다. 그러나 def오른쪽 을 사용하여 변수를 쉽게 재정의 할 수 있습니까? Clojure 개발자가 이것을 피할 수는 있지만 모든 언어의 변수를 동일하게 변경하는 것을 피할 수 있습니다. 누군가가 이것이 어떻게 다른지 설명해 줄 수 있습니다. 왜냐하면 내가 읽고있는 튜토리얼과 …
10 clojure 

2
계산과 부작용을 분리 할 때 "세계에 묻기"코드를 어디에 두어야합니까?
에 따르면 명령 쿼리 분리 원칙 뿐만 아니라, 데이터의 생각 과 의 Clojure와 DDD 하나, 계산과 결정에서 (세계 수정) 부작용을 분리해야 프리젠 테이션 그래서 두 부분을 이해하고 테스트하기 쉬울 것이다. 이 질문에 대한 답을 얻지 못합니다 : 우리는 상대적으로 경계를 어디에서 "세계에 묻기"해야합니까? 한편으로, 데이터베이스, 익스텐트 서비스 API 등의 외부 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.