🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: net.math.stat
Article #103

Problem with menu function in S

#103
From: Paul Lutt
Date: Wed, 19 Jun 1985 01:06
49 lines
2777 bytes
I am having a problem with a function in ``S'' and I am hoping someone
out there in netland has a solution.  The S manual describes a function
called "menu" which allows the user to build simple menus of commands.
When we tried this function locally, we got the message: "Error:  Function
menu not found".  It turns out that the `Smakefile' for the menu function
is setup in such a fashion that the tools that build the list of available
functions skips the "menu" function.  I modified the `Smakefile', changing
the first line from:

	menu: menu.x plmenu.o
to:
	menu: interface.o menu.x plmenu.o

This change satisfied the function-list builder, making the "menu" function
available to the user.

The next step was to try the "menu(items,actions)" example shown in the
S manual.  This example displays the following menu:

	1 - List Datasets in Work Directory
	2 - List Datasets in Save Directory
	3 - quit
	Which one?

At this point, I tried to quit by answering "3".  The system thought
for a bit and then come up with the following error message:

	S terminating: bad address

At this point I spent a fair amount of time finding out how the menu
function goes about doing its job.  It turns out that when I answer
"3", the corresponding action in the "action" dataset is written out to
a temporary file.  In this particular case, the action is "q" for
quit.  Once the temporary file has been written, S is put in a mode
where it reads its input stream from the temporary file.  It is at this
point that things go sour.  The temporary file is written successfully,
but when S goes to re-open it to read the command stream, it uses a
null string as the file name.  This gives S a bunch of garbage to
interpret at commands, which fails miserably.

I've tried to figure out why the temporary file name gets lost, but I'm
stuck in a maze of m4 macros, ratfor subroutines, and sorted software glue.
Any help would be greatly appreciated.
-- 
   Paul Lutt           (206) 356-5059
   John Fluke Mfg. Co.
   P.O. Box C9090
   Everett, WA  98206  
   {allegra,decvax!microsof,ssc-vax,ucbvax!lbl-csam,uw-beaver}!fluke!pwl
Technical Details
Message-ID: <2401@vax4.fluke.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxt!houxm!mtuxo!mtunh!mtung!mtunf!ariel!vax135!cornell!uw-beaver!fluke!pwl

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2.fluke 9/24/84; site vax4.fluke.UUCP
Path: arc1-ca.pugleaf.net!utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxt!houxm!mtuxo!mtunh!mtung!mtunf!ariel!vax135!cornell!uw-beaver!fluke!pwl
From: pwl@fluke.UUCP (Paul Lutt)
Newsgroups: net.math.stat
Subject: Problem with menu function in S
Message-ID: <2401@vax4.fluke.UUCP>
Date: Tue, 18-Jun-85 21:06:19 EDT
Article-I.D.: vax4.2401
Posted: Tue Jun 18 21:06:19 1985
Date-Received: Thu, 20-Jun-85 20:03:24 EDT
Distribution: net
Organization: John Fluke Mfg. Co., Inc., Everett, WA
Lines: 49