Message from JavaScript discussions

May 2017

— Oooh wait

— 

It lets you make decisions based on higher reasoning through non-contradictory and contradictory proofs

— Typed Arrays would speed up the array one pretty intensely

— Oh? how so?

— Typed Arrays have constant item sizes

— So lookups are always instant

— Because location = index * itemsize

— "Hello" is 5 characters, and "Help" is 4. Therefore if traversing to "Hello" and searching for "Help" in the set, you can deduce from "Hello"'s metadata that a word after it shares 2 characters, and thus you know the probability of the next word being "Help" is 2/4. If that number is any lower than the sum of the shared characters and the characters of the input string, you know 100% that the next word, and all words after it, will definitely not match the input string

Message permanent page

— Thus you can abandon that portion of the tree completely, eliminating however many words are related to 'Hello'

Message permanent page

— Wait... should we perhaps lookup by length first?

— Since 'Hello" shares so many characters with "Help", 3/4, your deduction here will be spot-on until you get to the point where you have not constructively proven "Help" is not in the set as you have not seen the entire set, but you have posited a contradictory proof which states the number of possible matching characters is zero, and thus aids in the proof that "Help" is not in the set

Message permanent page

— ["Hometown" (Next shares 3 chars)] -> ["Howdy" (No next word sharing any chars)]