[racket] Racket Virtual Machine runs out of memory
Yesterday, Harry Spier wrote:
>
> Yes, MagickExportImagePixels uses the exact same interface as
> "MagickGetImagePixels" and again yes it is the intensities and only
> the intensities I export.
>
> Is this slightly less of a hack but more importantly will it work.
> If I add this to the ImageMagick FFI
>
> (defwand* MagickExportImagePixels :
> _MagickWand (x : _long) (y : _long) (width : _ulong) (height : _ulong)
> (map : _string) (storage-type : _StorageType)
> ;; create the block, remember size and type
> (size : _? = (* width height (string-length map)))
> (type : _? = (StorageType->type storage-type))
> (block : _pointer = (malloc size type))
> -> _status
> -> block)
Yeah, something like that would be more appropriate for the heavier
kind of work that you're doing.
> So I can use it to produce the byte-string of intensities for this
> application, but also leave its generality for other applications
> and if I need to for other applications I can then also create a
> wrapper function that calls this but takes its output and produces a
> list of lists as you originally had it do.
In general, the kind of interface that I wrote for magickwand was
using lists etc -- which is not a good idea for more than smallish
examples. So if you're using it more seriously, you might want to do
similar changes to other parts of the interface.
--
((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay:
http://barzilay.org/ Maze is Life!