<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to Home</title><link>https://sourceforge.net/p/sexyscript/wiki/Home/</link><description>Recent changes to Home</description><atom:link href="https://sourceforge.net/p/sexyscript/wiki/Home/feed" rel="self"/><language>en</language><lastBuildDate>Fri, 18 Sep 2020 20:18:03 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/sexyscript/wiki/Home/feed" rel="self" type="application/rss+xml"/><item><title>Home modified by Mark Anthony Taylor (Shyreman)</title><link>https://sourceforge.net/p/sexyscript/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v17
+++ v18
@@ -1,7 +1,16 @@
 Please check the GIT repo directly for latest version of Sexy
 https://github.com/theabstraction/rococo.git

-Latest Changes: 12 August 2020
+Latest Changes: 18 September 2020
+  Compilation improved 10% or so in Release mode by addition of stringmap class to replace std::unordered_map&amp;lt;std::string...&amp;gt; in the codebase
+  Sexy now has packages and modules. A source code tree, with namespaces determined by pathnames can be compiled into a single flat file, and
+  imported into a script with (' #import (&amp;lt;module-name&amp;gt; "namespace")). MHost now packages up its UI code in a single package. Packaging is optimal
+  when the script writer has to handle many script files and wants to avoid micromanaging which script files should be included a product. Sexy is near
+  feature complete - the main TODO item is to allow macros to operate as top-level expression, rather than being limited to function bodies. This will allow
+  Sexy to generate types at run-time, something close to how templates function in C++, but will the improved flexibility of S-macros. 
+
+
+12 August 2020
     Minor fixes to code base. Much work done on Rococo.MPlat which is the 3D game library designed to be fully scriptable by Sexy. This includes MHost, for allowing a script complete control of the main loop. I am currently trying to finish my game Hyperverse, a 3D dungeon crawler, which is built on top of MPlat.

 25 June 2019
&amp;lt;/module-name&amp;gt;&amp;lt;/std::string...&amp;gt;&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Mark Anthony Taylor (Shyreman)</dc:creator><pubDate>Fri, 18 Sep 2020 20:18:03 -0000</pubDate><guid>https://sourceforge.nete4363253a510658506a37559de3c1d28ae371a8e</guid></item><item><title>Home modified by Mark Anthony Taylor (Shyreman)</title><link>https://sourceforge.net/p/sexyscript/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v16
+++ v17
@@ -1,4 +1,5 @@
-Sexy 1.5 is here.
+Please check the GIT repo directly for latest version of Sexy
+https://github.com/theabstraction/rococo.git

 Latest Changes: 12 August 2020
     Minor fixes to code base. Much work done on Rococo.MPlat which is the 3D game library designed to be fully scriptable by Sexy. This includes MHost, for allowing a script complete control of the main loop. I am currently trying to finish my game Hyperverse, a 3D dungeon crawler, which is built on top of MPlat.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Mark Anthony Taylor (Shyreman)</dc:creator><pubDate>Wed, 12 Aug 2020 14:42:53 -0000</pubDate><guid>https://sourceforge.net57ca7fd4edc149c805e43bcaae021efac2d9cef6</guid></item><item><title>Home modified by Mark Anthony Taylor (Shyreman)</title><link>https://sourceforge.net/p/sexyscript/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v15
+++ v16
@@ -1,6 +1,9 @@
 Sexy 1.5 is here.

-Latest Changes:  25 June 2019
+Latest Changes: 12 August 2020
+    Minor fixes to code base. Much work done on Rococo.MPlat which is the 3D game library designed to be fully scriptable by Sexy. This includes MHost, for allowing a script complete control of the main loop. I am currently trying to finish my game Hyperverse, a 3D dungeon crawler, which is built on top of MPlat.
+
+25 June 2019
     Full referenced counted objects. Sorry chaps, but objects can no longer by created on the stack. Structures are unaffected.
     Many many bug fixes.
     Coroutine libraries allow many routines to co-operatively multitask by yielding execution at safe points.
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Mark Anthony Taylor (Shyreman)</dc:creator><pubDate>Wed, 12 Aug 2020 14:36:23 -0000</pubDate><guid>https://sourceforge.net7ac7ac1865af537bb1254721dc44df222494422b</guid></item><item><title>Home modified by Mark Anthony Taylor (Shyreman)</title><link>https://sourceforge.net/p/sexyscript/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v14
+++ v15
@@ -1,3 +1,17 @@
+Sexy 1.5 is here.
+
+Latest Changes:  25 June 2019
+    Full referenced counted objects. Sorry chaps, but objects can no longer by created on the stack. Structures are unaffected.
+    Many many bug fixes.
+    Coroutine libraries allow many routines to co-operatively multitask by yielding execution at safe points.
+    Dynamic dispatch interfaces allow Objective-C like message sending.
+    Delta operators -= += *= and /=  
+    Comparison operators !=     ==     &amp;lt;=    &amp;gt;=  can now be overloaded
+    Vastly improved syntax.
+    
+ Please see sexy.script.test and mhost RPG as examples of code in action.
+ Documentation coming soon.
+
 Welcome to the Sexy Scripting Language Wiki

 **Mission Statement**
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Mark Anthony Taylor (Shyreman)</dc:creator><pubDate>Tue, 25 Jun 2019 14:25:37 -0000</pubDate><guid>https://sourceforge.net9c93b01598c194d1fe4c05875f2054859dcc32c5</guid></item><item><title>Home modified by Mark Anthony Taylor (Shyreman)</title><link>https://sourceforge.net/p/sexyscript/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v13
+++ v14
@@ -3,9 +3,8 @@
 **Mission Statement**

-Sexy is designed to be the perfect scripting language to interface with 
-C++ 3D games engines - handling massive number of AI entities using
-microthreading.
+Sexy is designed to be the perfect scripting language to interface with C++ 3D games engines - handling
+massive number of AI entities using microthreading.

 [Content]

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Mark Anthony Taylor (Shyreman)</dc:creator><pubDate>Mon, 13 Oct 2014 14:40:05 -0000</pubDate><guid>https://sourceforge.net3cf67cc9980a53477bf499d9ae46bde980a9c896</guid></item><item><title>Home modified by Mark Anthony Taylor (Shyreman)</title><link>https://sourceforge.net/p/sexyscript/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v12
+++ v13
@@ -6,6 +6,8 @@
 Sexy is designed to be the perfect scripting language to interface with 
 C++ 3D games engines - handling massive number of AI entities using
 microthreading.
+
+[Content]

 **The requirements of any such language**

@@ -16,7 +18,7 @@

     * Use the stack as much as possible for both primitive variables AND objects.

-    * Permit an expression based macro system rather than a token based macro system.
+    * The macro system should be expression based rather than token based.

     * Allow full reflection inside the language, but also outside the language, so that the C++
      environment can query the full internal state of any script.
@@ -29,15 +31,14 @@
 Sexy was designed as a games programming language to satisfy all these constraints. In addition a major
 improvement over the design of many OO languages, is that every interface in the language automatically
 generates an associated null object to which default references refer. This does away with null
-reference exceptions. A null object implements some interface and implements all methods as null
-methods. A null method, by definition, ignores all inputs and returns 0 or null object references on
-all outputs.
+reference exceptions. A null object implements some interface as a set of null methods. A null method,
+by definition, ignores all inputs and returns 0 or null object references on all outputs.

 **S-Expression syntax**

 There are only two significant formats for permitting expression tree based macros, S and XML. S was
-chosen as it is much simpler than XML, and so much easier and faster to parse, as well as less
-cumbersome to code. S-expressions are used for LISP, which is a proven language that has
+chosen as it is much simpler than XML, and so is much easier and much faster to parse, as well as being
+less cumbersome to code. S-expressions are used for LISP, which is a proven language that has
 demonstrably better macros than perhaps all other language.

 **Sexy is designed to be familiar to all C++ programmers**
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Mark Anthony Taylor (Shyreman)</dc:creator><pubDate>Mon, 13 Oct 2014 14:39:15 -0000</pubDate><guid>https://sourceforge.net66ce2a8d27de81a2a2880e2def40736fd89b8867</guid></item><item><title>Home modified by Mark Anthony Taylor (Shyreman)</title><link>https://sourceforge.net/p/sexyscript/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v11
+++ v12
@@ -33,16 +33,14 @@
 methods. A null method, by definition, ignores all inputs and returns 0 or null object references on
 all outputs.

-**S-Expression Syntax**
-
+**S-Expression syntax**

 There are only two significant formats for permitting expression tree based macros, S and XML. S was
 chosen as it is much simpler than XML, and so much easier and faster to parse, as well as less
 cumbersome to code. S-expressions are used for LISP, which is a proven language that has
 demonstrably better macros than perhaps all other language.

-**Sexy is Designed to be familiar to all C++ programmers**
-
+**Sexy is designed to be familiar to all C++ programmers**

 Sexy is meant to be an easy language for programmers of most OO languages. The fundamental units are
 variables, functions, structures, classes, interfaces, factories and namespaces. By use of the BennyHill
&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Mark Anthony Taylor (Shyreman)</dc:creator><pubDate>Sat, 04 Oct 2014 19:11:53 -0000</pubDate><guid>https://sourceforge.netc99d0236253bb0b57bc15a48bf452e2afc69a56a</guid></item><item><title>Home modified by Mark Anthony Taylor (Shyreman)</title><link>https://sourceforge.net/p/sexyscript/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v10
+++ v11
@@ -49,7 +49,7 @@
 generator it is trivial to define and maintain an interface that C++ and Sexy can share, thus allowing
 one to script C++ objects with ease.

-#Content
+[Content]

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Mark Anthony Taylor (Shyreman)</dc:creator><pubDate>Thu, 25 Sep 2014 17:59:17 -0000</pubDate><guid>https://sourceforge.net0bbcd6880a82c5097c133bf405f97b202a4ca57d</guid></item><item><title>Home modified by Mark Anthony Taylor (Shyreman)</title><link>https://sourceforge.net/p/sexyscript/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v9
+++ v10
@@ -49,6 +49,7 @@
 generator it is trivial to define and maintain an interface that C++ and Sexy can share, thus allowing
 one to script C++ objects with ease.

+#Content

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Mark Anthony Taylor (Shyreman)</dc:creator><pubDate>Thu, 25 Sep 2014 17:57:37 -0000</pubDate><guid>https://sourceforge.net230d0661ca9baa5def9744b9590d8ee99fe1e32a</guid></item><item><title>Home modified by Mark Anthony Taylor (Shyreman)</title><link>https://sourceforge.net/p/sexyscript/wiki/Home/</link><description>&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v8
+++ v9
@@ -46,7 +46,7 @@

 Sexy is meant to be an easy language for programmers of most OO languages. The fundamental units are
 variables, functions, structures, classes, interfaces, factories and namespaces. By use of the BennyHill
-generator is is trivial to define and maintain an interface that C++ and Sexy can share, thus allowing
+generator it is trivial to define and maintain an interface that C++ and Sexy can share, thus allowing
 one to script C++ objects with ease.

&lt;/pre&gt;
&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Mark Anthony Taylor (Shyreman)</dc:creator><pubDate>Thu, 25 Sep 2014 14:02:17 -0000</pubDate><guid>https://sourceforge.net042ed7aedf0ae3953b18bbf7815cd9ef656e64fd</guid></item></channel></rss>