Coffeehouse Thread

10 posts

Creating a new .NET language

Back to Forum: Coffeehouse
  • User profile image
    TommyCarlier

    I have some ideas for a new .NET language, but I'm not sure if it's worth developing. I think for a new language to really take off, it needs supporting tools, like an IDE. I think integration with Visual Studio is a great advantage. So I have some questions. Is it really worth it? What features would you like to see in a new language? What do you not like in existing languages? Does anyone have experience with integrating a new language with Visual Studio? Any ideas for naming the language?

  • User profile image
    Deactivated User

    Comment removed at user's request.

  • User profile image
    TommyCarlier

    How I would pull it off? That's technical details (writing a parser, writing a compiler using reflection/emit, ...). I'm not worried about the technical side (yet). The point of the language? What's the point of VB or C#? To make it easier to write applications. The naming of the language is not the main problem, that was just a question I added later. That's of course not the most important issue.

  • User profile image
    Deactivated User

    Comment removed at user's request.

  • User profile image
    TommyCarlier

    It's supposed to be a broad range language, inspired by other languages, but designed from scratch. C# is nice, but I think its syntax looks too much like Java and C++. Not that that's a bad thing, but some features about it I don't like. I also want the language to have more than just some pretty syntax.

  • User profile image
    Deactivated User

    Comment removed at user's request.

  • User profile image
    Shiv

    there was a session in PDC titled  "Compiler in one Hour" . check its video  for the basics in developing for a language in .net . it will be usefull in learning the internals like compilers, parsers etc. but in order to make a new language that should be used by a large no of people it needs some thing different and useful enough to migrate from their current language and learn a new one . thats difficult.

  • User profile image
    TommyCarlier

    Thank you, Shiv. I just watched the video of that PDC session, and it's very inspiring. Shmuelpro, watch the video if you want to see how the technical part of a compiler can be implemented. Fascinating stuff.

  • User profile image
    chubs

    I have ideas more for a framework...

    I would like to see 2 types of frameworks:

    First, a data-oriented language that deals specificly with manipulating large datasets. This would basically work like LINQ, dynamically creating strongly typed classes for access to any database connection. Yes, Typed Datasets already do this; however, they would be dynamic and always automatically reflect the data format that is in the database.

    The primary purpose of the framework would be to manipulate data that is in XML or SQL Datasources beyond what any SQL query could do without needing to understand Stored Procedures. In the enviornment you would specific one or more various datasources. The schema's of the datasources would then be reflected in the .net framework so IntelliSense would work when you're writing the data scripts. Finally, you could run the scripts and manipulate whatever datasource you want to manipulate. The scripts would be compiled of course.

    The second framework would be something like Ruby on Rails for the .net framework... another "Convention over Configuration" framework. If you haven't used Rails yet this being forced to build your application a certain way is really nice. It seems like its very limiting at first but it actually makes developing easier, you don't have to think too much about how to build/structure the application correctly. The ASP.net web projects are more difficult to code MVC style; you have to think more about it anyway.

  • User profile image
    Wil

    There are of course plenty of special-purpose .NET languages offered by third-party vendors.  Here are just two examples.  So it is more nearly a question of, "Do we need a new language?", rather than "Do we need a new .NET language?"  If the language itself fits a need, then it can be integrated into .NET - sort of.  Note that even an extremely popular language such as C++ has to be extensively modified (first as "Managed C++" and then as "C++/CLI") to fit its square peg into .NET's round holes, since the language standard and the .NET Framework have totally different ideas about memory management. Wink  If you are designing a language specifically for .NET, of course, that wouldn't be a problem.  But C# is already a language written specifically for .NET, so why not just develop an alternate syntax for C#?  (Yeah, that's been done too - it's called VB.NET!)

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.