use Inline CPP => <<'END'; class JAxH { public: JAxH(char *x); SV* data(); private: SV *dat; }; JAxH::JAxH(char *x) { dat = newSVpvf("Just Another %s Hacker", x); } SV* JAxH::data() { return dat; } END print JAxH->new('Inline')->data(), "\n"; When run, this complete program prints: Just Another Inline Hacker.