@Leonid I actually never used it and I have forgotten about it. It would be a good solution for what I tried to ask here, right? community.wolfram.com/groups/-/m/t/1781821
What I am looking for: have a "generator" for combinatorial objects of which there may be too many to generate at the same time.
My impression was that the Streaming stuff is focused on cases when one might want to store data on disc, and when processing individual items takes long enough that the overhead from the Streaming framework is negligible.
The combinatorial applications I had in mind would not need to use the disc, and would need to process a very large number of items where processing each individual item is very quick (thus the overhead might be a big deal)
@Szabolcs Yes, exactly. Streaming can be used for exactly the type of problems you mentioned in your community post. In fact, that post of yours initiated a vivid internal discussion within the company, where Streaming was also a part
@Szabolcs Streaming has a mode which does not involve the disk - can be done entirely in memory.
I guess what I need to do soon is to provide a comprehensive set of examples to compensate for a lack of documentation
Can you do SystemOpen on this: DirectoryName @ DirectoryName @ FindFile["StreamingPatch`"]], and upload a screenshot of the resulting folder structure?
$ ls -l .Mathematica/Applications/StreamingPatch total 12 drwxr-xr-x 3 mike mike 4096 Sep 8 20:18 Interfaces drwxr-xr-x 2 mike mike 4096 Sep 8 20:18 Kernel -rwxr-xr-x 1 mike mike 957 Sep 8 20:18 StreamingPatchBootstrap.m
$ ls -l .Mathematica/Applications/StreamingPatch/Interfaces total 28 -rwxr-xr-x 1 mike mike 4714 Sep 8 20:18 Accumulator.m -rwxr-xr-x 1 mike mike 3855 Sep 8 20:18 Iterator.m drwxr-xr-x 2 mike mike 4096 Sep 8 20:18 Kernel -rwxr-xr-x 1 mike mike 3386 Sep 8 20:18 Set.m -rwxr-xr-x 1 mike mike 2676 Sep 8 20:18 Storage.m -rwxr-xr-x 1 mike mike 1670 Sep 8 20:18 Writer.m
This is really strange. Get should be able to identify this as a package and load it (FindFile["Interfaces`"] in that Block should have resolved to this Init.m), yet this did not happen
Can you copy that Interfaces folder to some test folder you have in your user space, which is not hidden or read-only etc, and then try the same from there:
The next thing to try is to rename the folder Interfaces in MathematicaTest, to say "MyInterfaces", and then also in FindFile, to FindFile["MyInterfaces`"] - can you try this?
I suspect that "Interfaces" might be some magic token
hmm. I think for now I am somewhat out of ideas, and also I can't continue with this today for much longer. But we have narrowed down the problem very considerably. The next step will be for me to try reproducing this on Linux, and playing with this.
Ok, thanks. I have CentOS, but hopefully the difference should not matter. I will try to reproduce this issue in the next couple of days, and come back here.
Basically, the problem is very stupid: we just need to find a way to load that subpackage
No problem. Also, I suspect that this issue is the reason why the Streaming build in the layout is corrupt in the first place, with Interfaces missing from it - which is why that patch is needed
Keep an eye on this chat, I will ping you whenever I get something