본문 바로가기

Home > 열린마당 > 공개SW 소식

공개SW 소식

루비(Ruby) 버전 3.0.0, 병렬실행 및 타입설명 지원

support 게시글 작성 시각 2021-01-07 11:22:25

2021.01.05

 

© CIO Korea, Paul Krill | InfoWorld

 

오픈소스 동적 프로그래밍 언어 ‘루비(Ruby)’의 버전 3.0.0이 프로덕션 릴리즈로 지난 12월 25일(현지 시각) 공개됐다. 새 버전의 주요 기능으로는 병렬 실행 및 타입 설명 기능 등이 포함된다. 

 

병렬 실행(Parallel execution)은 스레드 안전 문제없이 병렬 실행 기능을 제공하고자 고안된 동시추상화 모델이다. 액터 모델(Actor model)과 유사하다. 이는 ‘랙터(Rector)’라는 실험적 기능의 형태로 제공된다.

이를 사용하면 여러 랙터를 생성해 병렬로 실행할 수 있다. 여기서 랙터는 일반 객체를 공유할 수 없기 때문에 스레드로부터 안전한 병렬 프로그램을 만들 수 있다. 랙터 간의 통신은 메시지 패싱을 통해 지원된다. 하지만 객체 공유를 제한하고자 랙터에서는 루비 구문에 몇 가지 제한을 적용한다.  

또한 루비 3.0.0에는 RBS가 도입됐다. 이는 루비 프로그램 타입을 기술하기 위한 언어다. 루비 3.0.0은 RBS로 작성된 타입 정의를 패싱하고 처리하는 rbs 젬을 포함한다. 릴리즈 노트에 따르면 RBS를 지원하는 타입 프로파일러와 다른 도구들을 포함한 타입 검사기는 RBS 정의를 통해 루비 프로그램을 더 잘 이해한다. 

RBS는 루비 프로그램에서 일반적으로 볼 수 있는 패턴을 지원하기 위해 고안됐다. 또 유니언 타입(union types), 메소드 오버로딩(method overloading), 제네릭(generics)을 포함한 고급 타입을 작성할 수 있다. 인터페이스 타입을 사용해 덕 타이핑(Duck typing)도 지원한다. 

루비 3.0.0은 이곳(ruby-lang.org)에서 다운로드받을 수 있다. 이 밖에 루비 3.0.0의 다른 기능은 아래와 같다.

(후략)

 

※ 본 내용은 한국아이디지(주) (https://www.idg.co.kr/)의 저작권 동의에 의해 공유되고 있습니다.

Copyright ⓒ 2021 2016 International Data Group. 무단전재 및 재배포 금지.

[원문 출처 : https://www.ciokorea.com/news/177799]

맨 위로
맨 위로