.Net in Linux/Mac

  • Thread starter Thread starter Perlom
  • Start date Start date
P

Perlom

Hi,

I heard that there is some third party effort to import .Net framework in
Unix/Mac systems. Does anybody know where that attempt reached? any
resources or links that I can learn more about this?

Thanx in advance
 
You should check out the Mono project at http://www.go-mono.com

Matt Hawley, MCAD .NET
http://www.eworldui.net

Hi,

I heard that there is some third party effort to import .Net framework in
Unix/Mac systems. Does anybody know where that attempt reached? any
resources or links that I can learn more about this?

Thanx in advance
 
Quote: "Will be updated around the time of the next major .NET"

I did not realise that this was intended to run hand-in-hand; I thought it
was only an example of an alternative implementation of the CLR without the
rest of the framework. Am I missing something?

Martin.
 
Martin Robins said:
Quote: "Will be updated around the time of the next major .NET"
I did not realise that this was intended to run hand-in-hand; I thought it
was only an example of an alternative implementation of the CLR without the
rest of the framework.>
No the Rotor distribution is implemented by the same team that does the CLR.
It is intended to be an example implementation of the ECMA CLI and the ECMA
FCL specs. Microsoft's CLR is a product implemetation of the CLI + FCL + BCL
(Base Class Library). I don't have my ECMA partition specs handy to get it
exact but there is different levels of library compatability called
"profiles" defined in the spec and I believe the kernel profile specifies
the FCL - Fundamental Class Library - mscorlib - System stuff. The BCL adds
all the Microsoft stuff.

Sam Gentile
Microsoft MVP - C#/.NET
 
Sam Gentile said:
I don't have my ECMA partition specs handy to get it
exact but there is different levels of library compatability called
"profiles" defined in the spec and I believe the kernel profile specifies
the FCL - Fundamental Class Library - mscorlib - System stuff. The BCL adds
all the Microsoft stuff.

The BCL is a subset of what the ECMA calls the standard libraries. All of
the BCL is in mscorlib.

The minimum profile is called the Kernel profile, and it requires an
implementation to include the BCL and the runtime infrastructure library
(very low-level types). You can actually punt away a lot of things that most
people take for granted and still have a legal CLI implementation.

As for what you're calling the "Microsoft stuff" - there's of course nothing
in the ECMA specs about any Microsoft.* types, and of course nothing in the
BCL. The standard library is a superset of the BCL, and the commercial
distribution (as well as the Rotor release for that matter) is a superset of
the standard libraries.
 
You're right. There's nothing in the specs about the .NET Framework that
Microsoft ships as it a superset of all the profiles. It looks like it is
BCL (from Partition IV):

1.1 The Kernel Profile
This profile is the minimal possible conforming implementation of the CLI.
It contains the types commonly found in a modern programming language class
library plus the classes needed by compilers targeting the CLI.

Contents: Base Class Library, Runtime Infrastructure Library

1.2 The Compact Profile
This Profile is designed to allow implementation on devices with only modest
amounts of physical memory yet provides more functionality than the Kernel
Profile alone. It also contains everything required to implement the
proposed ECMAScript compact profile.

Contents: Kernel Profile, XML Library, Network Library, Reflection Library

1 The Standard Libraries
The detailed content of each Library, in terms of the types it provides and
the changes it makes to types in other Libraries, is provided in XML form.
This section provides a brief description of each Library's purpose as well
as specifying the features of the CLI required by each Library beyond those
required by the Kernel Profile.

1.1 Runtime Infrastructure Library
The Runtime Infrastructure Library is part of the Kernel Profile. It
provides the services needed by a compiler to target the CLI and the
facilities needed to dynamically load types from a stream in the file format
specified in Partition II_alink_partitionII. For example, it provides
System.BadImageFormatException, which is thrown when a stream that does not
have the correct format is loaded.

Name used in XML: RuntimeInfrastructure

CLI Feature Requirement: None

1.2 Base Class Library
The Base Class Library is part of the Kernel Profile. It is a simple runtime
library for modern programming languages. It serves as the Standard for the
runtime library for the language C# as well as one of the CLI Standard
Libraries. It provides types to represent the built-in data types of the
CLI, simple file access, custom attributes, security attributes, string
manipulation, formatting, streams, collections, and so forth.

Name used in XML: BCL

CLI Feature Requirement: None

1.3 Network Library
The Network Library is part of the Compact Profile. It provides simple
networking services including direct access to network ports as well as HTTP
support.

Name used in XML: Networking

CLI Feature Requirement: None

1.4 Reflection Library
The Reflection Library is part of the Compact Profile. It provides the
ability to examine the structure of types, create instances of types, and
invoke methods on types, all based on a description of the type.

Name used in XML: Reflection

CLI Feature Requirement: Must support Reflection, see Section
5.1_5.1_Runtime_Infrastructure_Library.

1.5 XML Library
The XML Library is part of the Compact Profile. It provides a simple
"pull-style" parser for XML. It is designed for resource-constrained
devices, yet provides a simple user model. A conforming implementation of
the CLI that includes the XML Library shall also implement the Network
Library (see Section 5.3_5.3_Network_Library).

Name used in XML: XML

CLI Feature Requirement: None

1.6 Extended Numerics Library
The Extended Numerics Library is not part of any Profile, but can be
supplied as part of any CLI implementation. It provides the support for
floating-point (System.Single, System.Double) and extended-precision
(System.Decimal) data types. Like the Base Class Library, this Library is
directly referenced by the C# standard.



--
----------------------------------
Sam Gentile
MVP - C#/.NET
INETA Speaker http://www.ineta.org/DesktopDefault.aspx
Read my blog at http://samgentile.com/blog/
 
Back
Top