프로젝트 소개

Faust(Functional Audio Stream)는 실시간 신호 처리와 사운드 합성을 위해 설계된 도메인 특화 함수형 프로그래밍 언어입니다. 주로 Grame, 국립 창작 음악 센터에서 개발되었으며, DSP 사양을 C++, C, Java, LLVM IR, WebAssembly를 포함한 여러 대상에 대한 고효율 코드로 컴파일합니다. 단일 Faust 프로그램은 네이티브 독립 실행형 애플리케이션, iOS/Android 앱, 그리고 VST, AU, LV2, LADSPA, Max/MSP, Pure Data, SuperCollider, Csound, JACK, ALSA 등 다양한 플랫폼과 표준을 위한 오디오 플러그인을 생성할 수 있습니다. 배포판에는 컴파일러, 각 대상에 대한 아키텍처 파일, DSP 라이브러리(현재 별도 하위 모듈에 있음), 광범위한 예제, 그리고 특정 대상을 위한 컴파일을 자동화하는 faust2* 스크립트 모음(예: faust2vst, faust2max6, faust2android)이 포함됩니다. Faust Editor, Faust IDE, Faust Playground와 같은 온라인 도구는 브라우저에서 구성 없이 컴파일 및 테스트를 가능하게 합니다. FaustLive는 신속한 프로토타이핑을 위한 JIT 컴파일을 갖춘 데스크톱 환경을 제공합니다. 이 언어는 샘플 수준 성능과 수학적 문서 생성에 중점을 둡니다. 빌드 시스템은 버전 2.5.18부터 CMake 기반입니다. 커뮤니티 지원은 개발 및 사용자 메일링 리스트를 통해 제공됩니다.