No, it isn't.
The "injection" is a quick and easy way to do the Terminal activity in a self-contained demo macro.
The second "Insert Text by Typing" contains no KM tokens or similar -- it could equally be typed in by the user or be part of a longer shell script file being run in the Terminal. The point is that the Terminal command is happening async and the macro is paused until Terminal has set the KM variable Local_theDate -- a demonstration of both macro flow control by Terminal and data passing from Terminal to the macro.
The first "Pause Until..." shows flow control in the other direction -- KM waiting for a particular Terminal state (in this case, that all processes other than login and bash have completed, signifying that the for script has finished).
The first "Insert..." shows an easy way to set a Terminal shell's environment variable, but could just as easily be done by setting a KM Global then using osascript in the shell script to read that value in.
Or consider the following:

...which, since my Terminal prompt ends nigel$<space>, pauses the macro until terminal is ready for another command.
Or this:

...so that when your Terminal is does something long-winded then waits for user confirmation before continuing:
for i in $(seq 1 10); do echo $i;sleep 1;done
read -p "Continue? (Y/N): " unPause
# do more if answer was Y
...you can use a complex, multi-step, decision tree in your macro to proceed with the next step in Terminal.
And lo, we've rolled our own expect -- but with KM actions we know and love and with a lot more easily-accessible functionality.
And that's the point. Once you grok that you can use osascript and AS in your shell scripts as a link between Terminal and KM, the possibilities are endless... As well as running macros and getting/setting KM variables you can use process tokens to bring data from your web browser's frontmost page into your script, or the contents of a Past or Named KM Clipboard. Since you can create and execute "mini macros" on the fly with XML you can make "pretty prompts" for your shell scripts, drive other apps, do flow control in your shell script using image detection!
And since we're on flow control -- remember that "Semaphore Lock/Unlock" are only KM actions, like all the others. You can easily set a lock in your shell script, unlock it later, and have your KM macros pause/abort for the duration. You can also do it the other way round, locking in KM first, but since your shell script will pause in the middle of the AppleScript and wait for the lock to be released you'll probably have to play with AS with timeout.
I'm not dissing the mkfifo approach -- it's simple, elegant, and will be enough in many cases. But there's a whole host of other ways to achieve similar and/or more, especially for those of us more comfortable with KM actions than *nix IPC 
Nicely done -- but don't forget to save and later restore default settings if you use this pattern in a "public" macro.