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

  • 맑음광양시9.1℃
  • 맑음합천5.3℃
  • 맑음울릉도13.5℃
  • 맑음태백5.6℃
  • 맑음서귀포14.1℃
  • 구름많음강화5.6℃
  • 맑음고흥7.6℃
  • 맑음강진군7.1℃
  • 맑음북춘천1.1℃
  • 맑음강릉11.5℃
  • 맑음부산12.6℃
  • 맑음청송군0.9℃
  • 구름조금보령6.4℃
  • 맑음통영12.2℃
  • 맑음홍천3.2℃
  • 맑음서청주8.6℃
  • 맑음대전9.2℃
  • 맑음동두천5.5℃
  • 맑음거제10.7℃
  • 맑음포항11.6℃
  • 맑음안동4.3℃
  • 맑음성산12.1℃
  • 맑음김해시8.9℃
  • 맑음보은3.3℃
  • 맑음대구6.0℃
  • 맑음부안8.9℃
  • 맑음울산9.3℃
  • 안개홍성7.7℃
  • 맑음부여8.6℃
  • 맑음남해9.6℃
  • 흐림군산8.9℃
  • 맑음장수3.1℃
  • 맑음광주10.6℃
  • 구름조금인천9.5℃
  • 맑음봉화-0.7℃
  • 맑음구미4.7℃
  • 맑음춘천2.5℃
  • 맑음의령군3.4℃
  • 맑음임실4.6℃
  • 맑음북부산6.3℃
  • 맑음양평4.7℃
  • 맑음보성군8.2℃
  • 맑음함양군3.3℃
  • 구름많음파주5.4℃
  • 맑음경주시4.4℃
  • 맑음고창군7.0℃
  • 맑음순창군4.9℃
  • 맑음완도12.4℃
  • 맑음진도군6.9℃
  • 맑음천안4.3℃
  • 구름조금속초12.1℃
  • 맑음대관령4.1℃
  • 맑음진주4.3℃
  • 맑음영월3.5℃
  • 맑음영덕9.5℃
  • 맑음순천3.7℃
  • 안개백령도10.2℃
  • 맑음충주4.6℃
  • 맑음고산14.7℃
  • 맑음영광군6.0℃
  • 맑음의성1.5℃
  • 맑음양산시7.6℃
  • 맑음흑산도12.6℃
  • 맑음제주14.7℃
  • 맑음금산5.0℃
  • 맑음북창원9.8℃
  • 맑음밀양4.7℃
  • 맑음북강릉10.2℃
  • 안개청주8.8℃
  • 맑음이천4.8℃
  • 맑음산청4.8℃
  • 맑음철원6.8℃
  • 맑음창원9.7℃
  • 맑음동해8.9℃
  • 맑음서산4.8℃
  • 맑음해남6.0℃
  • 맑음고창4.7℃
  • 맑음여수11.4℃
  • 맑음거창2.8℃
  • 맑음영주1.3℃
  • 맑음제천2.6℃
  • 구름조금인제2.2℃
  • 맑음세종7.6℃
  • 맑음문경6.3℃
  • 맑음추풍령4.0℃
  • 맑음남원6.0℃
  • 맑음목포11.9℃
  • 맑음영천3.4℃
  • 맑음전주8.6℃
  • 맑음정선군5.6℃
  • 맑음울진8.4℃
  • 구름많음서울8.9℃
  • 맑음상주9.3℃
  • 맑음정읍8.1℃
  • 안개수원6.2℃
  • 맑음장흥5.0℃
  • 맑음원주6.4℃
  • 2025.11.25 (화)

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

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