2009-03-10 4 views

Trả lời

35

Có, nhưng có kế hoạch viết trình biên dịch C# trong C#, mà tôi tin rằng đã được thảo luận trong this podcast.

+2

Hm, trên bề mặt có vẻ ngớ ngẩn, giống như làm thức ăn cho chó trong thức ăn cho chó. Tôi chắc chắn nó có công đức, mặc dù. –

+0

Vậy điều gì sẽ được sử dụng để biên dịch trình biên dịch được viết bằng C#? Nói về đệ quy! –

+16

@Josh: phiên bản trước của trình biên dịch. Nó lặp lại, không đệ quy. Họ không sử dụng cùng một phiên bản của trình biên dịch để biên dịch chính nó. Thay vào đó, họ thực hiện phiên bản tiếp theo của trình biên dịch bằng cách sử dụng phiên bản trước đó. –

22

Có.

Trình biên dịch Mono C# được viết bằng C#.

+6

Trình biên dịch biên dịch trình biên dịch C# mono cũng được viết bằng C#? –

8

Có - đa số CLR. Nếu bạn muốn xem bên trong của CLR và/hoặc các trình biên dịch Tôi xin đề nghị chia sẻ mã nguồn CLI từ Microsoft (aka Rotor):

Nhưng, có thực sự là một trình biên dịch được viết bằng C#. Tôi tin rằng Mono được viết theo cách đó. Tải xuống Mono sources và tự tìm hiểu.

18

Các NET framework được viết bằng Simple Managed C (SMC)

Lịch sử

Trong sự phát triển của .NET Framework, các thư viện lớp ban đầu được viết bằng một trình biên dịch mã số quản lý Hệ thống được gọi là Simple Managed C (SMC). Vào tháng 1 năm 1999, Anders Hejlsberg đã thành lập một nhóm để xây dựng một ngôn ngữ mới vào thời điểm gọi là Cool, viết tắt của "C-like Object Oriented Language". [16] Microsoft đã xem xét giữ tên "Cool" là tên cuối cùng của ngôn ngữ, nhưng đã chọn không làm như vậy vì lý do thương hiệu. Vào thời điểm dự án .NET được công bố tại Hội nghị phát triển chuyên nghiệp tháng 7 năm 2000, ngôn ngữ đã được đổi tên thành C#, và các thư viện lớp và thời gian chạy ASP.NET đã được chuyển đến C#.

Từ: http://en.wikipedia.org/wiki/C_Sharp_%28programming_language%29

+0

Điều này trả lời một câu hỏi, nhưng không trả lời câu hỏi của OP. – ProfK

9

Có một mới (tính đến cuối năm 2011) C# và trình biên dịch VB được viết bởi Microsoft gọi Roslyn được viết bằng C# và VB.NET tương ứng. Trang dự án là here. Trình biên dịch Roslyn được viết dưới dạng một thư viện cho thấy một API công khai phong phú. Có một bài báo tin tức here về nó từ InfoWorld.

CẬP NHẬT: Kể từ ngày 3 tháng 4 năm 2014, Roslyn là nguồn mở theo Giấy phép Apache 2.0.