0 INFO-VAX	Sun, 12 Feb 2006	Volume 2006 : Issue 85      Contents:4 ANN: PF_SDA freeware - Display pagefile info via SDA Re: Another sad day for VMS...! cluster-wide logicals and startup % Re: cluster-wide logicals and startup & defining logicals which point to disks* Re: defining logicals which point to disks* Re: defining logicals which point to disks= RE: Gartner wakes up company executives to X86-64 scalability & Re: Hobbyist kit installation problems& Re: Hobbyist kit installation problems& Re: Hobbyist kit installation problems& Re: Hobbyist kit installation problems& Re: Hobbyist kit installation problems7 how to check for the existence of a logical-name table? ; Re: how to check for the existence of a logical-name table? ; Re: how to check for the existence of a logical-name table? * Re: I64 Support: Stronger than is thought?* Re: I64 Support: Stronger than is thought?* Re: I64 Support: Stronger than is thought? Re: null terminated strings  Re: null terminated strings  Re: null terminated strings  Re: null terminated strings  Re: null terminated strings  Re: null terminated strings  Re: null terminated strings  Re: null terminated strings  Re: PDPs in the news!  Re: Perl, DBI, and DBD::RDB & Re: Security experts say no secure OS!& Re: Security experts say no secure OS! Re: V7.3-2 and Joliet CDs   F ----------------------------------------------------------------------  % Date: Sat, 11 Feb 2006 21:20:19 -0600 - From: Hunter Goatley <goathunter@goatley.com> = Subject: ANN: PF_SDA freeware - Display pagefile info via SDA * Message-ID: <43EEA973.9010407@goatley.com>  @ The following package has been added to my VMS freeware archive:  
 pf_sda.zip<      Description: SDA extension to display info about a page@              or swap file including which processes are using it      Version:  V1.0 3      Author:  Ian Miller <MILLER@Encompasserve.org>       Architecture:  AXP,IA64      Size:  156 blocks      Language: C   Thanks, Ian!   http://www.process.com/openvms/   6 ftp://ftp.process.com/vms-freeware/fileserv/pf_sda.zip; http://vms.process.com/ftp/vms-freeware/fileserv/pf_sda.zip   2 ftp://ftp.tmk.com/vms-freeware/fileserv/pf_sda.zip7 http://www.tmk.com/ftp/vms-freeware/fileserv/pf_sda.zip    And on the other mirrors soon.     --     Hunter ------9 Hunter Goatley, Process Software, http://www.process.com/ 9 goathunter@goatley.com     http://www.goatley.com/hunter/    ------------------------------  % Date: Sat, 11 Feb 2006 13:32:01 -0700 " From: GreyCloud <mist@cumulus.com>' Subject: Re: Another sad day for VMS... : Message-ID: <mNedndh9ub3y13PenZ2dnUVZ_tSdnZ2d@bresnan.com>   David J Dachtera wrote:    > GreyCloud wrote: >  >>William Webb wrote:  >> >>A >>>On 2/9/06, David J Dachtera <djesys.nospam@comcast.net> wrote:  >>>  >>>  >>>>JF Mezei wrote:  >>>> >>>> >>>>>Alan Greig wrote: >>>>>  >>>>> N >>>>>>Maybe it's just me but do we hear a lot less from the current "#1 person+ >>>>>>in VMS management" than the last one?  >>>>> L >>>>>If VMS' auto-pilot keeps it on the course pre-set by HP, VMS management >>>>>don't need to do much.  >>>>> I >>>>>On the other hand, maybe they are fighting a huge internal corporate M >>>>>fight to save VMS and aren't getting any recognition for this behind the  >>>>>scenes work.  >>>>L >>>>I'd like to think that "they" are working stealthily, silently, and thatI >>>>at some point in their plan they'll reach critical mass and the whole I >>>>thing will burst into the light in a manner that is grand, unexpected . >>>>and impossible for the industry to ignore. >>>>& >>>>How's *THAT* for a grand illusion? >>>> >>>>-- >>>>David J Dachtera >>>>dba DJE Systems  >>>>http://www.djesys.com/ >>>>* >>>>Unofficial OpenVMS Marketing Home Page% >>>>http://www.djesys.com/vms/market/  >>>>, >>>>Unofficial Affordable OpenVMS Home Page:# >>>>http://www.djesys.com/vms/soho/  >>>>& >>>>Unofficial OpenVMS-IA32 Home Page:# >>>>http://www.djesys.com/vms/ia32/  >>>>- >>>>Unofficial OpenVMS Hobbyist Support Page: & >>>>http://www.djesys.com/vms/support/ >>>> >>>  >>>  >>>Counterproof: >>> 9 >>>There are new ISVs porting applications to VMS on I64.  >>> 9 >>>That's one sign.  There are others, to those who look.  >>> A >>>And I concur, we shouldn't have to dig for this kind of stuff.  >>D >>Agreed!  Whilst in other newsgroups, when you mention OpenVMS, theH >>general consensus is that it isn't being used any more, or no one uses
 >>it anymore.  >  > ; > ...which is why I don't change my .sig for posting to the F > alt.solaris.x86 or comp.unix.solaris groups (as seldom as I do that, > mostly to ask questions).  >   H You should pay a visit sometime to comp.os.linux.advocacy and read Erik H Funkenbusches statements about VMS.  Comical in many ways.  He's too M$  centric.     --   Where are we going?   And why am I in this handbasket?   ------------------------------  + Date: Sat, 11 Feb 2006 21:26:17 +0000 (UTC) P From: helbig@astro.multiCLOTHESvax.de (Phillip Helbig---remove CLOTHES to reply)* Subject: cluster-wide logicals and startup$ Message-ID: <dslkpo$1dm$2@online.de>  D SYS$MANAGER:SYLOGICALS.TEMPLATE says that one should make sure that 6 cluster-wide logicals are available before using them.  % I need to use them in SYLOGICALS.COM.   @ If they aren't available, can I just WAIT until they are?  On my? systems, they have always been available when I need them, but  D presumably this doesn't have to be the case.  However, if I WAIT in B SYLOGICALS.COM, can I count on them becoming available eventually?  , SYLOGICALS.TEMPLATE mentions three criteria:  *    F$GETSYI("CLUSTER_MEMBER") .EQS. "TRUE"  &    F$GETSYI("STARTUP_P1") .EQS. "    "  &    F$GETSYI("CWLOGICALS") .EQS. "TRUE"  F Why are the first two criteria necessary?  Presumably if the system isE not a member of a cluster, CW_LOGICALS will never be true.  (Also, if ? the system has been booted mininum, could CWLOGICALS be true?)     ------------------------------  % Date: Sat, 11 Feb 2006 17:19:31 -0500 - From: JF Mezei <jfmezei.spamnot@teksavvy.com> . Subject: Re: cluster-wide logicals and startup, Message-ID: <43EE62EC.1BCE8CED@teksavvy.com>  / Phillip Helbig---remove CLOTHES to reply wrote: ; > If they aren't available, can I just WAIT until they are?   F The logical name table should be available early on. But it takes some< time before logical names from other nodes populate your own lnm$syscluster table.   G Suppose you are waiting for  SYS$CHOCOLATE. What happens if you are the ! first node to boot and you wait ?   F Then, as other node boot, they also do not see SYS$CHOCOLATE and wait.F In the end, they all wait an nobody takes the initiative to define it.  B The easiest is for any node to define it clusterwide if it doesn'tE already exist. If you define it and it already exists, you are simply K overriding its definition with hopefully the same value so it doesn't hurt.   F Problems arise if a specicic node has "onwership" of that logical (forH instance pointing to one of its own disks, or pointing to one of its ownG decnet objects etc). Other nodes cannot really define it, so you should H design our applications so that they can live without that logical until the main node defines it.   E Note that logicals in LNM$SYSCLUSTER are supposedly available even if " the node is not part of a cluster.   ------------------------------  + Date: Sat, 11 Feb 2006 21:41:03 +0000 (UTC) P From: helbig@astro.multiCLOTHESvax.de (Phillip Helbig---remove CLOTHES to reply)/ Subject: defining logicals which point to disks $ Message-ID: <dslllf$6v2$1@online.de>   I can do either   &    $ DEFINE LOGICAL_DISK PHYSICAL_DISK   or  '    $ DEFINE LOGICAL_DISK PHYSICAL_DISK:   $ and in either case do something like  "    $  DIR LOGICAL_DISK:[DIRECTORY]  ) and get the same result as if I had typed   #    $  DIR PHYSICAL_DISK:[DIRECTORY]   G I believe that in the first case, all is straightforward, while in the  7 second case, the colon in the definition is suppressed.   F Is there a reason to prefer one definition over the other?  The first G looks more straightforward, but the second seems to be more in keeping   with tradition.    ------------------------------  % Date: Sat, 11 Feb 2006 17:25:00 -0500 - From: JF Mezei <jfmezei.spamnot@teksavvy.com> 3 Subject: Re: defining logicals which point to disks , Message-ID: <43EE6434.343F01FF@teksavvy.com>  / Phillip Helbig---remove CLOTHES to reply wrote: ( >    $ DEFINE LOGICAL_DISK PHYSICAL_DISK) >    $ DEFINE LOGICAL_DISK PHYSICAL_DISK:     2 The second one makes it clear that it is a device.   here is an example.   I on VELO, I have X10_MAILBOX equal to MBA054:  (created by an application)   = On other nodes, i define X10_MAILBOX to be VELO::X10_MAILBOX:   H So when other nodes do an OPEN/WRITE X10_MAILBOX, it creates a netserver1 process on VELO that tries to access X10_MAILBOX.     K If I have "VELO::X10_MAILBOX", FAL tries to create the file X10_MAILBOX.DAT G If I have "VELO::X10_MAILBOX:", FAL will lookup the logical X10_MAILBOX  on VELO and write to MBA054:   ------------------------------    Date: 11 Feb 2006 19:05:56 -0800$ From: "AEF" <spamsink2001@yahoo.com>3 Subject: Re: defining logicals which point to disks C Message-ID: <1139713556.691165.210700@f14g2000cwb.googlegroups.com>   / Phillip Helbig---remove CLOTHES to reply wrote:  > I can do either  > ( >    $ DEFINE LOGICAL_DISK PHYSICAL_DISK >  > or > ) >    $ DEFINE LOGICAL_DISK PHYSICAL_DISK:  > & > and in either case do something like > $ >    $  DIR LOGICAL_DISK:[DIRECTORY] > + > and get the same result as if I had typed  > % >    $  DIR PHYSICAL_DISK:[DIRECTORY]  > H > I believe that in the first case, all is straightforward, while in the9 > second case, the colon in the definition is suppressed.   C No. Logical name translation is not a simple substring substitution G when it comes to file-specs. One example is node-specs: When you define = a node logical name, you must include the double colon in the C equivalence name. When you use the node logical name, you must also 4 include a double colon!!! That's how it works. More:   Example:   $ DEFINE LC LOGIN.COM : %DCL-I-SUPERSEDE, previous value of LC has been superseded $ DIR LC:[]   . Directory EISNER$DRA3:[DECUSERVE_USER.FELDMAN]  G LOGIN.COM;4         LOGIN.COM;3         LOGIN.COM;2         LOGIN.COM;1    Total of 4 files.  $    or even better:    $ DEFINE LL LOGIN : %DCL-I-SUPERSEDE, previous value of LL has been superseded $ DIR LL:[]   . Directory EISNER$DRA3:[DECUSERVE_USER.FELDMAN]  G LOGIN.COM;4         LOGIN.COM;3         LOGIN.COM;2         LOGIN.COM;1  LOGIN.ORIG;1        LOGIN.ZIP;1    Total of 6 files.  $  $ DEFINE LLNM LOGIN:
 $ DIR LLNM:[] F %DIRECT-E-OPENIN, error opening LOGIN:[DECUSERVE_USER.FELDMAN]*.*;* as input A -RMS-F-DEV, error in device name or inappropriate device type for 	 operation  $   E As you can see, it is better to use the colon in the equivalence name + to ensure that it is interpreted as a disk.   G > Is there a reason to prefer one definition over the other?  The first H > looks more straightforward, but the second seems to be more in keeping > with tradition.   C The second is also in keeping with the documentation for the DEFINE F command. Also, there are situations where the first will not work. ForF example, SET DEFAULT will not work with your example. (Didn't you even
 try this?)   Another example:   $ DEFINE LNM NODE::DISK   9 Use of LNM will treat DISK as a name, as in JF's example.    $ DEFINE LNM NODE::DISK:  ? Here, use of LNM will treat DISK as a disk, as in JF's example.    AEF    ------------------------------  % Date: Sat, 11 Feb 2006 20:31:11 -0500 ' From: "Main, Kerry" <Kerry.Main@hp.com> F Subject: RE: Gartner wakes up company executives to X86-64 scalabilityR Message-ID: <FD827B33AB0D9C4E92EACEEFEE2BA2FB7D3AA2@tayexc19.americas.cpqcorp.net>   > -----Original Message-----4 > From: Alan Greig [mailto:greigaln@netscape.net]=20" > Sent: February 10, 2006 11:29 AM > To: Info-VAX@Mvb.Saic.Com H > Subject: OT: Gartner wakes up company executives to X86-64 scalability >=20 >=20D > Gartner has finally woken up its clients to the ever increasing=20E > scalability of X86-64. Would be interesting to read the full thing.  > =3D=3D=3D  >=208 > http://www.gartner.com/DisplayDocument?doc_cd=3D136040	 > Gartner  > =09 > > IBM xSeries 460: A Scalable x64 Server for Windows and Linux > 12 January 2006  >=20 > Ian Brown  >=20E > IBM's high-end Windows and Linux server will need more than just=20 ? > impressive benchmarks to convince customers it's worth the=20  > money. But it=20E > could signal the start of a new challenge to proprietary Unix in=20 ' > midrange and high-end server markets.  >=20 > Full article $195 , 19 pages.  > =3D=3D=3D  >=20J > Anyone fancy paying $195 and posting a "fair-use" summary...? Thought=20	 > not :-(  >=208 > Note this is Gartner describing the architecture as=20 > "high-end". Not me=20  > this time. >=20 >=20  E Lets not forget that the OS itself is just as important (if not a lot D more) in determining whether a hardware platform solution is able to scale.  G Case in point - ever wonder why Exchange is seldom deployed on anything  greater than 4 cpus?  H SMP, thread scalability, synchronization, spinlocks capabilities etc are2 all huge considerations in an overall solution.=20  A Course, regardless of the HW platform scalability - if the OS has C monthly security patches, then the question "how does one deal with H QA'ing applications with monthly security patches before they are rolled4 into production?", but that is another discussion ..  H Point is that you need to look at the entire solution - the HW is only a# small part of the overall solution.    :-)    Regards    ------------------------------    Date: 11 Feb 2006 15:05:52 -08007 From: "greg.chabala@gmail.com" <greg.chabala@gmail.com> / Subject: Re: Hobbyist kit installation problems C Message-ID: <1139699152.713267.221960@o13g2000cwo.googlegroups.com>    Oh oh,  G new difficulty. I've run out of room on my system drive, or there's not D quite enough room for C to be installed, more acurately. Certainly ID can install layered products to the user disks too, right? My googleG search didn't turn up anything useful, nor was my system manager manual  helpful.  E Or are there other alternatives to help me use the other disk drives? 2 Could I 'span' them into one virtual system drive?   ------------------------------    Date: 11 Feb 2006 15:11:25 -08007 From: "greg.chabala@gmail.com" <greg.chabala@gmail.com> / Subject: Re: Hobbyist kit installation problems C Message-ID: <1139699485.206963.235740@z14g2000cwz.googlegroups.com>    greg.chabala@gmail.com wrote:   I > new difficulty. I've run out of room on my system drive, or there's not F > quite enough room for C to be installed, more acurately. Certainly IF > can install layered products to the user disks too, right? My googleI > search didn't turn up anything useful, nor was my system manager manual 
 > helpful. >   F Oh yes, and since telnet's running, anyone curious to go poking around< for themselves? I'll supply login credentials through email.   ------------------------------  % Date: Sat, 11 Feb 2006 18:30:12 -0500 % From: BRAD <bradhamilton@comcast.net> / Subject: Re: Hobbyist kit installation problems * Message-ID: <43EE7384.4010407@comcast.net>   greg.chabala@gmail.com wrote:  > greg.chabala@gmail.com wrote:  >  > I >>new difficulty. I've run out of room on my system drive, or there's not F >>quite enough room for C to be installed, more acurately. Certainly IF >>can install layered products to the user disks too, right? My googleI >>search didn't turn up anything useful, nor was my system manager manual 
 >>helpful. >> >  > H > Oh yes, and since telnet's running, anyone curious to go poking around> > for themselves? I'll supply login credentials through email.  H Have you put your page and swap files on a volume other than the system G disk?  This is the first thing that I would do, before trying to put C  4 on another drive (I'm not even sure it can be done).  G It's not horribly complicated to put page/swap files on another drive,  H but it will probably mean a trip or two to the basement, and one or two  reboots to set things properly.   D $MCR SYSGEN HELP CREATE/INSTALL are your friends here.  The FAQ may D help, as well.  Googling this newsgroup ("pagefiles" or swapfiles") I might bring some more information.  Or ask here - it's Saturday night in  > North America, and none of us have any thing better to do.	:-)   ------------------------------    Date: 11 Feb 2006 16:59:22 -08007 From: "greg.chabala@gmail.com" <greg.chabala@gmail.com> / Subject: Re: Hobbyist kit installation problems B Message-ID: <1139705962.565491.89100@f14g2000cwb.googlegroups.com>   JF Mezei wrote:  >  > How big a disk have you got ?   F Three drives, each is 781440 blocks. The system disk has 125000 blocks left.   < Swapfile.sys is 46496 blocks. Pagefile.sys is 126000 blocks.    E I'll try moving them tomorrow, seems a lady friend wants to swing by.    Thanks guys    ------------------------------  % Date: Sat, 11 Feb 2006 19:35:38 -0500 - From: JF Mezei <jfmezei.spamnot@teksavvy.com> / Subject: Re: Hobbyist kit installation problems , Message-ID: <43EE82D4.A364CC36@teksavvy.com>   "greg.chabala@gmail.com" wrote: I > new difficulty. I've run out of room on my system drive, or there's not ; > quite enough room for C to be installed, more acurately.    O Compilers really need to put stuff on the system disk (libraries for instance).   D SHOW MEM/FILES should tell you the size of your page and swap files.   If they are big, then:  = MC SYSGEN CREATE SYS$SYSTEM:SWAPFILE.SYS/CONTIGUOUS/size=5000 7 MC SYSGEN CREATE SYS$SYSTEM:PAGEFILE.SYS/CONT/size=5000 G MC SYSGEN CREATE DISK2:[dir]PAGEFILE.SYS/CONT/size=100000  (or whatever  value you have decided)   F In your systartup_vms.com, as soon as you have mounted the other disk:  . MC SYSGEN INSTALL/PAGE DISK2:[dir]PAGEFILE.SYS  G As a result of this, you will boot with very small page/swap files, and D early in your systartup_vms, you add a much bigger page file on yourE alternate drive. So most/all processes created afterwards will likely  use the big pagefile.   E After you reboot, you can PURGE SYS$SYSTEM:*.SYS and this will delete D the old versiosn of the pagefile and swapfile.sys files , giving you) plenty of free space on your system disk.      How big a disk have you got ?    ------------------------------  + Date: Sat, 11 Feb 2006 21:19:46 +0000 (UTC) P From: helbig@astro.multiCLOTHESvax.de (Phillip Helbig---remove CLOTHES to reply)@ Subject: how to check for the existence of a logical-name table?$ Message-ID: <dslkdi$1dm$1@online.de>  ; How can I check to see whether a logical-name table exists?   I Specifically, I want to check for the existence of SYSMAN$NODE_TABLE and  ? create it if it doesn't exist.  If it does exist I just get an  C informational message so the procedure won't break, but that seems   rather inelegant.    ------------------------------  # Date: Sat, 11 Feb 2006 22:51:21 GMT " From:   VAXman-  @SendSpamHere.ORGD Subject: Re: how to check for the existence of a logical-name table?0 Message-ID: <00A512BC.3B2F15BA@SendSpamHere.ORG>  w In article <dslkdi$1dm$1@online.de>, helbig@astro.multiCLOTHESvax.de (Phillip Helbig---remove CLOTHES to reply) writes:  >  > < >How can I check to see whether a logical-name table exists? > J >Specifically, I want to check for the existence of SYSMAN$NODE_TABLE and @ >create it if it doesn't exist.  If it does exist I just get an D >informational message so the procedure won't break, but that seems  >rather inelegant.  E Does $ SHOW LOGICAL/STRUCTURE show you what you want?  Try PIPE and a  Search.   . Or, try to create a logical name in the table:  ) $ DEFINE/USER/TABLE=SYSMAN$NODE_TABLE X Y 4 %SYSTEM-F-NOLOGTAB, no logical name table name match  F If the error is return, create the table.  If not, remove the spurious logical name X.        --  K VAXman- A Bored Certified VMS Kernel Mode Hacker   VAXman(at)TMESIS(dot)COM              5   "Well my son, life is like a beanstalk, isn't it?"     ------------------------------  + Date: Sat, 11 Feb 2006 23:40:32 +0000 (UTC) ? From: Graham Burley <burley.not-this@encompasserve-or-this.org> D Subject: Re: how to check for the existence of a logical-name table?9 Message-ID: <43EE7586.764E320C@encompasserve-or-this.org>   / Phillip Helbig---remove CLOTHES to reply wrote:  > = > How can I check to see whether a logical-name table exists?   A $ if f$trnlnm("SOME_TABLE","LNM$SYSTEM_DIRECTORY",,,,"TABLE") ...    ------------------------------  % Date: Sat, 11 Feb 2006 16:32:29 -0500 - From: JF Mezei <jfmezei.spamnot@teksavvy.com> 3 Subject: Re: I64 Support: Stronger than is thought? , Message-ID: <43EE57E8.744101BB@teksavvy.com>   Larry Kilgallen wrote:E > The last I heard was that Itanium system infrastructure (similar to G > console code) is rather uniform and that the major limitation is that ) > VMS is only _supported_ on HP machines.   A VMS doesn't even run on all HP IA64 machines. (or does it now ?).   7 Does VMS support blade architecture that HP now sells ?   H When you look at the folks like Hitachi and NEC, they tend to build very> specialised systems for research centres (hundreds of machinesE inerconnected in a big computer farm etc). I am not even sure if they $ have off-the-shelf systems for sale.   ------------------------------    Date: 11 Feb 2006 15:59:50 -0600- From: Kilgallen@SpamCop.net (Larry Kilgallen) 3 Subject: Re: I64 Support: Stronger than is thought? 3 Message-ID: <Cx77T6lZrLNf@eisner.encompasserve.org>   \ In article <43EE57E8.744101BB@teksavvy.com>, JF Mezei <jfmezei.spamnot@teksavvy.com> writes: > Larry Kilgallen wrote:F >> The last I heard was that Itanium system infrastructure (similar toH >> console code) is rather uniform and that the major limitation is that* >> VMS is only _supported_ on HP machines. > C > VMS doesn't even run on all HP IA64 machines. (or does it now ?).   G It is not _supported_ on the older machines -- do you have one on which  it does not run ?   9 > Does VMS support blade architecture that HP now sells ?   C I have not heard that it does as yet, but that might be a matter of 0 not having drivers for those peripherals as yet.  J > When you look at the folks like Hitachi and NEC, they tend to build very@ > specialised systems for research centres (hundreds of machinesG > inerconnected in a big computer farm etc). I am not even sure if they & > have off-the-shelf systems for sale.  C It is certainly possible to build a machine that does not match the C general system design specification or has new strange peripherals. ? I think the DS20L was one of the latter, even though not large.    ------------------------------  % Date: Sat, 11 Feb 2006 17:42:11 -0500 ( From: Bill Todd <billtodd@metrocast.net>3 Subject: Re: I64 Support: Stronger than is thought? G Message-ID: <3PqdnXbqTZXZ9XPenZ2dnUVZ_smdnZ2d@metrocastcablevision.com>    JF Mezei wrote:    ...   J > When you look at the folks like Hitachi and NEC, they tend to build very@ > specialised systems for research centres (hundreds of machinesG > inerconnected in a big computer farm etc). I am not even sure if they & > have off-the-shelf systems for sale.  G Not that this level of ignorance noticeably impedes your propensity to  0 pontificate incompetently about them, of course.   - bill   ------------------------------    Date: 11 Feb 2006 13:51:58 -0600- From: Kilgallen@SpamCop.net (Larry Kilgallen) $ Subject: Re: null terminated strings3 Message-ID: <qcUNdzw0U$M2@eisner.encompasserve.org>   Y In article <FtednfqeK61TuXPeRVn-tg@libcom.com>, Dave Froble <davef@tsoft-inc.com> writes:   3 > Then access some part of an element in the array:  >  > 	Print Struc(7)::Count > E > While I've seen syntax I like a bit better, (Visual Basic uses '.'  K > instead of '::'), I didn't need any special type of index.  Just a plain   > old numeric data type.  J Ada afficianados view it as a strength that the index need not be numeric:  M type Months is (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec );   , Put_Line ( Monthly_Statistics (Jul).Count );   > I need to quite doing this.   ? Which goes to the wisdom of requiring variables to be declared. G That way the language won't make one up to match a typographical error.    ------------------------------  % Date: Sat, 11 Feb 2006 13:35:11 -0700 " From: GreyCloud <mist@cumulus.com>$ Subject: Re: null terminated strings0 Message-ID: <LPednYXxhIew1nPeRVn-jg@bresnan.com>   Dave Froble wrote:   > Dave Weatherall wrote: > G >> On Sat, 11 Feb 2006 03:34:57 UTC, Dave Froble <davef@tsoft-inc.com>  	 >> wrote:  >> >> >>> Larry Kilgallen wrote: >>>  >>>> Karsten Nyblad wrote: >>>> >>>> >>>>D >>>>> Let a pointer in C point to an element in an array.  Then the B >>>>> pointer +   1 will point to the next element in the array.  H >>>>> (Assuming that the type   of the pointer matches the element type L >>>>> of the array.)  But I wonder how  many people use that feature today.  >>>> >>>> >>>>; >>>> In article <43ED3339.DBAE181E@teksavvy.com>, JF Mezei  + >>>> <jfmezei.spamnot@teksavvy.com> writes:  >>>> >>>> >>>>> Larry Kilgallen wrote: >>>>>  >>>>> L >>>>>> Whereas I was wondering how many will remember how it works when they >>>>>> write such code.  >>>>>  >>>>>  >>>>> . >>>>> Pointer arithmetic in C is well defined. >>>> >>>> >>>>H >>>> But if Karsten is correct that not many people use the feature, theA >>>> fact that it is well defined will not help them remember it.  >>>  >>> I >>> Earlier in this thread, at least I think so, the claim was made that  @ >>> C was designed to have the capabilities of PDP-11 assembler. >>> F >>> I know of no other language that handles arrays in such a manner. G >>> Having used a number of assembly languages, I understand what it's  H >>> doing.  What I don't understand is why such a thing was included in D >>> any language that's more than an assembler.  I've been thinking F >>> rather hard on the technique, and I challenge anyone to provide a @ >>> need for such that isn't more easily done in another manner. >>> H >>> What it suggests to me is the capability of looking at some part of J >>> an array element, not necessarily including the first byte/bit in the 
 >>> array. >> >> >> >> Dave H >>             consider the autoincrement/decrement addressing modes on I >> pdp and VAX. The value of the index register was incremented according / >> to the size of the otem being operated on :-  >>; >>     movb    (r5)+, r0        ; r5 bumped up one location - >>     movw    (r5)+, r0        ; r5 bumped 2 - >>     movl    (r5)+, r0        ; r5 bumped 4  >>E >> This is the behaviour that the C pointer arithmetic is following,  1 >> methinks. It allowed the compiler to translate  >> >>     p++     or      p = p +1  >>, >> to the correct autoincrement instruction. >>D >> Actually if you look at the assembler code generated by many VAX @ >> compilers you might find the same constructs. Certainly ISTR I >> VAX-Fortran generating them for x = y DO loops. Once you get to arrays G >> of structures that are not 'natural' the compiler need to generate   0 >> ADD instructions using sizeof(array element).H >> In the 80s, I took on responsibility for some Macro-11 that was full # >> of statements along the lines of  >> >>     cmp    (r0)+,(r0)+  >> >> which was just to avoid >> >>     add    #4,r0  >>I >> It saved a word ISTR. I wasn't sure the two memory fetches were worth  I >> it and put the ADD back.  (not to mention the possibility of an access H >> violation from (r0) when moved to VMS). To be fair the code had been I >> wriiten originally for a small memory pdp (16K?) inder DOS-11. By the  I >> time I picked it up it was on RSX (32K non-overlayed tasks) looking to  >> VMS.  >>@ >> I may have mis-read your point. If so I apologise in advance. >> > K > You read it correctly.  The point is, why does a language need a special  J > pointer data type when the compiler knows the structure, even if it's a H > user defined structure.  As Larry, Tom, and I have been saying, other H > languages do not need this, they automatically handle the offsets.  A J > normal numeric data type is sufficient for indicating an element in the  > structure. > / > C offers too many opportunities for mistakes.  >    Quite correctly stated. G I was pointing this out in another newsgroup about big-endian machines  I like the G5 when doing string manipulation with pointers.  It seems that  F some compilers aren't written correctly to handle this issue properly.     --   Where are we going?   And why am I in this handbasket?   ------------------------------  % Date: Sat, 11 Feb 2006 16:21:30 -0500 - From: JF Mezei <jfmezei.spamnot@teksavvy.com> $ Subject: Re: null terminated strings, Message-ID: <43EE5556.234D8F64@teksavvy.com>   O'Brien Paddy wrote:I > If the address of the array descriptor is passed, then any array passed / > to the subprogram brings with it it's bounds.  > E > You get such usefulness when you have a good calling standard and a  > decent language.    G Do any VMS languages have their own complete interfaces to the OS calls E so that you never need to pass pointers, and you can call VMS systems 7 services with structures 100% native to your language ?   D If Not, then you need to pass pointers to item lists etc, instead of neat array descriptors.   E And if you need build your own interface subroutines that take native G arguments and translate them to VMS structures, then you're at the same E spot asn anyone else with languages that don't have such fancy native F structures: you need to use your own discipline to make sure you treat& those "dangerous" structures properly.   ------------------------------  % Date: Sat, 11 Feb 2006 17:04:23 -0500 - From: JF Mezei <jfmezei.spamnot@teksavvy.com> $ Subject: Re: null terminated strings, Message-ID: <43EE5F60.B6FABA8C@teksavvy.com>   Dave Froble wrote:+ > Then declare some array of the structure:  >  > Dim ABC Struc(99)    Nop. I mean:  . INQUIRE temp "Enter number of entries to load" DIM ABC struc(temp)   ; AKA: allocate an array dynamically based on some variable.    H In C, you can do that because of the use of pointers. "malloc" allocatesA an agnostic blob of memory of a certain size in bytes. You have a @ pointer to the first byte in that blob. You can cast this to anyG structure you wish and then the rest of the program treats that pointer G as an array.  When you're done, you can deallocate this blob of memory, ) and reuse the pointer for something else.   A And more importantly, you could have say 2 arrays, one containing G english strings, and one containing french strings. Early on, you check H the customer's language and set a pointer to point to either the englishG or french arrays. For the remainder of the processing, you just use the I pointer to the array and not have to worry about the customer's language.   F Sure, you can generate the same results in any language. But there areB some circumcstances where pointers actually allow you to make more elegant and streamlined code.     H Consider "multi-threaded" implementations using ASTs. Your AST gets onlyH one argument. You feed it a pointer to a structure that defines the fullH context of a connection. So when the AST executes, it easily gets access? to the connection specific context and can update it. When that C connection closes, you can simply free that blob of memory and that F context is gone. And a new connection arrives, you allocate a new blobG of memory to setup the new context. And this way, because you are using 7 pointers, you can have multiple concurrent connections.   G In basic, you would have to have a fixed array, and keep track of which D entries are in use so that when a new connection comes in, you wouldD have to scan the array for the first free slot. And you would have aE fixed maximum number of connections possible due to the fixed size of 
 the array.  H Consider the need to read an HTML page into memory. You have no idea howE big it may be. So you allocate a 10k buffer and when you get close to E the limit, you can "realloc" the buffer to a bigger size. When you're E done, you can free the buffer. Since the code works with pointers, if H the actual buffer was moved because there was no more contiguous memory,> the code doesn't care because it accesses the updated pointer.  D (and yes, you need to manually keep track of the buffer's size, evenB though the memory allocation system has internal knowledge of eachE blob's size so that when you free it, it knows how big a blob you are % making available for new allocations)    ------------------------------  % Date: Sat, 11 Feb 2006 17:10:10 -0500 - From: JF Mezei <jfmezei.spamnot@teksavvy.com> $ Subject: Re: null terminated strings, Message-ID: <43EE60BB.5D08D9A1@teksavvy.com>   Dave Froble wrote:/ > C offers too many opportunities for mistakes.   H Why do they still make manual transmission cars ? That clutch allows too  many opportunities for mistakes.  H Yes, if you are writing a nice business applications, your all-automatic> Cadillac with head-up display on widnshield, IR cameras to seeC people/animals at night and all the gadgets you need will make your % business application easier to write.   D But your Cadiallac isn't good to get off road, or on a safari in theH desert where sand will clog your air filter and your gadgets won't be of	 much use.   E C may not have some of the features that make other langages superior G for certain applications, but it has greater versatility. And because C H allows you to go off-road (dealing with pointers), you need to have more4 discipline because things can break if you abuse it.   ------------------------------   Date: 12 Feb 2006 01:13:56 GMT( From: bill@cs.uofs.edu (Bill Gunshannon)$ Subject: Re: null terminated strings+ Message-ID: <457gejF5an69U1@individual.net>   ( In article <ops4td9ycgzgicya@hyrrokkin>,& 	"Tom Linden" <tom@kednos.com> writes: > M > It is not that I am shy, we have these endless discussions leading to ennui M > on programming techniques in C, when the real problem is that C shouldn't    > be- > used for any serious programming project.     D Matter of opinion.  I thhink C is well suited to serious programmingG projects, but not for 90% of the stuff it gets used for serious or not.   K >                                            It is too primitive, makes you L > reinvent too many wheels and is not well suited for writing reliable code.   Also a matter of opinion.    > And the syntax is ugly.   A And definitely not true (but probably another matter of opinion.)   B Now, as I am sure everyone here things I am the super supporter ofB C, I have to tell you the truth.  While I can and do program in C,D I have always prefered Pascal (why do people here think I have spentE so much time looking for the pieces of Tiny Pascal that used to float B around?  I love playing with Pascal compilers in my free time justD for grins!!)  As I have said in the past, when I started with the CSB department here the starter language was Pascal when it changed toB Ada I said I thought it was a bad idea.  When Ada was abandoned inD favor of Java I said that too, was a bad idea.  I still believe thatH the first courses should be taught in Pascal.  We don't teach languages,F we teach programming concepts and proper programming practice.  PascalE is still pretty much the best language to do that.  But that does not B mean there are not jobs where Ada, Modula, PL/I and even C are the1 right tool for the job.  Or Fortran.  Or COBOL.     G Now, hopefully this will put an end to this round of the language wars.    bill   --  J Bill Gunshannon          |  de-moc-ra-cy (di mok' ra see) n.  Three wolvesD bill@cs.scranton.edu     |  and a sheep voting on what's for dinner. University of Scranton   |A Scranton, Pennsylvania   |         #include <std.disclaimer.h>       ------------------------------   Date: 12 Feb 2006 01:19:43 GMT( From: bill@cs.uofs.edu (Bill Gunshannon)$ Subject: Re: null terminated strings+ Message-ID: <457gpeF5an69U2@individual.net>   3 In article <QLSRYaty6DPq@eisner.encompasserve.org>, 0 	Kilgallen@SpamCop.net (Larry Kilgallen) writes:e > In article <YMudnexlGOKOwHDenZ2dnUVZ_vudnZ2d@libcom.com>, Dave Froble <davef@tsoft-inc.com> writes:  > @ >> I'm thinking that I may be discussing this from a particular I >> perspective, and not allowing for other perspectives.  I need to be a   >> bit more tolerant i guess.  >>  * >> The experiences that form my posts are: >>   >> MACRO-10  >> MACRO-11  >> MACRO-32 	 >> Basic+  >> Basic Plus 2  >> VAX Basic
 >> Fortran >> Cobol (but not much)  :-)) >> And maybe a sprinkling of a few others  >>  + >> Maybe I should get out a bit more often?  > I > Either Pascal or Ada would give you a considerably different view as to + > what constitutes a higher level language.   = Yeah, Pascal as a good example and Ada as a bad example.  :-)    bill   --  J Bill Gunshannon          |  de-moc-ra-cy (di mok' ra see) n.  Three wolvesD bill@cs.scranton.edu     |  and a sheep voting on what's for dinner. University of Scranton   |A Scranton, Pennsylvania   |         #include <std.disclaimer.h>       ------------------------------  % Date: Sat, 11 Feb 2006 20:54:59 -0500 - From: JF Mezei <jfmezei.spamnot@teksavvy.com> $ Subject: Re: null terminated strings, Message-ID: <43EE9567.1B1AAC14@teksavvy.com>   Bill Gunshannon wrote:H > we teach programming concepts and proper programming practice.  Pascal4 > is still pretty much the best language to do that.  G I tend to agree that Pascal is a good language to teach. Not sure if it " is good for real life programming.  C I also think that assembler should be a requirement for all serious C computer science course. If you don't understand how a CPU works in E tersm of instructions, you don't really understand how computers work ! and are just a user of computers.    ------------------------------    Date: 11 Feb 2006 15:45:59 -05003 From: Rich Alderson <news@alderson.users.panix.com>  Subject: Re: PDPs in the news!. Message-ID: <mddpsltpqt4.fsf@panix5.panix.com>  N I know someone who is actively looking for an 11/60 (not me, not anyone I workG for).  Please contact me off-line so I can put the two of you in touch.    --  L Rich Alderson                                       | /"\ ASCII ribbon     |L news@alderson.users.panix.com                       | \ / campaign against |L "You get what anybody gets. You get a lifetime."    |  x  HTML mail and    |L                          --Death, of the Endless    | / \ postings         |   ------------------------------  # Date: Sat, 11 Feb 2006 22:27:59 GMT L From: winston@SSRL.SLAC.STANFORD.EDU (Alan Winston - SSRL Central Computing)$ Subject: Re: Perl, DBI, and DBD::RDB6 Message-ID: <00A5129F.D282966E@SSRL.SLAC.STANFORD.EDU>  H In article <dsl7ls02j63@enews4.newsguy.com>, healyzh@aracnet.com writes:  K >Based on Alan Winston's book on OpenVMS Web Servers, there is a version of K >Perl for OpenVMS that already has the DBI installed.  It doesn't appear to M >be in Perl V5.6-1 or Perl 5.8-6 from the HP website.  Does anyone know where  >to find this version of Perl?  / The version I referred to in the book came from   ! ftp://www.sidhe.org/perlbuild.zip   O (The home page that refers to that is http://www.sidhe.org/vmsperl/index.html )     O That's the 5.6-1 version that I referred to in the book.  Craig Berry, who made N up that version and who posts here pretty regularly has, I think, been workingI on a more recent prebuilt kit - 5.6-1 is pretty old.  (I'm still using it  myself, but it's pretty old.)    > M >Or does anyone know where to find a version of DBI that will build with Perl C >5.8-6 under OpenVMS 7.3-2?  My attemps to build DBI 1.50 have been  >questionable :^(  > ! >3 tests and 45 subtests skipped. I >Failed 45/49 test scripts, 8.16% okay. 1387/1896 subtests failed, 26.85%  >okay. > J >The end result is that I want to be able to use the DBD::RDB perl module.  3 I'll await an answer on building DBI with interest.    -- Alan    ------------------------------  % Date: Sat, 11 Feb 2006 13:29:51 -0700 " From: GreyCloud <mist@cumulus.com>/ Subject: Re: Security experts say no secure OS! : Message-ID: <mNedndl9ub1w1HPenZ2dnUVZ_tSdnZ2d@bresnan.com>   Dave Froble wrote:   > GreyCloud wrote: >  >> bob@instantwhip.com wrote:  >>J >>> these guys obviously don't know about OpenVMS, or in IBMs case, do not >>> want to I >>> acknowledge it ... put o boot on VMS, sure, but where decides what it  >>> can do ... what  >>> idiots ... >>> z >>> http://www.informationweek.com/news/showArticle.jhtml;jsessionid=L1WPBLPNLDMS2QSNDBCSKHSCJUMEKJVN?articleID=179103249  >>>  >>>  >>J >> Funny that the journalists always say "... experts ..." but never give ' >> out names.  Very weak on their part.  >> > H > Well, one thing I saw mentioned is that even if you have a secure OS, ? > you can still implement unsecure applications.  This is true.  >   F Very true, especially in NSAs report on how to secure OS X.  You just 7 about have to throw out all the apps to make it secure.      --   Where are we going?   And why am I in this handbasket?   ------------------------------  + Date: Sat, 11 Feb 2006 22:23:43 +0000 (UTC) 7 From: moroney@world.std.spaamtrap.com (Michael Moroney) / Subject: Re: Security experts say no secure OS! ( Message-ID: <dslo5f$eer$1@pcls4.std.com>  " VAXman-  @SendSpamHere.ORG writes:  I >>Funny that the journalists always say "... experts ..." but never give  & >>out names.  Very weak on their part.  N >ex -- adj: out of fashion, demode or outmoded, antique, old-fashioned, passe.@ >spurt -- n: the occurrence of a sudden discharge (as of liquid)  + >Thus, ex-spurts are has-been wankers.        J Or alternately:  X is an unknown quantity, spurt is a drip under pressure.   ------------------------------    Date: 11 Feb 2006 13:56:58 -0600- From: Kilgallen@SpamCop.net (Larry Kilgallen) " Subject: Re: V7.3-2 and Joliet CDs3 Message-ID: <7WjQHnWNoUON@eisner.encompasserve.org>   [ In article <slrndus8ov.cl0.rivie@stench.no.domain>, Roger Ivie <rivie@ridgenet.net> writes: ? > On 2006-02-11, Larry Kilgallen <Kilgallen@SpamCop.net> wrote: Q >> But by using a tilde character in the filename of the primary (8.3) hierarchy, K >> the MAKER OF THE FORMATTING TOOL has violated ISO-9660.  Unless the tool L >> used to make the CDROM came from Microsoft, the only part of this problemP >> one can blame on Microsoft is setting a bad example for standards compliance. > F > On Windows, I would expect the formatting tool to use the short nameA > generated by Windows when the file was created as the 8.3 name. @ > Microsoft, in its infinite wisdom, uses tildes in those names.  G This "short name" is stored in the Primary Volume Descriptor Hierarchy, H so they are corrupting the part of the ISO-9660 standard with which they would otherwise comply.   E > By the way, WordStar (REAL WordStar; 3.3, 4.0; I'm not certain what H > happened in the 5.x timeframe) also doesn't like tildes in file names. > Very annoying.  L Is that also in a context where a standards body has declared them illegal ?   ------------------------------   End of INFO-VAX 2006.085 ************************