Friday, January 18, 2019

How do I register snippet names in names space

Dunno, not my job. The enterprise tool makers have namespace grammars of renown repute, intelligent even, with proof checking.

My rule is unique names in a locale, a locale being one console loop and any associated piped loadables and any nodes on a consent network; ll agree on what is or is not unique in one or more namespaces.

Some names get pre-reserved, like python, golang,forth,lisp,bash, ...
I would add some pre-reserved common action names, import, using, export, default. Never call a snippet these things.  IO will almost, everywhere be reserved for the current io manager,however it incarnates.

My locale would include lisp, forth, hardly, xhars, and default.  Default as an action, everywhere means load the default start up settings which work everywhere, always, by definition; else the computer is in pieces. Using is the same way, a really bad idea is to reuse the name, let th syntax engines have it.

I expect a bunch of QT names, menus? name a snippet menus, load up the video snippet, watch CNN in the left box.  It is sort of up to the data manager how snippet names are used, she is the boss. The big part here is give the the tools.

Packed char names are in hot demand and, like old amateur radio call signs, short but sweet. Building ight eight char method names is cool stuff, I have not yet begun to shorten that path. Very flexible, competitive call set up through the key value pairs.

IO will use packed char entry into xchars for poll, and draw, defined the packed format with macro, and then it is a straight shot, binary interface using args between the two.  All of arg type are sting integers, and it would not matter, xcshrs accepts anything below MAXINT as integer (and that is some real redneck stuff).  I can bind tighter, but no need.

So, timers, check; interface?, check; scroller? nope, but easy. I just move string. I think that xchars has a copy of string.

What is the xchar string interface?

I receives null terminated strings. The presumption is that a null termination means more to the caller than called. But xchars has only one options, as it only has three actions. One action is new line, the other is truncate and new line, and finally print char. It is sees a null, then it cannot print care, so of the other options, the caller means, at least, new line. '\n' may or may not mean something, right now xchars ignores it.

So, IO manager prepares the mix of null, pre truncates to fit; does the work up front.  It is not much, but it is the most any io manager should do before using a call back to something more intelligent.

No comments: