Waldek,
Thank you very much for you help. The following works and returns the
compiler output as a string in an SExpression:
---
)lisp (defun string2spad (the-string-list) (let* ( ($LISPLIB t)
(|$QuickLet| t) (|$QuickCode| t) (| $InteractiveMode| nil)
(*standard-input* (make-string-input-stream (format nil "~{~A~^~%~}"
the-string-list))) (*standard-output* (make-string-output-stream)) )
(declare (special $LISPLIB |$InteractiveMode|)) (|spadCompile| nil)
(get-output-stream-string *standard-output* ) ))
S:=[")abbrev domain XXX xxx", "xxx():BasicType == Integer"]
STRING2SPAD(S)$Lisp
---
However it only works provided that I first compile an actual file
*before* calling STRING2SPAD. If I don't )compile first I get this
message:
>> System error:
The function |recordHeaderDocumentation| is undefined.
This suggests that maybe something is being loaded dynamically by the
interpreted when processing the ')compile ...' command. Do you have
any idea what this might be and how I can simulate this in the
STRING2SPAD function?
Regards,
Bill Page.
On Sun, Mar 6, 2011 at 10:50 AM, Waldek Hebisch
<[email protected]> wrote:
> Bill Page wrote:
>>
>> Waldek,
>>
>> Thanks for the suggestion. I did have some success
>>
>
> AFAICS you need more complicated function:
>
> )lisp (defun string2spad (the-string) (let* ( ($LISPLIB t)
> (|$InteractiveMode| nil) (*standard-input* (make-string-input-stream
> the-string)) ) (declare (special $LISPLIB |$InteractiveMode|)) (|spadCompile|
> nil) ))
> ...
--
You received this message because you are subscribed to the Google Groups
"FriCAS - computer algebra system" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/fricas-devel?hl=en.