The placeholder control is more typically used to add a set of server controls to the page dynamically. If you want to write directly to the output, there are a couple of other ways to do it. Hey, if you've been using PERL then you expect there to be more than one way.
You could create a user control (an .ascx file) and include an override there for the Render method where you write out what you want to the output stream. It's location on the page would be wherever you included the user controls.
You could also do this by creating a custom control, inheriting from WebControl and override the Render method there too.
Either of these methods allow you to override other parts of the page/control lifecycle so you get a lot of programmatic flexibility about interacting with the user input and determining the structure of what you want to write out.