The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
I have an old laptop (ok, a netbook) with no keypad that, every once in a while, reverses the "normal" state of the NumLock key so at a password screen, I'm trying to type my password but the keyboard registers numbers.
The first couple of times it happened, I spent an awful lot of time trying and retrying, until I typed out the password in the user name field to show up in the clear. I can't recall what OS that was (some version of Linux), but it didn't have that "show password" option...
I recall trying that when the machine updated to Win10, and again last week, after completely reinstalling. It never worked for me. There was even a method where you had to reboot, set the numlock status without logging in, shut down again, and then boot up normally. It didn't work either.
I have the opposite problem, sort of. Since I use the numbers on the top row of the keyboard I like the keypad to be num-lock-off. I set it up in the BIOS for startup but every now and then it gets flipped (most annoying!).
Keypad numeric input makes me feel like an accountant - bah!
I feel the need to reach for a bottle whenever someone sends me a screenshot that is actually a picture of a monitor taken with a phone, then printed, then scanned, then faxed, re-scanned, and then embedded in a Word doc and emailed.
And it's a screenshot of some plain-text message that could've been copied/pasted.
By the end of the day I should have a rudimentary implementation of GLoRy, my GLR parser.
GLR is the most powerful parsing algorithm known. It allows you to express your grammar however you want with never any conflicts (all "conflicts" make the GLR fork its stack and try each conflicting rule)
It can process highly ambiguous grammars, including natural language!
The tables are only LALR(1) sized, and how fast it is is inversely proportional to how many times it has been forked. This is all very very good, as it leads to linear time O(n) parsing when there are no ambiguities/forks
Also this is the only GLR implementation i've seen capable of streaming. The rest force you to load the entire document into memory at once.
The upshot of that is you could feed it an entire Bible and not worry about memory.
If there is a parser generator to end all parser generators its this.
It only has one real disadvantage and that's that it's more difficult to use depending on how you're using it. Since it can return multiple parse trees for a single parse the code to use it has to be able to handle that.
Anyway, GLoRy is peak parsing. If you can't parse it with GLoRy chances are it can't be parsed. =)