Live data from Hacker News

TypeScript 7

devblogs.microsoft.com

271–280 of 321 posts

Re: TypeScript 7

#271
post #186

Earlier quoted context omitted.

In 2004 we solved the types for JS with ECMAScript 4 (or ActionScript 2.0). Unfortunately this was in the middle of browser wars, so no one cared about the standards and all of that work was lost like tears in rain. Around that time I attended MS conference where they introduced IntelliSense and it was a forming experience for myself. You could do actual programming basically with , , arrow keys and . "x = " and ther…

God, do you remember that presentation Google gave when they introduced Angular 2.0? I think it was December 2015. It was sooo bad that in my eyes it killed Angular's momentum almost completely. I am surprised that it is still around actually. Can't find it anywhere though. Google must've censored it of the internet :)

I joined a consultancy a few years ago and Angular is the de facto standard at most enterprises we work for; I'm as surprised as you are.

Re: TypeScript 7

#272
post #6

Earlier quoted context omitted.

I am not sure a rust rewrite would be meaningful. Go is great because it's fast to code.It's easy to reimplement typescript in go 1:1 just by looking at the code. Rust on the other hand would take a lot longer to develop. Maybe rust is 20% faster than go but overall the increase from typescript with go is good enough. Maybe rust would yield a 14 times speedup over the 11 times in vscode but go is already good enough…

The benefit to Rust rewrite would be integration with the rest of the JS tooling ecosystem which is increasingly written in Rust rather than performance. It probably won't ever happen though. > It's easy to reimplement typescript in go 1:1 just by looking at the code. That's also true of Rust if your codebase is written in a functional style. But apparently TSC had a lot of inheritance, which probably isn't a great f…

Can you elaborate why that's a factor? The tools are just binaries in how they're used, the language they're written in is no longer a factor then.

It's a good argument if you're talking about transferable skills though, I can imagine some contributors work on both TS and Biome, for example. This is why a lot of JS tools were initially written in JS, too.

Re: TypeScript 7

#273
post #16

Earlier quoted context omitted.

Steve Francia (author of Hugo and a bunch of other top Go projects) wrote up some thoughts of Go's fit in the agentic era: https://spf13.com/p/go-the-agentic-language/

> in my experience, a change that stays local in Go ripples through lifetimes and trait bounds in Rust imo extensive use of generics/trait bounds and explicit lifetimes in Rust is a huge code smell. Large projects should be making liberal use of trait objects and smart pointers to keep everything understandable and modular. Giving an agent a simple coding practice SOP for Rust should be enough to garuntee basically t…

I'm reading a lot of style / flavor / quality / vibes in your reply, something that will be different between every developer (for the most part); the thing with Go is that there's a lot less of that in the wider ecosystem.

Re: TypeScript 7

#274
post #57

the real story here is an incredible team that managed to simultaneously keep two separate codebases alive for the most advanced type system known to mankind (yeahhh yeahh Hindley-Milner eat your heart out). huge congrats to the team! looking forward to the Rust rewrite ;)

They picked Go after meaningfully considering Rust (and others). I don't remember all the reasons for it but it was detailed in the original blog post.

There's the blog post (by Anders Hejlsberg, the author of Turbo Pascal, chief architect of Delphi, currently lead architect of C# and a core developer of TS; I'd say he knows his languages), but they also posted FAQs, here's some good reads:

The blog post: https://devblogs.microsoft.com/typescript/typescript-native-...

Why Go? https://github.com/microsoft/typescript-go/discussions/411

Why a port instead of a rewrite? https://github.com/microsoft/typescript-go/discussions/410

Re: TypeScript 7

#275

Awesome! Off-topic, can we get something like TS for PHP now? Tools like PHPStan work fine, but I'd love a typed language on top of PHP that can catch a lot of things on compile time. I want to be able to compile my symfony routes, avoiding as much as possible on runtime. I've been thinking about this since 2022 and haven't really gotten further than "Hmm, I would like this". I'm aware that tooling catches most stuff…

Have you considered Hack (https://hacklang.org/)? it's PHP with types from Facebook, probably the biggest contributor to the PHP ecosystem at the moment.

It does need a compiler though, unlike TS where an interpreter can just strip / ignore type annotations. But IMO, a compile step is worth it if you get type assurances in return.

Re: TypeScript 7

#276

Remember when people would argue about how types weren't worth the effort? I love TypeScript, if nothing else for how it's been able to popularize types.

I don't recall anyone disliking types . Lots of people disliked static typing , or more directly static, explicit typing . For instance, I've been around many conversations over the years where people would say goofy things like they couldn't use Python because it's untyped. That's insane: Python is strongly typed. It's also dynamically typed, which is a different dimension. There are some genuinely untyped languages…

> I've been around many conversations over the years where people would say goofy things like they couldn't use Python because it's untyped.

I'm one of those, but what I mean is that there are no static types you (and the compiler) can reason about.

Moreover there's a difference between types as compiler bookkeeping, as in Fortran or C, and types as propositions about program behavior like in ML, which highly influenced modern type systems, including TypeScript, albeit Ocaml, F# and the Rust type system belong to the ML family.

Re: TypeScript 7

#277
post #186

Earlier quoted context omitted.

In 2004 we solved the types for JS with ECMAScript 4 (or ActionScript 2.0). Unfortunately this was in the middle of browser wars, so no one cared about the standards and all of that work was lost like tears in rain. Around that time I attended MS conference where they introduced IntelliSense and it was a forming experience for myself. You could do actual programming basically with , , arrow keys and . "x = " and ther…

God, do you remember that presentation Google gave when they introduced Angular 2.0? I think it was December 2015. It was sooo bad that in my eyes it killed Angular's momentum almost completely. I am surprised that it is still around actually. Can't find it anywhere though. Google must've censored it of the internet :)

Angular is super used across the industry.

It's more common on consultancy than product companies.

Re: TypeScript 7

#278
post #79

Earlier quoted context omitted.

> TypeScript just gets in the way of that for me. Not just because it requires an explicit compile step, but because it pollutes the code with type gymnastics that add ever so little joy to my development experience, and quite frequently considerable grief. Things that should be easy become hard, and things that are hard become `any`. No thanks! That comment is expected by a Ruby enthusiast, which is arguably one of…

Types are a safeguard, they rule out certain errors. So using them is mostly for maintainability, and especially in large codebases and teams that becomes a thing. I think that comment is clear in that he likes to work alone which for problems of a certain size just isn't feasible

This is such a limited view on types.

The concept of them being more than compiler bookkeeping, but as propositions about program behavior and invariant encoding is more than 50 years old at this point.

Re: TypeScript 7

#279

Earlier quoted context omitted.

God, do you remember that presentation Google gave when they introduced Angular 2.0? I think it was December 2015. It was sooo bad that in my eyes it killed Angular's momentum almost completely. I am surprised that it is still around actually. Can't find it anywhere though. Google must've censored it of the internet :)

I joined a consultancy a few years ago and Angular is the de facto standard at most enterprises we work for; I'm as surprised as you are.

Angular has C# and Java vibes, especially with frameworks like Spring. React is on the other side of that spectrum.
Post reply on HN