So... I just went back and solved Day 1 in Polaris.
I'm honestly surprised by how well this went, considering how terrible the string handling in Polaris is right now. (There are no string escapes yet and a ton of string handling has to shell out to bash or python)
Still, this was a nice way to find some pretty rough edges, for example that type errors look like this right now.
part1.pls:18:22-18:22: Wrong number of arguments supplied to function.
Unable to unify argument types 'α_53$95, α_54$94'
and '(α_91$91, α_92$92)'
While trying to unify '((α_53$95, α_54$94) -> α_51$97, α_51$97, List(α_52$96)) -> α_54$94'
and '(((α_91$91, α_92$92)) -> Number, Number, α_89$89) -> α_93$93'
This might be a really nice alternative once the challenges become too difficult for x86 assembly though!
DISCLAIMER: Polaris is extremely unfinished. You can try it out if you want, but please don't expect anything to work as you expect! There is absolutely no documentation right now and on the branch I'm using here (types), the module system doesn't work at all.
