Nobody likes to be called a dummy by a dummy.

Java is bad for teaching. But Superx++ is !!

http://xplusplus.sourceforge.net/

wunderful language!! what's a pointer btw?
Permalink Not Joel 
January 11th, 2006
AAAAAAAAAAGH! The XML form of that has made my eyes bleed...
Permalink Mat Hall 
January 11th, 2006
This does seem a bit syntactically exuberant:

<xpp>
    <class name="XObj" inherit="">

      <construct/>

        <scope type="public">

          <arr type="int" name="Arr[3]">{5,6,7}</arr>
          <func type="void" name="constructor">

              <body>

                <arr type="string" name="Names[3]">Jack,Jimmie,John</arr>

                <var type="int" name="x"/>

                <for>

                    <init>

                        <eval object="x">

                            <eval>

                              <expr>0</expr>

                            </eval>

                        </eval>

                    </init>

                    <cond>

                        <eval>

                            <parm type="int" name="Parm0">

                              <eval object="x"/>

                            </parm>

                            <expr>Parm0 &lt;= 2</expr>

                        </eval>

                    </cond>

                    <step>

                        <eval object="x">

                            <eval>

                              <parm type="int" name="Parm0">

                                  <eval object="x"/>

                              </parm>

                              <expr>Parm0 + 1</expr>

                            </eval>

                        </eval>

                    </step>

                    <xout processcode="true">

                        <eval>

                            <parm type="int" name="Parm0">

                              <eval object="x"/>

                            </parm>

                            <parm type="int" name="Parm1">

                              <eval object="this" member="Arr">

                                  <index>

                                      <eval object="x"/>

                                  </index>

                              </eval>

                            </parm>

                            <expr>"\r\nIn constructor this.Arr[" + Parm0 + "] = " + Parm1</expr>

                        </eval>

                    </xout>

                    <xout processcode="true">

                        <eval>

                            <parm type="int" name="Parm0">

                              <eval object="x"/>

                            </parm>

                            <parm type="string" name="Parm1">

                              <eval object="Names">

                                  <index>

                                      <eval object="x"/>

                                  </index>

                              </eval>

                            </parm>

                            <expr>"\r\nIn constructor Names[" + Parm0 + "] = " + Parm1</expr>

                        </eval>

                    </xout>

                </for>

              </body>

          </func>

      </scope>

    </class>

    <arr type="int" name="a[3]">10,20,30</arr>

    <var type="int" name="x"/>

    <for>

      <init>

          <eval object="x">

              <eval>

                <expr>0</expr>

              </eval>

          </eval>

      </init>

      <cond>

          <eval>

              <parm type="int" name="Parm0">

                <eval object="x"/>

              </parm>

              <expr>Parm0 &lt;= 2</expr>

          </eval>

      </cond>

      <step>

          <eval object="x">

              <eval>

                <parm type="int" name="Parm0">

                    <eval object="x"/>

                </parm>

                <expr>Parm0 + 1</expr>

              </eval>

          </eval>

      </step>

      <xout processcode="true">

          <eval>

              <parm type="int" name="Parm0">

                <eval object="x"/>

              </parm>

              <parm type="int" name="Parm1">

                <eval object="a">

                    <index>

                        <eval object="x"/>

                    </index>

                </eval>

              </parm>

              <expr>"\r\na[" + Parm0 + "] = " + Parm1</expr>

          </eval>

      </xout>

    </for>

    <node name="MyObj" class="XObj" processcode="true" construct="true"/>

    <for>

      <init>

          <eval object="x">

              <eval>

                <expr>0</expr>

              </eval>

          </eval>

      </init>

      <cond>

          <eval>

              <parm type="int" name="Parm0">

                <eval object="x"/>

              </parm>

              <expr>Parm0 &lt;= 2</expr>

          </eval>

      </cond>

      <step>

          <eval object="x">

              <eval>

                <parm type="int" name="Parm0">

                    <eval object="x"/>

                </parm>

                <expr>Parm0 + 1</expr>

              </eval>

          </eval>

      </step>

      <xout processcode="true">

          <eval>

              <parm type="int" name="Parm0">

                <eval object="x"/>

              </parm>

              <parm type="int" name="Parm1">

                <eval object="MyObj" member="Arr">

                    <index>

                        <eval object="x"/>

                    </index>

                </eval>

              </parm>

              <expr>"\r\nMyObj.Arr[" + Parm0 + "] = " + Parm1</expr>

          </eval>

      </xout>

    </for>

</xpp>
Permalink son of parnas 
January 11th, 2006
Just think of the LOC!!
Permalink Mark Warner 
January 11th, 2006
LOC?
We havent started coding yet.
Now wait for the code :


<xpp>

    <class name="XObj" inherit="">

      <construct/>

      <scope type="public">

          <arr type="int" name="Arr[3]">{5,6,7}</arr>

          <func type="void" name="constructor">

              <body>

                <arr type="string" name="Names[3]">Jack,Jimmie,John</arr>

                <var type="int" name="x"/>

                <for>

                    <init>

                        <eval object="x">

                            <eval>

                              <expr>0</expr>

                            </eval>

                        </eval>

                    </init>

                    <cond>

                        <eval>

                            <parm type="int" name="Parm0">

                              <eval object="x"/>

                            </parm>

                            <expr>Parm0 &lt;= 2</expr>

                        </eval>

                    </cond>

                    <step>

                        <eval object="x">

                            <eval>

                              <parm type="int" name="Parm0">

                                  <eval object="x"/>

                              </parm>

                              <expr>Parm0 + 1</expr>

                            </eval>

                        </eval>

                    </step>

                    <xout processcode="true">

                        <eval>

                            <parm type="int" name="Parm0">

                              <eval object="x"/>

                            </parm>

                            <parm type="int" name="Parm1">

                              <eval object="this" member="Arr">

                                  <index>

                                      <eval object="x"/>

                                  </index>

                              </eval>

                            </parm>

                            <expr>"\r\nIn constructor this.Arr[" + Parm0 + "] = " + Parm1</expr>

                        </eval>

                    </xout>

                    <xout processcode="true">

                        <eval>

                            <parm type="int" name="Parm0">

                              <eval object="x"/>

                            </parm>

                            <parm type="string" name="Parm1">

                              <eval object="Names">

                                  <index>

                                      <eval object="x"/>

                                  </index>

                              </eval>

                            </parm>

                            <expr>"\r\nIn constructor Names[" + Parm0 + "] = " + Parm1</expr>

                        </eval>

                    </xout>

                </for>

              </body>

          </func>

      </scope>

    </class>

    <arr type="int" name="a[3]">10,20,30</arr>

    <var type="int" name="x"/>

    <for>

      <init>

          <eval object="x">

              <eval>

                <expr>0</expr>

              </eval>

          </eval>

      </init>

      <cond>

          <eval>

              <parm type="int" name="Parm0">

                <eval object="x"/>

              </parm>

              <expr>Parm0 &lt;= 2</expr>

          </eval>

      </cond>

      <step>

          <eval object="x">

              <eval>

                <parm type="int" name="Parm0">

                    <eval object="x"/>

                </parm>

                <expr>Parm0 + 1</expr>

              </eval>

          </eval>

      </step>

      <xout processcode="true">

          <eval>

              <parm type="int" name="Parm0">

                <eval object="x"/>

              </parm>

              <parm type="int" name="Parm1">

                <eval object="a">

                    <index>

                        <eval object="x"/>

                    </index>

                </eval>

              </parm>

              <expr>"\r\na[" + Parm0 + "] = " + Parm1</expr>

          </eval>

      </xout>

    </for>

    <node name="MyObj" class="XObj" processcode="true" construct="true"/>

    <for>

      <init>

          <eval object="x">

              <eval>

                <expr>0</expr>

              </eval>

          </eval>

      </init>

      <cond>

          <eval>

              <parm type="int" name="Parm0">

                <eval object="x"/>

              </parm>

              <expr>Parm0 &lt;= 2</expr>

          </eval>

      </cond>

      <step>

          <eval object="x">

              <eval>

                <parm type="int" name="Parm0">

                    <eval object="x"/>

                </parm>

                <expr>Parm0 + 1</expr>

              </eval>

          </eval>

      </step>

      <xout processcode="true">

          <eval>

              <parm type="int" name="Parm0">

                <eval object="x"/>

              </parm>

              <parm type="int" name="Parm1">

                <eval object="MyObj" member="Arr">

                    <index>

                        <eval object="x"/>

                    </index>

                </eval>

              </parm>

              <expr>"\r\nMyObj.Arr[" + Parm0 + "] = " + Parm1</expr>

          </eval>

      </xout>

    </for>

</xpp>
Permalink Not Joel 
January 11th, 2006
Oops!!

How do you do source control in it?
Permalink Not Joel 
January 11th, 2006
Please reserve this for the pointless things to do with XML forum.
Permalink Simon Lucy 
January 12th, 2006

This topic was orginally posted to the off-topic forum of the
Joel on Software discussion board.

Other topics: January, 2006 Other topics: January, 2006 Recent topics Recent topics