Bhaskar

A wonderful explanation, congratulation!

Excuse me that I misspelled your name.

Wolfgang Giere

"K.S. Bhaskar" wrote:

> Fil is correct.  The GT.M ability to configure development environments
> is exceptionally flexible.  Read and digest the following when you have
> a few minutes to absorb the examples.
>
> A GT.M process searches for its routines using the $ZROutines intrinsic
> special variable, not unlike the Java CLASSPATH or UNIX shell $PATH
> environment variables.  Thus, if Fil and I are developers and Fil wants
> to work on some Lab modules, he can create a /home/fil/lab subdirectory
> for his work and if I am working on Oncology, I can create a
> /home/bhaskar/onc subdirectory for my work.  If the reference (or
> production) routines are in the directory /opt/vista_23.98/o for the
> object files and /opt/vista_23.98/r for the source files, Fil can set
> his $ZROU to "/home/fil/lab /opt/vista_23.98/o".  All he needs to do is
> copy that set of routines that he wants to work on from
> /opt/vista_23.98/r to /home/fil/lab and change them.  He doesn't need to
> copy all 20,000+ routines from /opt/vista_23.98/r to /home/fil/lab.
> Furthermore, by configuring /opt/vista_23.98/o and /opt/vista_23.98/r so
> that Fil does not have write access (e.g., making them world read-only
> or setting up ownership and permissions so that he does not have
> access), we can ensure that Fil cannot inadvertently or deliberately
> change anything in the reference / production environment.
>
> Now consider when Fil and I are done with our work.  Since he and I have
> been working in parallel, we will want to test our work for mutual
> (in)compatibility.  I can set my $ZROU to "/home/bhaskar/onc
> /home/fil/lab /opt/vista_23.98/o" and Fil can set his $ZROU to
> "/home/fil/lab /home/bhaskar/onc /opt/vista_23.98/o". This allows us to
> use each other's routines in our own unit test environments to see
> whether we have stepped on each other's toes.
>
> This also simplifies version control, because it means that when I am
> ready to check in my work, the only files we need to look at are in
> /home/bhaskar/lab, since I could not have changed something else, even
> inadvertently.
>
> We can take this example further.  Suppose that Fil and I are doing our
> work with a new GT.M version and part of what we are doing is to enhance
> the application software to take advantage of a new feature in the new
> release, say a $Increment() function.  He and I can set up a shared
> directory, say /var/newstuff to which we both have read/write access.  I
> can set up $ZROU to be "/home/bhaskar/onc
> /var/newstuff(/opt/vista_23.98/r)" and Fil can set up his $ZROU to
> "/home/fil/lab /var/newstuff(/opt/vista_23.98/r)".  Now, whenever he or
> I reference a routine from the reference / production environment, the
> new GT.M version will dynamically compile and place the object file in
> /var/newstuff, but the source routines in /opt/vista_23.98/r are
> unchanged.
>
> There are similar things we can do with M globals using a global
> directory pointed to by $ZGBLdir.  For example, if the data dictionary
> is defined in ^DIC, Fil and I can create global directories that place
> ^DIC in the production / reference database.  If I have read-only access
> to that database file, I cannot possibly change it during the course of
> my development, not even inadvertently, and we are assured that my
> software is compatible with the production data dictionary.  Taking this
> one step further, if we know that my oncology work is only supposed to
> affect globals ^ABC and ^DEF, we can set up a global directory and
> database files that allow me read/write access only to those two
> globals, and read-only access to everything else.  [Note, a limitation
> in GT.M today is that this slicing and dicing of globals can be done at
> the level of the global variable, and not at the level of the index.]
>
> Quite apart from the flexibility this offers, I like to think of these
> types of practices as "defensive programming", not unlike defensive
> driving.  We programmers are human beings who are prone to err, and
> defensive programming reduces the probability of errors.
>
> Sorry to have rambled.  I meant this to be a short e-mail, but my
> fingers ran away from my intentions.
>
> -- Bhaskar
>
> On Mon, 2004-12-06 at 14:02, Beza, Fil wrote:
> > Based on Dr. Giere's description, GT.M has the ability to share selected
> > routines between environments and have each environment have it's own
> > set of globals which is the way to go.  Actually, that's just perfect
> > for a vendor to provide ASP services - One set of Vista routines and
> > each client gets their own set of files - sweet - you can have your cake
> > and eat it too!
> >
> > -----Original Message-----
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED] On Behalf Of Tyrus
> > Maynard
> > Sent: Monday, December 06, 2004 8:54 AM
> > To: [EMAIL PROTECTED]
> > Subject: Re: [Hardhats-members] FileMan for GT.M
> >
> > Wolfgang,
> >   I will also go back to your earlier posting on DINIT  I mentioned you
> > in the "extraction" camp only because you started with a full
> > installation (yes, selective use is not the same as isolating your
> > learning space from other available routines using an extraction) .
> >   JLZ has similarly advocated expedient selective use ( as I quote from
> > another thread) " If diamond is not available, I would install openvista
> > semiviva 0.4 and ignore  most of that, keep to a name/numberspace, and
> > draw upon the rest when it suits the task."
> >   When I get back to my Vista machine perhaps I should join your camp,
> > although my goal is not  personal use based on experience, it will be
> > just for learning.
> >   For that primordial purpose I am a little distrustful of having too
> > many addon routines standing by...but I don't know  what should be
> > considered the ideal Fileman Lite or Fileman+  ... not to mention the
> > strategy for isolating it on GTM.
> >   When I learned to swim they just threw me in (that was the supervised
> > method of the day). In returning to this threadname, I am just asking
> > for  which is the shallow end of the pool and with rescuers available,
> > it may not matter which end you start in.
> > Thanks for clarification
> >
> > Rusty
> >
> > > If you have installed Vista you can just leave it alone and reinstall
> > > all the files needed using the FileMan installation routine DINIT (Do
> > > ^DINIT).
> > > You will
> > > have to answer some questions but the resualt is a running and
> > > complete FileMan.
> > > It uses the routines in your vista distribution. It is not necessary
> > > to figure out which ones (of course all DI* routines, but a few
> > > others, too). I did no extraction at all, only an addition: A new
> > > FileMan for my "private" use.
> > >
> > > Wolfgang Giere
> > >
> > >
> > >
> > > T Maynard wrote:
> > >
> > >>
> > >>
> > >> The extraction camp:
> > >>    This includes setting up a new gtmglbldir from latest VistA as
> > >> done by Wolfgang Giere ...but that camp does not convey what the
> > >> essential extraction files would be to the likes of me.
>
> ***************************************************************************
> This electronic mail transmission contains confidential and/or privileged 
> information intended only for the person(s) named.
> Any use, distribution, copying or disclosure by another person is strictly 
> prohibited.
> ***************************************************************************
>
> NOTE: Ce courriel est destine exclusivement au(x) destinataire(s) 
> mentionne(s) ci-dessus et peut contenir de l'information privilegiee, 
> confidentielle et/ou dispensee de divulgation aux termes des lois 
> applicables. Si vous avez recu ce message par erreur, ou s'il ne vous est pas 
> destine, veuillez le mentionner immediatement a l'expediteur et effacer ce 
> courriel.
>
> -------------------------------------------------------
> SF email is sponsored by - The IT Product Guide
> Read honest & candid reviews on hundreds of IT Products from real users.
> Discover which products truly live up to the hype. Start reading now.
> http://productguide.itmanagersjournal.com/
> _______________________________________________
> Hardhats-members mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/hardhats-members



-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. 
http://productguide.itmanagersjournal.com/
_______________________________________________
Hardhats-members mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/hardhats-members

Reply via email to