User talk:Thundergnat/archive

From Rosetta Code

nice job on the Perl6 language name in 3D

Hi. Nice job on the Perl6 version of Write language name in 3D ASCII !  :-) --Grondilu 19:36, 14 November 2012 (UTC)

Hi Thundergnat.

Regarding the Perl 6 solution of the checking Machin Style formulas. The problem is that the Perl 6 solution uses floating point numbers. The task requires one to use exact computations.

For example:

  is  tan(atan(1/2)+atan(1/3)), 1;

Here atan(1/2) and atan(1/3) produces floating point values.

--Soegaard (talk) 15:31, 1 June 2013 (UTC)

Spam redirect

(Posted this on Paddy's page a while back but he doesn't seem to be around atm, maybe you'd like to have a look at it.)

Just found the following redirect. It seems to refer to a software company. Fwend (talk) 19:00, 26 February 2016 (UTC)

Not spam exactly. More confusion on the part of a new user. As far I as I can determine, CalmoSoft is a person, not a company. That was Calmosofts first contribution to the site, (the first of many) and an overly specific page description was entered. While it wasn't well planned, I don't think it was malicious. That being said, you are probably right, that page probably should be removed at this point. --Thundergnat (talk) 20:50, 19 March 2016 (UTC)

massive changes to Heronian triangles

Many many thanks for reverting the massive (and damaging) changes to the Rosetta Code task:   Heronian triangles.

I didn't want to start an editing war on the task's preamble, but I couldn't let the damaging and negatory changes to the two REXX language's entries, as well as their prologues and epilogues.

As an aside, it was nice to get the Ring programming entry back from the graveyard after being eighty-sixed.

I did, however, sent a rather lengthy thingy to Paddy   (user Paddy3118, the original author of the task);   you should be able to read Paddy's discussion page for what I did, and I tried to explain some of my reasons for my complaint.

The revert you did of the massive changes didn't revert my latest trivial changes.   I guess Rosetta Code's (or Wiki's) reversion process works better than we hoped.

From now on, I'm going to have to keep a copy of my (REXX'es) prologues and/or epilogues.   I always keep a backup copy of each of the REXX programs, but I don't bother with the extraneous text(s).   I had never thought that people would be butchering my comments of my REXX programs,   ... but there ya have it.

Again, many thanks for your actions.   -- Gerard Schildberger (talk) 23:42, 8 July 2016 (UTC)

I really doubt that the change was malicious, and certainly not targeted at the REXX entry. It looked to me like he (I assume he) was looking at an earlier version of the page, made some edits to it and saved it without realizing the implications. It wasn't only the REXX and Ring entries affected; The ALGOL 68, ALGOL W, AutoHotkey, CoffeeScript, EchoLisp, Elixir, Fortran, FreeBASIC, Go, JavaScript ES5, Julia, Kotlin, Lua, Pascal, Phix, R, REXX 2nd version, Ring, Scala, Sidef and Tcl entries were deleted completely and several other implementation had edits rolled back.

I hope you don't think that I implied it was malicious, just damaging   (which required a bit of work to re-instate essential "by hand" and viewing the before and after screens, which are a royal pain in the ole neckhole for cut 'n paste). --- I didn't dare to revert such a massive change (having used up my silver bullets long ago).   I had no idea that so many others programming entries were deleted completely.   -- Gerard Schildberger (talk) 05:01, 9 July 2016 (UTC)

For what it is worth, if you notice such a large scale destructive edit in the future, don't try to fix it piecemeal, bring it to my or one of the other admins attention and we can roll back / undo the edit with one click. However, we can only easily roll back the last edit without higher permissions, so once further edits have been made to the page it becomes much more tedious. I generally try to check the recent changes page at least 4-5 times a day to catch spam and unintended edits before they get out of hand. I can't be here all the time though. Cheers --Thundergnat (talk) 00:28, 9 July 2016 (UTC)
Will do.   I didn't try to fix the massive changes, I only tried to fix the (two REXX) entries that I authored; that way, if it didn't get rolled back, at least I corrected what I could.   -- Gerard Schildberger (talk) 05:01, 9 July 2016 (UTC)
After a cursory investigation, it looks like it had been reverted to the 17:52 13 March 2015 version of the page, which tellingly is exactly the same size.--Thundergnat (talk) 00:53, 9 July 2016 (UTC)

For what it's worth department:

Perusing around some odd and dusty corners of the ole Google-net, ... er, I mean internet,   I came across several negative comments about the various tasks (and formats) concerning the Rosetta Code website;   some of the negatory statements were complaining about the loosey-goosey task definitions (and the various flavors on how the tasks/problems are presented --- that is, not having a more strict format, or even not having a common format),   and also that the task requirements are   "all over the place"   and most requirements aren't rigorous enough, and/or some such words to that effect,   and other minor complaints.   That's why I argue about people using   number   instead of   integer   and the like.   I don't believe I've ever won any of those changes   (some task author defend their original wording as if their first born's life depended on it).

To that end, I've been making minor changes   (I assume you or others may have noticed)   to some   (well, OK, OK, a not small number of)   Rosetta Code task's preambles,   mostly in the manner of:

  •   trying to have each task contain a   ;Task:   section header --- this is more dangerous than ya think
  •   changing   ;C.f.:   to   ;Related tasks:   whenever noticed
  •   changing   See also   to   ;See also:   section headers
  •   using a larger font for most mathematical formulae,   especially when:
  •   Greek symbols are used
  •   sub- and/or superscripts are used
  •   when other hard-to-read glyphs are used
  •   removing pronouns from the preamble:   ... Your task is to ...
  •   removing superfluous wording:   ... The purpose of this task is to ...
  •   more use of highlighted numbers and variable names instead of:   ... where "x" is equal to b or c and ...
  •   more use of bullet points (either plain or numbered) instead of long comma-separated continuous lists
  •   separating all the multiple   [[xxx]]   and   {{yyy}}   thingys into distinct lines
  •   adding whitespace for visual fidelity
  •   adding whitespace where it makes the reading of the text easier, and adds fluidity to your perusing
  •   adding whitespace before the first text, this ensures that the (above) stuff won't be abutted with the task preamble
  •   adding whitespace before the TOC (table-of-contents)

... Regarding this last bullet, this has become a concern   (in my mind)   ever since the last major Wiki's upgrade.   Previously, the TOC (on my screen, using FireFox, FireFox Aurora, and/or Microsoft's Internet Explorer),   the list in the TOC was always a very light blue.   Now the TOC list is white,   with nothing distinguishing it from the regular (the background, so to speak)   Rosetta Code task preamble.

It was this "sameness" that prompted me to add more whitespace before most TOC's to make it easier to find the TOC when scrolling.   The best of all worlds would be to have the "old" very light blue color reinstated somehow.   I have no idea where to change the TOC list color, but I'm sure it's possible.
By the way, that very light blue is the same color as the "box" for the   <lang xxx>   thingy.

I would like to add much more thingys   (er, I mean   Related tasks)   for a lot of Rosetta Code tasks, but that's 'nother kettle of fish.   (I used to do this kind of documentation for a living for quite a few years --- and most programmers get quite territorial about "their" wording (documentation) and don't take lightly to improvements and/or changes --- no-siree bob).   Some tasks already have a template, but I don't think I have the proper authority or permission to update those templates, and even add one, for that matter.   Primes are one such "category".   There are many others.   It helps curious people to find other   birds-of-a-feather,   especially if they don't know the wording to use to perform searches for (maybe) obscure (or hard to define) algorithms or procedures.

There has been some kickback here and there (reverts, but mostly deletions), and when it happens, I don't push it further, as I've said, I've used up my silver bullets earlier.   I also like to add appropriate JPEGs to a task's preamble,   but several have been deleted by one person, even though those images on the right-side of the preamble don't use up real estate on the preamble part of the Rosetta Code task.   Ya can lead a horse to water, but ya can't push a rope.   One guy (same as above) is reverting more than a few of my preamble changes, so if it gets worse, I'll probably just fade away from further changes.   No sense in wasting time if I try to make improvements to some task's preambles if it ruffles his feathers   (or steps on his toes).   Sometimes it feels like pushing a chain uphill. -- Gerard Schildberger (talk) 05:01, 9 July 2016 (UTC)

Heronian triangles

Thank you for finding and correcting my edit on Heronian triangles! I have no idea what happened, but I certainly didn't mean to delete half the page. (I only happened across it just now.)

CRGreathouse (talk) 15:05, 26 August 2016 (UTC)

No long term harm done. It wasn't too difficult to recover. Cheers. --Thundergnat (talk) 19:00, 26 August 2016 (UTC)

Uploading photos

Is there a trick to uploading photos? The photo shows in the preview and all seems okay until I try to upload and get the following warning:

Upload warning Could not read or write file "mwstore://local-backend/local-public/a/a7/Futurebasic_logo.jpg" due to insufficient permissions or missing directories/containers. Could not store file "/tmp/phpwWtwYV" at "mwstore://local-backend/local-public/a/a7/Futurebasic_logo.jpg". Could not delete lock file for "mwstore://local-backend/local-public/archive/a/a7". Could not delete lock file for "mwstore://local-backend/local-public/a/a7". Could not delete lock file for "mwstore://local-backend/local-public/archive/a/a7/20160829132005!Futurebasic_logo.jpg".

Still finding my way around here, and am not even sure this is the correct way to ask for assistance, so please bear with me.

--KenS (talk) 01:25, 29 August 2016 (UTC)

It appears that image uploads have been blocked since late May ~ early June 2016, not just for you, for everyone. I really don't have much more information about it than that. I believe the block to be intentional, I seem to remember Short Circuit saying something about problems with malicious image uploads (though I can't find where that might have been) and I haven't heard any time-frame of when they may be re-enabled.
Really, despite being an "admin", I have little more little more control over or knowledge of the inner workings of the site than you. A more appropriate title for me might be "janitor". ;-) I have the power to remove messes, but that's about it. Sorry. --Thundergnat (talk) 15:21, 29 August 2016 (UTC)

using of intermediate variables

Concerning the Rosetta Code task   Sorting three variables,   in the last comment of the section header for Perl 6, you noted:

 Note that this example is awkward and verbose to comply with the task requirement to use a bunch of intermediate variables.

Where did you see a task requirement   to use a bunch of intermediate variables?

The (one) algorithm shown in the task s preamble notes that it   could be   used and wasn't suggesting that it should be used.

If your assertion is correct, do you have a remedy (or improvement) for better wording in the task's requirements?
-- Gerard Schildberger (talk) 19:59, 30 April 2017 (UTC)

Quote:|Sort (the values of) three variables (X, Y, and Z)| Seems to me that says use three variables. For something like this, in Perl 6 normally I'd just assign three values to an anonymous array and sort that, E.G. say [9 7.7444e4 -12].sort. The task could just say "sort three numeric values by magnitude and three string values in some lexical order" without really delving into how the values are stored or accessed. Once it specifies variables and especially numbers of variables, it is adding constraints that in this case have little to do with the main task.--Thundergnat (talk) 20:55, 30 April 2017 (UTC)
Yes, your first statement (above) is dead on, use three variables X, Y, and Z.   I intentional didn't specify (just) three values.   However, those aren't intermediate variables, they are the primary variables   (that contain the original defined values).   The original question is where did you see the mention of   intermediate variables   in the task's requirements?
As an aside, I don't recall seeing the phrase   sort numeric values by magnitude   in any other Rosetta Code sorting task, I assumed that that's what sorting does (when sorting numbers).
As for delving into how the values are stored, some computer language store numbers in different formats/methods, depending on what format (or kind of) the number is, so I tried to make allowances for those languages in the wording of the task.   I was trying to be generic (and inclusive) as possible.
In addressing the main task itself, the specific mention of sorting three variables is crucial to the task;   it is an old and well-known programming topic of discussion elsewhere.   Knowing that some programming languages don't care what is stored in a variable, and other language have very particular syntactic rules (casting or typing?) about their construct (that is, how the data is stored --- floating point vs. integer for instance),   I tried not to exclude some (well, probably most) programming languages via the task's wording.   -- Gerard Schildberger (talk) 21:35, 30 April 2017 (UTC)

moving of REXX routines

Are you checking to see if all the pages that refer to those REXX routines (links) are still working?   -- Gerard Schildberger (talk) 00:00, 7 September 2017 (UTC)

Nope. I am not changing the location just the classification. If you go to the REXX page and look under subcategories you'll see the link for Category:REXX_library_routines. Now they are all identified as to what they are so they are not as likely to be deleted as 'orphaned' or 'unused' and have a centralized link index for easy access, but are still at the same address so previous links still work the same. --Thundergnat (talk) 00:12, 7 September 2017 (UTC)
Thanks for all your time and work.   I checked a few of the Rosetta Code pages that used the links, and they all work.   I'm not sure which one of my REXX entries that previously failed, but I will try to hunt that one down and check it out.   Also, I think the wording you added was very succinct and perfectly stated   (about why the REXX routines where stored this way and such).   -- Gerard Schildberger (talk) 00:19, 7 September 2017 (UTC)
Followup.   I found that rogue page that previously has a failing link to   $T.REX.
It now works as advertized.   Thanks again for whatever ya did to make the link work again.   -- Gerard Schildberger (talk) 00:26, 7 September 2017 (UTC)

problems with Rosetta Code CAPTCHA and/or "Shared CSS/JavaScript for all skins"

Today, around 1630 my time, all of my viewing of every (or any) Rosetta Code tasks (of any flavor) no longer honors my JS (Java script) for all skins (I was, of course, logged in):

Username  (Gerard Schildberger)
Chameleon  (or Vector, both aren't working) 
Shared CSS/JavaScript for all skins
Custom JavaScript

that I had previously entered (it allowed me to toggle the highlighting [ON or OFF, with the default of OFF].   I tweaked the JavaScript (that was created by some JavaScript expert and posted here [somewhere] on Rosetta Code a few years back) such that a long (solid) bar is pre-pended to the toggle so that is makes a handy-dandy eyeball fence, allowing more visual fidelity and creates a good eye-catcher.

The failing (of the JavaScript) came out of the blue, I hadn't changed anything in my "Preferences" for quite some time.

When I went to re-save it (thinking that may do the trick), I got the message (in red):

To protect the wiki against automated page creation, we kindly ask you to solve the following CAPTCHA: 

BUT ... no CAPTCHA appeared, and I was then in some manner of limbo --- no way to save it (successfully).   If I tried to save it again, I just got the same (red) message, but CAPTCHA (usually it used to be something of the sort like "I am not a robot").   I could (and did) leave the page un-saved by closing the window (and at another time, just navigated to another Rosetta Code page).   I have re-booted in an attempt to flush all the buffers and what-not, but the same thing happens.

Is something happening to Rosetta Code, and will time fix this problem on its own?

Next question, are you a/the person to ask, or should I ask someone else?   -- Gerard Schildberger (talk) 22:15, 12 September 2017 (UTC)

For what it is worth, it seemed like there was a problem with javascript on the site for me earlier too. I took the view of "Meh, I can live without javascript for right now, see if it's still a problem later." And at this point it seems to be working again for me. As to what went wrong, why, and what may have changed to fix it; your guess is as good (possibly better) than mine. --Thundergnat (talk) 01:09, 13 September 2017 (UTC)
Well, the JavaScript "toggle highlighting" thingy is again working.   As you said (or inferred), it's working now, so I guess we'll never know what the hiccup was.   That CAPTCHA thing was also weird.   But, all's well that ends well.   I certainly thought that there was something seriously amiss in Rosetta Code land.   -- Gerard Schildberger (talk) 02:56, 13 September 2017 (UTC)

In case you can't see it or have trouble getting to it, here is the code: <lang> (function(){

 	    function get_code_pres() {

var pres = document.getElementsByTagName('pre'); var codes = []; for(var i=0;i<pres.length;i++)

                                            if(pres[i].className.match(/\bhighlighted_source\b/)) codes.push(pres[i]);

return codes; }

	    function toggle_highlight(pre) {

if(pre._alt_html == null) { pre._alt_html = pre.innerHTML; var spans = pre.getElementsByTagName('span'); for(var i=0;i<spans.length;i++) spans[i].className = ; }

                                                                else {var z=pre.innerHTML;

pre.innerHTML=pre._alt_html; pre._alt_html=z;



	    function show_toggle() {                                        // the bar below has  61  'db'x  characters.
                                   var xdb = '███████████████████████████████████████████████████████████████████████'; 
                                   var bar = xdb.concat(' «toggle highlighting»');

var codes = get_code_pres(); for(var i=0;i<codes.length;i++) { var a=document.createElement('a'); a.textContent = bar;

		                                            = 'pointer';
		                   (function(e) {a.addEventListener('click', function() { toggle_highlight(e); }, false);

e.parentNode.insertBefore(a, e); } ) (codes[i]);


} }


} ) ();</lang> I tried to align (with indentations) what I could understand so I could follow the logic better.   I also re-named some function names.

For what it's worth, the solid bar shows up as blue on Rosetta Code task/draft pages.   -- Gerard Schildberger (talk) 22:15, 12 September 2017 (UTC)

erasing an erroneously created Rosetta Code task

The deletion of the just recently "deletion" of an erroneously created Rosetta Code task did not, in fact, delete it.
The erroneous (or bad URL link to it in the Rosetta Code task   Eertree)   now shows up as a "good" (valid) URL (link), and nobody will now see the error that I originally saw in the   Eertree   task.

It needs to be completely (if that is what I mean) deleted, ... that is, with no stub left behind.   Either that, or somebody should fix the original error   (a bad URL in the 2nd sentence of the   Eertree   Rosetta Code task's preamble.
-- Gerard Schildberger (talk) 23:02, 13 October 2017 (UTC)

I... uh... can't parse that first sentence at all.
When I clicked on that bad URL, it still got me to the deleted page.   It no longer does. &nbsp -- Gerard Schildberger (talk) 03:35, 14 October 2017 (UTC)

"or somebody should fix the original error"

Don't forget, you're somebody too! Those were probably intended to be wikipedia links. I'll seize the initiative and make them so. --Thundergnat (talk) 23:27, 13 October 2017 (UTC)
When I clicked on that bad URL, it still got me to the deleted page.   It no longer does.   -- Gerard Schildberger (talk) 03:35, 14 October 2017 (UTC)
As to the phrase,   I'm somebody too,   ... yes, I am, but I didn't know that it was meant to refer to a Wikipedia page, not a Rosetta Code page   (as it was for the other link in the same sentence).   If I knew where the error was, I would've fixed it myself.   But, at least I raised attention to the error rather than just ignoring it, and the problem (bad URL) got fixed.   (albeit that inadvertently created a new task instead of a new discussion entry). -- Gerard Schildberger (talk) 03:35, 14 October 2017 (UTC)

entering language stubs

I noticed that you are adding computer programming language stubs for various languages.   Perhaps you've noticed, there's been some new additions for the language(s):


It looks like an attempt to use/specifiy three versions of nroff, TROFF, and ROFF (or roff).   I'm not quite sure of the various capitalizations.

There've been quite a few entries, but so far, there is no programming language stub.   I don't know what the official names of those (three?) languages (dialects?) are, but it would be a good thing to agree how to have a name for these (three?) computer programming languages, or agree to have a generic/common name for the three.   -- Gerard Schildberger (talk) 12:32, 4 December 2017 (UTC)

Rosetta Code spelling of the Déjà Vu programming language

Also, you may want to read the discussion (last entry on my user page) concerning the universal misspelling of the   Déjà Vu   programming language on Rosetta Code.   All of the misspellings (over 100 total) have the language as:   Déjá Vu.   Is this issue worthy of being addressed and/or corrected?   -- Gerard Schildberger (talk) 12:32, 4 December 2017 (UTC)

About some page deletion on march 8th


This one seems to have escaped the deletion: Widr. Should be in userland I guess. Eoraptor (talk) 21:38, 10 March 2018 (UTC)

Ah. Right. On it. Thanks. --Thundergnat (talk) 22:17, 10 March 2018 (UTC)

Problem with GPL code inserted in RC and translated in other languages


In case you have any idea of what to do with this mess: Talk:P-value correction#License problem.

The problem comes from this: the task creator inserted R source code from the official distribution, which as can be checked in the actual file (R-3.4.3/src/library/stats/R/p.adjust.R in the tarball), has GPL license. Most other language in this task are translation of this R code, or translations of translations. Thus, they are ALL covered by GPL. It's a bit annoying since the GFDL and GPL are incompatible, and RC contributors are supposed to distribute code under GFDL.

Eoraptor (talk) 11:23, 14 March 2018 (UTC)

Ugh. What a can of worms. At this point, the changes you made (notices of GPL licensed code) is probably our best option other than removing the task. Sorry I don't have a more concrete answer; I'm basically just a janitor.--Thundergnat (talk) 22:10, 15 March 2018 (UTC)
Thanks, and no problem. At least I'm happy we agree on the solution. Eoraptor (talk) 07:28, 16 March 2018 (UTC)

Perl 6 code review

I think it's great that you're doing a thorough review of the Perl 6 code. Anyone looking at Perl 6 for the first time is bound find broken code discouraging/annoying, so best-foot-forward is important. In particular, I think making it easy to copy/paste whole examples with runnable code is valuable, to encourage experimentation. This is why I first came to Rosetta Code (but upon discovering bit-rot, I decided that debugging code would be a good way to learn). Ultimately, I stumbled into a project that complements what you're doing. Off and on since late 2015 I've been building up a local copy of Perl 6 tasks from Rosetta Code, instrumented for regression testing (which I run daily for MoarVM, for JVM occasionally). Tracking all revisions to the Perl 6 code as well. The pace of your recent edits is not doing my RSI any favors, but I'm trying to keep up...

The manglement I end up doing makes the code unsuitable for displaying directly on RC (though I do update the site with any functional revisions). It's not "done", but it's pretty far along. Real Soon Now I'm going to push it all onto github, come up with some sort of decent front-end for the summary. For now, here's the current status of my test suite, in its full ASCII glory: task status

Hi SqrtNegInf, Thanks for YOUR efforts too. Sorry about the gigantic dump of minor changes over the past week. I've been working on implementing a Perl 6 Rosetta Code/Run examples implementation and have been battling it for a week or so. I've gotten to the point where it will download every/any implemented task, pull out the code inside <lang perl6></lang> sections and run it. The code runner has a configurable 'skip' function to skip trying to run blocks I know are going to fail: code fragments, code trying to do things not allowed, whatever. After this past week, I have made a full pass through the implemented tasks. I've unified the <lang *> markup to the official version (<lang perl6>), combined blocks to make runnable code wherever possible and included referenced code to make runnable code blocks. As I've found broken tasks, I've either fixed them, or at least marked them as broken until I have a little more time / energy. It still doesn't check for correctness, but it's a start.
I still want to implement a "resource" folder to supply needed resources for various tasks. "unixdict.txt" for Anagrams, Deranged/Anagrams/Textonyms/etc., the various text files for the Text Processing tasks, whatever needs a resource file. At some point, I want to look into automatically detecting and installing needed modules, and capture output and compare it to output in the {{out}} blocks to see if they are returning the expected output.
It still isn't ready for prime time but if you want to take a peek at it, I could put a copy up on github or somewhere.--Thundergnat (talk) 22:29, 10 April 2018 (UTC)
Very interesting (and ambitious!). Yes, if not a lot of trouble, I am curious to see your code, particularly the source filtering. Anything that would enable more efficient processing of tasks would be welcome (especially if I extend my scope to include Perl 5). Likewise, I will make my setup public; might be helpful to you when you get to the "correctness" phase of your project. --SqrtNegInf (talk) 17:56, 12 April 2018 (UTC)
Keep in mind that this is still early stages. RC-run.tar.bz2 Extract this somewhere where you can run perl6. This has the script, a folder "./rc" and a folder inside that, "./rc/resources". Run it from the directory the script is located in. Each task will have a directory made under ./rc and the perl6 entry and code blocks will be put in that directory. If files are required, they will automatically be loaded from the .rc/resources directory (if available), then each code block will be run depending on the options in the resources hash. Note that there is still quite a bit of configuration to do in the resource hash yet. I probably only have 40-50% of the options I eventually want implemented. --Thundergnat (talk) 22:21, 12 April 2018 (UTC)
The task example is up and the files are now available in their own repository: rc-run --Thundergnat (talk) 23:23, 15 April 2018 (UTC)
Was just having a look at it, and so far everything works fine for me (this is on Mac OS X). Among other benefits: I can use this to verify my own RC updates; recently I've seen tasks where you've had to fix editing mistakes I've made... --SqrtNegInf (talk) 23:46, 15 April 2018 (UTC)

vanity badges

Kudos on your recent removal of some of the vanity badges.   There are only a few (that I know of) contributors that include vanity badges, and as you probably know, vanity badges makes updating and/or changing of those tasks problematic, because when an program entry/solution is "signed" (or somehow otherwise implied it is the work of a sole author), it makes it much harder to make updates and/or improvements to a "signed" programming solution/entry without (in some way) invalidating the signature/ownership/authorship.   But, I suppose I'm preaching to the choir.   It would be nice if Michael Mol (or some other deity) could make a much stronger statement regarding vanity badges (possibly as a policy statement) that vanity badges are very strongly discouraged (or forbidden) from being used on Rosetta Code.   Eliminating vanity badges makes for a better (and much friendlier) Rosetta Code;   and it it helps to remove the ego (and also possibly ownership) from the computer program language entries/solutions.   -- Gerard Schildberger (talk) 02:48, 29 July 2018 (UTC)

OUTPUT not being included

Recently, there has been   (from only one contributor as far as I can tell for Scala entries)   the use of such things like:

     Best seen running in your browser either by ScalaFiddle (ES aka JavaScript, non JVM) or Scastie (remote JVM).

In addition, the above output section was before the computer programming entry, and not in the usual place   (but that isn't my concern here).   First of all, I don't know nuttin' about running my browser by ScalaFiddle or whatever.     In another case, there was some kind of link, but it didn't work and I couldn't verify that the computer programming entry produced the correct results.   (It is possible that the problem is only on my badly outdated and un-updateable browser).   In other cases, when pointed to another site/web-page   (not Rosetta Code),   the output isn't shown or otherwise not visible for whatever reason.   At first, it seemed to be only used (for Scala entries) on some of the Rosetta Code tasks that I had entered/created), but that usage has expanded to other Rosetta Code tasks as of late.   I was going to flag those entries using the   {{output?}}   template, and this inclusion (or something resembling it) was on Rosetta Code tasks that explicitly required the output to be   here on this page     task requirement.   But, that would've most likely have started an edit (or some other kind) war with (user) Cloudius, and my back was already stuck full of arrows as it was from other ... er, ... (non-productive and/or retaliatory edits) discussions/disagreements/un-doings concerning this particular user.   Do you have any thoughts about using that substitution of   Best seen running in your browser either with ScaleFiddle ...   instead of actually just showing a few lines of output?   -- Gerard Schildberger (talk) 03:39, 29 July 2018 (UTC)

I've noticed it and have similar reservations about that being the only "output" when a task specifically requires output to be shown. That isn't output. I don't really want to discourage the "Run it in your browser" option though. I personally am disinclined to run unseen code willy-nilly and and very hesitant to blindly click through, but it makes demonstration of code that you might not have a compiler for very simple. Really, I've been picking my battles lately. July/August is typically the busiest time of my year and I just haven't the energy to spare. Besides, I do this as a hobby, for entertainment, and getting into endless edit wars is not my idea of fun. --Thundergnat (talk) 13:40, 29 July 2018 (UTC)
I also am very hesitant (if not just out-right refuse) to run unseen code for the same reason(s) as yours, but how are we Rosetta Code readers   (or more specifically, the task author)   supposed to know if the program is correct without verifying the output, and of course, I'm assuming whoever wants to verify the correctness of the computer program?   Including a few lines of output would obviously (at a quick glance) show that the results of the computer program are correct, and in come cases, also show how/why the output is formatted, and it may also show other informational messages and/or data.   I prefer the demonstration of code to just simply be ... well, the output.   I have no strong feelings about   also   show/including a link to run/execute the (or an unseen) program, but I don't see how the benefit outweighs the possibility of dangers of "willy-nilly" (hidden/unseen/invisible) code.   Apparently, so far, no malicious or dangerous code has been linked to.   As for picking ones battles, I absolutely understand that choice.     If it were my choice, I would be proactive before some malicious or even harmful (hidden) code gets executed.     That decision is, as the ole saying goes, above my pay grade.   Time and energy are finite resources for all of us, and especially more-so for extremely busy working stiffs professionals.   As for for our reasons for being on Rosetta Code, I started out entering programming examples more or less as a hobby, but it later grew into more than that, as it represented a way to showcase (and/or improve) some computer programming languages and pass on knowledge.   -- Gerard Schildberger (talk) 00:32, 30 July 2018 (UTC)

Overlapping edits

No worries, surprised it doesn't happen more often... The pass-in-the-angle business is a bit of a dodge really (angles are implied by how %c2 is constructed), but was setting up to pass in just one angle (60) to make the extra credit problem more efficient. Not that it really helped, the calculation still takes a bit over 3 hours to run for me. Work in progress here, ideas welcome:

Law of cosines / extra credit

--SqrtNegInf (talk) 16:49, 24 September 2018 (UTC)

Put an edited version up. Still not great, finishes in ~90 seconds on my system. Putting a .hyper in the .map drives it down to around 25 seconds... but then only returns the correct answer about 1/3 of the time... 🙄 --Thundergnat (talk) 01:34, 25 September 2018 (UTC)
Looks good, with .race now runs under a minute for me. If nothing else this exercise drove home how expensive the X operator is: it tested as 67x slower than the pair of loops.
Well I, for one, welcome our new fiddly overlords. ;-) Because all that fiddling turned out to be very instructive, regarding code efficiency, details of .race and correct usage of atomic operations. That said, I, for one, am well and truly done with this particular task! --SqrtNegInf (talk) 11:41, 19 October 2018 (UTC)
Cool. Thanks for going through some of the older, slower tasks and working on adding concurrency / parallelism. I've done a few, but it is interesting / useful to get another take on things and see how different people approach problems. (And working things out in ways that never occurred to me.) --Thundergnat (talk) 22:38, 19 October 2018 (UTC)

Lynch-Bell numbers

--Steenslag (talk) 22:34, 27 September 2018 (UTC) In the Lynch-Bell numbers item (Perl 6 contribution), isn't the line "next unless all $ $test %% *; " unnecessary ?

Yes. By the time it gets to that line it already knows it has a solution. But it only ever executes it once so adds at most microseconds to the execution time. It is a leftover from when I was developing the code before I added the task. It hasn't bothered me enough to go back and remove it. Feel free if you want to. --Thundergnat (talk) 23:07, 27 September 2018 (UTC)
Meh. Never mind. Now that you pointed it out, it bothered me enough that I went and edited it. Thanks. --Thundergnat (talk) 23:15, 27 September 2018 (UTC)

How about 1024?

1000? Just an artifact of base-10 counting. Meh. I'll be more impressed when the task count reaches 1024.

But seriously... Kudos, props, and garland of Martian fire-flowers to you for pushing that task count up, and doing it with very nicely written code, quantity and quality. Your comment on IRC is beyond modest. Like you took a break from watching sloth videos on Youtube, and just happened to notice the odometer roll over on P6 tasks... What's next? The remaining un-implemented tasks range from hard to odd. Tamagotchi emulator? Have fun with that! --SqrtNegInf (talk) 01:56, 12 November 2018 (UTC)

Have you seen those sloth videos? Riveting! :-) Thanks. Don't see much point in tooting my own horn about it though, it's a community effort. --Thundergnat (talk) 22:19, 12 November 2018 (UTC)

Hi Thundergnat, Nice to meet you and thanks a lot for the warm welcome. :-D

Thanks for your advice and provided a complete sendmail solution. I will fix the half-hearted submssions. Starting with the median filter example, should I just retract it and state on the discussion page there is a WIP module on Perl 6? Thanks again.--Hkdtam (talk) 10:31, 3 December 2018 (UTC)

Anti-primes - concurrency failure?

I am getting inconsistent results for the 'Anti-primes' task when concurrency is used (without the .hyper it's fine). I'm using the very latest Rakudo. Tried tweaking the code, without success. Maybe there's an unavoidable race condition with that hyper can't work around here (or hyper is buggy)? Likewise, in the 'Proper divisors' task, when I un-commment .race, there are problems. Or am I just missing something here? --SqrtNegInf (talk) 16:03, 8 December 2018 (UTC)

Hmm. That's odd. They both work fine for me. After running them 100 times in a row, I've had no failures. I'm not on blead though, only on 2018.11 tagged release. Is it OS specific maybe? I'm using Linux Mint 19. --Thundergnat (talk) 18:11, 8 December 2018 (UTC)
Kind of went down the rabbit hole on this one... Stress-tested all of the RC tasks that use concurrency (mainly in an Ubuntu VM with the latest P6, but also Windows/2018.10). P6 performed pretty well (aside from sporadic crashes), always giving correct results except for 'Anti-primes'. So it doesn't appear to matter which OS or P6 version, in line with the race condition hypothesis. The best way I found to trigger is low free memory. Also, the story with 'Proper divisors' and .race: Always ended up with the right answer, but if you look at @candidates you see that it's different with each run. --SqrtNegInf (talk) 15:59, 11 January 2019 (UTC)
I still haven't seen a failure on my system running either of those. I may need to roll up a memory limited VM to see if it fails then. With 32GB of main memory I don't run into low memory situations very often.
I changed the hyper grep to use atomic-assign. That's the only place I can see where concurrency may be an issue. It continues to work flawlessly for me so I can't really judge if it helps or not. Maybe you could give the new code a try? If it is still a problem, I'll just remove the concurrency. It is fast enough without it. It's just nice to get the "free" speed-up. --Thundergnat (talk) 17:24, 12 January 2019 (UTC)
Using those revisions, and here's my experience on Linux: Under normal load 'Anti-primes' usually works when run as a foreground process, sometimes fails when run in the background. Under heavy system load, sometimes fails in the foreground, and almost always fails when run in the background. Specific details of my test setup, procedures and results in this gist.
It's probably worth submitting this as a bug, though I suspect it is going to be hard to trace. If it was using .race, well, with .race, you rolls your dice and you takes your chances... but .hyper is specced to always return items in the correct order; if it isn't, that's unspecced behaviour. --Thundergnat (talk) 14:32, 13 January 2019 (UTC)

Mayan numerals

Kudos on your   Perl 6   solution for drawing the cartouches for Mayan numerals.   A few people went the other way and used HTML tables (which construct grids),   and don't really draw a cartouche properly.   I was going to flag them as   needed improvement,   but I figured it was their best effort, and ya can't fault them for that.     -- Gerard Schildberger (talk) 23:08, 16 January 2019 (UTC)

Erm. Thanks? You are aware that the Perl 6 example is rendered in HTML tables? (Or was that meant to be sarcastic? It's hard to tell in text... ) Well, technically it's in wiki-table formatting, but that is rendered as HTML... At any rate, I tried to render it in a format that displays pretty much the same across many browsers. The ASCII gets horribly distorted, especially on android browsers. I do somewhat agree that the gridded table examples are less than awesome, but they do get the point across. --Thundergnat (talk) 23:34, 16 January 2019 (UTC)
No, I wasn't aware that it was HTML.   I saw the "style" but didn't realize it was an HTML "style"   (I just thought it was part of Perl).   In any case, it has a very "clean" look and does rendering of cartouches very nicely and no cluttering of grid lines and the like.     -- Gerard Schildberger (talk) 23:42, 16 January 2019 (UTC)
The grid lines are just the default wikitable style – easily switched off. I'll do that at some point – for the first draft I was more interested in the architecture than the lip-stick :-) Redundant high-contrast lines certainly do distract the eye – I don't know if you can fix the multiple redundant edge problem with those ascii borders ? I notice, incidentally that they explode into a kind of unintelligible chaos on hand-held browsers with small view windows – the HTML approaches (Thundergnat's is already exemplary) do at least flow and retain legibility. Hout (talk) 00:25, 17 January 2019 (UTC)
I wish I knew about how to turn off those grid lines when I was creating those colored boxes in the task's preamble for   magic squares.   I unsuccessfully tried all sorts of workarounds.     -- Gerard Schildberger (talk) 00:52, 17 January 2019 (UTC)
Also of note (well, maybe not that noteworthy ...).     I have noticed that the "square bullet"   the   'fe'x   on code page 437   (used by my Microsoft DOS windows)   doesn't render correctly on the browsers that I use for Rosetta Code for various places (areas).   Here (on Rosetta Code), it renders as a square block (full width) when editing (in the "edit" window).   Here are three of them:   ■■■.   (Not as high as a full block:   ███).   Note that the display of the square bullets displays incorrectly in the "editing" window (as square blocks), but displays differently (as a square bullet)   when rendered to the Rosetta Code page.   They also render incorrectly when used within the   <pre>   tag where they show up as square blocks.   there are probably other places where it renders differently/incorrectly).   Kinda weird.   That really defeats the purpose of using a preview window to, er, ... preview the text.   It should be noted that I haven't used all of the web browsers available.   Now-a-days, I'm restricted/limited to just two web browsers.   Also, quite of few other characters are treated summarily, such as the equivalent character (≡) for one   (an equal sign that has three lines).   Some extended ASCII characters   (not a huge list, but enough to make it a royal pain in the neckhole)   are really horribly mangled   (within the comments in my REXX programs when language (syntax) highlighting is enabled,   and makes quite of few characters in those comments almost unreadable/unrecognizable).   The three dithering characters are some more characters that are mangled, or SNAFUed).   That is why I asked for a way to turn off   language (syntax) highlighting   and someone eventually wrote a   custom JavaScript   (which I modified)   so that I could toggle it off and on (for any language entry that I choose). Now, me modifying JavaScript was quite the adventure into the Land of Oz   (while on acid).   By the way, can anybody look at someone else's   custom Java scripts?   I wish that kind of option would be available for everyone (without installing the custom script),   just finding the right place to install it wasn't a simple chore.   I wish there was a way to turn off italics for some programming languages when syntax highlighting REXX (and some other) languages   (at least for their comments).   Truly ugly italics.     -- Gerard Schildberger (talk) 00:52, 17 January 2019 (UTC)

eban numbers

You posted (for eban numbers) the output   (in part):

 eban numbers up to and including            one trillion: 134,456
 eban numbers up to and including            ten trillion: 134,456

why wouldn't   four trillion,   and   four trillion two   (and many others)   be counted?     -- Gerard Schildberger (talk) 23:29, 27 March 2019 (UTC)

Well... actually those are supposed to be t-ban numbers in that section, which won't count the trillions. I screwed up and left the e-ban description in all of the sections. Thanks for the heads-up. --Thundergnat (talk) 23:39, 27 March 2019 (UTC)

Extended BrainF*** (language and/or category)

Thank you for fixing my typo for Extended BrainF***.   Prior to that, I had noticed that it was not being reported in the languages file.

I tried to fix the problem with the idea that the embedded blank maybe should (or should not be) represented as an underbar (underscore).   However, the problem still doesn't appear to be fixed.   I believe it has to do with the underbar (either the presence or absence of one), but I don't want to muck up the problem even worse with multiple re-directs or whatever.   I'm sure it's something simple, but (as my typo suggests), it's most likely something I'm overlooking (or can't see).     -- Gerard Schildberger (talk) 18:35, 29 March 2019 (UTC)

I think it could be fixed by changing (once again) the re-direct page to point to the category:

              #REDIRECT [[:Category:Extended_BrainF***]]  

(which has an underbar).   But like I said, this may or may not work, and I don't want to mess it up further.   Perhaps an more knowledgeable person could address/fix this problem.     -- Gerard Schildberger (talk) 18:48, 29 March 2019 (UTC)

I didn't really look into it, I just fixed some obvious typos. Now that I have looked a little deeper, there was already a Category:Extended_BrainF*** page, it just needs to have a language block put on it. --Thundergnat (talk) 23:38, 29 March 2019 (UTC)
And, fixed. --Thundergnat (talk) 23:41, 29 March 2019 (UTC)
Ah, so that was the problem.   Tank qew fur fixin' dat.     -- Gerard Schildberger (talk) 23:51, 29 March 2019 (UTC)

Calculating Ramanujan's constant

Wouldn't you agree that Rosettacode needs yet another task based on number theory? Ramanujan draft task. Indirectly, I credit you for getting me started on this, as it was the Rat::Precise module that got me thinking... Any comments on the code appreciated; can you see any place where I'm doing more work than I need to? The main trick keeping the calculations in FatRat throughout. Is my task specification too minimal, i.e. it will leave people with questions? --SqrtNegInf (talk) 17:53, 19 April 2019 (UTC)

I kind-of like the number theroic tasks, as long as they aren't just a copy of another task with a tiny difference. "Find and print all the primes up to 1000... but right justified!" :eye-roll: I keep on thinking maybe I should look at porting the ntheory module to Perl 6, but then I look inside, look at my schedule and quietly put it away again.
This looks like a pretty cool task. It is interesting how much code it pulls in from other tasks, (and helped highlight some bugs in those examples.) I am amused that Ramanujan's constant was named by Martin Gardner as an April Fools prank. I tried rewriting a few of the subs to see if I could "improve" them but ended up about the same or worse. I do have a few suggestions. Added pull request to the repository. The only thing I see that may need clarification: you are asking for at least 32 digits of precision but only displaying 14. May want to either ask for less or display more. EDIT> (I would display more. See this gist for possible mods: ) <END EDIT I'd say go for it. --Thundergnat (talk) 12:57, 20 April 2019 (UTC)
All this is remarkably helpful. I knew there was an issue with '**' (in the debugger it would take minutes to step out of the function) but didn't know how to resolve. TIL, and turned out to be simplicity itself. And best of all, you found a typo that crept in (^5 vs ^d) that was crippling the precision of the π calculation–I definitely owe you a $beverage! Regarding 32/14: I guess I was phrasing it in a confusing manner, and everyone expects to be talking about number of values right of the decimal, so will go with that. And, yes, why not go with more precision. Will incorporate your suggestions, finalize, and add task soon. Regarding Gardner: Some nostalgia involved in this task, as I fell for the prank at the time. Had just starting subscribing to Sci.Am., and was but a callow youth...
Added the draft task... Regarding ntheory: I'd be happy if use ntheory:from<Perl5> worked reliably, but it's hit-and-miss in my experience so far. --SqrtNegInf (talk) 04:05, 25 April 2019 (UTC)

First perfect square in base N with N unique digits

you said " 25, # very slow" Win Calculator can't calculate these values, so i did online. My runtime is ~43 seconds

                 1011E109GHMMM  # 0 //Start value     dec:                 59705969332701822
     1023456789ABD5AHDHG370GC9  # 0 //Start value sqr dec:3564802773957530451841538362119684
     102345DOECKJ6GFB8LIAM7NH9     937.105.500 -> steps 

    42.851 s
3.7 Ghz -> 42.851/937105500*3.7e9= 169.2 cpu cycles per one complete number test
n-> n+1 => sqr(n) -> spr(n+1) -> examine digits

i think doing bigint base conversion takes much to long time.
I now have to include bigint, to find the start values.

For sure the base conversions are a time sink. The Perl 6 version checks ~1.5 - 2 million possibles per second; it needs to check through ~937 million to find the answer in base 25. So yeah, it's pretty slow. If raw, intensive processing speed is what you are after, Perl 6 is not there yet. (It's getting better and is still in development, but...) It's great for rapid, proof of concept stuff though, and is often "good enough". --Thundergnat (talk) 11:59, 26 May 2019 (UTC)
"If raw, intensive processing speed". See, that Chai Wah Wu on found solutions up to 28. I hope, i can check the solutions before christmas ;-) --Horst_h

Smarandache prime-digital sequence, et al

I tried added a few variations of   {{Category:Prime numbers))   but none seem to work.

Normally, I add a phrase to the task (or draft task) name:   {{draft task|Prime numbers}}
but it was already preempted with other text.

At this point, I'm not sure of which category name should be used for prime numbers, as there seems to be a mixture of 'em.     -- Gerard Schildberger (talk) 19:37, 31 May 2019 (UTC)

Yeah, I just replaced the bogus text in the task header with:   'Prime numbers'   'Prime Numbers'   to get it to categorize as a prime number task. In the interests of disclosure, I put that bogus text there in the first place, so mea culpa; though, to be fair, I just replaced other bogus text... but still. Fixed now. --Thundergnat (talk) 19:49, 31 May 2019 (UTC)
I just fixed a dozen or so category name for various prime number-type tasks.   There seems to be a few re-directed category names, but the re-direction(s) doesn't seem to work.     -- Gerard Schildberger (talk) 19:59, 31 May 2019 (UTC)

Vlang (language) assistance

The (language)   Vlang   could use some help defining itself as a language (category) on Rosetta Code, it's missing something.     -- Gerard Schildberger (talk) 14:08, 23 June 2019 (UTC)

I have no knowledge of Vlang so I don't know how much help I can be. I assume it is probably but that is a complete guess on my part. I can stub out the category page but you may be better off asking User:Rustem b to fill it in since they were the one who added the only Vlang entry and presumably know something about it. --Thundergnat (talk) 14:35, 23 June 2019 (UTC)
Thanks.   It was the   {{stub}}   that was missing.     I've also tried to contact   User:Rustem b   on his user talk page.     -- Gerard Schildberger (talk) 15:05, 23 June 2019 (UTC)

RE: Checkpoint synchronization

Thanks for the update. Actually I have no clue on securing a tidy/ordered output :-D if the duration is too short so I used longer values as a cover up. On the other hand, I came across this better solution, is it acceptable to post only the link as a solution? Thanks.


Please email me what you deleted. -- Shyam Has Your Anomaly Mitigated (talk) 12:22, 14 July 2019 (UTC)

Three points:
  • I don't have your email address. Nor do I want it.
  • I don't particularly feel inclined to help you out after you abusing the site.
  • What part of "deleted" did you not understand?
--Thundergnat (talk) 14:59, 14 July 2019 (UTC)

calculation of column widths for Stirling's numbers

Thanks for catching the error of (not) calculation of Stirling's numbers of the 3rd kind (or Lah's numbers).

I was up (not sleeping) a   lot   longer than I planned, and I was getting pretty punchy at the end of the day   (er   ···   late morning)   when I added the auto-calculation of the minimum column widths for the columnar output, and I neglected to calculate for column (when K=1) where that particular calculation was short-circuited specifically by using factorials (performed elsewhere in the code).   Obviously, I had overlooked the visual verification of the output.   I think I'm getting a bit long in the tooth to go on these coding marathons.   Any-a-ways, many thanks for spotting the error.     -- Gerard Schildberger (talk) 19:52, 16 August 2019 (UTC)

Not a problem, it was pretty obvious that it was a formatting problem, not a calculation problem as earlier code had the correct values, I just don't know enough REXX to be comfortable fixing it myself so flagged it for your attention. --Thundergnat (talk) 21:09, 16 August 2019 (UTC)

Cloudius' old tricks

Thundergnat,   please see my latest comment on (userid) Cloudius' discussion page, in regards to the entry:

== Scala entry was NOT erased. ==

  -- Gerard Schildberger (talk) 21:24, 22 August 2019 (UTC)

Cloudius is now (apparently) using the userid   OldManBuster   and saying that he's updating Scala and instead doing massive changes to the entire file.   At one point you had warned him of this type of behavior and said you'd roll-back this entire changes to a file that last time he did this.   This is in reference to the   Show ASCII table   RC task.   In addition, he has also marked a bunch of language entries incorrect in a random fashion for some languages that showed more than was required, and other languages that did the same thing weren't flagged.   I would roll back his entire set of changes, but I'm not about to start an edit war with Cloudius/Siskus/OldManBuster/his-latest-userid.     -- Gerard Schildberger (talk) 21:30, 2 September 2019 (UTC)

You may note that other users are nos   un-doing   some of the massive (global) edits by userid Cloudius/OldManBuster,   in particular the somewhat arbitrary (and erroneous) flagging of some of the language entries as   incorrect.     -- Gerard Schildberger (talk) 23:32, 2 September 2019 (UTC)

tank qew, n-smooth numbers

Thundergnat, thanks for fixing (adding) a section header for the REXX entry.   I was up way too long and I guess I'm getting too old to do an all-nighter plus a good part of the previous day and the next day to boot.   I was overlooking some pretty basic stuff, a language header for a programming solution, of all things.     -- Gerard Schildberger (talk) 01:50, 29 August 2019 (UTC)

No problem. It never pays to try to do complicated stuff when you're really tired. --Thundergnat (talk) 08:22, 29 August 2019 (UTC)
I think I was past tired.     -- Gerard Schildberger (talk) 23:33, 2 September 2019 (UTC)

de Bruijn sequences

Nice job on the de Bruijn sequences.   Your Pearl 6 code is   tight.

I wouldn't want to say how long it took me to get my REXX logic correct.

Sorry about the changing of the specifications.   I thought nobody would code up a solution that fast.   In any case, it doesn't matter if one adds something to a digit, or just replaces it with another (character).   I thought that adding unity to a digit would force programmers to then (only) use the right-most digit   (in case of a carry),   and it might slightly bloat the program with unnecessary logic,   if only by just one more statement or clause).   Any-a-ways,   I wasn't planning on flagging any solutions if addition was used for the replacement,   but the new specs are easier to understand and makes a shorter read of the task's preamble.     -- Gerard Schildberger (talk) 17:12, 1 September 2019 (UTC)

Not a real problem. I had opened the new task page just before I went out for several hours and whipped up a solution when I got back without checking for updates, so, my own fault really. --Thundergnat (talk) 21:04, 1 September 2019 (UTC)
As Perl 6 uses zero-based indices, I think this line:
$seq.substr-rw(4444,1) = '.';
should be:
$seq.substr-rw(4443,1) = '.';
which will mean that PIN 5814 is missing rather than 5914 (agreeing now with the REXX and Go solutions).--PureFox (talk) 18:05, 1 September 2019 (UTC)
It doesn't really matter as any solution (to the de Bruijn   would   be a valid sequence, but different   (as mentioned in the task's preamble, the number of "solutions" is quite large).   If however, you are constructing exactly the same   de Bruijn   sequence that is shown in the task's   discussion   page,   then that's a horse of a different color.   However, any digit in the sequence could've been used, but I didn't want someone finding a "fence post" anomaly, so I arbitrarily picked a snazzy location.   But you do raise a good point,   and I had forgotten that the   4,444th   digit may be interpreted as something different based on how some languages regard what (or where) the 1st character is versus the zeroth character.     -- Gerard Schildberger (talk) 18:20, 1 September 2019 (UTC)
<Purefox> Argh. You are correct, It should be 4443. I'll fix that. Thanks. --Thundergnat (talk) 21:05, 1 September 2019 (UTC)

Two questions about 'Stirling_numbers_of_the_second_kind'

Regarding the one-liner routine 'Stirling2': (1) What exactly were you smoking when you came up with that? and (2) Can I have some too? --SqrtNegInf (talk) 13:14, 28 September 2019 (UTC)

Nah. Much as I'd like to take credit for it, I cribbed it from Util from the Bell numbers task. My implementation is much more prosaic. --Thundergnat (talk) 13:39, 28 September 2019 (UTC)

Names_to_numbers flagged by RC-run

Just a heads-up: When I used your 'RC-run.p6' (up-to-date via git) to verify the recent Perl 6 update of 'Names_to_numbers' task, it flagged the code as broken, but when I ran the downloaded code directly it was fine. Not immediately clear to me what the issue is; being lazy, leaving the debugging to you... --SqrtNegInf (talk) 17:30, 26 November 2019 (UTC)

Sorry, distracted by real life. Yeah, that task was hard coded as being broken. Fixed in latest pushed to Github. (Delete line 324) --Thundergnat (talk) 12:40, 27 November 2019 (UTC)

your definition of vandalism?

Are you seeing something that I don't   (regarding the changes that I made to the Lah numbers task)?

Do you really think I intentionally did an edit that you considered vandalism?     -- Gerard Schildberger (talk) 16:34, 1 December 2019 (UTC)

Unnecessary insertion of non-breaking spaces; makes text look stilted and not flow nicely. Unnecessary enlargement of formula text. Overrides peoples setting and preferences. --Thundergnat (talk) 16:44, 1 December 2019 (UTC)
Oh my gawd!   And you call that vandalism?   Almost all changes to make things easier or better to read can be called unnecessary (especially if one has some ego or other kind of investment involved in it).   I'm not aware of whatever settings and/or preferences you are referring to are being overridden.   Sorry for trying to improve the task's readability.   I never heard that additional whitespace would harm the readability, same with enlarging a group of formulae.   But choosing to name the changes as vandalism is just plain wrong, you should know better than that.   I have no qualms if you differ in what one could call unnecessary or stilted (are you referring to italics?).   And I'm sorry for thinking that this is a site were words aren't chosen more carefully.   This is what I meant about (not) being civil.   I won't try to improve your prose in the future.   Also, please try to use words like other people use them (or as defined in a dictionary):   vandalism is the action involving deliberate destruction of or damage to public or private property.   My actions didn't deliberately destroy or cause deliberate damage, it was my intent to improve, not destruct.     -- Gerard Schildberger (talk) 17:31, 1 December 2019 (UTC)
Intent seldom has much bearing on effect – I do remember having to clear up over fifty tasks after a spate of opinionated white-space work had left many formulae completely invisible to most browsers.
Impeccable nobility of intention didn't make the formulae any more visible to puzzled users.
Two problems with non-essential white space engineering 1. It's real impact on readability and appeal varies with the reader (not to mention the browser) 2. There has been a track-record of significant damage from interventions of this kind, which others had to clear up.
Perhaps just better to skip it ? Hout (talk) 23:35, 1 December 2019 (UTC)
These things are best handled by template defaults, and by prior discussion of any changes to those defaults that might be suggested. Don't execute the prisoner before consulting the emperor. Hout (talk) 00:01, 2 December 2019 (UTC)

Salute with million thanks

That is a herculean task and I hope you will have some good rest after everything is settled. Btw would you consider blogging about the whole journey? --Hkdtam (talk) 03:59, 15 March 2020 (UTC)

Thanks, it was a slog. I did automate most of it, but still kept some manual control to keep things from running amok if my scripts didn't anticipate some bizarre formatting. (And a few things slipped through anyway and needed to be cleaned up. Ah well.) I hadn't really thought about writing about the process, perhaps I should. --Thundergnat (talk) 11:12, 15 March 2020 (UTC)
Kudos on the renaming project overall, but especially to code that worked right the first time, an inspiration to all programmers... And commiseration regarding RC's spell-check/auto-correct, which repeatedly insists on inventing this new 'Rake' language for me as well. Can that feature be burned with fire, boiled in bleach, have a stake drive through it's heart, or otherwise be disabled?
A more practical issue: Am I confusing the 'next step' with my scatter-shot updates for the remaining 'Perl 6' links and mentions. Should I stick to an alphabetic range or something like that? --SqrtNegInf (talk) 00:59, 17 March 2020 (UTC)

code that worked right the first time

A-HA-HA-HA! Ha ha, ha... sorry. Yeah, (glances around shiftily,) it worked right the first time. As projects that involved though, I am fairly pleased with how smoothly it went. The thing that really caught me by surprise was tasks with multiple entries for the same language, each with their own header, in different places in the page. For some reason Forth was good for that. I had to go back and hastily rewrite some of the block detection/re-alphabetize code on the fly to compensate for that.
In retrospect I probably should have written in some logic to do the link and comment rename at the same time but was very leery of trying to take on too much at once and making a real mess of it. I don't really have a specific plan going forward for the remaining clean-up. I am actually quite grateful that you have stepped in and started chipping away at it. You are not interfering with any plan or hurting my feelings at all. --Thundergnat (talk) 10:18, 17 March 2020 (UTC)
Well, for certain values of 'first' anyway... Will continue to grind through the tasks, goes pretty fast.

Golfing down that lazy list issue...

For GH3570 I put in minimal bit of code golfed down from the Kolakoski sequence task that didn't do anything useful; it was maybe too small. I will weigh in on the issue later today, but probably after the Europeans are asleep... If you can cook up a tight/focused example showing the DWIM-ery of this 'phrasing' of lazy-list construction, might be motivating for the Raku-language hackers? --SqrtNegInf (talk) 18:47, 26 March 2020 (UTC)

I think I found a repeatable golf that would cause what you are seeing.
   my @wat = lazy flat [2,3,4], 10,11 .. *; say @wat[^5]; # (2 3 4 10 11) Good
   my @wat = lazy flat [2,3,4], 10,11 ... *; say @wat[^5]; # ([2 3 4] 10 11 12 13) Bad
Left a comment on #3570 --Thundergnat (talk) 22:24, 26 March 2020 (UTC)
Much belated thanks for the solid analysis, and a toast to weird edge cases! --SqrtNegInf (talk) 14:55, 7 April 2020 (UTC)
NP. Thanks for your behind-the-scenes work that found the problem before it made it into a release. --Thundergnat (talk) 21:55, 7 April 2020 (UTC)

bug in longest palindromic substrings

Can you check your entry in Longest_palindromic_substrings#Raku against an input of "abbbc". My translation of your code yielded "bb", not "bbb". The fix is pretty simple, rev needs to be attempted with both 0 (always) and optionally 1. --Pete Lomax (talk) 15:07, 2 October 2020 (UTC)

Ah! Good catch! I'll fix that up. Changes the results from 1e6 digit of pi slightly too. Thanks! --Thundergnat (talk) 17:25, 2 October 2020 (UTC)


You're not the only person who's noticed that many of these new "tasks" are just trivial variations on the same theme. It probably would be a good idea to scale them back a bit. When I've solved them I have tried to go for a different approach each time, but even I am getting sick of this prime-digit spam. Cheers, Thebigh (talk) 08:22, 5 December 2020 (UTC)

Task deletions

The speed of a deletion caughtr me, and someone else out. We didn't get time to discuss it before it was gone. --Paddy3118 (talk) 17:51, 8 December 2020 (UTC)

Calmosoft has a history of dumping tasks on here that are poorly named, poorly specified, and completely abandoned after he dumps it. Pretty much every task he has ever added has been that way, and would have stayed that way if someone hadn't stepped up to clean it up after the fact. He doesn't respond to questions, he doesn't respond to criticism. He has been temporarily banned (more than once) in the past for blatant plagiarism so he's already pushing his luck.
He has now latched upon word list filtering and has vomited out nearly a dozen tiny variations in the past week or so. I'm tired of it. We don't need a that many tasks that are all "Find words from this specific list that have this particular substring in them", especially ones of such low quality. I've been charged with the task of being the janitor for the site. My main job is cleaning up spam. Well IMO, this is just more spam. --Thundergnat (talk) 18:27, 8 December 2020 (UTC)

If Calmosoft is a "serial dumper" then he is causing distress and confusion amongst the community and should be stopped.
I have just read CalmoSoft's talk page and think that maybe it is time to politely ask them, CalmoSoft, to leave the site as there interactions are hurting the community? Or maybe just ask tell them not to submit any new tasks on pain of ...
At least yourself, Gerard, and myself are stressed, and have been stressed in the past by the actions of CalmoSoft, for a number of years. I agree, CalmoSoft needs to stop his actions or asked to leave. --Paddy3118 (talk) 10:54, 9 December 2020 (UTC)

haste makes waste

Sorry for the negligent mistakes and thanks for the clean up. I took a shortcut by copying from a previous entry and started doing all the editing within the textbox, next time I put together a full entry locally first. --Hkdtam (talk) 20:09, 5 January 2021 (UTC)

Easy to do, simple fix, not a problem --Thundergnat (talk) 01:23, 6 January 2021 (UTC)

Use of 'hyper' fails in 'Palindromic gapful numbers' task?

Specifically this bit: I'm not getting this to work in the most up-to-date Raku, nor in the 2019.11 release. I attempted to run the task in RakuPlay with the 2020.02 release, but it doesn't seem to be working right now (though you try checking the queue later today). In any case, maybe have a look to see if something has gone south? --SqrtNegInf (talk) 23:06, 8 January 2021 (UTC)

Hmm. Seems like another weird one where it is dependent on system load. I can run it 20 time in a row on my system (2020.12, 2020.10) and it doesn't fail. I haven't been running blead so I can't comment on that. On it seems to work ok though it's pretty old 2018.12. (Meh commented out)
If I load my system down though, I start to get sporadic failures. And fails reliably (2020.06) I'll fiddle around and see what I can come up with. It'd be a shame to have to remove the concurrency, it pretty much doubles the execution speed for me. --Thundergnat (talk) 00:36, 9 January 2021 (UTC)
Another data point: On a recent Ubuntu, using 'blead', I could not force it fail no matter how stressed the system was (memory/CPU). As demonstration code I think it's fine as is. Raku is still a moving target, and since we cannot control or anticipate all the version/system combos out there, err on the side of being idealistic; it will all work out in the next 100 years or so... Should Space X use Raku for avionics right now? No. (and I will so advise next time Mr. Musk calls me for advice). --SqrtNegInf (talk) 18:25, 9 January 2021 (UTC)

War card game task

A large part of your Raku entry seems to have ended up in the middle of the code for the Wren entry. As I'm not entirely sure how the parts of the Raku entry fit together, I thought it best to leave it to you to disentangle it. --PureFox (talk) 23:02, 12 January 2021 (UTC)

Argh. I'll fix that. --Thundergnat (talk) 23:07, 12 January 2021 (UTC)

About that MONKEY...

In tasks where EVAL is just used in passing, should the MONKEY pragma be present, or is it just a distraction? Most (all?) tasks could be re-written using the .EVAL suffix form. Naturally, given the varied authors, there's no consistency among tasks, e.g. Truth table vs Peaceful_chess_queen_armies. I can't recall if I've changed my mind on this an even or odd number of times; would you care to weigh in? Note: I would leave Runtime_evaluation and Runtime_evaluation/In_an_environment as-is, for there the the security implications of the pragma ought to be mentioned. --SqrtNegInf (talk) 13:29, 13 January 2021 (UTC)

I am ambivalent about changing it. I somewhat expect that at some point in the future, .EVAL without a pragma is going to go away. Really it seems like an oversight that it works now, and it doesn't really hurt anything to leave extra pragmas in. It is kind of odd that the sub form requires the pragma but method form doesn't. --Thundergnat (talk) 21:32, 17 January 2021 (UTC)

LiveCode v. Livecode

Should Category:Livecode be a redirect to Category:LiveCode?
--GarveyPatrickD (talk) 18:42, 26 May 2021 (UTC)

Sounds reasonable, though I don't know much about either. --Thundergnat (talk) 20:58, 26 May 2021 (UTC)
That confuses me. The complete History of Category:Livecode is that you created the stub. Why did you do that if you didn't know much about the language?
--GarveyPatrickD (talk) 21:09, 26 May 2021 (UTC)
Probably because around that time, somebody started adding tasks to the site attributed to Livecode... which didn't have a language stub. Not knowing anything about Livecode or LiveCode, I added a stub for Livecode. Should I have investigated more first? Maybe. But since it is a wiki that anyone knowledgable can go in and edit, I figured that if it was completely wrong, it would get fixed eventually. Having languages with no category caused me problems with some of the reporting tools I use, I just took the path of least resistance and assumed that the person who knew enough to add an example, knew how the language was spelled. (Better than me at any rate.) --Thundergnat (talk) 21:17, 26 May 2021 (UTC)
Thank you for the explanation. As of the date of this discussion, there are 130 tasks listed under Category:LiveCode and zero listed under Category:Livecode. I am going to redirect Category:Livecode to Category:LiveCode.
--GarveyPatrickD (talk) 21:33, 26 May 2021 (UTC)

Clever stuff, but...

Can you check your entry for the latest count part of Base-16_representation#Raku with inputs of 9, 16, 5000 - anything without a-f crashed when I tried it on replit. --Pete Lomax (talk) 04:46, 23 June 2021 (UTC)

Hmm. That's odd. It works locally for me, (though to be fair, it does complain about an undefined value). Most likely the Raku version on replit is just really old. I will suppress the warning, but can't really do much about 3rd party installed versions. --Thundergnat (talk) 10:40, 23 June 2021 (UTC)
My bad, yes it was just a warning "Use of uninitialized value $i of type Any in string context." and I wasn't reading past that. --12:28, 23 June 2021 (UTC)

Mathematica/Wolfram Language

Hi, just saw your message. There is a difference between Wolfram Language and Mathematica. The former is the programming language, and Mathematica implements it with a front-end. I would consider the kernel of Mathematica (the Wolfram kernel) the thing that implements the Wolfram Language. So many visual things are harder in Wolfram Language as that is where Mathematica is used to visualize those. Of course the kernel can rasterize visualizations and then export them (rather than displaying them). So question dialogs and so on are perhaps harder in the Wolfram Language than in the Mathematica. Though one could argue that that is also part of the Wolfram language. So in that respect, most implementation will be very similar or the same. I guess it is comparable with Octave and Matlab in many cases. I will check that the headers from hereon stay uniform. To add: There used to be only a Mathematica language, but at some point someone added Wolfram Language which I was a bit skeptical about since the very large overlap…

Can I freely make use of the problems elsewhere?

"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."
--CalmoSoft (talk) 13:45, 6 September 2021 (UTC)

Just because they allow it, does not mean we do. I refer you to the discussion at Talk:Pandigital_prime. Might I suggest that your time might be better spent solving some of the 650 or so tasks not implemented in Ring than in adding poorly specced, poorly worded, poorly titled, or just plain plagiarized tasks to the site? --Thundergnat (talk) 14:37, 6 September 2021 (UTC)
You are right. I stop reuse problems from Project Euler.--CalmoSoft (talk) 14:46, 6 September 2021 (UTC)

Automated syntax highlighting fixup

I will continue with the syntax highlighting fixup tomorrow, (August 26) starting probably around 16:00 server time. If you want to help by updating some pages, please do it systematically. Preferably starting at/near the end of the task list. Random, piecemeal updates will not reduce the amount of work I will need to do. (My process is 95% automated but needs hands on monitoring because the site is so dreadfully slow, and keeps throwing 502 and 503 errors.) :-( --Thundergnat (talk) 02:06, 26 August 2022 (UTC)

Well that was a long tedious slog but have completed a first pass through (nearly) all of the tasks. (Skipped Rosetta Code/Fix code tags and Rosetta Code/Find bare lang tags as they will not take kindly to auto-reformatting.) Still lots of stuff needs tidying. Rosetta Code/Fix code tags is going to need lots of manual tweaking that I don't have the patience for right now. All of the sub pages for tasks like Go Fish, Hunt the Wumpus, and such still need attention. I'm going to need to do a second pass through the first 100 or so tasks to catch things that later versions of the fixup script was modified to pick up. Not today though. I am heartily sick of it for the moment.

Not going to run my reports this weekend either. Going to need to go in and tweak them to recognize the new markup and I've had quite enough computer time over the last three days thank you very much, so it ain't happenin' tonight. --Thundergnat (talk) 22:00, 28 August 2022 (UTC)

Well, I for one was horrified at the prospect of changing all the 'lang' tags for Wren alone, so a big thank you for automating that :) I tried doing a couple myself but it takes ages to do them manually and even then I managed to get them wrong by not lower-casing the language names and placing quotes around them which I see from the Pygments docs is what you're meant to do. :(

--PureFox (talk) 12:58, 29 August 2022 (UTC)

You aren't wrong. Manual fixup would have taken an insane amount of time. And would probably introduce nearly as many errors as it fixed. I wish I could have gotten console access to the server. I could have done it all in less than a minute (though I probably would have done a lot more debugging before hand.) --Thundergnat (talk) 22:32, 29 August 2022 (UTC)

Still have another 50 or so tasks to do a second pass on. Some of the latest fixup mods won't get done to later tasks but they aren't as critical. More for aesthetics than error correction. --Thundergnat (talk) 22:32, 29 August 2022 (UTC)

Let me know if there's anything I can do to help. For what it's worth, see here (GitHub) for my own attempt at finding legacy or broken highlighting tags, and here (Google docs) for an example output. I stopped short of automating page edits when I saw you were making progress. All the best --Jgrprior (talk) 07:37, 30 August 2022 (UTC)
The next problem is fixing up the task sub-pages. These will usually (though not exclusively) have been created for games requiring a lot of code (by RC standards) where the author hasn't wanted to bulk up the main page. A manual approach is feasible here as there aren't too many of them but I've started from the back of the task list so as not to clash with any automated script which Thundergnat may come up with. --PureFox (talk) 11:19, 30 August 2022 (UTC)
May have spoken too soon. The RCRPG task has 29 sub-pages :( --PureFox (talk) 13:14, 30 August 2022 (UTC)
Something's gone seriously wrong with the fix-up for the Brownian Tree task where everything after the Go entry (which itself is incomplete) has been wiped out. Suggest undo and then try it again. --PureFox (talk) 21:23, 30 August 2022 (UTC)
Indeed. I totally screwed that one. Ah well. One click revert and try again. Thanks for the heads-up. And thanks for taking on the sub pages. I was going to need to revise my script to hunt them down but it seems like you are making short work of them. --Thundergnat (talk) 22:29, 30 August 2022 (UTC)
Yeah, not doing too bad with the sub-pages though I've had to guess which tasks may have them as it would take too long to open every one and scan them for candidates. Have had enough for today but will try and find time to finish the rest tomorrow. --PureFox (talk) 23:01, 30 August 2022 (UTC)

OK. I believe I have finished doing bulk highlighting fixup. There are still lots of places that are going to need attention, but they are mostly small, isolated cases that I (or someone) can hunt down and fix piecemeal. Doesn't hurt my feelings much as I am pretty sick of the bulk edits. --Thundergnat (talk) 23:13, 30 August 2022 (UTC)

Phew, nearly finished the sub-pages thank goodness. Just the 99 Bottles of Beer/Basic sub-page to do which is a bit of a mess but I'll try and sort it out tomorrow. --PureFox (talk) 21:20, 1 September 2022 (UTC)
Wow, 99 Bottles of Beer/Basic is kind of a mess. I'll take a shot at it. Not sure what is going on with 99_Bottles_of_Beer/Basic#MoreD_RconUcurrentNK, I think it's intentional. Kind of a joke entry, I guess. Or maybe not, it's hard to tell. Thanks again for taking on the sub pages. I would have gotten to it eventually but I'm quite grateful that I didn't need to. --Thundergnat (talk) 21:40, 1 September 2022 (UTC)
Thanks for dealing with the syntax highlighting aspect of 99 Bottles of Beer/Basic. I've just tidied things up a bit by getting the entries into alphabetic order and making sure the stubs in the main page and the entries in the sub-page align with each other.
I've also dealt with the duplicate headers (a recurring theme with the sub-pages) which were causing the tasks to be shown twice in each language's task stats. --PureFox (talk) 09:30, 2 September 2022 (UTC)
BTW, I had a look at the garbled header and I think you're right that it was intended as a joke as the word 'DRUNK' seems to be interspersed with 'More concurrent'. The code makes some sense in the latter context as Thread.sleep(0), which yields to a higher priority thread, is being interspersed with Parallel.for though whether this achieves much here is debatable. I've just changed the header to 'More concurrent' and left it for folks to judge for themselves. --PureFox (talk) 11:12, 2 September 2022 (UTC)

Page content substitution during 'syntax highlighting fixup'

Somehow the 'syntax highlighting fixup' of Roots_of_a_quadratic_function ended up replacing the page with the contents of the similarly named Roots_of_a_function. Probably not a big deal for you to revert and re-apply the syntax fix? Have not see any other instances of this behavior, but they could be lurking... --SqrtNegInf (talk) 23:39, 7 December 2022 (UTC)

Argh. I totally cocked that one up didn't I. 🙄 Ah well, easy fix since nothing has been added since I did it. Good catch. Thanks. --Thundergnat (talk) 01:13, 8 December 2022 (UTC)

Problem with unimpl_Page template

As you understand this stuff as well as anybody, can you think of any reason why the 'Tasks not implemented pages' for Phix, Wren, Julia, Raku and several others (see here) are showing the Take notes on the command line task as not being done when it has in fact been done by all these languages?

I can't see anything strange about this particular task myself. --PureFox (talk) 11:55, 15 April 2023 (UTC)

Actually the problem is worse than I thought as the page for C is showing numerous simple tasks (Array length, Arrays etc) as not being done when, of course, they have been. --PureFox (talk) 12:10, 15 April 2023 (UTC)

Unfortunately I am not very familiar with the inner workings of the Module:Unimplemented code. There is some documentation at Module:Unimplemented/doc but it seems to be a broad overview kind of thing rather than gritty details.
Module:Unimplemented was something written and contributed by Jgrprior, looks like it is written in... umm... Lua? maybe?, which is not my strong point, you may be better off asking Jgrprior directly.
Honestly, I rarely look at the "Unimplemented" pages. The Rosetta Code/Count examples/Full list report I generate has the same information (for the top 40 languages), and I trust it more. ¯\_(ツ)_/¯ --Thundergnat (talk) 15:56, 15 April 2023 (UTC)
Hi. There was indeed a bug in that Lua script. And SMW data seemed to be out of sync with Take notes on the command line, something the troubleshooting page describes.
For what it's worth, I have little faith in Module:Unimplemented. It does not seem like a good, long term solution. --Jgrprior (talk) 18:18, 15 April 2023 (UTC)
I'm grateful to you for the quick fix which does at least seem to have resolved the problems highlighted above.
Even if issues emerge from time to time, I still think it's a helpful tool - particularly for those using languages outside the top 40 - to pick out tasks which still need to be done. The loss of this functionality was an unfortunate consequence of the migration to Miraheze so many thanks for writing it :) --PureFox (talk) 18:58, 15 April 2023 (UTC)

Am I allowed to create a transcluding template ?

Hi Thundergnat.

I am the creator of the Fōrmulæ language and the editor of tasks implementations written in it. Because it is a visual programming language there is no source code as text (well, there actually is, for storing and transportation of programs using xml, but it is not intended to be read by humans, which is the purpose of the Rosetta Code site), the contributions are just links where the programs and their results are shown.

I have done a major improvement of the site, now the programs can be run and modified online, in order that the user can play with different inputs. The website and the URLs remain the same.

Now I have to change the text of each of the 169 implementations of tasks, because they refer to the previous functionality. What I should have done from the beginning is to create a (mediawiki) transcluding template, so if it were necessary to change the text in the future, it would be necessary to change only the template.

In addition to the above, I have another 53 implementations that I want to contribute, so the template could be very useful.

Am I allowed to create such that template ?

Thanks in advance

Laurence. 22:09, 3 June 2023 (UTC

Hi Laurence, Yes, you are certainly allowed to create a template. In general, people have pretty free reign as long as it is contributing to/improving the site. If you want to transclude content from a third party site, you will need intervention from a Miraheze steward, and likely permission from Mike Mol. Best way to contact them is probably through the Discord channel. I don't think either is on the site regularly.
Might be worth contacting Rdm, as he got the J wiki trancluded. He may have a better (more thorough) understanding of the necessary steps. Again, seems like he is often on Discord. I am no longer an admin, so can't help you much directly. Good luck! --Thundergnat (talk) 11:37, 4 June 2023 (UTC)
Thanks a lot. It works like a charm. Laurence (talk) 02:39, 5 June 2023 (UTC)

Deprecated tasks

I noticed today that we have a page for Loop structures which apparently used to be a task but no longer is even though people are still adding language entries to it.

An interesting aspect (to me at least) is that it's marked with a {{DeprecatedTask}} template which I hadn't come across before.

I was wondering whether the scripts you use for your weekly stats can either detect this already or could be made to do so, thereby excluding such former tasks from the analysis even though they have language headers? If so, it would be an easy solution to the problem of making something into a non-task without messing up the stats. --PureFox (talk) 10:22, 21 July 2023 (UTC)

Not something I've looked at before. If pages with the {{DeprecatedTask}} don't show up in a languages' "tasks completed" page, it should be relatively easy to add that capability. later, after some investigation... Huh. That might be doable. Oddly enough, if a language has more than one page of "completed tasks", then Loop structures "task" doesn't show up. If there is one page only, it does. So that might be a workable solution. It will throw off counts for languages with less than 15% completion (where the absolute completion rate doesn't really matter much) but would allow more accurate reporting for languages at or near 100%. I'll have to investigate more thoroughly. --Thundergnat (talk) 14:16, 21 July 2023 (UTC)

Missing tasks since the host move

There are some 185 tasks that no longer show up in the Category:Programming_Tasks list since the move to WikiTide. I suspect that each will need to be visited and a minor edit saved to get them to show up in the task list again. In the mean time, it is buggering up my weekly reports pretty severely, so take them with a grain of salt for now.

Accumulator factory
Active object
Animate a pendulum
Append a record to the end of a text file
Arena storage pool
Array concatenation
Associative array/Iteration
Atomic updates
Averages/Root mean square
Averages/Simple moving average
Binary strings
Bitmap/Flood fill
Bitmap/Read a PPM file
Bitmap/Read an image through a pipe
Bitwise IO
Boolean values
Break OO privacy
Bulls and cows
Call a foreign-language function
Call a function in a shared library
Character codes
Check if two polygons overlap
Checkpoint synchronization
Closest-pair problem
Color of a screen pixel
Color wheel
Count occurrences of a substring
Create an object at a given address
Cumulative standard deviation
Date manipulation
Detect division by zero
Determine if only one instance is running
Digital root
Dining philosophers
Distributed programming
Doubly-linked list/Definition
Doubly-linked list/Traversal
Dragon curve
Dynamic variable names
Echo server
EKG sequence convergence
Environment variables
Ethiopian multiplication
Evolutionary algorithm
Exceptions/Catch an exception thrown in a nested call
Factors of an integer
First-class functions/Use numbers analogously
First-class functions
Flatten a list
Flipping bits game
Four bit adder
Fractal tree
Gamma function
Generic swap
Go Fish
Gray code
Grayscale image
Hailstone sequence
Hamming numbers
Handle a signal
Happy numbers
Hello world/Standard error
Hough transform
Huffman coding
I before E except after C
Image noise
Interactive programming (repl)
Inverted index
Keyboard macros
Knuth shuffle
Law of cosines - triples
Long multiplication
Longest common subsequence
Loop over multiple arrays simultaneously
Loops/For with a specified step
Lychrel numbers
Matrix-exponentiation operator
Median filter
Memory allocation
Miller–Rabin primality test
Mouse position
Multiple distinct objects
Multiple regression
Multiplication tables
Mutual recursion
Named parameters
Next highest int from digits
Non-decimal radices/Convert
Non-decimal radices/Input
Non-decimal radices/Output
N-queens problem
Nth root
Numerical integration
Optional parameters
Palindrome detection
Parameterized SQL statement
Parse an IP Address
Play recorded sounds
Pointers and references
Polymorphic copy
Polynomial long division
Primes - allocate descendants to their ancestors
Rate counter
Ray-casting algorithm
Read entire file
Real constants and functions
Reduced row echelon form
Repeat a string
Respond to an unknown method call
Rosetta Code/Count examples
Rosetta Code/Find unimplemented tasks
Rosetta Code/Fix code tags
Rosetta Code/Rank languages by popularity
Run-length encoding
Runtime evaluation/In an environment
Runtime evaluation
Safe addition
Sailors, coconuts and a monkey problem
Scope modifiers
Send email
Set right-adjacent bits
Seven-sided dice from five-sided dice
Simulate input/Keyboard
Simulate input/Mouse
Sort disjoint sublist
Sort stability
Sorting algorithms/Counting sort
Sorting algorithms/Gnome sort
Sorting algorithms/Heapsort
Sorting algorithms/Quicksort
Sorting algorithms/Stooge sort
Speech synthesis
Stack traces
Stair-climbing puzzle
Stem-and-leaf plot
String concatenation
Strip block comments
Sum of a series
Superpermutation minimisation
Symmetric difference
Terminal control/Ringing the terminal bell
Test a function
The Name Game
Topological sort
Tree traversal
Trigonometric functions
Undefined values
Use another language to call a function
User input/Graphical
Vector products
Verify distribution uniformity/Chi-squared test
Verify distribution uniformity/Naive
Walk a directory/Recursively
Window management
Xiaolin Wu's line algorithm
Y combinator<-Fixed
Yahoo! search interface<-Fixed
I don't have the energy or ambition to go through them all tonight. --Thundergnat (talk) 21:29, 20 August 2023 (UTC)

Just tested with the "Y" tasks. All that needs to be done is to "edit" the page, make no change and save it. It won't show up in the recent changes page but will once again be indexed by the Tasks list. --Thundergnat (talk) 21:36, 20 August 2023 (UTC)
A-X done. By my calcs there are now 11 missing. --Petelomax (talk) 00:33, 21 August 2023 (UTC)
According to last week's reports (before the switch to WikiTide), there were a total of 1648 tasks and draft tasks. One has been added since (JSON pointer) so we should now have a total of 1649.
As I write this, there are 1232 (full) + 415 (draft) = 1647 tasks showing up so we're now missing two.
However, the Phix and Wren pages, which should have 100% coverage, are showing 1638 tasks completed - a shortfall of 11. There seems to be some background process going on which is gradually increasing these numbers - they were only 200 odd just after the switch - so it might be that they'll eventually correct themselves.
I see that the MediaWiki version is now 1.40 (I think it was 1.39 or so before) which might account for some things no longer working. However, the Pygments version is still stuck at 2.11.2 (the latest version is 2.16.1) but I don't know whether it's the host or Mike Mol who decides which version to use. --PureFox (talk) 08:07, 21 August 2023 (UTC)
Miraheze was at Mediawiki version 1.38.2 ( I specifically made a note of it here. ) Which has been end-of-lifed. I'm not sure why the syntaxhighlight module is not upgraded. Looks like it has a release for 1.40 that has updated pygments 2.11 -> 2.15 and 2.15 -> 2.16. Unfortunately, the Phix highlighting lexer was added to Pygments 2.14. (and also Wren). I'm not sure if the syntaxhighlight module can be upgraded independently. It may be worth asking one of the stewards (User:Agent Isai‎?) on Discord though. --Thundergnat (talk) 11:21, 21 August 2023 (UTC)
Thanks for that info. I'm not on Discord (or particularly want to be) so I think I might let sleeping dogs lie re SH for now. Although I wrote the Pygments lexer for Wren, I'm in two minds whether to use it anyway as the Ecmascript lexer (or Python lexer if there are any 'raw' strings) which I currently use is fine 95% of the time and the thought of updating all 1600+ tasks horrifies me. Pete's problem is even worse! --PureFox (talk) 16:28, 21 August 2023 (UTC)
Ah yes indeed, w/o automation that'd probably be a total (not in one hit) of around 32 hours of mindless copy/edit/paste/save I'll not get back! Then again I often suspect the entire reason I wrote Phix in the first place was to create a rod for my own back, and even 10/week over 3 years would be no skin off my nose, so bring it on! --Petelomax (talk) 17:43, 21 August 2023 (UTC)
The current number of draft tasks (415) looks to be right. There were 415 last week, one has been promoted to a 'full' task and there's one new one. So there must be a couple of 'full' tasks missing as there were 1233 last week + 1 = 1234 but only showing 1232. --PureFox (talk) 09:24, 21 August 2023 (UTC)
I've found one of the missing ones - 24 game/Solve - and fixed it. --PureFox (talk) 10:05, 21 August 2023 (UTC)
Found the other one now which is Execute HQ9+. Phix and Wren now showing 1640 tasks completed so still another nine to go. --PureFox (talk) 10:25, 21 August 2023 (UTC)
Thanks for your (and Petes!) investigations and fixes. My list above was a real quick-n-dirty one off while I was tired and more than a little inebriated. When I have time, I plan to investigate more carefully, but am quite grateful for all the efforts you have put in. Thanks! --Thundergnat (talk) 10:38, 21 August 2023 (UTC)
No problem. It turned out that the Phix and Wren tasks lists were missing 6 of the Bitmap sub-tasks. I've fixed those - needed to solve captchas for two of them - so there's just now three missing. --PureFox (talk) 11:06, 21 August 2023 (UTC)
These three? Day of the week, Factors of a Mersenne number, Numbers divisible by their individual digits, but not by the product of their digit.. --Jgrprior (talk) 11:11, 21 August 2023 (UTC)
Thanks, that's found two more. The third one is a draft task and I think it must have there before (though forgot to check first) as both pages now showing 1648 tasks completed - so still one short. --PureFox (talk) 11:37, 21 August 2023 (UTC)
I poked Bitmap/Bresenham's line algorithm again. Counts look good to me now. --Jgrprior (talk) 13:57, 21 August 2023 (UTC)
Yeah, sorry, I think I must have missed that one before. But never mind, it all ties in now :) --PureFox (talk) 15:51, 21 August 2023 (UTC)

Missing languages since the host move

Hi, great work on the tasks. I prodded the languages (as suggested above for the tasks) that were in the Rank languages by popularity/Full list before the move but not after. The Programming languages category now shows 915 compared to 916 on the previous Full list page - I think the difference is due to Motoko and TIS-100 which don't have Category: pages (also, the Evaldraw language was added last week), so I think the languages are OK now as well. --Tigerofdarkness (talk) 21:04, 21 August 2023 (UTC)

Ah! Many thanks! That was on my todo list for this evening but I wasn't particularly looking forward to it. Now I don't have to. Awesome! --Thundergnat (talk) 22:16, 21 August 2023 (UTC)

Digital root (<math>)

Digital_root has gone squiffy, seems it don't like <math> no more, see and next revision on/diff from that. Ditto Multifactorial, Polynomial_long_division, Real_constants_and_functions, etc. --Petelomax (talk) 01:02, 21 August 2023 (UTC)

Yeah, there are a few things that need tweaking from the move yet. Special:MathStatus is not where it should be. The oeis:OEIS interwiki links aren't working, There are around 100 languages that disappeared from the Category:Programming_Languages page, a bunch of missing tasks (mostly fixed). Sigh. We'll get there. --Thundergnat (talk) 10:47, 21 August 2023 (UTC)
That seems all better now. --Petelomax (talk) 20:55, 3 September 2023 (UTC)

Server's certificate

Hi Thundergnat, are you the correct person to address this? When accessing RC I get the following error message:

Restricted Site
Access to this site has been restricted by the web content filter

The web filter is configured to not allow access to this site as its content has been detected as being in breach of the filtering policy.

If you have a legitimate reason for accessing a blocked internet site, please contact the local administrator to discuss.

Reason:	The server's certificate did not match the domain name

I've always used is this still legitimate? I can access "". Does or should RC's server's certificate match its domain name or is the filter wrong?--Nigel Galloway (talk) 12:30, 22 August 2023 (UTC)

I am not really the correct contact for that kind of thing. Probably would need to contact Agent Isai (WikiTide steward) or Mike Mol (site owner, though he hasn't been on-site for a while). It does seem like the www. prefix is no longer valid. When I try to go to, it rewrites it to, and that just goes to a WikiTide front page rather than here. It may be worth asking a steward if that could be modified. Sorry. No good answer. --Thundergnat (talk) 15:32, 22 August 2023 (UTC)
I got a similar invalid name error, since reload a WikiForge page, methinks a simple mixup... --Petelomax (talk) 12:58, 22 August 2023 (UTC)
Nigel: I contacted the stewards about the problem and asked them to add a redirect, which they did. now works as expected for me. (Well, it gets rewritten to but it ends up at the correct place...) Give it a try, see if it fixes your issue. --Thundergnat (talk) 11:07, 23 August 2023 (UTC)
I logged in a usual and here I am, so I knew it was fixed. Ta!--Nigel Galloway (talk) 13:24, 23 August 2023 (UTC)