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

  • 맑음북부산16.1℃
  • 맑음함양군15.1℃
  • 맑음고흥16.4℃
  • 맑음홍천6.1℃
  • 맑음여수13.9℃
  • 맑음대구13.5℃
  • 맑음강릉12.6℃
  • 맑음보성군14.6℃
  • 맑음이천5.0℃
  • 맑음영주8.8℃
  • 맑음부여6.7℃
  • 맑음동두천7.1℃
  • 박무북춘천3.4℃
  • 맑음진도군11.0℃
  • 맑음청송군11.6℃
  • 연무전주8.9℃
  • 맑음강진군15.8℃
  • 맑음제주17.1℃
  • 맑음장수12.9℃
  • 맑음춘천5.1℃
  • 맑음고산16.6℃
  • 맑음정읍8.7℃
  • 맑음구미11.5℃
  • 맑음울산15.8℃
  • 맑음서귀포17.3℃
  • 맑음세종3.6℃
  • 맑음수원8.9℃
  • 맑음창원14.9℃
  • 맑음영광군10.6℃
  • 맑음순천16.0℃
  • 맑음군산9.2℃
  • 맑음경주시14.9℃
  • 맑음안동10.2℃
  • 맑음고창군10.6℃
  • 맑음부안7.5℃
  • 맑음양산시16.3℃
  • 맑음대관령6.1℃
  • 맑음울진12.6℃
  • 맑음영천13.2℃
  • 맑음철원4.4℃
  • 맑음울릉도10.8℃
  • 맑음거창14.7℃
  • 맑음순창군13.0℃
  • 연무서울7.9℃
  • 맑음보은9.6℃
  • 연무흑산도9.2℃
  • 맑음광양시17.0℃
  • 맑음천안5.9℃
  • 맑음서청주3.3℃
  • 맑음광주13.5℃
  • 맑음영덕13.5℃
  • 맑음상주9.9℃
  • 맑음파주3.5℃
  • 맑음합천14.8℃
  • 맑음북창원16.0℃
  • 연무대전7.1℃
  • 맑음속초11.1℃
  • 맑음금산12.7℃
  • 맑음성산17.3℃
  • 구름많음홍성3.0℃
  • 맑음의령군13.9℃
  • 맑음보령8.6℃
  • 맑음장흥15.4℃
  • 맑음양평5.8℃
  • 맑음문경9.5℃
  • 맑음김해시16.6℃
  • 맑음원주6.6℃
  • 맑음추풍령11.1℃
  • 맑음목포7.9℃
  • 맑음해남13.1℃
  • 맑음영월6.5℃
  • 맑음남원12.3℃
  • 맑음북강릉11.2℃
  • 맑음충주5.3℃
  • 맑음동해12.1℃
  • 박무백령도3.6℃
  • 맑음태백9.1℃
  • 맑음부산16.3℃
  • 맑음제천6.2℃
  • 맑음정선군8.6℃
  • 연무인천7.9℃
  • 맑음의성12.1℃
  • 박무청주3.8℃
  • 맑음거제13.7℃
  • 맑음진주16.2℃
  • 맑음임실13.3℃
  • 맑음인제7.0℃
  • 맑음고창11.7℃
  • 맑음남해13.2℃
  • 맑음통영16.0℃
  • 맑음서산9.2℃
  • 맑음봉화9.6℃
  • 구름조금완도13.3℃
  • 맑음산청14.1℃
  • 맑음포항15.6℃
  • 맑음밀양15.6℃
  • 맑음강화4.7℃
  • 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