상용 소프트웨어의 기능 프로그래밍


12

최근 동료와 기능 프로그래밍에 대해 논의하고있었습니다. 우리 둘 다 FP가 몇 가지 명백한 이점 (간단한 코드, 수학적으로 추론하기 쉬운 등)이 있다는 데 동의했지만, 우리는 그것이 상업용 소프트웨어에서 사용되는지 또는 사용되지 않을지 궁금했습니다.

나는 기능적으로 작성된 많은 오픈 소스 및 학술 프로젝트가 있다는 것을 알고 있습니다 (예 : Stack Overflow 에서이 질문 을 보았습니다 ). 누군가 적어도 부분적으로 작성된 다른 상용 소프트웨어를 나열 할 수 있는지 궁금합니다. 기능적 언어로 (그리고 어떤 언어로).


3
먼저 구글에 명중 : haskell.org/haskellwiki/Haskell_in_industry를 . 이 페이지에 어떤 문제가 있습니까? 충분히 자세하지 않습니까? 충분히 명확하지 않습니까? 최근에 충분하지 않습니까?
S.Lott

@ S.Lott-스택 교환 사이트에 없습니까? -스택 교환 사이트에 대한 많은 질문이 다른 곳에서 요청되었지만 여기에서도 질문하는 것이 명백한 정책이 있습니다. 내일은 haskell.org가 사라질 것 같지는 않지만 웹 사이트는왔다 갔다합니다. 어쨌든 기능 프로그래밍이 항상 Haskell을 의미하는 것은 아닙니다.
Steve314

@ Steve314 : 약간의 연구가 훨씬 더 나은 질문을 만들었을 것입니다.
S.Lott

@ S.Lott-아마도-이 글 머리 기호 목록이 모두 유용한 지 확실하지는 않습니다. 실체는 많지 않습니다. "모든 프로젝트가 틀릴 수는 없습니다." 그러나 그것이 질문이 요구하는 것입니다.
Steve314

이 프레젠테이션은 또한 약간의 빛을 비출 수도 있습니다 : scribd.com/doc/45049621/…
9000

답변:


8

휴대 전화를 사용해 본 적이 있습니까? Erlang은 통신 분야에 틈새 시장이 있지만 Facebook에서도 채팅 기능을 구현하는 데 사용됩니다. 프로덕션에서 Erlang을 사용하는 다음 회사에 대해서는이 FAQ 를 참조하십시오 .

  • 앱 텔라 (VoIP 서비스 제공 업체)
  • Bluetail / Alteon / Nortel (분산, 내결함성 이메일 시스템, SSL 가속기)
  • 코렐 라 투스 (SS7 모니터링).
  • CouchDB (MapReduce를 사용한 문서 지향 데이터베이스)
  • dqdp.net (라트비아어) (웹 서비스).
  • 에릭슨 (AXD301 ATM 스위치)
  • Facebook (페이스 북 채팅 백엔드)
  • 핀란드 기상 연구소 (데이터 수집 및 실시간 모니터링)
  • 골드만 삭스 (고주파 거래 프로그램)
  • IDT 공사 (실시간 최소 비용 라우팅 전문가 시스템)
  • IEISS. (전자 금융 상품 교환 소프트웨어)
  • 클라 나 (전자 결제 시스템)
  • Lindenbaum (대규모 음성 회의)
  • 모바일 아트 (GSM 및 UMTS 서비스)
  • Netkit 솔루션 (네트워크 장비 모니터링 및 운영 지원 시스템)
  • 프로세스 1 (Jabber 메시징)
  • Quviq (소프트웨어 테스트 도구)
  • RabbitMQ (AMQP 엔터프라이즈 메시징)
  • Schlund + 파트너 (메시징 및 대화 형 음성 응답 서비스)
  • 스 마켓 (베팅 거래소 및 예측 시장)
  • T-Mobile (이전 1one) (고급 통화 제어 서비스)
  • 텔리 아 (통신 사업자)
  • Textendo (혁신적인 문자 메시지 서비스)
  • 베일 시스템 (대화식 음성 응답 시스템)
  • Wavenet (SS7 및 IVR 애플리케이션)

4

LinkedIn, Twitter, eBay, Sony Animation Studio, Gaurdian, FourSquare 등은 스칼라를 광범위하게 사용합니다.


1
예, 그러나 Scala는 FP가 아니며 일부 FP 개념을 사용합니다. :)
sakisk

@faif, 무슨 쓰레기! 귀하의 진술은 FP 또는 스칼라 또는 둘 다에 대해 거의 알지 못함을 나타냅니다. 저는 2 년 이상 스칼라를 사용해 왔으며, 스칼라에서 작성한 코드는 하스켈에서 작성한 코드와 크게 다르지 않습니다. 상황에 따라 IO 모나드를 사용하거나 선택하지 않을 수있는 IO 경계를 제외하고 순수 기능 방식으로 코드를 작성합니다.
missingfaktor 2016 년

2
내 의견은 농담이었고 무례하지 마십시오. 스칼라의 FP 부분 만 사용한다고해서 FP 언어는 아닙니다. 이유는 2 가지 프로그래밍 패러다임을 혼합하려는 것입니다.
sakisk

@faif, 농담이나 진지한 지 어떻게 알 수 있습니까? 또한 FPL이 아니라고 말하면서 이전 진술을 무의미하고 부정직하게 만듭니다. 두 패러다임을 혼합하기 때문에 FPL이 아니라고 말하면 완전히 요점을 놓친 것입니다 . 말할 가치가 없다면 내 시간을 낭비하지 마십시오.
missingfaktor

2
당신은 전혀 이해가되지 않습니다.
missingfaktor

1

StackOverflow에서이 주제에 대해 이미 여러 가지 토론이 있습니다. Clojure 프로덕션 준비를 참조하십시오 .

내 주변의 예는 다음과 같습니다.

  • 클로저
  • 스칼라
  • 치킨 (구성표 컴파일러)

아, 그리고 읽을 것을 잊지 마세요 평균 잔


이미 읽었지만 =) 훌륭한 기사로 FP에 대해 더 많이 배우기 시작했습니다.
akobre01

1
  • JaneStreet (헤지 펀드)는 OCaml을 사용합니다.
  • Credit Suisse (은행)는 F #을 사용합니다.
  • BarCap (은행)은 파생 상품 대가를 설명하기 위해 Haskell을 사용하기를 원한다고 들었습니다. 나는 이것이 얼마나 멀리 갔는지 모른다.

RE : Barcap-생산에 이르기까지 : lexifi.com/files/resources/frankau.pdf
Ed'ka

PDF에서 : "여기서 교훈은은 총알이 없다는 것입니다. 기능적 접근 방식이 우리의 작업을 크게 단순화했지만 알고리즘 복잡성과 같은 일반적인 문제는 따로 떼어 놓을 수 없습니다. 또한 이러한 문제는 형태로 잘릴 수 있습니다. 인식하지 못하므로 개발자가 이전 경험을 다시 학습해야합니다. "
quant_dev
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.