Roslyn (compiler)

.NET Compiler Platform (Roslyn)
Original author(s)Microsoft
Developer(s).NET Foundation and the open source community
Stable release
.NET 7.0.0 / November 8, 2022; 2 years ago (2022-11-08)[1]
Repositorygithub.com/dotnet/roslyn
Written inC#, Visual Basic
Operating systemWindows, Linux and macOS
PlatformIA-32, x86-64
TypeCompiler
LicenseMIT License
Websitelearn.microsoft.com/en-us/dotnet/csharp/roslyn-sdk/

.NET Compiler Platform, also known by its codename Roslyn,[2] is a set of open-source compilers and code analysis APIs for C# and Visual Basic (VB.NET) languages from Microsoft.[3]

The project notably includes self-hosting versions of the C# and VB.NET compilers – compilers written in the languages themselves. The compilers are available via the traditional command-line programs but also as APIs available natively from within .NET code. Roslyn exposes modules for syntactic (lexical) analysis of code, semantic analysis, dynamic compilation to CIL, and code emission.[4]

Features

Features of Roslyn include:

History

The code name "Roslyn" was first written by Eric Lippert (a former Microsoft engineer[5]) in a post[6] that he published in 2010 to hire developers for a new project. He first said that the origin of the name was because of Roslyn, Washington, but later in the post he speaks ironically about the "northern exposure" of its office; the city of Roslyn was one of the places where the television series Northern Exposure was filmed.[7]

Microsoft made a community technology preview (CTP) available for public download in October 2011. It installed as an extension to Visual Studio 2010 SP1.[8]

The CTP was updated in September 2012[9] to include many updates to the Roslyn APIs introduced in the June 2012 and October 2011 CTPs, including breaking changes.[10] While the June 2012 CTP API is complete for the compilers, not all features were implemented for the C# and VB.NET languages.[11]

At the Build 2014 conference in San Francisco April 2014, Microsoft made the "Roslyn" project open-source and released a preview of the language integration for Visual Studio 2013. As of April 3, 2014, Roslyn is under the Apache License 2.0.[3] The project was effectively transferred under the stewardship of the newly founded .NET Foundation.[12] At the same conference, Xamarin announced that they are working on integrating the new compilers and tools in Xamarin Studio.[13]

The compilers were not feature-complete in this release. Each of the compilers contains features that are planned for the coming language versions (C# 6 and Visual Basic.NET 14). The APIs are also available through the NuGet package manager.[citation needed]

As of 2013, Roslyn supports VB and C#, and the compilers are written in their respective languages.[14] Roslyn's first release to manufacturing (RTM) was with Visual Studio 2015.[15]

In January 2015, Microsoft moved the Roslyn source code from CodePlex to GitHub.[16]

Architecture

Traditionally .NET compilers have been a black box for application developers.[17] With increasing complexity and demands for source code analysis in modern integrated development environments, however, compilers need to expose application programming interfaces (APIs) that will help developers to directly perform phases of compilation such as lexical and syntactic structure analysis of source code. Roslyn was designed with that intent from the beginning. This reduces the barrier in developing tools specifically designed for source code analysis. APIs of Roslyn are of three types: feature APIs, work-space APIs and compiler APIs. Feature APIs allow source code tool developers to do code refactoring and fixes. Work-space APIs allow plugin developers to perform actions specifically required in integrated development environments (IDEs) like Visual Studio such as finding references of a variable or code formatting. Compiler APIs allow even more sophisticated analysis of source code, by exposing direct calls to perform syntax tree and binding flow analysis.[18] Using an open-source implementation of Common Language Infrastructure (CLI) such as .NET Core, Roslyn will be able to compile in a platform-agnostic manner capable of running CLI code in Linux, OS X, and Windows.[citation needed]

See also

References

  1. ^ "Release .NET 7.0.0". GitHub. December 14, 2021. Retrieved May 5, 2022.
  2. ^ "C# and Visual Basic - Use Roslyn to Write a Live Code Analyzer for Your API". msdn.microsoft.com. July 24, 2015. Retrieved January 7, 2019.
  3. ^ a b .NET Compiler Platform ("Roslyn") on GitHub
  4. ^ Neil McAllister, Microsoft's Roslyn: Reinventing the compiler as we know it, DEVELOPER_WORLD, 2011-10-20
  5. ^ "Fabulous adventures in coding". About Eric Lippert. Eric Lippert. November 29, 2012.
  6. ^ "Hiring for Roslyn". Eric Lippert's MSDN blog. Eric Lippert. December 16, 2010.
  7. ^ 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.
  8. ^ Microsoft "Roslyn" CTP Archived April 18, 2012, at the Wayback Machine, Microsoft Download Center
  9. ^ Microsoft "Roslyn" CTP, Microsoft Download Center
  10. ^ What's New in the Microsoft "Roslyn" September 2012 CTP, Visual Studio vNext Forums
  11. ^ Known Limitations and Unimplemented Language Features, Visual Studio vNext Forums
  12. ^ .NET Foundation – Open Source Foundation for the .NET Community
  13. ^ "Highlights from Build 2014's Second Keynote". InfoQ. Retrieved December 26, 2021.
  14. ^ Microsoft Roslyn vs. CodeDom
  15. ^ Visual Studio 2015 RTM, 2015-07-20
  16. ^ We're moving to GitHub! Archived December 1, 2015, at the Wayback Machine, MSDN VBTeam Blog, 2015-01-10
  17. ^ "Whitepaper: Roslyn Project Overview". Microsoft.
  18. ^ Overview of Roslyn from GitHub documentation

Further reading

  • Vasani, Manish (2017). Roslyn Cookbook: Compiler as a Service, Code Analysis, Code Quality and more. Packt Publishing. ISBN 978-1787286832.
  • Harrison, Nick (2017). Code Generation with Roslyn. Apress. ISBN 978-1484222102.
  • Mukherjee, Sudipta (2017). Source Code Analytics With Roslyn and JavaScript Data Visualization. Apress. ISBN 978-1484219249.

Read other articles:

Daewoo K5 Daewoo K5 Jenis Pistol semi otomatis Negara asal  Republik Korea Sejarah produksi Perancang Daewoo Precision Industries Tahun 1984-1988 Produsen S&T Daewoo Varian lihat Varian Spesifikasi Berat 800 g Panjang 190 mm Panjang laras 105 mm Peluru 9 x 19 mm Parabellum Kaliber 9 mm Mekanisme Semi otomatis Jarak efektif 50 m Amunisi Magazen isi 12 atau 13 butir. Magazen kapasitas 13 butir bisa memuat sampai 14 butir peluru.[1][2][3] Alat...

 

Walikota Salatigaꦮꦭꦶꦏꦸꦛ​ꦱꦭꦠꦶꦒWalikutha SalatigaLambang Kota SalatigaMoto: Çrir Astu Swasti PrajabhyahSemboyan: Salatiga Hati Beriman (Sehat, Tertib, Bersih, Indah, dan Aman)PetahanaYasip Khasani (penjabat)sejak 13 Desember 2023KediamanRumah Dinas Walikota Salatiga Jl. Diponegoro No.1, Kel. Salatiga, Kec. Sidorejo, Kota Salatiga, Jawa Tengah 50711Masa jabatan5 tahunDibentuk1950Pejabat pertamaR. PatahSitus websalatiga.go.id Berikut adalah Daftar Wali Kota Salatiga ...

 

Peristiwa efek domino Domino-domino berjatuhan Efek domino (Inggris: domino effect) adalah sebuah efek kumulatif yang dihasilkan saat satu peristiwa menimbulkan serangkaian peristiwa serupa.[1] Istilah tersebut lebih dikenal sebagai efek mekanikal dan dipakai sebagai analogi barisan berjatuhan dari domino-domino. Referensi ^ domino effect. The Free Dictionary. Farlex, Inc. Diakses tanggal 29 September 2014.  Wikimedia Commons memiliki media mengenai Domino effect. Lebih lanju...

Hamlet in New York, United States Lily Dale redirects here. For other uses, see Lilydale. Part of a series onSpiritualism Main articles Spirit Spiritualism (movement) Spiritualist beliefs Spiritism Practices Mediumship Faith healing Psychometry Automatic writing Related topics Afterlife Spirit world Spirit guide Shamanism Animism Psychic Clairvoyance Paranormal Occult Ouija Parapsychology  Philosophy portal ·  Religion portalvte The dominant architectural style in Lily Dale...

 

Vietnamese Buddhist monk and activist (1926–2022) In this Vietnamese name, the surname is Thích. In accordance with Vietnamese custom, this person should be referred to by the given name, Nhất Hạnh. Thích Nhất HạnhNhất Hạnh in Paris in 2006TitleThiền Sư(Zen master)PersonalBornNguyễn Xuân Bảo(1926-10-11)11 October 1926Huế, Thừa Thiên, Annam, French IndochinaDied22 January 2022(2022-01-22) (aged 95)Huế, Thừa Thiên-Huế Province, VietnamReligionThiền Bud...

 

Scientific study of primates Primate research redirects here. For testing done on primates, see Animal testing on non-human primates. Olive baboon Primatology is the scientific study of non-human primates.[1] It is a diverse discipline at the boundary between mammalogy and anthropology, and researchers can be found in academic departments of anatomy, anthropology, biology, medicine, psychology, veterinary sciences and zoology, as well as in animal sanctuaries, biomedical research faci...

Keakuratan artikel ini diragukan dan artikel ini perlu diperiksa ulang dengan mencantumkan referensi yang dapat dipertanggungjawabkan. Diskusi terkait dapat dibaca pada the halaman pembicaraan. Harap pastikan akurasi artikel ini dengan sumber tepercaya. Lihat diskusi mengenai artikel ini di halaman diskusinya. (Pelajari cara dan kapan saatnya untuk menghapus pesan templat ini) PKI beralih ke halaman ini. Untuk kegunaan lain, lihat PKI (disambiguasi). Partai Komunis Indonesia PendiriSemaunDar...

 

Nuclear power plant in France Bugey Nuclear Power PlantBugey Nuclear Power PlantCountryFranceCoordinates45°47′54″N 5°16′15″E / 45.79833°N 5.27083°E / 45.79833; 5.27083StatusOperationalConstruction began1964Commission date15 April 1972;52 years ago (1972-04-15)Owner(s)EDFOperator(s)EDFEmployees1,703 (2017)Nuclear power station Reactors5Reactor typePWRPower generation Units operational2 × 910 MW2 × 880 MWMake...

 

Road in Los Angeles, California Obama BoulevardNamesakeBarack ObamaMaintained byLos Angeles Department of TransportationLength3.5 miles (5.6 km)LocationLos Angeles, CaliforniaWest endCulver City city limit near Ballona CreekEast endExposition Boulevard in Leimert Park, Los Angeles President Barack Obama Boulevard (commonly known as Obama Boulevard) is a major thoroughfare in South Los Angeles. It stretches 3.5 miles (5.6 km) from Baldwin Hills (past Baldwin Village and Cre...

هذه المقالة عن المجموعة العرقية الأتراك وليس عن من يحملون جنسية الجمهورية التركية أتراكTürkler (بالتركية) التعداد الكليالتعداد 70~83 مليون نسمةمناطق الوجود المميزةالبلد  القائمة ... تركياألمانياسورياالعراقبلغارياالولايات المتحدةفرنساالمملكة المتحدةهولنداالنمساأسترالي�...

 

American government official This biography of a living person needs additional citations for verification. Please help by adding reliable sources. Contentious material about living persons that is unsourced or poorly sourced must be removed immediately from the article and its talk page, especially if potentially libelous.Find sources: Adrianne Todman – news · newspapers · books · scholar · JSTOR (June 2023) (Learn how and when to remove this message)...

 

مايكروسوفت هولولنزالشعارمعلومات عامةالنوع سماعة الواقع المختلط — النظارات الذكية — سماعة الواقع المعزز — نظارة واقع افتراضي الصانع مايكروسوفت المطور مايكروسوفت موقع الويب microsoft.com… (الإنجليزية) الخصائصنظام التشغيل ويندوز ميكسد ريليتي القياساتالوزن 579 غرام تعديل - تعد�...

العلاقات الأفغانية الشمال مقدونية أفغانستان شمال مقدونيا   أفغانستان   شمال مقدونيا تعديل مصدري - تعديل   العلاقات الأفغانية الشمال مقدونية هي العلاقات الثنائية التي تجمع بين أفغانستان وشمال مقدونيا.[1][2][3][4][5] مقارنة بين البلدين هذه مقار�...

 

ルイテン168-9 bL 168-9 b 仮符号・別名 TOI-134 bQingluan 分類 太陽系外惑星地球型惑星 発見 発見年 2020年 発見者 TESS 発見方法 トランジット法[1] 軌道要素と性質 軌道長半径 (a) 0.02091 離心率 (e) 0.21 公転周期 (P) 1.4015日 軌道傾斜角 (i) 85.5 衛星の数 0 物理的性質 半径 0.124 RJ 質量 0.0145 MJ 表面温度 816.0 K ■Template (■ノート ■解説) ■Project ルイテン168-9 b(TOI-134 b)とは、�...

 

راشد سنييف (بالتتارية: Рәшит Гали улы Сөнәев)‏  معلومات شخصية الميلاد 1 مارس 1943 (العمر 81 سنة)[1]طشقند  مواطنة الاتحاد السوفيتي روسيا  عضو في الجمعية الملكية،  والأكاديمية الوطنية الألمانية للعلوم ليوبولدينا[2]،  والأكاديمية الوطنية للعلوم،  والأكادي�...

Species of oak tree This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages) This article relies largely or entirely on a single source. Relevant discussion may be found on the talk page. Please help improve this article by introducing citations to additional sources.Find sources: Quercus greggii – news · newspapers · books · scholar · JSTOR (May 2017)This article i...

 

حَنْبَل الرُّصَافي تخطيط اسم حنبل الرصافي بخط الثُّلُث معلومات شخصية اسم الولادة حنبل بن عبد الله بن فرج بن سعادة الرصافي الميلاد 510هـ أو 511هـ = 1120مالرصافة  الوفاة ليلة الجُمُعة 4 مُحرَّم 604هـ = 1207م (94 أو 95 سنة)بغداد،  الدولة العباسية مواطنة الدولة العباسية  الديانة ا�...

 

American anthropologist (1883–1957) Part of a series onAnthropology OutlineHistory Types Archaeological Biological Cultural Linguistic Social Archaeological Aerial Aviation Battlefield Biblical Bioarchaeological Environmental Ethnoarchaeological Experiential Feminist Forensic Maritime Paleoethnobotanical Zooarchaeological Biological Anthrozoological Biocultural Evolutionary Forensic Molecular Neurological Nutritional Paleoanthropological Primatological SocialCultural Applied Art Cognitive C...

Part of a series on theCulture of Poland History Middle Ages Renaissance Baroque Enlightenment Romanticism Positivism Young Poland Interbellum World War II Polish People's Republic Modern-day People Poles Ethnic minorities Refugees Crime Education Health care Languages Languages Polish Yiddish German Lithuanian Ruthenian Romani (Baltic Romani North Central Romani Sinte Romani Vlax Romani) Silesian Kashubian Vilamovian Traditions Mythology Cuisine Festivals Religion Art Artists Painters Archi...

 

German artist (1887–1948) Kurt SchwittersSchwitters in London, 1944BornKurt Hermann Eduard Karl Julius Schwitters(1887-06-20)20 June 1887Hanover, German EmpireDied8 January 1948(1948-01-08) (aged 60)Kendal, EnglandEducationDresden AcademyKnown forDancing, collage, artist's book, installation, sculpture, poetryNotable workDas Undbild, 1919MovementMerz Kurt Hermann Eduard Karl Julius Schwitters (20 June 1887 – 8 January 1948) was a German artist. He was born in Hanover, Germany, b...