로슬린 (컴파일러)
Roslyn (compiler)원본 작성자 | 마이크로소프트 |
---|---|
개발자 | .NET 파운데이션 |
안정적 해제 | Visual-Studio-2019-Version-16.7.3 / 2020년 9월 4일; ( |
리포지토리 | github |
기록 위치 | C#, Visual Basic |
운영 체제 | Microsoft Windows, Linux |
플랫폼 | IA-32, x86-64 |
유형 | 컴파일러 |
면허증 | MIT 라이선스 |
웹사이트 | docs |
.NET 컴파일러 플랫폼은 로슬린이라는 별명으로도 알려져 있으며,[1] C# 및 VB(Visual Basic)를 위한 오픈 소스 컴파일러와 코드 분석 APIs의 집합체다.NET) 언어([2]마이크로소프트)
이 프로젝트에는 특히 C#와 VB의 자체 호스팅 버전이 포함되어 있다.NET 컴파일러 – 언어로 작성된 컴파일러.컴파일러는 전통적인 명령줄 프로그램을 통해 사용할 수 있지만, 에서 기본으로 제공되는 API로도 사용할 수 있다.NET 코드.로슬린은 코드의 통사적(lexic) 분석, 의미 분석, CIL에 대한 동적 컴파일, 코드 방출에 대한 모듈을 노출한다.[3]
특징들
로슬린의 가장 주목할 만한 주요 특징은 다음과 같다.[citation needed]
- API를 통해 서비스로 노출되는 C# 및 Visual Basic 언어 컴파일러.
- 코드 분석 및 리팩터링을 위한 API.
역사
암호명 '로슬린'은 에릭 리퍼트(전 마이크로소프트 엔지니어[4])가 2010년 새 프로젝트에 개발자를 고용하기 위해 발표한 글에서[5] 처음 쓴 것이다.그는 처음에는 그 이름의 기원이 워싱턴의 로슬린 때문이라고 말했지만, 나중에 그 게시물에서 그는 그 사무실의 "북쪽 노출"에 대해 역설적으로 말한다; 로슬린 시는 텔레비전 시리즈 Northern Exposure가 촬영된 곳 중 하나였다.[6]
마이크로소프트는 2011년 10월 CTP(Community Technology Preview)를 공개 다운로드가 가능하도록 만들었다.Visual Studio 2010 SP1의 확장으로 설치되었다.[7]
CTP는 2012년[8] 9월에 업데이트되어 2012년 6월과 2011년 10월에 도입된 Roslyn API에 대한 많은 업데이트를 포함하며 변경사항을 포함시켰다.[9]컴파일러를 위해 2012년 6월 CTP API가 완성되었지만, C#와 VB를 위해 모든 기능이 구현된 것은 아니다.NET 언어.[10]
마이크로소프트는 2014년 4월 샌프란시스코에서 열린 빌드 2014 컨퍼런스에서 '로슬린' 프로젝트 오픈소스를 만들고 비주얼 스튜디오 2013의 언어 통합 예고편을 공개했다.2014년 4월 3일 현재 로슬린은 아파치 라이선스 2.0을 받고 있다.[2]그 프로젝트는 신설된 사람의 관리 하에 효과적으로 이전되었다.NET Foundation.[11]같은 회의에서, 자마린은 자마린 스튜디오에서 새로운 컴파일러와 도구를 통합하는 작업을 하고 있다고 발표했다.[12]
컴파일러는 이번 릴리스에서 기능이 완전하지 않았다.각 컴파일러에는 다음 언어 버전(C# 6 및 Visual Basic)에 대해 계획된 기능이 포함되어 있다.NET 14).이 API들은 또한 NuGet 패키지 매니저를 통해서도 이용 가능하다.[citation needed]
RTM(Roslyn)의 첫 번째 출시작은 Visual Studio 2015와 함께였다.[13]로슬린은 현재 VB와 C#만을 지원하며 컴파일러는 각자의 언어로 작성됐다.[14]
2015년 1월 마이크로소프트는 로슬린 소스 코드를 코드플렉스(CodePlex)에서 깃허브(GitHub)로 옮겼다.[15]
건축
전통적으로 컴파일러는 애플리케이션 개발자들에게[16][dubious ] 블랙박스였다.그러나 현대 통합 개발 환경에서 소스 코드 분석의 복잡성과 요구가 증가함에 따라 컴파일러는 소스 코드의 어휘적, 통사적 구조 분석과 같은 컴파일 단계를 개발자가 직접 수행할 수 있도록 도와주는 API(응용프로그램 인터페이스)를 노출해야 한다.로슬린은 처음부터 그런 의도로 설계되었다.이것은 소스코드 분석을 위해 특별히 설계된 도구 개발의 장벽을 감소시킨다.로슬린의 API는 피쳐 API, 워크 스페이스 API, 컴파일러 API의 3가지 유형이다.기능 API를 통해 소스 코드 도구 개발자는 코드 리팩터링 및 수정을 할 수 있다.업무 공간 API를 통해 플러그인 개발자는 Visual Studio와 같은 통합 개발 환경(IDE)에서 특별히 필요한 변수 또는 코드 포맷의 참조를 찾는 등의 작업을 수행할 수 있다.컴파일러 API는 구문 트리를 수행하기 위한 직접 호출과 바인딩 흐름 분석을 수행함으로써 소스 코드의 보다 정교한 분석을 가능하게 한다.[17]와 같은 CLI(Common Language Infrastructure)의 오픈 소스 구현 사용.NET Core, Roslyn은 Linux, OS X, Windows에서 CLI 코드를 실행할 수 있는 플랫폼에 구애받지 않는 방식으로 컴파일할 수 있게 된다.[citation needed]
참고 항목
참조
- ^ "C# and Visual Basic - Use Roslyn to Write a Live Code Analyzer for Your API". msdn.microsoft.com. Retrieved January 7, 2019.
- ^ a b GitHub의 .NET 컴파일러 플랫폼("로슬린")
- ^ 닐 맥알리스터, 마이크로소프트의 로슬린: 우리가 알고 있는 컴파일러의 재창조, 개발자_월드, 2011-10-20
- ^ "Fabulous adventures in coding". About Eric Lippert. Eric Lippert. November 29, 2012.
- ^ "Hiring for Roslyn". Eric Lippert's MSDN blog. Eric Lippert. December 16, 2010.
- ^ Muir, Pat (October 5, 2014). "Roslyn hopes new TV show brings 15 more minutes of fame". Yakima Herald. Archived from the original on November 2, 2014. Retrieved November 1, 2014.
- ^ Microsoft "Roslyn" CTP 2012년 4월 18일 Microsoft 다운로드 센터 웨이백 머신에 보관
- ^ Microsoft "Roslyn" CTP, Microsoft 다운로드 센터
- ^ Microsoft "Roslyn"의 새로운 기능 2012년 9월 CTP, Visual Studio vNext 포럼
- ^ 알려진 제한 사항 및 구현되지 않은 언어 기능, Visual Studio vNext 포럼
- ^ .NET Foundation – 를 위한 오픈 소스 FoundationNET 커뮤니티
- ^ "Highlights from Build 2014's Second Keynote". InfoQ. Retrieved December 26, 2021.
- ^ Visual Studio 2015 RTM, 2015-07-20
- ^ 마이크로소프트 로슬린 vs.코드돔
- ^ 우리는 GitHub!, MSDN VBTeam 블로그, 2015-01-10으로 이동한다.
- ^ "Whitepaper: Roslyn Project Overview".
- ^ GitHub 문서의 Roslyn 개요
외부 링크
![]() | 위키북스는 의 주제에 관한 책을 가지고 있다.NET 개발 재단 |
- 공식 웹사이트
- C# 질문과 대답 MSDN 블로그에 Microsoft "Roslyn" CTP 소개
- C# 자주 묻는 질문 MSDN 블로그에서 Roslyn에게 빅 스위치 던지기