Robbert van Dalen | 11 May 2013 23:36
Picon

[stack] SPREAD: another kid on the block

Let me introduce a new (concatenative?) programming language called SPREAD.
SPREAD has - what I believe - many properties that might interest you.

SPREADs most exciting property is its 'retroactive' property, which means that:

1) values may keep a reference to the historical computation(s) that lead has led to themselves. Such
history is called a trace.
2) traces (and traces of traces) can be rolled back, for instance when replacing 'historical' values with
'future' values.
3) a trace that is rolled back (and then slightly altered) can be re-evaluated, thus creating a new trace.

Such web of traces most likely resembles a version control system where developers create branches, do
merges, etc.
In SPREAD, such version control is 'built-in'.

But SPREAD has more desirable (programming language) properties:

1) Spreadsheet-like
2) Immutable
3) Declarative
4) Incremental
5) Reversible
6) Scaleable
7) Exception-less
8) Total (non-Turing complete)
9) Appealing (syntax)

For me personally, postfix format is the most appealing and efficient syntax of all (I hope you all agree!).
That's why every SPREAD expression is in postfix format (with one exception: concatenation).

(Continue reading)

William Tanksley | 14 Jan 2013 23:40
Picon

[stack] New discussion group for concatenative and stack languages

 

Just for the fun of it, I've created a Google+ "Community" for us. If you'd like to help me try it out, please feel free to swing on by.

https://plus.google.com/communities/102133861060475683875

-Wm

__._,_.___
Reply via web post Reply to sender Reply to group Start a New Topic Messages in this topic (1)
Recent Activity:
.

__,_._,___
Jason Erb | 3 Jan 2013 07:22
Picon
Favicon

[stack] Introducing the Om language

 

Dear Concatenativists,

I've developed a unique concatenative language that I would like to share:

http://om-language.org

The goal was to find "God's programming language": the simplest language possible (mostly so that I could actually implement it) without sacrificing power (as contrasted with languages like Iota and Jot, which are fundamentally simple but don't have basics like named functions).  This led to concatenative languages, but Om has taken a few left turns where other concatenative languages have gone right:
- An Om program has only three syntactic elements: operator, operand, and separator.
- Om uses prefix syntax rather than postfix.
- The only data type exposed by the language is a program.
- Each function takes as input the rest of the program that it is in.

There is more information on the design, and rationale, in the documentation at http://sparist.github.com/Om .  The language is in an early development stage, and the documentation is not as full as I would like yet -- there is much more to write, and I hope to find time to do so in the near future.

Any feedback is welcome.  I expect that most of the readers of this list have far more experience in language design than I do.  If anyone would like to get involved in further development, or knows of anyone that would like to fund such an endeavour (long shot), please get in touch.

If any administrators of http://concatenative.org are here, I would be honoured if you could add Om to the list of concatenative languages.

Best regards,
Jason Erb
http://sparist.com

[Non-text portions of this message have been removed]

__._,_.___
Reply via web post Reply to sender Reply to group Start a New Topic Messages in this topic (1)
Recent Activity:
    .

    __,_._,___
    efliski | 5 Dec 2012 07:38
    Picon

    [stack] Manfred von Thun

     

    http://hosted.verticalresponse.com/291390/14a69b5ba4/1473484945/be83724914/#news

    "Vale Manfred - the philosophical programmer

    Alumni and staff will be saddened to hear of the death of Manfred von Thun on 23 October after a long illness. Manfred was a member of the philosophy department from early 1972 until his retirement in 2003, but remained an honorary associate until 2009. Manfred specialised in logic, philosophy of science, philosophy of mind, computer programming and cybernetics. He was also renowned for developing the computer programming language, Joy. He will be sadly missed."

    __._,_.___
    Reply via web post Reply to sender Reply to group Start a New Topic Messages in this topic (1)
    Recent Activity:
    .

    __,_._,___
    John Nowak | 16 Apr 2012 16:47
    Gravatar

    [stack] peg: a lazy, non-deterministic concatenative language

     
    __,_._,___
    Ruurd | 24 Mar 2012 10:12
    Picon

    [stack] Re: Jon Purdy: Why Concatenative Programming Matters

     

    Hi,

    I can't find q on iepos' webpage, but I do find cake.
    Is q the same as cake ?

    Can zeroone be used to write a brainfuck interpreter in 112 bytes
    or less ? That would be interesting.

    R.

    --- In concatenative <at> yahoogroups.com, "William Tanksley, Jr" <wtanksleyjr <at> ...> wrote:
    > Given 'q' and 'k', both defined in iepos' webpage, we can define:
    >
    > "0" = [] [q] [k]
    > and
    > "1" = k.

    __._,_.___
    Recent Activity:
      .

      __,_._,___
      John Nowak | 13 Feb 2012 14:37
      Gravatar

      [stack] Jon Purdy: Why Concatenative Programming Matters

       
      __,_._,___
      Chris Double | 31 Dec 2011 02:23
      Picon
      Gravatar

      [stack] Concatenative scripting language in Bitcoin

       

      I thought this might interest some concatenative people. The virtual
      currency Bitcoin has a stack based scripting language built in for
      creating transactions. The intent was to allow extending the types of
      transactions (other than just "send money to address X") via scripting
      to allow various types of contracts, escrow, etc. Some information on
      the language is here: https://en.bitcoin.it/wiki/Script

      Recently there has been discussion on adding an 'eval' feature that
      allows popping a program off the stack and executing it. This is
      similar to concatenative languages like Joy. the general proposal is
      here: https://en.bitcoin.it/wiki/BIP_0012

      This has raised some discussion on the bitcoin development mailing
      list about whether this gives the scripting language too much power.
      Can it now be used to create loops or otherwise work around some of
      the existing languages constraints and subvert the bitcoin transaction
      system. Discussion is on this mailing list post:
      http://sourceforge.net/mailarchive/message.php?msg_id=28602033

      This is an interesting example of stack based languages in real world systems.

      Chris.
      --
      http://www.bluishcoder.co.nz

      __._,_.___
      Recent Activity:
        .

        __,_._,___
        Ruurd | 9 Dec 2011 11:32
        Picon

        [stack] Sieve of Eratosthenes

         

        The Sieve of Eratosthenes has been mentioned earlier in this newsgroup, but I didn't see a solution in Joy. Here is mine:

        (*
        popen ( Q -> ) starts a new task. The stdout of the current
        task is connected to the stdin of the new task.
        *)
        DEFINE sieve == get dup put [sieve] popen
        [] [get [swap mod] [put] [pop] ifte] while.

        DEFINE count == 2 [] [dup put succ] while.

        [sieve] popen count.

        Of course, there is no such thing as a multi-tasking version of Joy,
        but maybe this example shows that it worth the trouble building such
        a thing. Is it?

        __._,_.___
        Recent Activity:
          .

          __,_._,___
          Ruurd | 9 Dec 2011 11:20
          Picon

          [stack] Sieve of Eratosthenes

           

          The Sieve has been mentioned before in this newsgroup, but I didn't see a solution in Joy. Here is my proposal.

          (* popen ( Q -> )

          __._,_.___
          Recent Activity:
            .

            __,_._,___
            John Nowak | 7 Dec 2011 06:18
            Gravatar

            [stack] 5th's type system

             

            I've updated 5th's entry on the concatenative wiki with a (very) short description of its type system for anyone who's interested:

            https://concatenative.org/wiki/view/5th

            No, I'm not still working on it. Has been dead for years now.

            - jn

            __._,_.___
            Recent Activity:
              .

              __,_._,___

              Gmane