From mboxrd@z Thu Jan 1 00:00:00 1970 From: cowan@ccil.org (John Cowan) Date: Wed, 10 Dec 2008 13:08:26 -0500 Subject: [TUHS] /usr/bin/bs on HPUX? In-Reply-To: <75D36093-D9D0-48EF-ACAC-DF739E0236B6@mac.com> References: <75D36093-D9D0-48EF-ACAC-DF739E0236B6@mac.com> Message-ID: <20081210180826.GE1746@mercury.ccil.org> Lord Doomicus scripsit: > I was poking around an HP UX system at work today, and noticed a > command I've never noticed before ... /usr/bin/bs. > > I'm sure it's been there for a long time, even though I've been an > HPUX admin for more than a decade, sometimes I'm just blind ... but > anyway .... > > I tried to search on google ... it looks like only HPUX, AIX, and > Maybe AU/X has it. Seems to be some kind of pseudo BASIC like > interpreter. That's just what it is. Here are the things I now know about it. 0. The string "bs" gets an awful lot of false Google hits, no matter how hard you try. 1. "bs" was written at AT&T, probably at the Labs, at some time between the release of 32V and System III. It was part of both System III and at least some System V releases. 2. It was probably meant as a replacement for "bas", which was a more conventional GW-Basic-style interpreter written in PDP-11 assembly language. (32V still had the PDP-11 source, which of course didn't work.) 3. At one time System III source code was available on the net, including bs.c and bs.1, but apparently it no longer is. I downloaded it then but don't have it any more. 4. I was able to compile it under several Unixes, but it wouldn't run: I think there must have been some kind of dependency on memory layout, but never found out exactly what. 5. I remember from the man page that it had regular expressions, and two commands "compile" and "execute" that switched modes to storing expressions and executing them on the spot, respectively. That eliminated the need for line numbers. 6. It was apparently never part of Solaris. 7. It was never part of any BSD release, on which "bs" was the battleships game. 8. I can't find the man page on line anywhere either. 9. The man page said it had some Snobol features. I think that meant the ability to return failure -- I vaguely remember an "freturn" command. 10. 99 Bottles of Beer has a sample bs program at http://www2.99-bottles-of-beer.net/language-bs-103.html . 11. If someone sends me a man page, I'll consider reimplementing it as Open Source. -- We are lost, lost. No name, no business, no Precious, nothing. Only empty. Only hungry: yes, we are hungry. A few little fishes, nassty bony little fishes, for a poor creature, and they say death. So wise they are; so just, so very just. --Gollum cowan at ccil.org http://ccil.org/~cowan