BoydStephenSmithJr

joined 2 years ago
[–] [email protected] 1 points 2 months ago

@[email protected] I agree, but maybe it's not easy to avoid MS Windows for many users. OS X only (officially) runs on Apple hardware. Linux is pretty easy to install these days, but has an even worse support structure for many users, and plenty of its own downsides.

[–] [email protected] 1 points 2 months ago (3 children)

@JRepin For most purposes, I think tmux is the better software.

[–] [email protected] 1 points 11 months ago

@jaror I never liked it; I think if you can't be bothered to assign a name, point-free combinators are what you should be using.

I also think it gets much uglier or complicated (or both) once you have arguments (unlike getLine, but like most subroutines).

That said, I wouldn't take it away from anyone. I think the desugaring is unsurprising and, at least in a strict language, semantics preserving.

I haven't really spent the necessary time to think clearly through the non-strict case.

[–] [email protected] 1 points 1 year ago (1 children)

@MeDuViNoX @Ategon Sir/Ma'am, this is NOT a Wendy's.

[–] [email protected] 1 points 1 year ago (3 children)

@jaror SSL_ERROR_BAD_CERT_DOMAIN for me. 😩

[–] [email protected] 1 points 1 year ago (1 children)

@jaror @[email protected] Your first proposal is to sacrifice type safety. I reject that option; avoid success at all costs.

Your second actually increases complexity through semantic bifurcation . I reject that as a way to make a simpler language, even for didactic purposes.

No, discarding type classes without adopting something else worse (interface inheritance) is not easy, and may actually be impossible.

[–] [email protected] 1 points 1 year ago (3 children)

@jaror @[email protected] I think without the type of polymorphism that Haskell uses type classes for, the language can never be more than a toy.

But, that doesn't mean it can't be didactically useful. A "Haskell--" with a JS-style Number for all numeric literals and replacing all numeric type classes with top-level operators on that type could be useful, for a bit.

Once you want to do indexing (e.g. Array) you need to distinguish between numbers like sqrt 5 and suitable indexes, tho. Enter polymorphism

[–] [email protected] 1 points 1 year ago (8 children)

@jaror Haskell 2010 is pretty simple. What do you imagine is the simpler starting point, if any? If Haskell 2010 is a good starting point, aren't language pragmas / extensions effectively the same as your "language levels"?

[–] [email protected] 2 points 1 year ago

@jaror @bss03 Maybe I was wrong, but I think you can do Scott encoding of the GADT underneath the standard codensity representation of existentials via CPS. Still need higher-rank types, not "just" parametricity.

I should write up some code to check myself against GHC.