Live data from Hacker News

Anders Hejlsberg on Modern Compiler Construction (2016) [video]

youtube.com

21–30 of 45 posts

Re: Anders Hejlsberg on Modern Compiler Construction (2016) [video]

#21

There's so much that's great about C#, and that results from really smart, pragmatic, forward-looking language design, that I find it surprising how many aspects of C# development are hampered by really bad design. Specifically, the backwards compatibility story of the standard library is a mess (all the different .NET Framework versions, or wait, do I mean .NET Standard, or WinRT, or...?) and the package manager (Nu…

There is a pretty promising answer to the current package management problems called OneGet:https://github.com/OneGet/oneget

Unfortunately it looks like the original creator/designer was moved off the project and it seems like it has suffered from some internal political issues. Development is happening on it but it looks pretty slow.

Re: Anders Hejlsberg on Modern Compiler Construction (2016) [video]

#22

There's so much that's great about C#, and that results from really smart, pragmatic, forward-looking language design, that I find it surprising how many aspects of C# development are hampered by really bad design. Specifically, the backwards compatibility story of the standard library is a mess (all the different .NET Framework versions, or wait, do I mean .NET Standard, or WinRT, or...?) and the package manager (Nu…

Yeah, I think the switch to .NET Core has been much more painful than it should have been in hindsight. It is vastly improving though and seems like a good choice for new projects.

C# is still massive for web/cloud development, including in finance.

Re: Anders Hejlsberg on Modern Compiler Construction (2016) [video]

#23

There's so much that's great about C#, and that results from really smart, pragmatic, forward-looking language design, that I find it surprising how many aspects of C# development are hampered by really bad design. Specifically, the backwards compatibility story of the standard library is a mess (all the different .NET Framework versions, or wait, do I mean .NET Standard, or WinRT, or...?) and the package manager (Nu…

There is a pretty promising answer to the current package management problems called OneGet: https://github.com/OneGet/oneget Unfortunately it looks like the original creator/designer was moved off the project and it seems like it has suffered from some internal political issues. Development is happening on it but it looks pretty slow.

OneGet is for Windows package manager. Not .net

Re: Anders Hejlsberg on Modern Compiler Construction (2016) [video]

#24

There's so much that's great about C#, and that results from really smart, pragmatic, forward-looking language design, that I find it surprising how many aspects of C# development are hampered by really bad design. Specifically, the backwards compatibility story of the standard library is a mess (all the different .NET Framework versions, or wait, do I mean .NET Standard, or WinRT, or...?) and the package manager (Nu…

Every time I hear someone say that C# is a well designed language I think of the story of how they had to hack the compiler to get async/await to work, and how F# implemented the same feature as a library. I guess there are different levels of "well designed".

Re: Anders Hejlsberg on Modern Compiler Construction (2016) [video]

#25
post #24

There's so much that's great about C#, and that results from really smart, pragmatic, forward-looking language design, that I find it surprising how many aspects of C# development are hampered by really bad design. Specifically, the backwards compatibility story of the standard library is a mess (all the different .NET Framework versions, or wait, do I mean .NET Standard, or WinRT, or...?) and the package manager (Nu…

Every time I hear someone say that C# is a well designed language I think of the story of how they had to hack the compiler to get async/await to work, and how F# implemented the same feature as a library. I guess there are different levels of "well designed".

I don't know about the compiler internals, but from the perspective of a C# user, async/await is really excellent. It's easy to use and the resulting code is easy to read and understand. Much simpler than chained futures, Go-style channels, etc. It's good language design in that sense (the implementation may or may not be good).

Re: Anders Hejlsberg on Modern Compiler Construction (2016) [video]

#26

There's so much that's great about C#, and that results from really smart, pragmatic, forward-looking language design, that I find it surprising how many aspects of C# development are hampered by really bad design. Specifically, the backwards compatibility story of the standard library is a mess (all the different .NET Framework versions, or wait, do I mean .NET Standard, or WinRT, or...?) and the package manager (Nu…

You are definitely right with the library shism (Silverlight to blame). But, on the other hand, it also shows how adaptive this environment is. And not only the language but also the base class library, which independent of actual Factorings (like Silverlight, WinRT, Framework, Mono whatever) allowed a familiar environment to program in.

Java had also its moments (mobile Java, ee java, Android/Google Java, or Microsoft J++ (which btw. Was also Anders doing). About Python I just say 2/3 and let us not start with JavaScript. Languages and class libraries evolve and adapt. Not always to the better but they do and should.

Re: Anders Hejlsberg on Modern Compiler Construction (2016) [video]

#27

There's so much that's great about C#, and that results from really smart, pragmatic, forward-looking language design, that I find it surprising how many aspects of C# development are hampered by really bad design. Specifically, the backwards compatibility story of the standard library is a mess (all the different .NET Framework versions, or wait, do I mean .NET Standard, or WinRT, or...?) and the package manager (Nu…

There are many people doing all kind of C# stuff. The Exodus which started with node.js is long over and - from my perspective - C# is used all over in any domain and area.

Re: Anders Hejlsberg on Modern Compiler Construction (2016) [video]

#28
post #26

There's so much that's great about C#, and that results from really smart, pragmatic, forward-looking language design, that I find it surprising how many aspects of C# development are hampered by really bad design. Specifically, the backwards compatibility story of the standard library is a mess (all the different .NET Framework versions, or wait, do I mean .NET Standard, or WinRT, or...?) and the package manager (Nu…

You are definitely right with the library shism (Silverlight to blame). But, on the other hand, it also shows how adaptive this environment is. And not only the language but also the base class library, which independent of actual Factorings (like Silverlight, WinRT, Framework, Mono whatever) allowed a familiar environment to program in. Java had also its moments (mobile Java, ee java, Android/Google Java, or Microso…

Hmm, I don't think Java has had it nearly as bad historically (possibly apart from the old mobile Java profiles, which I agree were quite painful). Any code using the core classes (math, collections, basic I/O) would always work fine on any JVM, including Android. Porting pure Java code to Android has always been very easy, as it should be.

Whereas I've found with C# that even perfectly innocuous-looking functions would be mysteriously unavailable in Silverlight, say. It has been very hard to pick a C# library subset that's both portable and useful, and Microsoft seem to have taken an awfully long time to sort that out.

Re: Anders Hejlsberg on Modern Compiler Construction (2016) [video]

#29
post #12

Earlier quoted context omitted.

Here you go : https://www.youtube.com/channel/UCHnBsf2rH-K7pn09rb3qvkA :)

Looks great! Do you know if this is (or maybe some other course) more project based approach, where at the end of the course you have e.g. SQLite-ish ACID compliant system completed?

I know for the advanced database course the students end up writing a new feature for an existing database called Peloton, which is a research project at CMU[0]. You obviously aren't writing the whole thing from scratch though.

[0]: https://github.com/cmu-db/peloton

Re: Anders Hejlsberg on Modern Compiler Construction (2016) [video]

#30
post #3

Original author of Turbo Pascal, chief architect of Delphi, lead architect of C#, creator of TypeScript. Does anyone else in language design have as many accolades as this or designed languages on which trillions of dollars of commerce depend?

Barbara Liskov, who won the 2008 Turing Award for her work in the design of programming languages and software methodology that led to the development of object-oriented programming. Her work at MIT on the CLU programming language influenced many modern languages, interfaces, exception handling, abstraction mechanisms, etc. She was my undergraduate thesis advisor in 1974.
Post reply on HN