From: Frank Goenninger
Subject: Q: Xemacs, ACl60, eli: error "wrong type argument: strinp, nil" ??
Date: 
Message-ID: <3A0D9B74.BE13F89E@hp.com>
Hi you!

I need help in setting up the eli between Xemacs 21.1 and ACL 6.0 Trial.
When I call the sample file (customized with my env's parameters) I get
an error saying:
--
(1) (initialization/error) An error has occurred while loading ~\.emacs:

Wrong type argument: stringp, nil
--

As this has to do with the eli I wonder if someone else has come across
this.

In my .emacs file it says:
--
(load "d:/data/frgo/eli/eli.el") ;; Last line calls ELI
--

And the eli.el file looks like this:
--
;; frgo's eli.el file.

(defvar *eli-directory*)
(setq *eli-directory* "d:/Programs/franz/ACL60/eli/")

(load (format "%sfi-site-init" *eli-directory*))

(setq fi:common-lisp-image-name
"d:/Programs/franz/ACL60/allegro-ansi.dxl")
(setq fi:common-lisp-host "sfgh00de.bbn.hp.com")

;; This function starts up lisp with your defaults.
(defun run-common-lisp ()
  (interactive)
  (fi:common-lisp fi:common-lisp-buffer-name
		  fi:common-lisp-directory
		  fi:common-lisp-image-name
		  fi:common-lisp-image-arguments
		  fi:common-lisp-host))

;; Set up a keybinding for `run-common-lisp', two possible ways:
(define-key global-map "\C-xl" 'run-common-lisp)

;; Run cl each time emacs is run:
(run-common-lisp)
--

So - any ideas? And yes - I'd appreciate to get "hints only". So I can
try to figure it out myself. 

Thanks.

Regards,
  Frank

From: Frank Goenninger
Subject: Re: Q: Xemacs, ACl60, eli: error "wrong type argument: strinp, nil" ??
Date: 
Message-ID: <3A0DAE45.3D101FB9@hp.com>
Well, in case this is (I'm almost sure it is ;-) important: platform is
NT.

#:frgo

Frank Goenninger wrote:
> 
> Hi you!
> 
> I need help in setting up the eli between Xemacs 21.1 and ACL 6.0 Trial.
> When I call the sample file (customized with my env's parameters) I get
> an error saying:
> --
> (1) (initialization/error) An error has occurred while loading ~\.emacs:
> 
> Wrong type argument: stringp, nil
> --
> 
> As this has to do with the eli I wonder if someone else has come across
> this.
> 
> In my .emacs file it says:
> --
> (load "d:/data/frgo/eli/eli.el") ;; Last line calls ELI
> --
> 
> And the eli.el file looks like this:
> --
> ;; frgo's eli.el file.
> 
> (defvar *eli-directory*)
> (setq *eli-directory* "d:/Programs/franz/ACL60/eli/")
> 
> (load (format "%sfi-site-init" *eli-directory*))
> 
> (setq fi:common-lisp-image-name
> "d:/Programs/franz/ACL60/allegro-ansi.dxl")
> (setq fi:common-lisp-host "sfgh00de.bbn.hp.com")
> 
> ;; This function starts up lisp with your defaults.
> (defun run-common-lisp ()
>   (interactive)
>   (fi:common-lisp fi:common-lisp-buffer-name
>                   fi:common-lisp-directory
>                   fi:common-lisp-image-name
>                   fi:common-lisp-image-arguments
>                   fi:common-lisp-host))
> 
> ;; Set up a keybinding for `run-common-lisp', two possible ways:
> (define-key global-map "\C-xl" 'run-common-lisp)
> 
> ;; Run cl each time emacs is run:
> (run-common-lisp)
> --
> 
> So - any ideas? And yes - I'd appreciate to get "hints only". So I can
> try to figure it out myself.
> 
> Thanks.
> 
> Regards,
>   Frank
From: ·····@killspam.known.net
Subject: Re: Q: Xemacs, ACl60, eli: error "wrong type argument: strinp, nil" ??
Date: 
Message-ID: <m3aeb586kc.fsf@relay.known.net>
Frank Goenninger <················@hp.com> writes:

Try removing all the elc files in the eli/ directory, and restarting
your xemacs.

> Hi you!
> 
> I need help in setting up the eli between Xemacs 21.1 and ACL 6.0 Trial.
> When I call the sample file (customized with my env's parameters) I get
> an error saying:
> --
> (1) (initialization/error) An error has occurred while loading ~\.emacs:
> 
> Wrong type argument: stringp, nil
> --
> 
> As this has to do with the eli I wonder if someone else has come across
> this.
> 
> In my .emacs file it says:
> --
> (load "d:/data/frgo/eli/eli.el") ;; Last line calls ELI
> --
> 
> And the eli.el file looks like this:
> --
> ;; frgo's eli.el file.
> 
> (defvar *eli-directory*)
> (setq *eli-directory* "d:/Programs/franz/ACL60/eli/")
> 
> (load (format "%sfi-site-init" *eli-directory*))
> 
> (setq fi:common-lisp-image-name
> "d:/Programs/franz/ACL60/allegro-ansi.dxl")
> (setq fi:common-lisp-host "sfgh00de.bbn.hp.com")
> 
> ;; This function starts up lisp with your defaults.
> (defun run-common-lisp ()
>   (interactive)
>   (fi:common-lisp fi:common-lisp-buffer-name
> 		  fi:common-lisp-directory
> 		  fi:common-lisp-image-name
> 		  fi:common-lisp-image-arguments
> 		  fi:common-lisp-host))
> 
> ;; Set up a keybinding for `run-common-lisp', two possible ways:
> (define-key global-map "\C-xl" 'run-common-lisp)
> 
> ;; Run cl each time emacs is run:
> (run-common-lisp)
> --
> 
> So - any ideas? And yes - I'd appreciate to get "hints only". So I can
> try to figure it out myself. 
> 
> Thanks.
> 
> Regards,
>   Frank
> 

-- 
Kevin Layer
Franz Inc.
From: Frank Goenninger
Subject: Re: Q: Xemacs, ACl60, eli: error "wrong type argument: strinp, nil" ??
Date: 
Message-ID: <3A0EF6C8.F72A1E2C@hp.com>
Hi Kevin,

thanks for your answer. Unfortunately, removing all the .elc files did
_not_ resolve the problem. The same error keeps showing up.

I tried to trace this down (kind of hard, being new to Xemacs and ACL).
The debug output of starting Xemacs shows that the function being called
in Xemacs is start-process-internal. This function complains about
receiving nil as its second argument.

The backtrace looks like this:
----
Signaling: (wrong-type-argument stringp nil)
  start-process-internal("common-lisp" nil
"d:/Programs/franz/ACL60/allegro-ansi.exe" "-e"
"(excl:start-emacs-lisp-interface t)")
  apply(start-process-internal "common-lisp" nil
"d:/Programs/franz/ACL60/allegro-ansi.exe" ("-e"
"(excl:start-emacs-lisp-interface t)"))
  start-process("common-lisp" nil
"d:/Programs/franz/ACL60/allegro-ansi.exe" "-e"
"(excl:start-emacs-lisp-interface t)")
  apply(start-process "common-lisp" nil
"d:/Programs/franz/ACL60/allegro-ansi.exe" ("-e"
"(excl:start-emacs-lisp-interface t)"))
  fi::socket-start-lisp("*common-lisp*" "common-lisp"
"d:/Programs/franz/ACL60/allegro-ansi.exe" ("-e"
"(excl:start-emacs-lisp-interface t)"))
  fi:common-lisp("*common-lisp*" nil
"d:/Programs/franz/ACL60/allegro-ansi.exe" nil "sfgh00de.bbn.hp.com")
  run-common-lisp()
  load-internal("D:/data/frgo/eli/eli.el" nil nil nil undecided)
  load("D:/data/frgo/eli/eli.el")
  load-internal("~\\.emacs" t t t undecided)
  load("~\\.emacs" t t t)
  load-user-init-file("")
  load-init-file()
  command-line()
  normal-top-level()
----

The call to fi:socket-start-lisp shows the second argument as
"common-lisp". The call to apply then shows this string set to nil. I
assume there sits the `problem'.

When looking at the relevant code fragment in eli/fi-subproc.el the nil
is introduced by commenting out the buffer-name:

----
(defun fi::socket-start-lisp (buffer-name process-name image arguments)
  (let (
;;;; rms didn't like the win32- prefix, so we have to support the old
and
;;;; new style:
	(win32-start-process-show-window t)
	(w32-start-process-show-window t)
	(win32-quote-process-args t)
	(w32-quote-process-args t)
	;; from Greg Klanderman:
	;; XEmacs 21 NT does this differently...
	(nt-quote-args-functions-alist '(("." . nt-quote-args-double-quote))))
    (apply (function start-process)
	   process-name
	   nil ;; buffer-name
------>>>>>^^^^^^^^^^^^^^^^^^    *HERE !!!*
	   image arguments)))

----

I see a strange behaviour when I replace the nil by the buffer-name
statement:

Error is still there...

I see the following possibilities for this:
1. This is the wrong place. The code here never gets executed.
2. The changes have not been reflected. _But_ the file fi-subproc.el got
compiled upon the next Xemacs startup. Hmm. :-(

Well, now I definitely need some advice. Kevin, or any other ACL/Xemacs
guru, could you pls follow up on this?! TIA.

Regards,
#:frgo

·····@killspam.known.net wrote:
> 
> Frank Goenninger <················@hp.com> writes:
> 
> Try removing all the elc files in the eli/ directory, and restarting
> your xemacs.
> 
> > Hi you!
> >
> > I need help in setting up the eli between Xemacs 21.1 and ACL 6.0 Trial.
> > When I call the sample file (customized with my env's parameters) I get
> > an error saying:
> > --
> > (1) (initialization/error) An error has occurred while loading ~\.emacs:
> >
> > Wrong type argument: stringp, nil
> > --
> >
> > As this has to do with the eli I wonder if someone else has come across
> > this.
> >
> > In my .emacs file it says:
> > --
> > (load "d:/data/frgo/eli/eli.el") ;; Last line calls ELI
> > --
> >
> > And the eli.el file looks like this:
> > --
> > ;; frgo's eli.el file.
> >
> > (defvar *eli-directory*)
> > (setq *eli-directory* "d:/Programs/franz/ACL60/eli/")
> >
> > (load (format "%sfi-site-init" *eli-directory*))
> >
> > (setq fi:common-lisp-image-name
> > "d:/Programs/franz/ACL60/allegro-ansi.dxl")
> > (setq fi:common-lisp-host "sfgh00de.bbn.hp.com")
> >
> > ;; This function starts up lisp with your defaults.
> > (defun run-common-lisp ()
> >   (interactive)
> >   (fi:common-lisp fi:common-lisp-buffer-name
> >                 fi:common-lisp-directory
> >                 fi:common-lisp-image-name
> >                 fi:common-lisp-image-arguments
> >                 fi:common-lisp-host))
> >
> > ;; Set up a keybinding for `run-common-lisp', two possible ways:
> > (define-key global-map "\C-xl" 'run-common-lisp)
> >
> > ;; Run cl each time emacs is run:
> > (run-common-lisp)
> > --
> >
> > So - any ideas? And yes - I'd appreciate to get "hints only". So I can
> > try to figure it out myself.
> >
> > Thanks.
> >
> > Regards,
> >   Frank
> >
> 
> --
> Kevin Layer
> Franz Inc.