This is
precisely what I'm trying to do. My main goal is to create Python bindings to bitcoin. I've tried to extract a library out of it (see
http://bitcointalk.org/index.php?topic=2075.0 ) but I failed. I'm cleaning the code now because I see it as the only way to achieve my main goal.
But do you really need to re-implement the client to do that? Why not simply use the current client, through JSON-RPC?
hsoft: I do agree that modularizing the current (C++) codebase seems like the best option if you really want to work on the bitcoin client itself. I've seen some good ideas:
- Split into GUI, JSON server, backend library (the libbitcoin idea), which can be built separately.
- Integrate a real build system (based on cmake/autotools/scons...), which autodetects presence/install dir of wxWindows and other deps.
- Add some asynchronous notification mechanism when transactions come in, to prevent polling.
- Build packages for debian/redhat/... and help it getting integrated into the repositories.
IMO: if we alternative bitcoin clients in every possible programming language, just because we like our own language/style better, that doesn't help further the cause of bitcoin itself at all. It's a nerd party only.