CWN(CHANGE WITH NEWS) - 러스트, 과학자들 사이에서 인기 증가...왜?

  • 흐림산청17.6℃
  • 구름많음완도20.1℃
  • 흐림영월16.9℃
  • 흐림창원19.5℃
  • 흐림이천18.8℃
  • 흐림파주18.8℃
  • 흐림양평19.5℃
  • 흐림영광군19.9℃
  • 흐림의령군17.7℃
  • 흐림인제17.7℃
  • 구름많음남원18.5℃
  • 구름많음서산19.0℃
  • 흐림순창군18.5℃
  • 흐림제주24.6℃
  • 흐림전주19.6℃
  • 비여수19.4℃
  • 흐림고창군20.2℃
  • 흐림정선군17.2℃
  • 흐림북창원19.8℃
  • 흐림태백15.3℃
  • 흐림양산시20.6℃
  • 비청주19.1℃
  • 구름많음고흥19.5℃
  • 박무목포20.5℃
  • 흐림부안19.3℃
  • 흐림성산24.3℃
  • 흐림부여18.7℃
  • 흐림금산18.4℃
  • 박무대구19.1℃
  • 흐림보령19.7℃
  • 흐림울산19.9℃
  • 흐림장수17.6℃
  • 흐림흑산도22.6℃
  • 비부산20.7℃
  • 흐림군산19.0℃
  • 흐림원주19.1℃
  • 흐림경주시20.0℃
  • 흐림통영19.6℃
  • 흐림강화20.5℃
  • 흐림보은17.8℃
  • 흐림거창17.5℃
  • 흐림동해18.8℃
  • 흐림의성18.6℃
  • 흐림천안18.3℃
  • 흐림고창20.5℃
  • 흐림합천18.7℃
  • 흐림대전18.4℃
  • 흐림충주18.7℃
  • 흐림서귀포24.9℃
  • 흐림북강릉18.3℃
  • 흐림대관령14.6℃
  • 흐림수원20.4℃
  • 흐림해남20.2℃
  • 흐림문경17.7℃
  • 흐림장흥19.4℃
  • 흐림철원19.6℃
  • 흐림울진18.8℃
  • 흐림구미18.2℃
  • 흐림광양시19.3℃
  • 흐림홍천18.0℃
  • 흐림추풍령16.8℃
  • 흐림인천21.4℃
  • 구름많음김해시19.0℃
  • 흐림거제19.6℃
  • 흐림영덕19.6℃
  • 흐림청송군18.1℃
  • 흐림강릉18.8℃
  • 비홍성18.8℃
  • 흐림제천17.9℃
  • 흐림영천19.0℃
  • 구름많음백령도20.1℃
  • 비북부산19.9℃
  • 구름많음고산24.2℃
  • 흐림진주17.3℃
  • 흐림춘천18.7℃
  • 흐림영주18.1℃
  • 흐림진도군21.3℃
  • 흐림울릉도20.4℃
  • 흐림함양군17.8℃
  • 흐림광주19.3℃
  • 흐림임실18.3℃
  • 흐림동두천20.0℃
  • 흐림세종18.3℃
  • 흐림상주17.7℃
  • 흐림정읍19.7℃
  • 흐림북춘천18.9℃
  • 흐림안동18.2℃
  • 흐림봉화17.1℃
  • 흐림서울21.1℃
  • 흐림속초19.3℃
  • 흐림강진군19.5℃
  • 흐림서청주18.0℃
  • 흐림순천18.2℃
  • 흐림포항20.5℃
  • 흐림밀양19.3℃
  • 구름많음보성군19.5℃
  • 흐림남해19.0℃
  • 2025.10.04 (토)

러스트, 과학자들 사이에서 인기 증가...왜?

고다솔 / 기사승인 : 2020-12-08 16:04:44
  • -
  • +
  • 인쇄

2015년, 생물정보학자 요하네스 쾨스터(Johannes Köster)는 파이썬처럼 표현력이 뛰어나면서 C나 C 처럼 빠른 속도를 자랑하는 언어를 활용하고자 했다. 끝없는 노력 끝에 새로운 프로그래밍 언어가 탄생했다. 바로 '러스트'이다.

현재, 러스트는 과학자들 사이에서 큰 인기를 얻고 있다. 실제로 다른 언어 대신 러스트를 택하는 과학자가 증가하는 추세이다. 과학자들이 러스트를 택하는 이유는 무엇일까? 영국 과학 저널 네이처가 설명한 러스트의 특징을 중심으로 아래와 같이 분석했다.

1. 안전한 언어
과학적 데이터 분석을 위한 작업 흐름에서는 파이썬이나 R, Matlab 등을 주로 사용한다. 모두 코드 라인을 하나씩 해석한 뒤 실행한다. 데이터를 탐색하기에는 좋지만, 속도가 느리다는 단점이 있다.

스웨덴의 러스트 프로그래머 애슐리 호크(Ashley Hauck)는 C나 C 은 빠르지만, 안전하지 않다고 설명한다. 예를 들어, C나 C 프로그래머가 운영체제에 다시 공개된 메모리에 부적절하게 접근하는 것을 막거나 프로그램이 똑같은 피스를 두 번 발행하는 것을 막을 수 있는 제어장치가 없다. 이 상황에서는 프로그램을 중단하는 것이 최상의 시나리오이다.

그러나 의미 없는 데이터를 반환하거나 보안 취약점을 노출시킬 수 있다는 치명적인 문제가 발생한다. 반면, 러스트는 보안 위험 없이 방대한 양의 데이터를 처리할 수 있다.

2. 메모리 규칙
러스트 모델은 규칙에 따라 각각의 메모리 피스를 한 명의 소유자에게 할당하고, 누가 메모리 피스에 접근하는지 지정한다. 이러한 규칙을 위반하는 코드는 컴파일이 불가능하다.

메릴랜드대학교 칼리지파크캠퍼스의 생물정보학자 롭 패트로(Rob Patro) 박사는 "러스트는 컴파일러가 메모리 피스 접근 정보를 추적할 수 있도록 하는 메모리 관리 시스템을 지니고 있다. 또한, 언어 설계 방식의 장점에 따라 간단하게 에러를 수정할 수 있다"라고 설명했다.

여러 계산 스레드가 동시에 같은 데이터에 접근하지 않도록 막는 등 여러 프로세서를 실행하도록 작성된 프로세서인 병렬 코드가 안전하게 실행될 수 있도록 한다. 이 때문에 러스트는 학습하기 어렵지만, 유지와 디버그가 쉽다.

3. 실제 사용성에 중점
러스트는 사용자 경험이 최적화된 언어이다. 예를 들어, 컴파일러는 특히 정보 오류 메시지를 생성하며, 문제가 있는 코드를 강조하면서 수정 방법을 함께 제시한다.

러스트 개발자 커뮤니티는 러스트를 원활하게 사용할 수 있도록 다양한 문서와 도움이 되는 정보를 제공한다. 많은 사용자가 프로그래머들이 코드를 애플리케이션으로 변경할 때 사용하는 '러스트 툴체인'을 긍정적으로 평가하는 이유이기도 하다.

프로그래머들이 C 코드를 생성하기 위해 사용하는 다른 여러 컴파일러와 보조 유틸리티와는 달리 러스트 사용자는 '카고(Cargo)'라는 단 하나의 툴만 사용해 러스트 코드 컴파일부터 테스트 운영, 문서 자동 생성 등 모든 과정을 실행할 수 있다.

[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]

최신기사

뉴스댓글 >

- 띄어 쓰기를 포함하여 250자 이내로 써주세요.
- 건전한 토론문화를 위해, 타인에게 불쾌감을 주는 욕설/비방/허위/명예훼손/도배 등의 댓글은 표시가 제한됩니다.

댓글 0

Today

Hot Issue