<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Hi Eric,<br>
      <br>
      Thank you for posting up your work to this group. This all looks
      very promising, and I was intrigued to give it a try.<br>
      I checked out the source from github and I tried building in VS C#
      2010 express... but only 3 of the projects will load. 
      LibraryDataScrapingTools, LSLCCEditor, LSLCCEditor.CompletionUI
      all say (incompatible) and LSLCCEditorInstaller says (unavailable)
      even though I have WIX 3.10.1 installed.<br>
      <br>
      Is this a VS 2010 problem do you think?<br>
      <br>
      I'm a bit loathed to install VS2015 as the last time I installed
      VS2013 it just dumped everything onto my SSD c: drive and filled
      it up, with no option to put things on drive D: my large
      harddrive. It also left a mess behind (more than 50% of itself
      including MSSQL server stuff) when I tried to uninstall it. VS2015
      might be better now in this respect, but knowing MS products
      probably not! I also found VS2013 to be way, way slower loading up
      large projects like OpenSimulator than VS2010. So before I take
      the possibly irreversible path of installing VS2015, is there
      something I can do to make it load in VS2010 express?<br>
      <br>
      Thanks <br>
      Jak<br>
      <br>
      On 02/11/2015 19:24, Eric Blundell wrote:<br>
    </div>
    <blockquote
cite="mid:CAEFfC7Thp4cA6HSFNNDgpweTcKUekoX6LH2ShLk=vfPSJeXvQQ@mail.gmail.com"
      type="cite">
      <div dir="ltr">
        <div>Hello all.</div>
        <div><br>
        </div>
        <div>I am a bit new to OpenSim development (well at-least
          sharing stuff I have made..) but for a quite a while now I
          have been working on</div>
        <div>a new (BSD Licensed) Compilation/Code Generation framework
          for LSL, tailored towards usage with OpenSim.  I thought I
          should share it </div>
        <div>at this point of its development.</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>This is pretty much a "full" or "true" compiler front end.</div>
        <div><br>
        </div>
        <div>It's built on-top of ANTLR4 and ANTLR4's CSharp target.</div>
        <div>ANTLR4 however has been completely abstracted and the
          library provides its own Rich LSL Syntax Tree for users to
          deal with.</div>
        <div><br>
        </div>
        <div>My library includes an OpenSim code generation target which
          I have integrated into my OpenSim fork on GitHub, it's
          implemented as an </div>
        <div>optional compiler that you can enable in your OpenSim.ini.</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>The Code validation step my library performs when building
          a syntax tree implements full front end syntax checking, dead
          code detection, the works.</div>
        <div>It also emits extended warning information that is standard
          to most compilers now days. </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>The OpenSim code generator I have written and included with
          the library drastically improves compatibility with scripts
          written for SecondLife.</div>
        <div>Order of evaluation in generated code is correct for LSL
          (Right to Left) among many other things.</div>
        <div><br>
        </div>
        <div>As an example, all of the encryption scripts you can find
          on the LSL wiki will compile correctly and execute with
          correct behavior using my compiler.</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>The README.md for the project goes into a bit more detail
          on what all the library can do.</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>My library LibLSLCC is on GitHub here:</div>
        <div><br>
        </div>
        <div><span class="" style="white-space:pre">    </span><a
            moz-do-not-send="true"
            href="https://github.com/EriHoss/LibLSLCC"><a class="moz-txt-link-freetext" href="https://github.com/EriHoss/LibLSLCC">https://github.com/EriHoss/LibLSLCC</a></a></div>
        <div><span class="" style="white-space:pre">    </span></div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>The project includes an LSL Editor (Windows Only, I used
          AvalonEdit) with the project that features code completion and
          syntax highlighting.</div>
        <div><br>
        </div>
        <div>It can be used to test CSharp code generation for OpenSim
          by compiling LSL into C# using LibLSLCC, which can then be
          uploaded to an</div>
        <div>OpenSim server with C# scripting enabled.</div>
        <div><br>
        </div>
        <div>The library itself is cross-platform, but the editor and
          editor installer are not.  There's a separate project file for
          building the library on</div>
        <div>mono with monodevelop/xbuild.</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>===</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>The OpenSim fork that integrates my compiler is here:</div>
        <div><br>
        </div>
        <div><span class="" style="white-space:pre">    </span><a
            moz-do-not-send="true"
            href="https://github.com/EriHoss/OpenSim_With_LibLSLCC"><a class="moz-txt-link-freetext" href="https://github.com/EriHoss/OpenSim_With_LibLSLCC">https://github.com/EriHoss/OpenSim_With_LibLSLCC</a></a></div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>It includes a few minor bug fixes to XEngine and Runtime
          Script functions. </div>
        <div><br>
        </div>
        <div>Such as the 'IdleTimeout' setting not being honored
          properly.</div>
        <div><br>
        </div>
        <div>And llParseString2List using culture specific comparisons,
          causing it to misbehave when comparing Unicode characters on
          Mono.</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>I have added new attributes to OpenSim's script module
          constants/functions and also to ScriptBaseClass.  </div>
        <div>This is so LibLSLCC can de-serialize the classes into
          library data that's consumable by its code validator and code
          generator.</div>
        <div><br>
        </div>
        <div>I have also made some slight changes to IScriptModuleComms
          and ScriptModuleCommsModule.</div>
        <div><br>
        </div>
        <div>The old compiler in my fork works as it did before, so you
          can switch back and forth from LibLSLCC to the old compiler</div>
        <div>if you want without any problems.</div>
        <div><br>
        </div>
        <div>There are more details on the changes I have made in the
          README.md.<br>
        </div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>==</div>
        <div><br>
        </div>
        <div><span class="" style="white-space:pre">    </span></div>
        <div>I started working on this sometime early last year when I
          broke my wrist and was unable to do much for a while, and</div>
        <div>I have only recently moved the code from my Git server up
          to GitHub.  I'm going to continue improving this in my spare
          time,</div>
        <div>right now I am doing rolling releases versioned by date
          anywhere from once every few days to a few times a day.  I am
          also keeping my OpenSim fork synced with the latest OpenSim
          commits.</div>
        <div><br>
        </div>
        <div>Hopefully this will be useful, any feedback is appreciated
          :)</div>
        <div><br>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Opensim-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Opensim-dev@opensimulator.org">Opensim-dev@opensimulator.org</a>
<a class="moz-txt-link-freetext" href="http://opensimulator.org/cgi-bin/mailman/listinfo/opensim-dev">http://opensimulator.org/cgi-bin/mailman/listinfo/opensim-dev</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>