@MohamedElqdusy Security of crypto: you need to prove that it's extremely unlikely to solve for any input.
Complexity classes: don't care about probabilities as long as for every algorithm there is at least one hard input.
@MohamedElqdusy I think P=NP is a different problem than security of crypto algorithms. For example,
there are harder classes than NP that are proven to be strictly larger than P. One example is EXPTIME.
Still that would not help to prove security of a crypto algorithm.
@ccanonne_ That's one reason why I like formalized proofs: References to other publications (libraries) are actually checked and it just needs one click to go to a definition.
@gunnarmorling F# type providers might be useful if this is about typing based on external information. And TypeScript is quite good if this is about typing string literals.
@ChShersh Semicolon insertion in Go: https://t.co/cRTFzu3wZY
Very simple rules, but works better than the more complicated rules in Javascript, Scala, Python, or Haskell.
@martinkl Google "solved" the synchronized clock problem with better clocks, so I assume they just solve the RPC problems by building a reliable network π
@anne_biene @skogsbaer So cool. May I ask why checking filtermap take so long? Is it because of the recursive definition or because of the union types and pattern matches? Would it be easier if the implementation of filtermap accepted just "false | {true, Value}" as return value for F?
My favorite commit message when working in untyped languages: "fixed type error".
Then looking at the commit log I can see how much time I would have saved with a proper type checker.