Archive for category python

Debugging C/C++ and CPython using GDB 7’s new Python extension support

I’ve recently been looking into ways to improve my debugging experience with mixed Python and C/C++ programs. I spend a fair amount of time working on systems built using both languages in tandem, and the tools available for debugging across the languages have historically been very limited. Often, logging and/or intimate knowledge of the Python […]

, ,

2 Comments

Thialfi: because I haven’t already got enough to work on!

I’ve recently started making some progress on a project that I’ve wanted to do for a while now. The project, Thialfi *, fills the vacancy left in my life…indeed, in my heart…when “I Want Sandy” went offline. Sandy was something of an online digital assistant, and it (she?) probably had lots of features I never […]

, ,

Leave a comment

An enum for Python

The internet abounds with implementations of enumerations for Python, but I thought it might be fun to take a crack at making one. My goals were: Immutability: users shouldn’t be able to modify the value at runtime Simplicity of definition: They should be easy to define Uniqueness: Two enum values aren’t equal unless they are […]

Leave a comment

New Project: ackward

I recently started a new project, ackward, which aims to provide a C++ interface to parts of the Python standard library. The library is aimed at embedded Python scenarios where the C++ program needs to interact on a deeper level with the Python structures and such. Of course, you can already accomplish this using the […]

, , ,

Leave a comment

PitaTranslate…online

First, I know it’s been quiet around here. Sorry about that. I have no excuse but laziness, so I can’t promise anything better in the future. Edit: …Ugh…Somehow wordpress didn’t notice the three or four other paragraphs I originally wrote for this post. You’ll have to take my word that it was moving prose indeed.┬áSo, […]

,

2 Comments

APHW

I recently started looking at HamsterDB, a BerkeleyDB-like database system. In a nutshell, it provides simple, bare-bones key-value storage with ACID properties. It promises to be fast and small, and my initial (meager) experimentation seems to bear that out. Unlike Berkeley, it seems to choose simplicity in its API rather than providing every possible knob. […]

, ,

Leave a comment

Boost.Python and Handling Python Exceptions

Handling Python exceptions from C++ code requires diligence
and consistent checking of error codes, and, really, who wants to deal
with that? A more natural system is
one in which Python exceptions are somehow converted to C++ exceptions
at the Python-C++ boundary, and where exception propagation continues
out of Python into C++.

, , ,

2 Comments