Interested in how DIN is computed, I started looking at the Javascript implementations behind a few online calculators. I guess not surprisingly, they mostly appear to be piles of steaming JS.
With some prior experience in a former life working level A flight software and with DIN serving an obvious safety function, these somewhat schlocky calculators make me a bit uncomfortable. So I forked out some money, bought the latest ISO-11088 (2018), read up on the standard, and created a semi-formal model mapping skier parameters to DIN binding settings. For anyone interested in DIN, take a look. Though the model is written in Haskell, it's made up of lots of simple pieces with a fair amount of comments so it should be reasonably easy to follow. I'd be happy to answer any Haskell questions for those interested in the details.
The next step is to use this model -- which may or may not be correct at this point -- to generate a Javascript testbench where I can drop in code from an online calculator to see how well it does. There's only 9360 possible DIN parameter settings so it should be trivial to exhaustively test all combinations.
With some prior experience in a former life working level A flight software and with DIN serving an obvious safety function, these somewhat schlocky calculators make me a bit uncomfortable. So I forked out some money, bought the latest ISO-11088 (2018), read up on the standard, and created a semi-formal model mapping skier parameters to DIN binding settings. For anyone interested in DIN, take a look. Though the model is written in Haskell, it's made up of lots of simple pieces with a fair amount of comments so it should be reasonably easy to follow. I'd be happy to answer any Haskell questions for those interested in the details.
din/Din.hs at main · tomahawkins/din
A model of the alpine ski binding setting defined by ISO-11088 2018, aka. DIN. - tomahawkins/din
github.com
The next step is to use this model -- which may or may not be correct at this point -- to generate a Javascript testbench where I can drop in code from an online calculator to see how well it does. There's only 9360 possible DIN parameter settings so it should be trivial to exhaustively test all combinations.