I'm working on modernizing Rosetta Code's infrastructure. Starting with communications. Please accept this time-limited open invite to RC's Slack.. --Michael Mol (talk) 20:59, 30 May 2020 (UTC)

User talk:CalmoSoft

From Rosetta Code


Hi. I've noticed that many of your Ring entries do not show output, even if the task requires it. For instance the Runge-Kutta task explicitly requires output, but the Ring code doesn't even seem to print anything. Output is important because it's often the only easy way we can tell if the code works as the task intended. Fwend (talk) 13:39, 30 March 2016 (UTC)

Hello Fwend,

In the Ring "see" is the output command. See the next line in the "Runge-Kutta method" program:

see "y(" + t + ") = " + y + " error = " + (actual - y) + nl ok--CalmoSoft (talk) 16:42, 19 August 2021 (UTC)

Alright, but it's still necessary to post the output. You can do this using <pre>...</pre> tags. Fwend (talk) 17:07, 30 March 2016 (UTC)

Now I have added the output. Thank you very much for suggestions. In the future I will add the outputs.--CalmoSoft (talk) 16:42, 19 August 2021 (UTC)

Upload an image[edit]

Hello Fwend,

It is impossible to upload an image.

Greetings, Gal Zsolt (~ CalmoSoft ~)

Yes, image uploads have been disabled (for security reasons). Fwend (talk) 07:31, 30 June 2017 (UTC)

Hello Fwend,

Please can you upload the next image:

CalmoSoft Fifteen Puzzle Game Image

You'd have to ask an admin. But I don't think they can do it either. Some people use an image hosting service. Fwend (talk) 12:01, 30 June 2017 (UTC)

Hello Fwend,

Can you give me the email address of the admin?

Greetings, Gal Zsolt (~ CalmoSoft ~)



I just saw two of your recent edits. Please notice that in both cases there are already entries for Category:Common Lisp.

Eoraptor (talk) 10:37, 5 March 2018 (UTC)

CalmoSoft: Which dialect of Lisp are you using to write these examples? They look like Common Lisp to me and every Lisp example you have added already has a Common Lisp entry.

Have you read the Lisp page? The general Lisp category is for archaic versions of Lisp. While it doesn't hurt to have multiple examples showing different ways to do things, it would be better if they were classified correctly. --Thundergnat (talk) 12:35, 9 March 2018 (UTC)


I use Allegro CL 10.1

Greetings, Gal Zsolt (~ CalmoSoft ~)

So these should be listed under Common Lisp then. Please move or merge them with the Common Lisp entries. Thanks. --Thundergnat (talk) 20:01, 9 March 2018 (UTC)
Agreed. Gal Zsolt, I moved your Lisp programs in the Common Lisp category, which is the correct place for them. Next time, please do not put Common Lisp code in the Lisp category. Eoraptor (talk) 12:45, 10 March 2018 (UTC)
By the way, your program for the Random numbers task is wrong. See Normal distribution on Wikipedia if you don't understand the task. Your program for Knuth shuffle looks weird, and is probably incorrect too (please notice that it's very easy to make this wrong, and if you differ even slightely from the given algorithm, you will almost certainly end up with an incorrect output. It may look correct (it's a permutation after all), but it won't have the desirable probabilistic properties. Besides, you could make use of basic Common Lisp functions, such as rotatef. Your program for Greatest common divisor is also wrong: it fails for negative b. However, the GCD is still defined (and the other programs I have checked, in C and Python for instance, do it correctly). You could also use the psetf function in the program. Your program for Primality by trial division, while not incorrect per se, is awfully inefficient, as you only need to check 2 and odd numbers up to the square root of n (and you could use the isqrt function). Your program for Palindrome detection is correct, but adds absolutely nothing to the existing solution. Same problem with Even or odd and Factorial. You seem to have completely missed the whole point of the Associative array/Iteration task. Hint: it's not about arrays, the word "associative" is here for something. I'm too lazy to continue analyzing your contributions, but there are probably other "surprises". Eoraptor (talk) 20:28, 10 March 2018 (UTC)

Hello Eoraptor

Thanks for the help.

Greetings, Gal Zsolt (~ CalmoSoft ~)

As I suspected, the Knuth shuffle implementation is wrong. See the message above the program. I suspect you didn't even test it, because it should throw an exception rather often: you pick an index in the range 0-50, but the array has only 5 elements. But there is another mistake anyway. A suggestion too: indent your code to make it readable. Eoraptor (talk) 13:43, 14 March 2018 (UTC)


Some time ago I have flagged the Ring entry for the Semornilap task as incorrect, but it seems to have escaped your attention. Fwend (talk) 10:11, 15 March 2018 (UTC)

Copying tasks from other sites/Referencing tasks from other sites[edit]

Hi, I noticed you created a task that was just a link to a task on leetcode. I am unsure of the copyright or access issues with this, and purely from how the tasks looks on RC, it might be better if the task could stand alone if leetcode access changed.
Could you possibly expand on this task and add your own task definition on RC - same task - but in your own words so there's less chance of being accused of plagiarism?
Thanks. --Paddy3118 (talk) 08:47, 26 April 2018 (UTC)

Calmosoft. You can NOT keep dumping pages on here without doing minimal prerequisites. If you intend it to be a task, you need to add required headers. Check to see if the task doesn't already exist, possibly with a different name before you add it. Also, you can't just use content from other sites without permission. LeetCode specifically reserves copyright to content on their pages. For generic tasks where you modify the titles and descriptions a bit, it probably isn't a big issue, but you haven't been adding anything but a link back to leetcode( if that). I only blocked you for 1 day to get your attention, but if you continue, the blocks will get longer.--Thundergnat (talk) 11:27, 26 April 2018 (UTC)

Copying tasks from other sites[edit]

I do not continue copying tasks from other sites.

Greetings, Gal Zsolt (~ CalmoSoft ~)

Well, that has turned out to be less than truthful. You CAN NOT directly copy and paste code/tasks from other sites for which you do not hold the copyright. You have a week. --Thundergnat (talk) 11:55, 28 July 2018 (UTC)

Deep linking to DropBox[edit]

Please be aware that DropBox is not accessible for everybody. This is valid for ALL of your DropBox linkings and you did it again on Vibrating_rectangles.

Please publish all of it on RosettaCode.

Thank you.

Adding tasks[edit]

If you want to add tasks, you need to do some minimal prerequisites. Have you read the page Rosetta Code:Add a Task? It is a fairly comprehensive guide to what the expectations are.

The only thing I would add to that page is that unless you are absolutely sure of what you are doing, tasks should start out marked as a {{draft task}} to allow commentary and tuning. Once there are several implementations and controversy has dissipated, it can easily be promoted to {{task}}.--Thundergnat (talk) 12:56, 18 July 2018 (UTC)

I'd say always start tasks as draft. Doesn't hurt, and can temper later embarrassment. --Paddy3118 (talk) 07:15, 28 July 2018 (UTC)

Excuse me. Which task is not draft? How can I make a test as draft?

Please don't copy tasks without permission[edit]

Just found another task copied from leetcode. If it isn't your wording then please delete the task. You need permission to copy stuff.
Excuse me. I did it because my English is very poor but the codes are mine.

Unfortunately, Someone wrote the original task description. If the site allows copying it without saying where it was copied from then it would be oK, but I could not see that, so decided to replace it with a message as to why the page is replaced. --Paddy3118 (talk) 16:33, 28 July 2018 (UTC)

Terminal control/Preserve screen error[edit]

On Terminal_control/Preserve_screen#Ring you have used char(33) which is ! when the 33 should be in octal. Try char(27). Note this only works on Xterm/linux, and the output should be very different to that shown.

the 21 game[edit]

I hope you don't mind that I added some rules and (task) requirements to your 21 game that you entered.   A lot of fules (I thought) were obvious, but I don't know what you had in mind.   -- Gerard Schildberger (talk) 09:27, 24 August 2018 (UTC)


You have been warned before for this. You have been banned before for this. You just earned two weeks. --Thundergnat (talk) 13:43, 25 July 2020 (UTC)

Getting the number of decimals[edit]

Hi, Please join in the discusion of the task you started here: http://rosettacode.org/wiki/Talk:Getting_the_number_of_decimals

People are having difficulties and would like clarification. Thanks.--Paddy3118 (talk) 09:44, 16 August 2020 (UTC)

Can I add this task?[edit]

Can I add this task:
Find words which odd letters are consonants and which even letters are vowels

  • This would be more interesting if you a) allowed alternating vowels and consonants, so that even-index consonants and odd-index vowels were also allowed, and b) let Y count as either a vowel and a consonant (the word syzygy would be OK). So all of the following would be OK: banana, abacuses, syzygy, zany. But brick, spoon, payment would not be. Thebigh (talk) 19:14, 28 December 2020 (UTC)
I would say make it sophisticated enough to help solve crossword clues, so eg second letter is E or A, 7th is is L. Also while 3,6,3 might be "red letter day" so too could 12. "Any length" is less useful in that specific context but any length with constrained first/last is certainly not unusual among word puzzles. In fact, why not make it flexible enough to cater to all of the "dozens of similar tasks" already posted in one hit? --Pete Lomax (talk) 01:15, 29 December 2020 (UTC)
That's a good idea. I started a very rough draft in my sandbox; feel free to help me work on it. I can't believe we don't already have this task. Thebigh (talk) 08:20, 29 December 2020 (UTC)

Thanks for your help. What would the task name?

Culling draft tasks[edit]

I, (and others), intend culling most of your new draft tasks as they are trivial changes to searching a dictionary of words. Do you have an idea of what you would like kept, and why? --Paddy3118 (talk) 20:53, 13 February 2021 (UTC)

For those programmers who write in a computer programming language that have built-in filtering and mapping and such tools   (and/or other features),   some (draft or full) tasks may seem trivial,   mundane,   or even boring.   But maybe for others   (who have not joined in this discussion)   and myself find them interesting  ---  and some even challenging,   and I have the opportunity to see how other programming language's solutions which don't (or can't) solve it with a simple filter,   but maybe use a more idiomatic method   (for their programming language).   If you feel otherwise,   you can always vote with your feet and not enter a programming solution.   I know of a small handful of   (shy and/or intimidated?)   people that I'm in contact with that don't even bother entering a solution because some draft tasks were summarily deleted without even a discussion   (and they certainly don't want to be in the middle of this   ...   er,   somewhat unfriendly and/or rude comments/discussions   ---   and that is one reason that we are communicating elsewhere   ---   e-mails are much much more friendlier).   I don't think it helps to label draft tasks as silly, trivial, routine,   or any other pejorative adjective you can think of.   Don't call a (draft) task silly,   even if it is silly in your opinion.   It just isn't polite or productive.   Labeling just makes it harder to have a decent discourse on the merits of a task;   name-calling does not help.   I am have already voted by entering a programming solution.   Perhaps it would be beneficial to have more robust programming solutions.   All solutions (so far) assume that the specified dictionary (in these cases) is in lowercase,   and no other programmer is handling a caseless search   (which would be the case for a true word dictionary).   It isn't that much more complicated,   and I think we should be programming for real-world solutions   ---   or at the least, a real-world dictionary,   albeit a much abridged one.   What's even worse,   the dictionary we have to use has many misspellings it in,   such as   tennessee,   among many others.   (At this late date,   possibly the only solution would be to make it a stretch goal to use caseless searches).   Many other programmers, when checking for letters,   don't even verify if they are comparing/searching for   letters,   not characters.   Most other programmers are also hardcoding the requirements into the program itself,   making it inflexible if someone wanted to change (search for) which vowel (or not) should be used,   for instance,   or maybe wants to use a different minimum word length,   etc.   I know it's not part of a task's requirement   (and I wouldn't want to add requirements even to a draft task these days),   but it would make the programming solutions a lot more robust and useful.     -- Gerard Schildberger (talk) 06:33, 14 February 2021 (UTC)
I have a lot of sympathy with much of what Gerard has said above.
What would be regarded as trivial or uninteresting depends on what language you're using. Many languages (including a few 'modern' ones such as Go) don't have the likes of map/filter/reduce built into either the language itself or its standard library and you therefore have to code this stuff from scratch. This is not necessarily a bad thing as you sometimes spot optimizations which would be missed by using built-in functionality blindly.
Also, as a matter of principle, I don't think any task where people other than the author have submitted solutions, should be deleted (or moved to 'non-task' status) without prior discussion. Any objections can then be voiced and considered before the admins make a final determination.
However, I can also understand the point of view of those who have become irritated by Calmosoft churning out task after task based on unixdict.txt where you can often solve the task merely by making a few changes to a previous one. I would suggest that the answer to this is to politely ask Calmosoft to stop creating new tasks of this nature or face the risk of them being summarily deleted otherwise. If others are made aware of this policy, then they will probably not bother submitting solutions in the first place. --PureFox (talk) 09:38, 14 February 2021 (UTC)

Hi Gerard, CalmoSoft; I carefully make the distinction of calling the **differences** between certain tasks trivial, not necessarily individual tasks. I also would not want to remove them **all**. Looking back at my first comment, I haven't been rude or used pejoratives. I get it, you do however feel put apon, which isn't comfortable, but I did think as I wrote - and I thought I had been careful. Please re-read my opening words in this section.
At some stage, CalmoSoft might join in. --Paddy3118 (talk) 18:55, 14 February 2021 (UTC)
CalmoSoft has said in the past that his English is not very good so he may not feel able to join in the discussion. Moreover, Thundergnat has already deleted several of his draft tasks that were clearly duplicates of existing tasks.
A practical solution here would be to let those draft tasks he has already created and where solutions have been submitted by others in good faith stand (i.e. all but the 'Find words which contains most consonants' task) and, if he does submit any more tasks of this nature, ask people not to submit solutions as they will be summarily deleted whether they're duplicates or not. --PureFox (talk) 19:59, 14 February 2021 (UTC)
That's a dark road to go down.   Summarily deleting (draft) tasks if they are NOT duplicates?   I haven't seen any proof that any of the tasks being discussed are duplicates.   In my opinion,   no task should be summarily deleted unless there is damaging, inflammatory, or hurtful wording or purpose in that (draft) task,   and time is of the essence to remove it forthwith.   There may be other reasons as well, of course.   Removal of a task shouldn't be done in haste and without a proper formality of purpose.   The summarily deleted (draft) tasks should have been discussed first.     -- Gerard Schildberger (talk) 20:33, 14 February 2021 (UTC)
Perhaps a discussion should be had regarding   those tasks that were clearly duplicates of existing tasks.   When one starts bandying words like   clearly,   that's loading up the argument.   If they are duplicates, they're duplicates.   If they are clearly duplicates,   well,   who could argue with that?   (Sarcasm intended, if anybody didn't catch or notice that.)   The one task   (mentioned below)   was not a duplicate of any other task,   other than using a specified dictionary,   but (I think) required a different approach to solving the problem   (at least, my REXX solution did,   ...   gone now with other deleted solutions to Rosetta Code's cemetery).   I would like to know what that deleted (draft) task was a duplicate of.     -- Gerard Schildberger (talk) 20:21, 14 February 2021 (UTC)
To Paddy3118:     I haven't named anybody specifically about who is being rude or using pejoratives.   Observe the language on but just one   (draft) task   page   (not the discussion page)   where the following words are being used:   boring, inane, unimaginative, useless,   and most questionable of all,   (tee hee).   There are other examples,   (like yawn)   but I don't to go down that path and enumerate questionable wordings elsewhere.   I believe this sort of innuendo and snide commentary shouldn't be tolerated or condoned on Rosetta Code,   even on discussion pages.   This is no way to run a railroad.     -- Gerard Schildberger (talk) 20:21, 14 February 2021 (UTC)
By the way,   if anyone gives a hoot,   I think the (draft) task regarding   similar words   (which was, in my opinion,   summarily deleted without discussion or notice beforehand),   was a worthwhile and interesting task and (I thought) required some thought on how to accomplish the task's requirement.   ...   Just my 2ยข worth,   just in case if that defunctinated (sic) task ever comes up for review or resurrection of any kind.     -- Gerard Schildberger (talk) 20:21, 14 February 2021 (UTC)
With 1300 odd tasks/draft tasks on the site it is not always obvious whether a new task is a duplicate or not. There was one recently (I can't remember what it was called now) where CalmoSoft had actually requested that the task be deleted if it were a duplicate. I had a careful look and concluded it wasn't a duplicate and so submitted a solution as did others. Thundergnat thought otherwise (and he was right!) and so the task was deleted which was fair enough in my view.
I'm sure you're right that he has deleted other tasks because he felt they were just minor variations of existing ones. As I said earlier, I think there should have been some prior discussion first on such cases where solutions had already been submitted. --PureFox (talk) 20:48, 14 February 2021 (UTC)
Even if those (draft) tasks   were   just minor variations of existing tasks,   there should've been a discussion first.   At least,   give somebody   (or anybody)   a chance to debate the issue   (or give voice)   if the variations are minor,   or significant,   or just the right amount of minor-ness (sic) versus major-ness (sic) to make a difference such that it merits its own task.   Just because someone claims the variations are minor,   doesn't make it so.   Yeah,   I have thunk so   (and I am right!).     {A bit of humor here}.       I do not see what is fair about deleting a (draft) task without debate or discussion,   or even a notice to delete,   much like a foreclosure so-to-speak.         (With tongue-in-cheek):   What is the difference between a prime and a twin prime?   ...   or a cousin prime   ...   or a sexy prime   ...   or a century prime   ...   or a millennium prime?       Not much.   It's just a matter of metrics     As a matter of fact,   the latter are classified as   metric   primes.     But there is need for those tasks.   This is a subject that demands/requires debate,   not summary judgement.   This whole debacle is leaving a stain on Rosetta Code and it should be remedied,   not just dismissed and say,   well,   boys will be boys.   The damage can be undone,   someone with authority needs to step up to the plate,   not just ignore it.   At least consider re-instating those Rosetta Code (draft) tasks that were summarily deleted and had more then one solution already entered.   It's hard to have a meaningful debate when nobody can bear witness to the (deleted) task's requirements and/or the task's merits.     -- Gerard Schildberger (talk) 22:10, 14 February 2021 (UTC)
I (Calmosoft) stop creating new tasks using  unixdict . I try to solve the existing ones.
Thank you for your positive response to the criticism there has been on this matter and hopefully we can now all move on.
I hope that all your existing unixdict tasks which have attracted solutions can now be kept and in particular the 'Find words which contain all the vowels' task. This now has 12 solutions (including one added whilst we've been discussing this) and needs to be moved back from your User talk page to where it was before. --PureFox (talk) 08:42, 15 February 2021 (UTC)
Now that you've copied your final two unixdict tasks back to whence they came (actually I was hoping that Paddy would move these pages back, but no matter) I've blanked the user talk pages to stop them from being duplicated in the task completed lists and to ensure that future solutions are added in the correct place. If Paddy could now delete the blanked pages it would keep things nice and tidy. --PureFox (talk) 09:45, 16 February 2021 (UTC)
My apologies for some petulant and childish remarks on my part, I now realise they were born of my frustration at my own inability to write some imaginary "useful task" that I cannot even describe properly. I have hunted down and removed said comments. --Pete Lomax (talk) 13:20, 15 February 2021 (UTC)

Coloring text[edit]

How to color text in source code? --CalmoSoft (talk) 00:44, 21 March 2021 (UTC)

Most languages use <lang Xxx></lang> tags which uses Geshi, however I added Phix to Geshi in 2017 and this site has still not been updated
Hence for Bioinformatics/Subsequence#Phix I have written my own syntax colouring program and pasted the output of that directly. It was inspired by the output section of the Raku entry on that same page which uses a slightly different approach. The latter uses a custom div and lots of <br> whereas I've single-space-indented and no <br>. Not particularly easy or pretty either way. --Pete Lomax (talk) 05:41, 23 March 2021 (UTC)
I want to color text in Output section. --CalmoSoft (talk) 06:17, 23 March 2021 (UTC)
Remove the <pre></pre> and either
a) replace them with the custom div from the Raku entry and add <br> at the end of every line or
b) (probably easier) indent every line by 1 space (including the blank lines) --Pete Lomax (talk) 07:23, 23 March 2021 (UTC)

View image[edit]

Where to upload image to able view here? --CalmoSoft (talk) 06:18, 25 March 2021 (UTC)
Thanks, I used it in Bioinformatics/Subsequence task.--CalmoSoft (talk) 09:47, 26 March 2021 (UTC)

Poorly named, poorly specced, poorly formatted trivial variations of existing tasks[edit]

I've had enough.

The site is not here for you to shovel as much crap into as possible.

Pretty much every task you have ever entered has been directly plagiarized from some other site, incomprehensibly named, extremely vaguely specced, a trivial variation of some other task or (most likely) some combination of the above.

Pretty much all of the tasks you've entered that have much value only got that way due to someone else rewriting it after the fact.

I've been letting it slide in the hopes that you would start to learn something from your continuous mistakes, but my hopes are fading and I'm fed up.


If you can't do any due diligence before hand, don't make more work for other people. --Thundergnat (talk) 16:33, 24 June 2021 (UTC)

I read your post now. Excuse me I try to do that you suggest.--CalmoSoft (talk) 06:04, 12 July 2021 (UTC)

The next twoo task are also appear elsewhere too (LeetCode...):
Greatest common divisor
Least common multiple
What are you about it?--CalmoSoft (talk) 12:58, 12 July 2021 (UTC)


The next twoo task are also appear elsewhere too (LeetCode...):

Greatest common divisor

Least common multiple
The point is not that a variation of a task may exist somewhere else. Those two are basic, named operations that are useful in many ways. It is no surprise that similarly named tasks exist... but they are differently worded, independently developed and have very little in common other than they are both implementing the same operation. That is entirely different from wholesale plagiarizing of exact wording of copyrighted material.
The point is that the "tasks" that you have been adding lately are quote "incomprehensibly named, extremely vaguely specced, a trivial variation of some other task or (most likely) some combination..."
What are you about it?
I have no idea what that means. That sentence no verb. Apparently it isn't only your tasks that are incomprehensible and vague. --Thundergnat (talk) 23:22, 12 July 2021 (UTC)

I mean: What is your opinion about it?--CalmoSoft (talk) 05:23, 13 July 2021 (UTC)

Can I add the next task to Rosetta Code?[edit]

Find maximum difference between adjacent elements of a list

list = [5,8,6,2,9,11,8]
Output: 2,9 ==> 7
--CalmoSoft (talk) 17:00, 17 July 2021 (UTC)

I would add another set of elements that had the same (max) difference, and have the program select the first maximum difference that it finds.   Also, specify that the two elements (which have the maximum difference) be identified   (as you have above, but with more verbiage).   And have at least one of the elements have a negative value,   and also an element that has a zero value.   You didn't mention it,   but are you going to restrict the numbers to integers or any real number?   An example that would "stress test" these requirements could be an element list such as:     2, 0, 1, 1, -2, 0, 5, 8, 6, 2, 9, 11, 8, 1     I am not sure that all lists   (for different computer programming languages)   prohibit the use of duplicates,   but for this task,   allow duplicate numbers.     -- Gerard Schildberger (talk) 09:56, 18 July 2021 (UTC)
I would say make the list a mixture of integers and floating point numbers, and find minimum, maximum, and average distance (one task not three), and the/all positions of the max/min pairs. When checking to see if anything like this already existed I noticed Greatest_element_of_a_list as a related task. --Pete Lomax (talk) 11:32, 18 July 2021 (UTC)

Can I freely make use of the problems elsewhere?[edit]

"Yes! As long as you operate within the bounds of the CC Licence it is not only granted but encouraged for the problem content to be shared and used freely for non-profit making purposes."
https://projecteuler.net/copyright --CalmoSoft (talk) 12:17, 29 August 2021 (UTC)

The copyright applies to the problems, not the solutions. The policy is to ban those who post solutions to the problems numbered above 100. Posting the problem with its solution violates this IF the problem on Project Euler is numbered over 100. --Wherrera (talk) 17:38, 7 September 2021 (UTC)