An academic question.
   
  What makes the writing of a non ibm powerpc 
  compiler impossible on the iseries?
  ===> I don't think it is impossible. (as to the benefits, 
  I'm not so sure).
   
  The pgm validation value looks to be one. It 
  prevents you from restoring your pgm after a system crash.
  ===> 1) the system doesn't crash
  2) Even if it did, there is no need to restore your 
  program
  3) Computation of the PVV is possible
   
  Is there sufficient undocument knowledge of 
  the pgm hdr, passed on over the years from guru to guru, to create a working 
  pgm object?
  ===> yes, but there are better ways (Attaching your code 
  to an existing, dummy program). 
   
  The undocumented ibm extensions to the powerpc assembler 
  code.  It should be doable to figure that out, right?
  ===> most them are already "figured out"
   
  The system state, user state issue.  Would this rogue 
  risc compiler be able to create the system state segments of the pgm 
  object?
  ===> you probably mean "system domain" 
  objects.
  1) it is not necessary for the pgm to be system 
  domain
  2) you can easily give the pgm the system domain 
  attribute
  3) you probably don't want to as you cannot call your 
  program from a user domain program.
   
  You probably meant to ask if you can write protect the 
  program as normal AS/400
  programs are. This is not worth the trouble (for a rogue 
  compiler!)