One more thing here... I think we should *guarantee* that the config file is Lisp. That way I could create my own monitor classes, methods, etc. (even replace internal noctool methods :) inside my config file without ever having to touch noctool sources. This is pretty much what I do with the LoGS config file - I think it is an especially powerful concept.
If the noctool developers weren't on top of having sets of machines, I, the user, sure would want to be able to use LOOP or some such thing. Its also awefully handy if there's some obnoxious-ass user that wants a frob object and the entire rest of the user community thinks its a bad idea - he can just implement it himself, hopefully without having to maintain his own fork of the codebase. :)
I LIKE BEING ABLE TO POINT THE BAZOOKA AT MY FOOT! I'M WORKING ON A DOUBLE-BARRELLED BAZOOKA SO I CAN POINT IT AT *BOTH* FEET!! ;)
(i just work dilligently and pray (a lot) i don't pull the trigger at the wrong time)
I get offended by tools that *tell me what I want to do*. Maybe you shouldn't be able to use dc as a word processor... Then again, why not? (if you're sick and twisted enough to put in the work, I could imagine a calculator you could turn into a word processor... look at Mathematica for pete's sake! I think thats actually precisely what happened with Mathematica - and its a pretty cool tool because that sort of thing is possible.). No, I'm not a Mathematica salesman... or even a user, really :P :)
I'll get off my soap box now :)
Jim p.s. I think I want to use noctool as a word processor - Can you help me with that Ingvar? ;P I've got this PDF file.... ;)
On Thu, 22 May 2008, Jim Prewett wrote:
It is definitely a cool idea. I am not ENTIRELY sure what the best syntax for the name range would be, but it's definitely something that would be handy for many users.
I'll admit my proposed syntax, mostly in terms of the name range leaves something to be desired. I'm very glad that you appreciate the idea :) I'm sure you've made 1000 identical 10 line entries in some config file before. Yuck! :P :)
What do y'all think? Is there a better way to do this? Something like this would reduce the size of my shop's config file a couple orders of magnitude - in turn, I'd screw things up accordingly less often :)
At the moment, you could PROBABLY use LOOP and friends, but that'd be icky. The whole config file is a chain of macros expanded to code generating configuration objects. On further consideration, no, you can't (yes, I tested, no you're not supposed tio, it seems it worked...).
If I'm understanding what you're saying here correctly: basically that the configuration file is "just Lisp", I think that is a good thing (TM). Certainly if we think we can specify everything our user might ever want to put into a config file, we are just dead wrong (Lisp is better than Jim's config language *unless* Jim's config language is a superset of Lisp or some other reasonably powerful language simply because how can Jim guess what you want to do and what your environment looks like?)
I was actually thinking, the other day, that the current config-nesting only allows a nested macro to use a single context and I was trying to thing of a use-case where one would want stuff nested in more than one and now I have one.
I'll get the changes necessary for defnested sorted before heading off to work. I suspect a workable method for naming the individual hosts would be a "member-name" config stanza, taking (say) a format-string (either C or CL, we should eb able to compile the former to the latter), a start number and an end number. I feel that making sure you do the right thing for something like "l001-l256" is just plain hard in the general case.
Imagine trying t figure out how many hosts and what they SHOULD be called when faced with something like "rtr-f01-001-rtr-f03-999". Is that 999 routers, 333 named "...f01...", 3 routers, named "...f01-001", "f02-500" and "...f03-999" or 2997 routers? I could make a case for all of those. :) I also suspect we only want to support a single range, to make things MUCH easier.
agreed!
I'd actually decided this syntax was pretty problematic about 6 months ago working on the SCAT project. However, since SCAT is a rip-off of X-CAT (IBM's unsupported, not open source, not a product cluster management software (that sucks)) I decided to punt on that one and just use the syntax you rightly note is problematic (and swear to myself I'd never name a host rtr-f01-001). I've gotten so used to this syntax now that .... well... bad habits are hard to break I guess :)
When we come up with a good syntax for this, I can pretty much guarantee I'm going to steal it for SCAT :)
Jim _______________________________________________ noctool-devel mailing list noctool-devel@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/noctool-devel