27Oct00
Procedural Macros for Java
Bachrach and Playford
Self Generating Java Program
class selfish {
  static public void main (String args[]) {
    Fragment f
      = #{ #{ class selfish {
                static public void main (String args[]) {
                  Fragment f = #{ ??f }; ?f.pprint();
                } } } };
    #{ class selfish {
         static public void main (String args[]) {
           Fragment f = #{ ??f }; ?f.pprint();
         } } }.pprint();
  } }
class P{public static void main(String args[]){String a="class P{
public static void main(String args[]){String a=;System.out.println
(a.substring(0,56)+((char)0x22)+a+((char)0x22)+a.substring(56));}}";
System.out.println(a.substring(0,56)+((char)0x22)+a+((char)0x22)+a
.substring(56));}}
Java Solution by Klil Neori
Use