Talk:Joy (programming language)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
WikiProject Software / Computing  (Rated Start-class, Low-importance)
WikiProject iconThis article is within the scope of WikiProject Software, a collaborative effort to improve the coverage of software on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Start-Class article Start  This article has been rated as Start-Class on the project's quality scale.
 Low  This article has been rated as Low-importance on the project's importance scale.
Taskforce icon
This article is supported by WikiProject Computing (marked as Low-importance).


I am currently (28.5.03) trying to do some deliberate convergence between Joy, Forth and Euphoria, and I may eventually borrow some insights from Oberon to help implement this. Interested readers can follow some progress reports on the Forth newsgroup or the Functional languages newsgroup. (I wonder if this external link trick will work for newsgroups?) PML.

I have just (25.6.03) put some documented work in progress for this project up on a page at my site, [1]. PML.

Why are there two pages for this? Joy_(programming_language) and this one. Since this is older maybe the other one's content should be copied here? -- Dv 06:18, 2004 Aug 2 (UTC)

I've merged Joy (programming language) with Joy programming language now. Angela. 20:11, Aug 2, 2004 (UTC)

Lambda calculus[edit]

Joy is the purest implementation of the lambda calculus as a programming language
Joy is based on composition of functions rather than lambda calculus

So, um, which way is it? Fredrik | talk 20:54, 12 Mar 2005 (UTC)

seems to be the second one; the homepage of its inventor say's:
Joy is a purely functional high level programming language which eliminates lambda abstraction and function application and replaces them by program quotation and function composition.
-- Wizzar 19:05, 6 May 2005 (UTC)

Side-by-side comparison for Quicksort?[edit]

I know there's already a comparison for square, but that's very simple, and, being an outsider, I can definitely say that the Quicksort algorithm shown is complete and utter Greek as far as I can tell. Perhaps someone could put in a side-by-side comparison with a more familiar language (such as C or Java), in such a way as to be able to see and understand what each part of the function means. --Dlevenstein 12:11, 30 May 2007 (UTC)

Mathematical purity[edit]

"the meaning function is a homomorphism from the syntactic monoid onto the semantic monoid" What does this mean? Lmatt 13:28, 5 June 2007 (UTC)

Appending words to the program composes the program with those new functions. But that's uninteresting---and true for most languages. Adding well-formed subprograms to the end of programs in C, Forth, most Lisps, Python, etc. adds new functions to the program. The monoid structure of the program isn't very interesting. It's the branching and looping structure inside the program that's interesting. —Preceding unsigned comment added by (talk) 12:41, 9 March 2009 (UTC)

Plus, what's "mathematical purity" anyway? (talk) 20:14, 23 September 2008 (UTC)

Mathematical purity, that is to call a programming "pure", means that application of functions are free from side-effects. They don't change any state except the ones within their scope. A typical example of non-pure function is random number seeding and generation. — Preceding unsigned comment added by (talk) 02:08, 14 May 2014 (UTC)

Bill Joy[edit]

Wonder if its named after Bill Joy ? (talk) 18:50, 6 February 2008 (UTC)

No references/possible original research[edit]

The article doesn't cite any reference and it appears that it might be original research. Please provide references. —Preceding unsigned comment added by (talk) 14:16, 21 May 2009 (UTC)

Official Joy Programming Language Website (La Trobe University)[edit]

Manfred von Thun, inventor of Joy, has passed away some time ago,[2][3] and apparently his "Official Joy Programming Language Website" at La Trobe University is no longer online. Kevin Albrecht's mirror still appears to work, however. —Tobias Bergemann (talk) 14:55, 6 January 2013 (UTC)

Other programming languages named Joy[edit]

Apart from the language documented here, there is another programming language named Joy that I am somewhat familiar with. It is a dialect of Occam, which was used for description of self-timed silicon circuits. I'm not aware of any current development, nor any commercial releases, but its use was extensively documented in academic literature.

For example: — Preceding unsigned comment added by (talk) 01:17, 8 January 2014 (UTC)

Influenced by Forth[edit]

Although the introduction suggests that Joy is the result of an independent convergent evolution, it is common knowledge that stack-based programming languages have a long history, with Forth being an important development (late 60s/early 70s). It's unlikely for a computer scientist (or language developer) to not be aware of Forth and to not have been exposed to other stack-based languages such as Postscript (itself influenced by Forth); especially if developing a language with such striking similarities. Shouldn't the infobox consequently include Forth under "Influenced by"? (talk) 00:11, 19 March 2015 (UTC)

What does the period in the example do?[edit]

In the example code, DEFINE square == dup * ., it is explained what the dup and * operators do, but it isn't explained what the . does. So, what does it do? This should probably be added to the article. —Kri (talk) 19:00, 9 September 2015 (UTC)

. outputs the value from the return stack (evaluates the expression and displays the result) and returns a new line in the interpreter, as in Forth — Preceding unsigned comment added by (talk) 05:18, 27 September 2016 (UTC)

External links modified[edit]

Hello fellow Wikipedians,

I have just modified one external link on Joy (programming language). Please take a moment to review my edit. If you have any questions, or need the bot to ignore the links, or the page altogether, please visit this simple FaQ for additional information. I made the following changes:

When you have finished reviewing my changes, please set the checked parameter below to true or failed to let others know (documentation at {{Sourcecheck}}).

As of February 2018, "External links modified" talk page sections are no longer generated or monitored by InternetArchiveBot. No special action is required regarding these talk page notices, other than regular verification using the archive tool instructions below. Editors have permission to delete the "External links modified" sections if they want, but see the RfC before doing mass systematic removals. This message is updated dynamically through the template {{sourcecheck}} (last update: 15 July 2018).

  • If you have discovered URLs which were erroneously considered dead by the bot, you can report them with this tool.
  • If you found an error with any archives or the URLs themselves, you can fix them with this tool.

Cheers.—cyberbot IITalk to my owner:Online 01:57, 2 April 2016 (UTC)