I know what you mean. The other day, while writing a pure assembly
module coded to the C++ ABI, I found myself thinking, "this just isn't
tedious enough". So saying, I renounced all foreign function
interface interfaces, and plunged into the murky and unfathomable
depths of Chicken's C. Time passed. More time passed and I came up
momentarily for air. Finally, some time passed and--well, you know
how these things go--I had inadvertantly Greenspun my pure C module
into a Lisp interpreter. I was just about to put the finishing
touches on the FFI when I saw your post.