vermaseren / form

The FORM project for symbolic manipulation of very big expressions
GNU General Public License v3.0
982 stars 118 forks source link

How properly load big files? #395

Open FeelUsM opened 2 years ago

FeelUsM commented 2 years ago

I have file, prviously saved with #write <FileName> "%E" , Expr. I load it next way:

Local Expr = 
#include FileName
;

but all content of this file goes in log file, and if this file have big size (several gigabytes) it is inconvenient.

How to load big files and have small log file?

tueda commented 2 years ago

You can try #include with -:

Local Expr = 
#include - FileName
;
FeelUsM commented 2 years ago

Ok, thanks. How to overcome the following error?:

    L L =
    #include - inctmp
    ;
trace.frm Line 16 --> More than 33554431 subexpressions inside one expression
Program terminating at trace.frm Line 16 -->
tueda commented 2 years ago

I guess you need to split the file somehow and construct the expression little by little:

L L =
#include - inctmp1
;
.sort
L L = L
#include - inctmp2
.sort
...

Or you can use the Save/Load statements.

vermaseren commented 1 year ago

Most likely this is a problem in the tokenizer that does not recognize identical subexpressions. One of the exercises in the workshop this week is to see what can be done about it. To be continued.