작업 영역
컴파일러 팀에서 진행 중인 작업과 이니셔티브의 상당 부분은 특정 작업 영역에 관심 있는 사람들로 구성된 그룹이 수행합니다. 이러한 그룹은 한 영역에 집중된 작업을 꾸준히 제공하고 도움과 조언을 구할 수 있는 전용 채널을 갖추고 있으므로, 새로운 기여자가 참여하기에 좋은 방법입니다. 현재 작업이 진행 중인 영역의 목록은 다음과 같습니다.
| 이름 | 간단한 설명 | 코드 | Zulip 스트림 |
|---|---|---|---|
| Async-await 구현 | async-await 구현 | 링크 | #wg-async |
| 진단 | 진단 렌더링에 crates.io 크레이트를 사용하고 진단 출력을 더 보기 좋게 개선합니다. | rustc_errors, rustc_lint, annotate-snippets | #t-compiler/diagnostics |
| LLVM | LLVM 업스트림과 협력하여 LLVM 개발 과정에서 Rust의 입장을 대변합니다 | rustc, LLVM | #t-compiler/llvm |
| MIR 최적화 | MIR 최적화를 작성하고 MIR을 최적화하기 쉬운 형태로 리팩터링합니다. | MIR 변환 | #t-compiler/mir-opts |
| Parallel-rustc | 병렬 컴파일을 rustc의 기본값으로 만듭니다 | rustc | #t-compiler/parallel-rustc |
| Polonius | “NLL 2.0“과 유사한 “Polonius 분석”을 rustc에 통합하는 방안을 탐구합니다 | 대여 검사, rust-lang/polonius, rust-lang/datafrog | #t-types/polonius |
| RLS 2.0 | IDE에 맞춘 새로운 컴파일러 아키텍처를 실험합니다 | rust-analyzer | #t-compiler/rust-analyzer |
| Rust 컴파일러 개발 가이드 | rustc-dev-guide를 “완전“하게 만들어 컴파일러를 더 쉽게 배울 수 있도록 합니다 | rustc, rustc-dev-guide | #t-compiler/rustc-dev-guide |
| Enzyme | GPU 오프로딩을 위한 실험적 LLVM 기능을 제공합니다 | 프로젝트 목표 | #wg-autodiff |
| 링커 | 링커 관련 이슈를 처리하고 링커를 컴파일러에 통합하는 작업을 지원합니다 | - | #wg-linker |
기록 보존을 위해, 목표를 달성했거나 작업이 중단되어 더 이상 활동하지 않는 워킹 그룹 목록을 아래에 남깁니다:
| 이름 | 간단한 설명 | Zulip 스트림 |
|---|---|---|
| Meta | 컴파일러 팀의 조직 운영 방식을 다룹니다 | #z-archived-t-compiler/wg-meta |
| Non-Lexical Lifetimes (NLL) | 비어휘적 수명(non-lexical lifetimes)을 구현합니다 | #z-archived-t-compiler/wg-nll |
| Polymorphization | 코드 생성 중에 함수가 다형적인 상태로 남을 수 있는 경우를 감지하는 분석을 구현합니다. | #z-archived-t-compiler/wg-polymorphization |
| Prioritization | 회귀를 트리아지하며, 주로 릴리스를 막을 가능성이 있는 문제인지 판단합니다 | #t-compiler/prioritization |
| 프로파일 기반 최적화 | rustc를 위한 프로파일 기반 최적화 구현 | #z-archived-t-compiler/wg-profile-guided-optimization |
| RFC 2229 | 클로저가 복합 변수 전체가 아니라 변수의 개별 필드를 캡처하도록 합니다 | #z-archived-t-compiler/wg-rfc-2229 |
| Rustc 파이프라이닝 | Cargo가 rustc를 파이프라인 방식으로 호출할 수 있도록 하여 크레이트 그래프 컴파일 속도를 높입니다. | #z-archived-t-compiler/wg-pipelining |
| 셀프 프로파일 | -Z self-profile 기능 개선 | #z-archived-t-compiler/wg-self-profile |
| 트레이트 | 트레이트 시스템 설계 및 구현 개선 | #z-archived-t-compiler/wg-traits |