러스트 1.51 공개: Const Generics
(blog.rust-lang.org)러스트 1.51를 소개합니다. 러스트는 모든 이가 믿음직하고 효율적인 소프트웨어를 작성할 수 있도록 힘을 실어주는 프로그래밍 언어입니다.
러스트 1.51은 오랜만에 큰 기능을 추가하는 버전입니다.
Const Generics MVP
- 기존에는 타입이 라이프타임이나 타입을 파라미터로 가질 수 있었습니다.
ㅤ- [T; 32] 필드를 가지는 구조체 FixedArray
ㅤ- 하지만 [T; N]에서 N처럼 값(여기선 배열의 길이)에 대해 일반적인 코드를 작성할 수는 없었습니다.
- 러스트 1.51부터 정수, 문자, boolean 값에 대해 일반적인 코드 작성이 가능해졌습니다.
ㅤ- 이제 [T; LENGTH] 필드를 가진 구조체 Array
ㅤ- Array
- 앞으로 더 많은 컴파일 타임 상수값을 타입 파라미터로 사용할 수 있도록 허용할 예정입니다.
기타 변경 사항
- Cargo 기능 추가
- macOS에서 컴파일 시간 대폭 단축 (디버그 정보 처리 방식 변경)
- const generics를 활용하는 by-value iterator api 추가