Ping?

P.S: Comments on shell and windows:

Even when building native windows version, we strongly depend
on a POSIX shell environment instead of CMD shell.

In the past, we have only used SBCL for native windows version.
I tried Clozure CL successfully recently.

GCL can only be built using mingw instead mingw64 so I didn't try.

CLISP provides a 32bit mingw version binary but that's 14 years old.
I failed to build a mingw64 version after trivial attempts.

ECL doesn't provide prebuilt windows binaries.  Apparently it can
be built by MSVC or mingw64.  I can build a mingw64 version but
failed to build FriCAS.

Since this patch works for SBCL on windows, so I don't believe
it will introduce breakages.

- Qian

On 1/4/24 22:16, Qian Yun wrote:
I introduced a new function |run_program|:

(defun |run_program| (command arguments)
   ;; Execute "command" with a list of "arguments" synchronously.
   ;; Output to the standard output stream.
   ;; The return value is the exit code of "command".

And try to replace "OBEY" with it.

This is still in early stages, definitely should not go to
the up coming release.  Some comments are left there need
clearing up, more testing are needed, especially on Windows.

See patch at https://github.com/oldk1331/fricas/tree/cleanup-obey
or in attachment.

Some potential problems:

0. Rename 'OBEY' to '|run_shell_command|'?

1. jfricas and *OBEY-STDOUT*

This change will affect jfricas.  I'll not sure what's the best
approach to fix it yet, maybe make a duplicated definition?
Or redirect various streams?  I'll take a deeper look.

2. editFile and SPADEDIT

Related code is messy and not working on my side. (I did not
try hard.)

Is this functionality still useful?  This surely is not how
programs interactwith users these days.

3. Aldor related

"asList" in as.boot: can use '(directory "as/*.asy")' to replace
OBEY.  However is this function still needed?

"compile-as-file" in foam_l.lisp.  Is it used during Aldor interface
build? I plan to change the type of optional argument "opts" from
(or nil string) to (list string).

4. In buildLibdb, I skipped rename-file. Should not be a problem.

5. "grepFile" in br-search.boot uses IO redirection, so it has to use
OBEY instead of |run_program|.

- Qian

--
You received this message because you are subscribed to the Google Groups "FriCAS - 
computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/fricas-devel/20781527-9ddf-4a78-b84c-627dd93afea6%40gmail.com.

Reply via email to