Talk:Determine if a string is collapsible: Difference between revisions

 
(10 intermediate revisions by 4 users not shown)
Line 37:
 
: No, that is not what the task's requirement said;   ''determine if ...''   --- and then the very next sentence states:   ''And if so, ...''.     -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 19:01, 8 June 2020 (UTC)
 
: The sentence after the title begins with the word "and" to helpfully lead you on to the rest of the description. There is enough extra info to finish the task successfully. Some may not have worded it that way, but those same people didn't give RC the task we have. We can all learn from criticism, but it should remain measured, helpful and polite. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 21:13, 9 June 2020 (UTC)
 
 
That expectation is then lead completely astray into open fields, where no mention of any kind of test or predicate can actually be found in the detail of the sub-tasks. [[User:Hout|Hout]] ([[User talk:Hout|talk]]) 14:39, 8 June 2020 (UTC)
Line 61 ⟶ 64:
::: Hout, I believe (from what I read of your remarks) that you are being deliberately obtuse.   Nowhere did I say that you shouldn't (or should) expect the title to describe the task.   In most cases, the Rosetta Code task does mention what the task is   ''about''   however,   sometimes in a general way.   That is why there is normally a task description (and/or definitions), and why there are usually stated task requirements.   An example would be   '''long primes'''.   That, in itself, does not describe the task.   It does, however, suggest that the Rosetta Code task is about ''long primes''.   If you're not sure what the task is about,   then read the task's preamble and pay particular attention to the task's requirement(s).   Failing that, observe the other computer programming examples (entries) and their output.   I have no idea how (or why) you are making such foolish assumptions and suggestions, but you are free to make all the whimsical lists at your leisure.   Your discourse is not productive and antagonistic in nature.   I replied honestly and seriously, taking your query to be meaningful, but you are deliberately misunderstanding what I simply and clearly stated, and staying into something that I did not state nor imply.   Perhaps if you could backup a bit and re-read what you posted and reflect on what was written.   I cannot take your statements in a meaningful way as you seem to make up fallacious statements of what I previously wrote.   If you fail to understand what I wrote, than say that instead of deliberately misunderstanding me and misstating/misinterpreting what I posted.   There is no reason to be impolite or be facetious to the point of being absurd.   That serves no purpose here.     -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 21:07, 8 June 2020 (UTC)
 
:::: You say "No mention was made or inferred that one should/must return a boolean value."
:::: I for one certainly deduced and concluded from "Determine if ..." that a truth value was to be produced.
:::: Or perhaps by 'inferred' you actually meant 'implied' ?
:::: (There generally seems to be bit of slippage between language and intention here. But no matter – the pruning of repeated characters, even if unaccountably mislabelled as the detection of repeated characters, is not an obscure or subtle exercise). [[User:Hout|Hout]] ([[User talk:Hout|talk]]) 21:27, 8 June 2020 (UTC)
::: Gerard Schildberger, I believe (from what I read of your remarks) that you are being deliberately obtuse.   The null string is only non-collapsible by axiom. Are you saying that there is a function that can determine if a sting is collapsible faster than trying to collapse it? Looking at the Rexx solution where does it first perform that test? Looking at the Rexx output where has it determined if the string was collapsed, even for the null special case? Why would an non-colapable by the rules rather than axiom example not be an improvement? I think that the title is misleading, and worse the text specification is nonsense--[[User:Nigel Galloway|Nigel Galloway]] ([[User talk:Nigel Galloway|talk]]) 14:04, 9 June 2020 (UTC)
== Back to draft ? ==
 
This task has some serious problems, and seems to have been promoted to full task prematurely. See the discussion below under 'What does determine mean ?'.
 
The fudged explanations offered so far of the obvious gap between task description and task tests seem unlikely to convince many, but the task is probably retrievable, if its quality can be improved.
 
My feeling is that it probably needs to go back to draft status, until the defects in its test set, and in the broken relationship between those tests and the name of the task, have been taken back to the repair shop, and emerged in a more convincing state of health. [[User:Hout|Hout]] ([[User talk:Hout|talk]]) 19:44, 9 June 2020 (UTC)
 
'''Specifically'''
 
# The collapsibility '''test''' foregrounded by the ''Determine if ...'' title needs to be included (prominently and thoroughly) in the task requirements.
# The test predicate and the repetition pruning (unmentioned in the title, but perfectly reasonable) need to be '''separately''' tested, as they are quite different coding exercises. A predicate test can exit quickly – as soon as a single consecutive repetition is detected, whereas a string rewrite (repetition pruning, in this case) has to continue all the way to the end in search of further repetitions.
# The task lacks any stretch element. An obvious possibility is to require the testing and (separately) compression of very long strings (brought in from file or computationally defined), which are beyond the scope (for some languages) of the obvious '''recursive''' solutions to these two coding tasks (the early-exit testing identified by the task title, and the quite different long-haul pruning which dominates the test strings).
 
[[User:Hout|Hout]] ([[User talk:Hout|talk]]) 22:14, 9 June 2020 (UTC)
 
<br>
-----
<br>
 
: I don't see why every Rosetta Code task needs (or should have) a &nbsp; ''stretch element'' &nbsp; I understand that some Rosetta Code tasks have &nbsp; ''extra credit'' &nbsp; or &nbsp; ''stretch goals'', &nbsp; but I choose not to have them as having a multi-thousand (or multi-hundred) character string(s) would serve no purpose. &nbsp; Stating that a Rosetta Code task lacks any &nbsp; ''stretch element'' &nbsp; isn't a legitimate reason for reverting a task to a draft task.
 
: The test predicate, as stated by the task, is to determine if a string is collapsible, &nbsp; '''and then, if so, collapse the string'''. &nbsp; This requirement was met by all of the computer programming language entries, albeit some entries chose to add additional information, &nbsp; but this was not part of the task's requirement. &nbsp; Because of this, there doesn't '''need''' to be a separate test predicate. &nbsp; I don't believe that there are defects in the test set &nbsp; (I believe the test set of the five examples is adequate, adding any more would mean that all computer programming entries would have to be changed). &nbsp; But if another test case (or cases) were added, it would mean all computer programming entries would need to be changed). &nbsp; The task's requirements were written this way so that the programmer could/would choose the method of determination if a string is collapsible (or not), &nbsp; and return the collapsed string &nbsp; (or the unchanged string). &nbsp; Nothing was mentioned that the calling program code has to be notified &nbsp; (and indeed, some programming examples have the calling program do the determination and notification), &nbsp; only that a string was to be returned, &nbsp; either a collapsed string or the original string. &nbsp; I intended that the programmer choose to use (or not use) any manner of predicate testing. &nbsp; The need for a predicate test wasn't specifically required or requested, so there is no need for a separate test &nbsp; (as it wasn't mentioned in the task's requirements). &nbsp; If there is no requirement for a predicate test, there is no need to state its advantages or merits, but the programmer can choose to use a predicate test if they so desire if they wanted to implement a faster or more efficient version of a predicate test. &nbsp; &nbsp; -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 10:15, 25 June 2020 (UTC)
 
::The solutions do not determine if the string is collapsible. If a task were to determine if a is less than a+5 printing the two values out and leaving me to determine by examining the printout is not the task determining if a is less then a+5. The solutions as are collapse the input and printout both strings. I can determine if collapsing has occurred by examining the two printed strings, but the tasks have not done so.--[[User:Nigel Galloway|Nigel Galloway]] ([[User talk:Nigel Galloway|talk]]) 15:50, 25 June 2020 (UTC)
2,171

edits