Shhh no class consciousness on HN allowed
Waiting for async to finish and await are two different things. Async functions essentially have a different calling convention than standard functions. They're either converting your code into continuation passing…
I keep asking LLMs if I can define an interface implementation as an expression or without creating a new type in C# Every single one I ask always happily says yes, and starts claiming C# has local classes (a feature of…
Any lesser known knobs one should know? I'm considering a .NET backend for my compiler
I've been working on a C++ backend for F# and while I'm very familiar with F# and it's AST I barely know C++. The amount of time I save being able to ask things, check my understanding, get design patterns, and paste…
Now do it with code
A lot of code ends up being easy to factor out into small pieces for tests. I can't speak for Haskell but coming from another ML with eager evaluation step debugging works as you would expect
I like to think about it as a VM that all the major browsers agreed to implement, designed by a broad group of stake holders with lessons from past plugin and VM systems For that it's pretty cool. I still wish we had…
Certain algorithms are a lot easier. It's not needed though
They're modeling reactivity, not classes. It's a well established pattern in functional programming The one time setup mixed with repeated render calls is odd, but it's a design decision they made. It reduces boiler…
This is a direction I've been pushing in partly because I'm using a significantly slower type inference algorithm in my language. I'm hoping with that and focusing on separate compilation I'll be able to keep the fancy…
Afaik that is true of traditional HM, but fortunately there was a big advancement in inferring subtypes w/ Dolan's Algebraic Subtyping a few years ago! It's not nearly as fast as HM (O(n^3) worst case) but generally…
I've been left out of the loop by people before because of it. It's not a big deal but it's annoying to have it come up all the time
There's definitely tradeoffs to some things, and I think in particular Rust's static guarantees can cause additional friction, but in general I've found ML derived languages to be extremely practical because it's a good…
Good to hear they're providing a good dev experience. My only gripe at the time was more of a worry on whether the split was going to be worthwhile because the ML ecosystem is already so small, but I'm glad to hear the…
> And we should all try to do something weird. YES It's a big world out there and there's so many cool techniques we know are helpful but aren't widespread and really should be, and so much more to be discovered still!
You got me thinking and I think part of what it comes down to for typed FP languages is that you can either generally 1) Go for a simple design, but having poor interop with existing ecosystems because the language…
Yeah I'm not saying immutability solves the problem, I am saying that having good support for immutability is helpful for building those synchronization and rollback systems. If I thought immutability was all you needed…
I'm not the person you replied to, but symbols are easier to distinguish visually, tho they need careful balance. Too many are worse than too few
For those wondering why they've created yet another language, keep this in mind: Fortnite content is running code on possibly 100 remote clients simultaneously, and code often has state that needs to be synchronized…
Push to talk is another important one (for me)
This has been hitting me hard lately in my late 20s. I'm realizing all of the cool "new" concepts I'm learning have been around since the 60s It's made me rethink the supposed "skill reset" that happens in software…
I know this is anecdotal but tools like f.lux made a huge different for me. I grew up with difficulties falling asleep and blue light filters like f.lux made an immediate impact on my ability to fall asleep on time. I…
What these all have in common though, is encouraging shared mutable references, they don't do a lot to make effects in a system explicit, don't encourage a clear organization of code, and many fundamental concepts…
I've always been frustrated that active record ORMs have completely overtaken tools like Linq2Sql. I don't deny the value of the active record pattern where it works, but in almost every case I've used SQL over the past…
Shhh no class consciousness on HN allowed
Waiting for async to finish and await are two different things. Async functions essentially have a different calling convention than standard functions. They're either converting your code into continuation passing…
I keep asking LLMs if I can define an interface implementation as an expression or without creating a new type in C# Every single one I ask always happily says yes, and starts claiming C# has local classes (a feature of…
Any lesser known knobs one should know? I'm considering a .NET backend for my compiler
I've been working on a C++ backend for F# and while I'm very familiar with F# and it's AST I barely know C++. The amount of time I save being able to ask things, check my understanding, get design patterns, and paste…
Now do it with code
A lot of code ends up being easy to factor out into small pieces for tests. I can't speak for Haskell but coming from another ML with eager evaluation step debugging works as you would expect
I like to think about it as a VM that all the major browsers agreed to implement, designed by a broad group of stake holders with lessons from past plugin and VM systems For that it's pretty cool. I still wish we had…
Certain algorithms are a lot easier. It's not needed though
They're modeling reactivity, not classes. It's a well established pattern in functional programming The one time setup mixed with repeated render calls is odd, but it's a design decision they made. It reduces boiler…
This is a direction I've been pushing in partly because I'm using a significantly slower type inference algorithm in my language. I'm hoping with that and focusing on separate compilation I'll be able to keep the fancy…
Afaik that is true of traditional HM, but fortunately there was a big advancement in inferring subtypes w/ Dolan's Algebraic Subtyping a few years ago! It's not nearly as fast as HM (O(n^3) worst case) but generally…
I've been left out of the loop by people before because of it. It's not a big deal but it's annoying to have it come up all the time
There's definitely tradeoffs to some things, and I think in particular Rust's static guarantees can cause additional friction, but in general I've found ML derived languages to be extremely practical because it's a good…
Good to hear they're providing a good dev experience. My only gripe at the time was more of a worry on whether the split was going to be worthwhile because the ML ecosystem is already so small, but I'm glad to hear the…
> And we should all try to do something weird. YES It's a big world out there and there's so many cool techniques we know are helpful but aren't widespread and really should be, and so much more to be discovered still!
You got me thinking and I think part of what it comes down to for typed FP languages is that you can either generally 1) Go for a simple design, but having poor interop with existing ecosystems because the language…
Yeah I'm not saying immutability solves the problem, I am saying that having good support for immutability is helpful for building those synchronization and rollback systems. If I thought immutability was all you needed…
I'm not the person you replied to, but symbols are easier to distinguish visually, tho they need careful balance. Too many are worse than too few
For those wondering why they've created yet another language, keep this in mind: Fortnite content is running code on possibly 100 remote clients simultaneously, and code often has state that needs to be synchronized…
Push to talk is another important one (for me)
This has been hitting me hard lately in my late 20s. I'm realizing all of the cool "new" concepts I'm learning have been around since the 60s It's made me rethink the supposed "skill reset" that happens in software…
I know this is anecdotal but tools like f.lux made a huge different for me. I grew up with difficulties falling asleep and blue light filters like f.lux made an immediate impact on my ability to fall asleep on time. I…
What these all have in common though, is encouraging shared mutable references, they don't do a lot to make effects in a system explicit, don't encourage a clear organization of code, and many fundamental concepts…
I've always been frustrated that active record ORMs have completely overtaken tools like Linq2Sql. I don't deny the value of the active record pattern where it works, but in almost every case I've used SQL over the past…