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.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
back in my really young uni days I used to hand roll not so much parsers but tokenisers using a finite state machine (in C). used it for some advanced comp.sci projects
was about 20 lines of code (for everything), and a hand rolled a table.
tokenising a programming language such as C the table was maybe 30 rows.
handled all the language foibles (unary operators, ++, --, * as pointer vs multiplication, &...
this was when machines were pretty slow and system memory ws measured in kilobytes - this method blew away anything else in both speed and size.
kept a [hard]copy for years but eventually lost it quite some time ago.
After uni it was one of those really great tools only used once in a blue moon - (like that fancy german brand jigsaw in the tool box - bought for a project and it did the job really well but now rarely seen outside of it's box.)
OTOH I do find myself often analysing [programming] data flow/processing as sort-of finite state doodles on scrap paper.
my core source library (doesn't everyone have one?)
Sometimes a little witchcraft is necessary to get your code working straight.
Been doing some WCF development (a.k.a. The Black Arts) this week and it didn't work until I held a Black Mass to please the Dark Lord.
We should be having coding covens (rolls nice off the tongue as well!)