Есть ли у каждого языка .NET собственная встроенная библиотека или они следуют BCL (библиотека базовых классов Framework) платформы .NET?

На самом деле, у меня есть сомнения, поскольку Microsoft утверждает, что .net поддерживает около 60+ языков программирования, поэтому мой вопрос заключается в том, что все эти языки программирования имеют свои собственные библиотеки вместе с библиотекой базовых классов или все они используют библиотеку базовых классов.

если у них есть свои собственные библиотеки, то какой смысл использовать BCL

если они используют BCL, то все эти языки будут иметь разный синтаксис.


person Tayyab Husain    schedule 24.10.2020    source источник
comment
Все языки, поддерживающие .Net, компилируются в Common Intermediate Language, включая все сборки BCL. Таким образом, независимо от исходного языка, все сборки находятся в CIL и могут (как правило) использовать типы из других сборок CIL.   -  person Matthew Watson    schedule 24.10.2020
comment
Хотя вначале Microsoft поощряла разработку компиляторов для различных языков для .NET, сегодня вы обнаружите, что в основном поддерживаются языки C#. VB.NET находится в режиме обслуживания, а F# занимает свою нишу. Но это не имеет отношения к встроенным библиотекам, поскольку все сборки CIL могут взаимодействовать друг с другом, поэтому они вызывают один и тот же BCL. И что вы имеете в виду под другим синтаксисом?   -  person Martheen    schedule 24.10.2020
comment
Библиотеки не определяют синтаксис языка. Все они способны вызывать процедуры, в чем убедились 1960-е годы. Фреймворк сильно объектно-ориентирован, в отличие от многих языков, но это довольно легко скрыть. Пространство имен My в vb.net — хороший тому пример. Если вы хотите покопаться, посмотрите, как они перенесли Cobol на .NET: stackoverflow.com/questions/325177/   -  person Hans Passant    schedule 24.10.2020


Ответы (1)


Обе. Все языки .Net имеют доступ к BCL, но обычно существуют также некоторые дополнительные языковые библиотеки для поддержки общих идиом в языке.

Например, в F# есть библиотека FSharp.Core: https://fsharp.github.io/fsharp-core-docs/ с поддержкой конкретных типов и утилит F#.

person JacquesB    schedule 24.10.2020
comment
Большое спасибо за ответ, дружище, теперь мне все ясно. - person Tayyab Husain; 24.10.2020