The most important thing is to get the underlying multi-dimensional array structure and associated syntax for slicing, etc. These should allow me to do things like adding the elements of the third dimension of A to the vector B and storing the results in the third row of X. This should be done by efficiently striding through the referenced array structures without needing any temporary vectors, etc. Matlab and Numpy (the Python numeric package) are good places to look.<br>
<br>Originally, my thought was to also allow the specification of an underlying representation (I was using u8, u16, u32, u64, s8, s16, s32, s64, f32, f64, c64, and c128 for various unsigned and signed integers, and single and double precision floats and complexes). I have this code running and will put in up on the Schematics site and post a reference later. It works fine, but I was disappointed in it's performance relative to just plain Scheme vectors. [It uses the SRFI 4 vector representations underneath, which I think map to definitions in the foreign function interface (FFI). We could work with Matthew and see if there are something we can do to improve the efficiency.] I still think that giving the user the option to specify the representation is the right thing to do from a numerical analysis perspective.<br>
<br>I'll put some more time into writing up my own thoughts on the multi-dimensional array structure and the syntax for referencing slices, etc.<br><br>Doug<br><br><div class="gmail_quote">On Tue, Aug 11, 2009 at 8:15 PM, Matthias Felleisen <span dir="ltr"><<a href="mailto:matthias@ccs.neu.edu">matthias@ccs.neu.edu</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div style="word-wrap: break-word;">
<div><br></div><div>Doug, can you describe to someone like Jason how he can assist you? </div><div><div></div><div class="h5"><div><br></div><br><div><div>On Aug 11, 2009, at 8:57 PM, Doug Williams wrote:</div><br><blockquote type="cite">
We actually do a lot of analysis work in Scheme - migrating from Python and Matlab. The science collection (<a href="http://planet.plt-scheme.org/display.ss?package=science.plt&owner=williams" target="_blank">http://planet.plt-scheme.org/display.ss?package=science.plt&owner=williams</a>) and PLot (that comes with PLT Scheme) are the basis for this. We also have some additional plotting and animation capabilities that aren't (yet) on PLaneT. I had hoped to mature the science collection into something I was calling Schemelab, which would be more MatLab-like, but work has gotten me back over on the agent-based simulation side again.<br>
<br>Anyway, depending on what you're looking to do, much of the framework is there. I do wish it was more integrated, but it takes time.<br><br>Doug<br><br><div class="gmail_quote">On Tue, Aug 11, 2009 at 3:26 PM, Jason <span dir="ltr"><<a href="mailto:jason.lillywhite@gmail.com" target="_blank">jason.lillywhite@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Anyone out there heard of someone using drscheme as an alternative to<br> matlab? With some libraries and plotting ability, it seems it could<br>
work. I'll be starting an engineering programming class with a lab<br> that uses matlab. I might try doing some of the assignments in<br> DrScheme...<br> _________________________________________________<br> For list-related administrative tasks:<br>
<a href="http://list.cs.brown.edu/mailman/listinfo/plt-scheme" target="_blank">http://list.cs.brown.edu/mailman/listinfo/plt-scheme</a><br> </blockquote></div><br><div style="margin: 0px;">_________________________________________________</div>
<div style="margin: 0px;"><span> </span>For list-related administrative tasks:</div><div style="margin: 0px;"><span> </span><a href="http://list.cs.brown.edu/mailman/listinfo/plt-scheme" target="_blank">http://list.cs.brown.edu/mailman/listinfo/plt-scheme</a></div>
</blockquote></div><br></div></div></div></blockquote></div><br>