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.
And for my next trick, I'll need a volunteer from the audience...
Anything that is unrelated to elephants is irrelephant Anonymous - The problem with quotes on the internet is that you can never tell if they're genuine Winston Churchill, 1944 - Never argue with a fool. Onlookers may not be able to tell the difference. Mark Twain
but now I've amassed an arsenal of them to do most everything I'd want to do.
One thing I liked about working in the field was I'd never run out of stuff to dev on.
Other people would have needs, and I'd find some way to automate those needs as much as possible.
It kept me busy, but now because of the above, my needs are met. I can generate lexers, parsers, state machines, i have components for implementing build tools, services, and basic console apps, for doing IO for advanced collections/dictionaries, whatever.
I just thought of something really cool though I don't know much about workflow engines yet.
A pike VM based workflow engine that is - get this - TRANSACTIONAL
because this works as a series of instructions that then invoke actions, I can store up the list of actions to invoke, in priority order, and execute them only if we got to an accept state!
So basically like this:
Create or load your workflow. (builds an NFA state machine and then compiles it to bytecode)
Run your workflow by feeding the machine a series of activities. (runs the pike VM)
From there the activities trace paths through the machine. Whenever they land on certain points in the path they queue certain actions. At any time if they pass through an accept point, all the queued actions are executed. That way you can create start and end points for transactions.
I still haven't sussed this all out but what a cool idea. I think?
and a nice side benefit (plus what gave me the idea in the first place) is Pike VMs can execute NFAs faster than doing the traditional NFA traversal method.
"the debugger doesn't tell me anything because this code compiles just fine" - random QA comment
"Facebook is where you tell lies to your friends. Twitter is where you tell the truth to strangers." - chriselst
"I don't drink any more... then again, I don't drink any less." - Mike Mullikins uncle