[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: python, then C++, or C++ from the start?

martin f krafft <madduck@debian.org> writes:

> Dear colleagues,
> I am starting to write netconf [0], finally. Or rather, I would if
> I could settle on a language. If netconf is ever going to replace
> ifupdown, it would need to have a low footprint and few
> dependencies. This clearly suggests C/C++ as the language of choice.
> 0. http://netconf.alioth.debian.org
> However, C/C++ make extreme programming rather difficult as it's
> hard to make large-scale changes due to the strict typing and stuff
> like lack of garbage collection or seamless exception handling. I am
> not here to bash C/C++, but you might agree that high-level
> languages such as Python are much better suited for mockup
> implementations, when the overall structure and logic of a programme
> is not yet set in stone.
> Since I want netconf released early and often, and I'll be reusing
> a lot of shell script logic at first, throwing stuff around until
> the logical structure and type definitions are adequate, I am
> considering starting first in Python and later, when it's All
> Done(tm), port the application to C++.
> I am a well-versed C++ coder and I know which things are possible in
> Python but not in C++, so if I avoid those, this seems like
> a possible approach.
> But I am asking you still: can you think of anything to say against
> such an approach? Please don't flame languages or anything of that
> sort. The question is just: is it viable for a C++ coder with
> a Python proficiency to mockup a new application in Python first?
I think that approach makes sense.

This isn't what you asked for, but you might be interested in Vala[0],
which compiles to C and has high-level features such as lambda

[0] http://live.gnome.org/Vala

Cheers, Rotty
Andreas Rottmann         | Rotty@ICQ      | 118634484@ICQ | a.rottmann@gmx.at
http://rotty.uttx.net    | GnuPG Key: http://rotty.uttx.net/gpg.asc
Fingerprint              | C38A 39C5 16D7 B69F 33A3  6993 22C8 27F7 35A9 92E7
v2sw7MYChw5pr5OFma7u7Lw2m5g/l7Di6e6t5BSb7en6g3/5HZa2Xs6MSr1/2p7 hackerkey.com

Always be wary of the Software Engineer who carries a screwdriver.
  -- Robert Paul

Reply to: