On Jun 10, 2010, at 11:48 AM, Sturla Molden wrote:

> 
> I have a few radical suggestions:

There are some good ideas there.   I suspect we can't address all of them in 
the course of this re-factoring effort, but I really appreciate you putting 
them out there, because they are useful things to consider. 

> 
> 1. Use ctypes as glue to the core DLL, so we can completely forget about 
> refcounts and similar mess. Why put manual reference counting and error 
> handling in the core? It's stupid. 

If we could get to a single core DLL, then perhaps this would work.   It may be 
very difficult to actually get to that point though from where we are because 
there is a lot to the current CPython interface that would have to be 
re-thought.   Right now, it looks like there is still a need for an interface 
layer.  

> 
> 2. The core should be a plain DLL, loadable with ctypes. (I know David 
> Cournapeau and Robert Kern is going to hate this.) But if Python can have a 
> custom loader for .pyd files, so can NumPy for it's core DLL. For ctypes we 
> just need to specify a fully qualified path to the DLL, which can be read 
> from a config file or whatever.

This approach does not build a new Python type in compiled code.   There are 
speed disadvantages to this --- especially for the numpy scalars. 


> 
> 5. Allow OpenMP pragmas in the core. If arrays are above a certain size, it 
> should switch to multi-threading.

This is an interesting idea. 

-Travis

_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to