The Forum for Discussion about The Third Manifesto and Related Matters

Please or Register to create posts and topics.

What are the nodes in a Visual RA?

Quote from AntC on March 24, 2020, 1:29 am

I have to disagree about comparing total functional programming/avoiding ⊥ aka 'bottom' with excising SQL NULL.

I simply meant that the arguments are isomorphic, not that they are identical.  By making ⊥ impossible, TFP logic is truly two-valued as it cannot be in partial languages, making it simple to reason about.  See section 2.2 (p. 754, physical PDF page 4).

D&D's arguments are that naive programmers end up in total confusion with 3VL; sophisticated programmers can work round it at cost of obfuscated code and subtle bugs; and the PL's type 'system' (if that's the right word for SQL) can give none of the static guarantees we'd like a type system to give.

I think the same is true, but doubled and in spades, when programming in a partial language.

As for NULL, my every attempt to work out what it would mean to have it as an ordinary value whose principal type is Ω falls down on the question of its being a boolean, which I think cannot be made both consistent and useful.