프로그래밍 언어 러스트의 신규 버전 러스트 1.80이 출시됐다. 이번 업데이트에서는 성능 최적화와 안전성 향상을 위한 '지연(Lazy)' 유형이 추가됐다.
26일 인포월드 등 외신에 따르면 러스트 개발팀은 러스트 1.80을 공식 홈페이지를 통해 공개했다.
1.80버전에서 추가된 레이지셀(LazyCell)과 레이지록(LazyLock) 등 지연 유형은 프로그램이 시작할 때나 객체가 선언될 때 바로 계산하거나 초기화하지 않는다. 실제 값에 접근할 때까지 프로세스를 미루는 방식으로 리소스 사용을 최적화할 수 있는 것이 장점이다.
프로그램 실행 도중 사용하지 않는 계산을 처리하지 않는 만큼 메모리와 CPU 낭비를 줄일 수 있는 것이 특징이다. 대규모 데이터 구조, 네트워크 연결, 데이터베이스 세션 등 초기화 비용이 많이 드는 리소스에 효율적이고 프로그램 안정성을 높일 수 있다.
레이지셀은 초기화 코드를 간결하게 유지할 수 있으며, 초기화가 필요한 시점에만 이루어지도록 보장할 수 있는 구조체로 단일 스레드 환경에서 사용하기에 적합하다.
레이지록은 멀티스레드에서 안전하게 접근할 수 있도록 설계된 지연 유형의 구조체다. 동시에 여러 스레드에서 값에 접근해야 하는 상황에서 프로그램의 안정성을 증가시킬 수 있다.
러스트의 컴파일러는 코드 컴파일 시 설정 속성인 cfg의 이름과 값이 예상과 일치하는지 자동으로 검사하는 기능이 추가됐다. 이를 통해 컴파일 과정에 설정 실수를 빠르게 발견하고 코드의 품질과 안정성을 개선할 수 있다.
또한 패턴 매칭에서 상한 범위를 제외한 범위를 표현할 수 있는 기능도 지원한다. 예를 들어, 0..10 패턴에서는 10이 포함되지 방식으로 이를 통해 사용할 수 있는 표현력을 높일 수 있다. 다만 이 기능은 아직 불안정해 추가로 활성화해야 사용 가능하다.
관련기사
- 어도비, 일러스트레이터·포토샵 생성형 AI 신기능 발표2024.07.24
- 게임업계, 생성 AI 도입 활발…올해 1만1천명 '해고'2024.07.24
- 日, AI 기업 유치 위해 저작권법 개정 방관…창작자들 '불안'2024.07.23
- 마이크로소프트, 러스트 재단 100만 달러 기부2024.05.10
이 밖에도 기존 API를 개선해 안정성을 높이고 컴파일러 기능을 추가하고 호환성을 높이는 등 대거 기능개선이 이뤄졌다.
러스트 개발팀은 "러스트는 모든 사람이 안정적이고 효율적인 소프트웨어를 구축할 수 있도록 지원하는 프로그램 언어"라며 "많은 사람들의 도움이 있었기에 이번 업데이트를 수행할 수 있었다"며 업데이트를 지원해 준 참가자들에게 감사를 표했다.