• 0 Posts
  • 6 Comments
Joined 1 year ago
cake
Cake day: August 8th, 2023

help-circle
  • Please tell me what exactly a helmet in a car will do for you, unless you are travelling well over 200 miles per hour? Seatbelts already hold the torso in place, preventing one from slamming their head into the steering wheel, dashboard, or windshield, and the airbags already absorb the energy and arrest the unrestrained body parts, such as the head.

    You would have to be travelling fast enough to outpace the airbags, which typically deploy at around 200 miles per hour. You wanna know why professional race car drivers wear helmets? Because they don’t have airbags.


  • Bikes dont have airbags, restraints, or a large cage of structural metal surrounding them. If you are on a bike, your only protection is what you are wearing. With that in mind, wouldn’t you want to wear something to protect yourself when moving at higher speeds? Even a speed of 10mph can be fatal if you fall off and hit your head on the ground. You cannot fall off or out of a car if you are properly wearing your seatbelt, and the airbags and structure of the vehicle are your immediate protections.

    Basically, helmets in cars aren’t mandatory and don’t make sense to make mandatory, because there are already safety precautions in cars. Bikes, whether manual or motorized, do not offer these or any protections.


  • Yeah, JS always seemed like the red-headed stepchild of modern languages. I’d be curious to know if other ECMAScript languages like JScript are as, eh, “quirky”, suggesting that the ECMA spec is the source of the quirkiness, or if JavaScript itself is the one making silly decisions. Technically, I mostly work with Google’s AppScript when I use ECMAScript stuff, but I’m fairly certain AppsScript is based off of JavaScript instead of directly based on the ECMA spec, so I don’t think it’s separate enough for me to draw a conclusion there.


  • It doesn’t have to be the default to be built in, tho. It could be an overloaded function, having the “default” be the typical convert-to-string sorting, and an overloaded function that allows to specify a type.

    It’s just such a common thing, wanting to sort a list by different types, that I’m surprised there hasn’t been an official implementation added like this. I get that it a simple “fix” to make, but I just think that if it’s that simple yet kind of obscure (enough that people are still constantly asking about it) there should be an official implementation, rather than something you have build yourself.


  • Right, but you have to make that comparator yourself, it’s not a built-in part of the language. The only built-in comparator converts values to strings and compares them in code units orders.

    Also, that technically isnt type-safe, is it? If you threw a string or a NaN at that it would fail. As far as I knew, type safe means that a function can handle type errors itself, rather than throwing an exception. So in this case the function would automatically convert types if it was type-safe to prevent an unhandled exception.


  • I think the main shortcoming here is that there isnt a way to specify the type to sort as, instead you have to write the function to compare them as numbers yourself. If it’s such a simple implementation, why isn’t it officially implemented? Why isn’t there a sortAs() that takes two args, the input list, and a Type value? Check every element matches the type and then sort, otherwise return a Type Error.