<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Ramen, a 2D game engine for standard Forth - 1.6.0 </title>
		<link>http://www.allegro.cc/forums/view/617569</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Wed, 03 Oct 2018 19:50:41 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Release: <a href="https://github.com/RogerLevy/ramen/releases/tag/1.6.0">https://github.com/RogerLevy/ramen/releases/tag/1.6.0</a></p><p>Github homepage: <a href="https://github.com/RogerLevy/ramen/">https://github.com/RogerLevy/ramen/</a></p><p>Examples: <a href="https://github.com/RogerLevy/ramenexamples">https://github.com/RogerLevy/ramenexamples</a></p><p>Zelda clone (WIP):  <a href="https://github.com/RogerLevy/linkgoesforth">https://github.com/RogerLevy/linkgoesforth</a></p><p>Presentation on GUI toolkit / footage of Zelda clone: <a href="https://www.youtube.com/watch?v=-e2sUlnSlTc">https://www.youtube.com/watch?v=-e2sUlnSlTc</a></p><p>Twitter: <a href="https://twitter.com/RamenEngine">https://twitter.com/RamenEngine</a>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (roger levy)</author>
		<pubDate>Thu, 27 Sep 2018 00:06:32 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I watched the video. Very interesting, well done <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Peter Hull)</author>
		<pubDate>Thu, 27 Sep 2018 14:42:16 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>While I love ramen noodles, I don&#39;t think I&#39;ll be giving up C++ and Java+Kotlin to program in Forth.... <img src="http://www.allegro.cc/forums/smileys/lipsrsealed.gif" alt=":-X" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Fri, 28 Sep 2018 06:02:47 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>It&#39;s no replacement but it is huge fun once you learn it, which isn&#39;t hard.  You can get to a point where you are rolling off ideas like you are dictating directly to the computer.  Here&#39;s the meat of the pink bouncing ball&#39;s script:</p><div class="source-code snippet"><div class="inner"><pre><span class="k2">:</span> <span class="k3">&gt;</span>bounce  <a href="http://www.delorie.com/djgpp/doc/libc/libc_728.html" target="_blank">sin</a> <a href="http://www.delorie.com/djgpp/doc/libc/libc_38.html" target="_blank">abs</a> negate <span class="n">24</span> <span class="k3">*</span> <span class="k2">;</span>
<span class="k2">:</span> draw-bouncer  draw&gt; zofs <span class="n">65</span> tile <span class="k2">;</span>
bouncer <span class="k2">:</span>to start
    draw-bouncer <span class="n">0</span> perform&gt;
        begin <span class="n">3</span> <span class="k3">+</span> <a href="http://www.delorie.com/djgpp/doc/libc/libc_281.html" target="_blank">dup</a> <span class="k3">&gt;</span>bounce z <span class="k3">!</span>  <a href="http://www.delorie.com/djgpp/doc/libc/libc_613.html" target="_blank">pause</a> again <span class="k2">;</span>
</pre></div></div><p>

Factor out a couple theoretical utility words and you could do the same thing with even less effort:</p><div class="source-code snippet"><div class="inner"><pre>bouncer <span class="k2">:</span>to start  <span class="n">65</span> draw-ztile  <span class="n">0</span> perform&gt; <span class="n">3</span> <span class="n">24</span> sinbounce <span class="k2">;</span>
</pre></div></div><p>

The possibilities are almost intoxicating.  No types, no headers, no compile time (it&#39;s instantaneous).  It&#39;s a limited space, but it has strengths.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (roger levy)</author>
		<pubDate>Fri, 28 Sep 2018 06:10:00 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>What you just wrote might as well be hieroglyphs to me. I couldn&#39;t make sense of that even with my glasses on.... <img src="http://www.allegro.cc/forums/smileys/lipsrsealed.gif" alt=":-X" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Fri, 28 Sep 2018 06:18:26 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>It&#39;s simple just read it left to right.  Parameters go first, i.e. it&#39;s postfix so you don&#39;t 1 + 2 you 1 2 +.  : and ; start and end a function definition and apart from flow control (if/then) and understanding the VM and dictionary that&#39;s pretty much it.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (roger levy)</author>
		<pubDate>Fri, 28 Sep 2018 06:21:15 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p> &gt;bounce  sin abs negate 24 * ;</p><p>So that&#39;s really; 24*(-abs(sin(bounce)))? <img src="http://www.allegro.cc/forums/smileys/huh.gif" alt="???" /> That&#39;s horrific. Why postfix? Why not prefix? That&#39;s so much clearer.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Fri, 28 Sep 2018 06:27:07 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Because it compiles fast, and actually it&#39;s easier, there&#39;s never any ambiguity about order of operation and it&#39;s easier to factor.</p><p>I actually think the version you wrote out is a headache!  Understanding the transformations numbers go through step-by-step is effortless in postfix.  <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (roger levy)</author>
		<pubDate>Fri, 28 Sep 2018 06:37:55 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>You said read it from left to right, and that made no sense at all.</p><p>If it was prefix, it would be :</p><pre>* 24 negate abs sin bounce</pre><p>, and it would be perfectly clear to any human being what it did. Postfix notation may be easier to pop on and off a stack, but it&#39;s not worth it. You made coding harder so compiling would be easier. That&#39;s not a trade-off I&#39;m willing to make.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Edgar Reynaldo)</author>
		<pubDate>Fri, 28 Sep 2018 06:42:13 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>A game engine to make games with FORTH?  Nice!!!</p><p>I actually never used FORTH but I made a scripting language inspired by it, even used it in a game engine mock-up to build interactive fiction games.  It was pretty easy to use, actually.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Niunio)</author>
		<pubDate>Wed, 03 Oct 2018 14:04:44 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p><img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /> That&#39;s totes the idea!  When I found out about Forth 15 years ago I was so intrigued with the simplicity and after I got the hang of it it was so much fun.   I&#39;m hooked. </p><p>I&#39;ve been feeling a little restricted capabilities-wise so I&#39;m working on a physics module using Chipmunk2D.  Also have plans to create a basic 3D rendering module.  </p><p>I&#39;m doing it for me primarily but I&#39;m always hoping one day there&#39;ll be a small userbase.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (roger levy)</author>
		<pubDate>Wed, 03 Oct 2018 19:50:41 +0000</pubDate>
	</item>
</rss>
