<story><title>F (2006)</title><url>http://www.nsl.com/k/f/f.htm</url></story><parent_chain></parent_chain><comment><author>smabie</author><text>In a somewhat similar vein, I made a concatenative array language inspired by kdb+&amp;#x2F;q: &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;cryptm.org&amp;#x2F;xs&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;cryptm.org&amp;#x2F;xs&amp;#x2F;&lt;/a&gt;&lt;p&gt;Unlike other concatenative languages, the order of operation is right to left, and it supports infix operators. This gives the language a very conventional array language feel, while also giving you the power and flexibility of the stack.&lt;p&gt;As far as I&amp;#x27;m aware, there&amp;#x27;s really nothing like it. Would love if someone gave it a try!&lt;p&gt;Here&amp;#x27;s an example, the factorial function:&lt;p&gt;&lt;pre&gt;&lt;code&gt;  xs&amp;gt; fac:(prod 1+til);
  xs&amp;gt; fac 4
  0: 24
&lt;/code&gt;&lt;/pre&gt;
You can also define new infix operators:&lt;p&gt;&lt;pre&gt;&lt;code&gt;  xs&amp;gt; add:{+.};
  xs&amp;gt; 3 add 2
  0: 5
&lt;/code&gt;&lt;/pre&gt;
Here&amp;#x27;s an example of generating a sequence of values, where n_t=n_{t-1}&amp;#x2F;2:&lt;p&gt;&lt;pre&gt;&lt;code&gt;  xs&amp;gt; (x:;x%2) fixes 12
  0: [12 6 3 1 0]
&lt;/code&gt;&lt;/pre&gt;
Note how when we reach the fixpoint of zero, the recursion stops. These kinds of implicitly recursive combinators are very powerful. Also, equality on floats is not strict, so we can also do this with floats, without having to worry about small differences in precision.  This is useful when working with equation optimizers and root finding methods.</text></comment>
<story><title>F (2006)</title><url>http://www.nsl.com/k/f/f.htm</url></story><parent_chain></parent_chain><comment><author>slartibardfast0</author><text>This is a very thought provoking language, thank you.&lt;p&gt;off topic, is it just me? Or a thing informed by silly memes to see this letter and immediately think oh man, Rest in Peace?!</text></comment>