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

  • 연무청주7.0℃
  • 맑음보은9.3℃
  • 맑음북강릉8.6℃
  • 맑음해남12.9℃
  • 맑음봉화7.2℃
  • 맑음의령군15.2℃
  • 맑음포항14.5℃
  • 맑음문경8.2℃
  • 맑음진주13.7℃
  • 맑음합천15.4℃
  • 맑음제천7.1℃
  • 맑음보성군12.3℃
  • 맑음파주2.7℃
  • 맑음양평6.2℃
  • 맑음상주11.6℃
  • 맑음의성11.6℃
  • 맑음광주13.4℃
  • 맑음홍천5.8℃
  • 맑음통영13.9℃
  • 맑음경주시14.2℃
  • 맑음제주15.4℃
  • 맑음울진12.5℃
  • 맑음동두천4.2℃
  • 맑음태백6.8℃
  • 맑음안동10.8℃
  • 맑음춘천6.0℃
  • 맑음남원13.7℃
  • 맑음군산9.9℃
  • 맑음대관령4.1℃
  • 맑음북춘천5.7℃
  • 맑음정읍12.2℃
  • 맑음거제11.4℃
  • 맑음부여8.8℃
  • 맑음양산시14.3℃
  • 맑음강화1.4℃
  • 맑음원주7.0℃
  • 맑음구미9.6℃
  • 맑음서귀포16.2℃
  • 맑음울릉도9.6℃
  • 연무서울8.8℃
  • 맑음강릉11.8℃
  • 맑음울산12.6℃
  • 맑음청송군9.5℃
  • 맑음목포10.7℃
  • 맑음장수11.2℃
  • 맑음장흥15.1℃
  • 맑음순천13.6℃
  • 맑음성산15.4℃
  • 맑음함양군14.4℃
  • 맑음고산15.7℃
  • 맑음임실12.2℃
  • 맑음전주11.2℃
  • 맑음천안7.0℃
  • 맑음금산12.1℃
  • 맑음영주6.8℃
  • 맑음이천5.6℃
  • 맑음김해시13.9℃
  • 맑음수원8.9℃
  • 맑음광양시15.0℃
  • 연무대전8.4℃
  • 맑음추풍령10.6℃
  • 맑음부산13.8℃
  • 맑음동해11.5℃
  • 박무인천3.3℃
  • 맑음영월6.6℃
  • 맑음흑산도7.9℃
  • 맑음보령8.0℃
  • 맑음속초9.0℃
  • 맑음북창원13.8℃
  • 맑음강진군13.3℃
  • 맑음정선군6.0℃
  • 맑음북부산14.2℃
  • 맑음남해10.8℃
  • 맑음인제6.7℃
  • 맑음밀양14.1℃
  • 맑음고창군12.5℃
  • 맑음완도12.9℃
  • 맑음산청12.5℃
  • 맑음여수13.6℃
  • 비백령도3.7℃
  • 맑음영천13.7℃
  • 맑음철원3.6℃
  • 맑음진도군9.6℃
  • 맑음거창14.3℃
  • 맑음창원13.1℃
  • 맑음충주5.9℃
  • 맑음영덕11.2℃
  • 맑음세종5.6℃
  • 맑음순창군12.6℃
  • 맑음대구14.6℃
  • 맑음서청주5.1℃
  • 맑음영광군12.6℃
  • 맑음서산9.9℃
  • 맑음고창13.7℃
  • 맑음부안10.8℃
  • 박무홍성6.0℃
  • 맑음고흥12.8℃
  • 2026.01.16 (금)

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

고다솔 / 기사승인 : 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