«functional-programming» 태그된 질문

함수형 프로그래밍은 출력이 프로그램 상태가 아닌 입력에 의해 결정되는 함수의 체인 평가로 계산 문제를 해결하려는 패러다임입니다. 이 스타일의 프로그래밍에서 부작용 및 변경 가능한 데이터는 더 이상 사용되지 않으며 일반적으로 엄격하게 격리됩니다.

3
F #과 Scala의 가장 큰 차이점은 무엇입니까?
F #과 Scala는 개발자가 불변 데이터 유형 만 사용하도록 강요하지 않는 기능 프로그래밍 언어입니다. 둘 다 객체를 지원하고 다른 언어로 작성된 라이브러리를 사용하며 가상 머신에서 실행할 수 있습니다. 두 언어 모두 ML을 기반으로하는 것 같습니다. F #이 .NET 용으로 설계되었고 Java 플랫폼 용 Scala로 설계 되었음에도 불구하고 F #과 Scala의 …

10
프로그램이 클로저를 사용하는 이유는 무엇입니까?
클로저를 설명하는 많은 게시물을 읽은 후에도 여전히 핵심 개념이 누락되었습니다. 왜 클로저를 작성합니까? 클로저가 가장 잘 수행 할 수있는 프로그래머가 수행해야 할 특정 작업은 무엇입니까? Swift에서 폐쇄의 예는 NSUrl에 액세스하고 리버스 지오 코더를 사용하는 것입니다. 다음은 그러한 예입니다. 불행히도, 이러한 과정은 막을 내립니다. 코드 솔루션이 클로저로 작성된 이유를 설명하지 않습니다. …

3
람다는 무엇이며 왜 유용합니까? [닫은]
지금까지 나는 들었습니다. 람다 미적분학 람다 프로그래밍 람다 식 람다 함수 기능 프로그래밍과 관련된 것 같습니다 ... 분명히 C ++ 1x에 통합 될 것이므로 지금 이해하는 것이 좋습니다. http://en.wikipedia.org/wiki/C%2B%2B0x#Lambda_functions_and_expressions 누군가 람다 일을 간단히 정의하고 유용 할 수있는 곳을 줄 수 있습니까?

6
함수와 람다의 차이점은 무엇입니까?
나는 '기능'과 '람다'에 대해 약간 혼란스러워합니다. scheme 키워드 lambda가 JavaScript 키워드와 매우 유사하게 작동 한다는 것을 보여주는 몇 가지 예를 보았지만 function실제로 어떻게 관련되는지 모르겠습니다. .net의 객체에 대해 말할 때 'function'과 'method'를 서로 바꿔 사용할 수 있다고 들었습니다. '람다'와 '기능'이 같은 의미인지 궁금합니다. 'lambda'에 난해한 의미가 있는지 궁금합니다. 그리스 문자 …

12
어떤 프로그래밍 언어가 찾기 어려운 버그를 가장 적게 생성합니까? [닫은]
일반 프로그래머가 찾기 어려운 버그를 최소화하여 기능을 출력 할 수있는 언어는 무엇입니까? 이것은 물론 매우 광범위한 질문이며, 매우 광범위하고 일반적인 답변과 지혜에 관심이 있습니다. 개인적으로 Java 및 C # 프로그램에서 이상한 버그를 찾는 데 거의 시간이 걸리지 않는 반면 C ++ 코드에는 고유 한 반복 버그 세트가 있으며 Python / …

1
Haskell 또는 다른 기능적 프로그래밍 언어로 프로그램을 어떻게 설계합니까?
c # 또는 ruby와 같은 객체 지향 프로그래밍 언어에 대한 경험이 있습니다. 객체 지향 스타일로 프로그램을 디자인하는 방법, 클래스 및 객체를 만드는 방법 및 그들 사이의 관계를 정의하는 방법을 알고 있습니다. 또한 일부 디자인 패턴을 알고 있습니다. 사람들은 어떻게 기능성 프로그램을 작성합니까? 그들은 어떻게 시작합니까? 기능적 언어에 대한 디자인 패턴이 …


14
함수형 프로그래밍에 대한 현재의 열정이 필요한 이유 [닫은]
최근 스칼라, 클로저 및 F #과 관련하여 함수형 프로그래밍 언어에 대한 많은 열의가 있습니다. 저는 최근 FP 패러다임을 배우기 위해 Haskell을 공부하기 시작했습니다. 나는 그것을 좋아하고, 정말 재미 있고, 수학 배경에 적합합니다. 하지만 정말 중요한가요? 분명히 새로운 아이디어는 아닙니다. 내 질문은 다음과 같습니다. 최근의 FP 열정에 무엇이 기여 했습니까? OO를 …

11
"추론하기 쉬운"-그게 무슨 뜻입니까? [닫은]
다른 개발자가이 문구를 사용하여 일부 패턴을 "광고"하거나 모범 사례를 개발하는 경우가 많이 들었습니다. 이 문구는 대부분 함수형 프로그래밍의 이점에 대해 이야기 할 때 사용됩니다. "추론하기 쉬운"이라는 문구는 설명이나 코드 샘플없이 그대로 사용되었습니다. 그래서 그것은 다음 "버즈 (buzz)"단어와 같이되고, 더 "경험있는"개발자들이 대화에 사용합니다. 질문 : "추론하기 쉽지 않음"의 몇 가지 예를 …

6
Java 점검 예외에 대한 임시 해결책
람다 및 기본 메소드 인터페이스에 대한 새로운 Java 8 기능이 많이 있습니다. 그러나 여전히 확인 된 예외로 지루합니다. 예를 들어 객체의 보이는 필드를 모두 나열하려면 간단히 다음과 같이 작성하고 싶습니다. Arrays.asList(p.getClass().getFields()).forEach( f -> System.out.println(f.get(p)) ); 그러나 get메소드가 Consumer인터페이스 계약에 동의하지 않는 확인 된 예외를 throw 할 수 있으므로 해당 예외를 …

6
함수형 프로그래밍 언어 선택하기
최근에 함수형 프로그래밍 언어에 대한 많은 스레드를 읽었습니다 (실제로 지난 1 년 동안). 나는 하나를 골라서 철저히 배우고 싶습니다. 마지막 [코스] 학기, 나는 Scheme에 소개되었습니다. 나는 그것을 좋아했다. 구문의 극단적 단순성, 호모 닉 원리, 매크로 ( 위생적 및 비위생적), 절차의 n-arity 등을 좋아했습니다 . Scheme의 문제는 그것이 학문적 언어라는 것입니다. …

2
앨런 케이는 스몰 토크 초기 역사에서“할당”이란 무엇을 의미 했는가?
나는 스몰 토크의 초기 역사를 읽었 으며 그 의미에 대한 나의 이해에 의문을 갖게하는 "할당"에 대한 몇 가지 언급이있다. OOP는 많은 동기에서 비롯되었지만 두 가지가 중심이었습니다. 대규모는 세부 사항 숨기기와 관련된 복잡한 시스템을위한 더 나은 모듈 체계를 찾고 소규모는보다 유연한 할당 버전을 찾은 다음이를 완전히 제거하려고했습니다. ( 1960-66 년 ~ …

3
빈혈 도메인 모델이 C # / OOP에서는 좋지 않은 것으로 간주되지만 F # / FP에서는 매우 중요한 이유는 무엇입니까?
재미와 이익을위한 F # 의 블로그 게시물 에서 다음과 같이 말합니다. 기능적 디자인에서는 데이터와 동작을 분리하는 것이 매우 중요합니다. 데이터 유형은 단순하고 "멍청하다". 그리고 따로 따로, 이러한 데이터 유형에 작용하는 많은 기능이 있습니다. 이것은 동작과 데이터가 결합되는 객체 지향 디자인과 정반대입니다. 결국, 그것이 바로 클래스입니다. 실제로 객체 지향 디자인에서는 동작 …

5
IO 모나드에 대한 비판은 세계에서 운영되는 상태 모나드로 간주됩니다
IOHaskell 의 모나드는 종종 국가가 세계인 주 모나드로 설명됩니다. 따라서 IO amonad 유형의 값은 다음과 같이 보입니다 worldState -> (a, worldState). 얼마 전에 나는이 견해를 비판 한 기사 (또는 블로그 / 메일 링리스트 게시물)를 읽었으며 이것이 틀린 이유를 몇 가지 제시했습니다. 그러나 나는 기사 나 이유를 기억할 수 없다. 아는 …


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