Talk:Man or boy test: Difference between revisions

From Rosetta Code
Content added Content deleted
(→‎Clarify!: BASIC does not have "recursion and non-local references".)
(You're not helping)
Line 31: Line 31:


BASIC does not have "recursion and non-local references" and so the task cannot be coded in BASIC. Kind of like trying to represent π (pi) as a Fraction. The ADA version works fine for me. [[User:60.52.12.85|60.52.12.85]] 05:04, 28 March 2008 (MDT)
BASIC does not have "recursion and non-local references" and so the task cannot be coded in BASIC. Kind of like trying to represent π (pi) as a Fraction. The ADA version works fine for me. [[User:60.52.12.85|60.52.12.85]] 05:04, 28 March 2008 (MDT)
:You seem to forget what I've said already. "Don't hope that people can decode the task from other languages." What needs to be in a task description are ''words'' '''explaining''' what to do. What characteristics are in a man or boy test program? How are they arranged? I should be able to code it in a language that I know (and a language where it's possible to code it) without any other examples on the page. I just don't understand how you can think that and explanation of what the man or boy test is for is an adequate task description. I shout because of absurdity. --[[User:Mwn3d|Mwn3d]] 06:30, 28 March 2008 (MDT)

=== Copyright issues ===
=== Copyright issues ===
The fact that this page sprung into being with many language examples at once with code wrapped in <source> blocks makes me worry that the code was transwikied from somewhere like Literate Programs, which would be a copyright violation. Are you certain that you have permission to do this? (Hmm. I was going to point you at a Copyrights page, but I can't seem to find one.) --[[User:IanOsgood|IanOsgood]] 10:35, 18 December 2007 (MST)
The fact that this page sprung into being with many language examples at once with code wrapped in <source> blocks makes me worry that the code was transwikied from somewhere like Literate Programs, which would be a copyright violation. Are you certain that you have permission to do this? (Hmm. I was going to point you at a Copyrights page, but I can't seem to find one.) --[[User:IanOsgood|IanOsgood]] 10:35, 18 December 2007 (MST)

Revision as of 12:30, 28 March 2008

Clarify!

As written, this task accomplishes absolutely nothing whatsoever. No functionality is mentioned or referenced. There's a pointer here on the discussion page to a gif file of a scan of an old article that does not specify any kind of algorithm whatsoever and no criteria for determining whether any piece of code is "valid" for this task.

I didn't write the task, but if you look at Knuth's example, it should be obvious that the criterion is "are the updates to k inside B correct"? Or in other words, does B access the "correct" frame when accessing k? You can also determine validity from the output given in the example: If it's -67, then it's correct.

The Knuth article touts a piece of code for testing something about the implementation of ADA compilers and thus any piece of code that does not compile as valid ADA fails the test as referenced.

Didn't read the article, but originally this was about ALGOL, not ADA. Anyway, the programming language shouldn't matter.

The task description needs to be clarified at least to the point where the following question can be answered: The BASIC one-liner: 10 PRINT "-67" will output what appears to be "the correct result". Does that make it an entry for this task (I highly suspect it doesn't) and why not? -- Sgeier 17:05, 26 March 2008 (MDT)

It doesn't make it an entry for this task, because your BASIC program doesn't attempt to deal with access to variables in different stack frames. And it doesn't follow the outline of calling nested subroutines A and B, either.
If you still think the task is unclear with this additional information, could you try to come up with some way of phrasing it that you would understand? As the task was clear to me, I'm probably the wrong person to do that :-) -- Dirkt 08:11, 27 March 2008 (MDT)
Don't you think that asking the person who doesn't understand the task to explain it is a bit silly?
No. Because those people who had problems with understanding the task have a feeling where the problems are, and what information they need (once they understand what is meant).
I and Sgeier are not offering a task description now. We are offering task description descriptions. You, because you know what to do for this task, should give a task description.
Right now what we have for the "directions" for this task is an explanation of why it was done, a silly quote, and nothing else. The description says nothing about nested subroutines or stack frames. It needs steps or characteristics at the top of the page. Don't link to another page to explain the task. Don't hope that people can decode the task from other languages.
See what I mean? You know very well what is needed. Much better then me :-)
Especially, don't trust task description to someone who doesn't understand the task (like me and Sgeier in this case). --Mwn3d 08:54, 27 March 2008 (MDT)
Which part of it is still unclear? --Dirkt 15:28, 27 March 2008 (MDT)
There are no commands in the task description. There are no restrictions. The BASIC program proposed before accomplishes the task. Also thie BASIC program does:
because THERE IS NO TASK!! This article is more of an encyclopedia article (and a bad one at that) with arbitrary code on it. Maybe the title of this section should be "give actual directions" instead of "clarify!". --Mwn3d 18:08, 27 March 2008 (MDT)

Let's please try to get a bit more constructive. You don't have to yell at me, I didn't come up with this task :-) If you're just looking for an explicitly worded direction, would "do the same thing the Algol60 program does" be enough? If not, what extra instructions do you require? --Dirkt 02:01, 28 March 2008 (MDT)

BASIC does not have "recursion and non-local references" and so the task cannot be coded in BASIC. Kind of like trying to represent π (pi) as a Fraction. The ADA version works fine for me. 60.52.12.85 05:04, 28 March 2008 (MDT)

You seem to forget what I've said already. "Don't hope that people can decode the task from other languages." What needs to be in a task description are words explaining what to do. What characteristics are in a man or boy test program? How are they arranged? I should be able to code it in a language that I know (and a language where it's possible to code it) without any other examples on the page. I just don't understand how you can think that and explanation of what the man or boy test is for is an adequate task description. I shout because of absurdity. --Mwn3d 06:30, 28 March 2008 (MDT)

Copyright issues

The fact that this page sprung into being with many language examples at once with code wrapped in <source> blocks makes me worry that the code was transwikied from somewhere like Literate Programs, which would be a copyright violation. Are you certain that you have permission to do this? (Hmm. I was going to point you at a Copyrights page, but I can't seem to find one.) --IanOsgood 10:35, 18 December 2007 (MST)

Rosetta Code:Copyrights? --Mwn3d 11:13, 18 December 2007 (MST)
It is copied from Wikipedia (as is indicated in the initial edit summary). It is probably ok to copy from Wikipedia, as it is also GFDL, but there should probably be a note somewhere on the page indicating where it comes from. Also, I am not sure if it is a point in just copy the content of another wiki, even if it is legal. Maybe this page should only contain new implementations, along with a link to the Wikipedia article. Ahy1 11:35, 18 December 2007 (MST)

Hi... I transplanted the page from wikipedia. Basically it is a matter of time before the wikipedia article get the other bulk of the code samples pruned. Wikipedia typically requires that content is notable, and wikipedia isn't typically a repository for code sample. Also... most the the examples are "original research" having been created by the contributor.

But having said that I would hate to loose the examples. Hence the transplant.

Of the code snippets, the two that were originated from further afield are the ALGOL 60 (being the absolute original created by Donald Knuth), and ALGOL 68 version that was derived from Charles H. Lindsey's version that appeared in ALGOL Bulletin. Being so small, are they copyrightable?

ps Sorry for the broken links. Does RosettaCode want pages for IT pioneers etc etc

NevilleDNZ 17:31, 18 December 2007 (MST)

I've updated Rosetta Code:Copyrights. Any suggestions on where to link to it to make it more easily found? --Short Circuit 18:41, 18 December 2007 (MST)

Add a link in Rosetta_Code:About, and maybe include a link at the bottom of each page with Privacy policy/About Rosetta Code/Disclaimers maybe.

Re: copyright of the Man_or_boy algorithm and derivatives, I attributed the sources for the Non-GPL versions. As far as the Donald Knuth and Charles H. Lindsey versions... I know there is a rule on fair usage, but I am not sure how far this goes. The algorithm was published in the ALGOL bulletin Number 17 - July 1964 [1]. I was very brief. The Charles H. Lindsey - AB52 December 1988 versions [2] embedded the Algol 68 version in a much larger document.

Maybe the ALGOL Bulletin itself has a more exacting/generous license. I am thinking that I will go back the wikipedia and get their thoughts. And if necessary delete both extracts in both wikis. Any thoughts?

NevilleDNZ 20:20, 18 December 2007 (MST)