3 ms·
OP here. That is an excellent summary. Thank you for that. :-) The length of these articles always surprises me. I start off with a simple idea: "I just want t
by burntsushi 11y ago
OP here. That is an excellent summary. Thank you for that. :-)
The length of these articles always surprises me. I start off with a simple idea: "I just want to explain this data structure." But when I join that with my desired target audience (some programming, some data structure experience), it takes a lot to explain and build up each idea with good examples!
- nickpsecurity 11y agoOther commenters mention that you've rediscovered an old technique. You still get my props for being clever enough to do that. :) Nonetheless, might be worth digging through any surveys of FSM's now to see what else you might find, eh?
- burntsushi 11y agoWell, I wouldn't say I rediscovered it. I knew it was old. Sorry if I had given the wrong impression! My references section[1] includes citations going back to at least 2000, but the technique is certainly older than that. (I'm not so sure the algorithm for construction presented in the article is older though. As far as I know, it was a novel result for Daciuk, Mihov and Watson in 2000.) [1] - http://blog.burntsushi.net/transducers/#references http://blog.burntsushi.net/transducers/#references
- nickpsecurity 11y agoYes, my skimming didn't catch that. So, you started with something that was once shown to work and got results with modern tech/problems. Still a good way to do programming.
- burntsushi 11y agoHmm. I'm not quite sure what you mean. I guess I had two primary motivations for writing the blog: 1. The knowledge I gained while writing the `fst` crate was difficult to obtain. I hoped to distill some of it down into a more easily consumable format so that others could learn more quickly than I could. 2. Advertise a real implementation that someone can actually use, or failing that, port to another language.
- nickpsecurity 11y agoMakes sense. Posts on solutions promoting comprehension and immediate utility are always good to have. You seemed to have pulled it off except maybe too long. You already noted that, though.
- scott_s 11y agoFor the record, I do not consider your writing "verbose". Writing advanced material for a beginner audience necessarily means you will have to explain a lot. That's okay.