*caution* severely OT!!

Gary Kline kline at thought.org
Tue Sep 13 21:48:00 UTC 2011


On Tue, Sep 13, 2011 at 11:37:48PM +0200, Michel Talon wrote:
> Date: Tue, 13 Sep 2011 23:37:48 +0200
> From: Michel Talon <talon at lpthe.jussieu.fr>
> Subject: Re: *caution* severely OT!!
> To: Gary Kline <kline at thought.org>, freebsd-questions at freebsd.org
> 
> "C. P. Ghost" <cpghost at cordula.ws> wrote:
> > On Tue, Sep 13, 2011 at 9:34 PM, Gary Kline <kline at thought.org> wrote:
> > > guys,
> > >
> > > can anyone start me on the way of porting a python program to C?
> > > tia,
> > 
> > Gary,
> > 
> > if you experience a performance bottleneck somewhere,
> > you may be better off performing some timings to
> > determine the exact cause, and then to port the specific
> > function(s) to a C module. Hints: ctypes, SWIG. Porting
> > the whole program may not be necessary. Save yourself
> > some quality time for other more pleasant tasks in life. ;-)
> > 
> > But if you really must, I suggest to port the program to
> > C++ instead of C, because there, you can make use of
> > the excellent STL data types and containers, that match
> > Python's somewhat. You may also consider using boost
> > libraries, if the STL isn't enough.
> 
> I concur with you. If you want just to resolve a bottleneck in python
> there are very low cost solutions such as using things like pyrex.
> You have a nice discussion here:
> http://www.scipy.org/PerformancePython
> Using pyrex is very similar to programming python but at a single stroke
> you get huge performance boost.
> 
> If you want to rewrite the thing entirely, the problem is that python
> has many high level constructs, like dictionaries, etc. which are very
> convenient, but that you would need to simulate in C with huge
> programming cost. While C++ has such things in standard extensions, so,
> if you are not afraid by the syntactic difficulties of C++ it is a
> cheaper solution, otherwise it may be terrible.
> 
> In the case of the example cited above, there was 0 performance benefit of 
> using C++ over pyrex. There is a language which is syntactically very
> close to python and has the same facilities, but ends up in machine
> code, this could interest you, it is Common Lisp. Here the translation
> would be cheap and direct. It may be that the end result is very fast,
> C-like, or it may be that the end result is almost as slow as python,
> there is black magic here.
> 
> 
> 
> -- 
> 
> Michel TALON


	Thanks to everyone who replied on and off list.  i shoulf
	have said C or C++.  

	gary

> 

-- 
 Gary Kline  kline at thought.org  http://www.thought.org  Public Service Unix
           Journey Toward the Dawn, E-Book: http://www.thought.org
          The 8.51a release of Jottings: http://jottings.thought.org



More information about the freebsd-questions mailing list