soc

joined 2 years ago
[–] soc@programming.dev 1 points 4 days ago (1 children)

Wasting a perfectly good pair of brackets on some random function call and then suffering for it in many other places sounds more like syntactic salt.

[–] soc@programming.dev 1 points 5 days ago (3 children)

What's a form of access but a function from some index type to some element type?

[–] soc@programming.dev 3 points 5 days ago

Happily using it for presentation slides.

[–] soc@programming.dev 1 points 1 week ago (1 children)

If you read more than just the headings, you'd find out that your objections have been addressed in the article. ;-)

[–] soc@programming.dev 1 points 3 weeks ago* (last edited 3 weeks ago)

Sure, there are some worse/more limited predecessors – my design was partially motivated by a desire to improve upon these.

For instance, that ML-derivative you are using for your examples

  • very likely still has if then else in the language, thus making it not unified
  • desperately tries to emulate functionality with guards that simply comes out of the box with my approach
  • relies on the ultimate hack of "match on unit", because match is very limited in which coding patterns it can express

Also, none of the examples are "more clear" or "have less magic":
Maybe they are more "familiar" to you personally, but that's about it.

Too me they just look clunky, full of accidental complexity and trying to work around a poor/limited language design.

[–] soc@programming.dev 1 points 2 months ago* (last edited 2 months ago) (1 children)

That –at best– gives you the same performance.

EDIT: Ok, I misunderstood – you meant the performance of "case insensitive in kernel" vs. "case insensitive in userspace". I get your point now.

[–] soc@programming.dev 0 points 2 months ago (7 children)

No, I'm not going to waste further time on trying to make you understand things you are not capable or interested in understanding.

[–] soc@programming.dev 1 points 2 months ago* (last edited 2 months ago)

The author of that paper hung around in the lang design forum were I originally presented this.

[–] soc@programming.dev 1 points 2 months ago (9 children)

Case insensitive FSs aren’t a new thing.

More precisely, they came up in a time where Unicode was not a thing.

Yes, you need to attach the locale to the filename. No, I have no idea off the top of my head of how different file systems encode or store that.

They don't. None of them.

Or, if it is, then let’s go back to eight characters from the English alphabet in all caps. 8.3 filenames. Why not? [...] Why are spaces, cyrillic, special characters and long names worth doing but case insensitivity isn’t?

Because you cannot have both.

It is either "spaces, cyrillic, special characters and long names" or case insensitivity.

 

A design that subsumes the various syntactic forms of

  • if statements/expressions
  • switch on values
  • match on patterns and pattern guards
  • if-let constructs

and scales from simple one-liners to complex pattern matches.

view more: next ›