일반적인 프로그래밍 언어에서는 에러 처리를 위한 예외 처리가 기본이다. 그렇지만 러스트(rust)는 예외 기능이 없다. 대신, 복구 가능한 에러를 위한 Result<T, E>
값과 복구 불가능한 에러가 발생했을 때 실행을 멈추는 panic! 매크로를 가지고 있다.1 또한 러스트는 다른 언어들이 가지는 Null이라는 기능이 없다. 러스트는 Null을 사용하지 않고, 존재하거나 존재하지 않음을 나타내는 개념을 나타내는 Option<T>
을 이용한다.2
enum Result<T, E> {
Ok(T),
Err(E)
}
enum Option<T> {
None,
Some(T)
}
여기에서 사용하는 대부분의 예제는 mithradates의 Easy Rust Korean를 참고하였다.
인공지능, 정말 책으로 혼자 배울 수 있을까?1 여기에 대한 대답으로 인공지능(머신러닝, 딥러닝) 자습서를 소개해 본다. 동영상 강좌까지 준비되어 있어서 학습에 많은 도움을 준다. 다만 학습에 필요한 Python이라는 프로그램 언어를 이해할 필요가 있다.
아마존 사이언스 블로그 소식에 의하면 기존 Javascript 코드 레이어로 구성한 Prime Video 서비스를 Rust, WebAssembly로 전환하여 안정성과 속도를 향상했다고 한다.1
또한, theregister.com의 기사에 의하면 마이크로소프트는 Windows커널을 Rust로 작성하고 있다고 한다. Microsoft is rewriting core Windows libraries in the Rust programming language, and the more memory-safe code is already reaching developers.2
이처럼 Rust는 차세대 시스템 프로그래밍 언어로 위치를 굳건히 다져가고 있다. 위의 이미지는 Rust를 학습하는 데 필요한 추천 서적을 소개한 것이다.