User talk:Paddy3118: Difference between revisions
→Ethiopian Multiplication: Any links to what is sending people here? |
→References: Thanks for catching the staleness :-) |
||
(348 intermediate revisions by 47 users not shown) | |||
Line 1: | Line 1: | ||
==zkl "Aliquot sequence classifications" incomplete== |
|||
Hi - you flagged this as incomplete due to lack of 140737488355328 check. Actually, it is there as (2).pow(47). So I added a comment and removed the flag. Hopefully OK now. |
|||
Thanks, Craig |
|||
==RC_vanity_search.py== |
==RC_vanity_search.py== |
||
Sad, but I like to see how my tasks are faring over time: |
Sad, but I like to see how my tasks are faring over time: |
||
Archived to [[User talk:Paddy3118/Vanity Search]] |
|||
<lang python> |
|||
''' |
|||
Rosetta Code Vanity search: |
|||
How many new pages has someone created? |
|||
''' |
|||
==Vanity Search Updated== |
|||
import urllib, re |
|||
After the 4th of July RC updates, My RC Vanity Searcher needed to be updated due to HTML changes. I decided to add a modification, that shows the movement between the order a page was created in, vs the max views order called '''+/-'''. |
|||
Moved to [[User talk:Paddy3118/Vanity Search Updated]] ... |
|||
user = 'Paddy3118' |
|||
==Yet more Vanity searches== |
|||
site = 'http://www.rosettacode.org' |
|||
Forgive me for I have sinned. It has been many months since posted my Vanity search data due to a site update causing my script to need updating, and I just couldn't be *rsed. |
|||
nextpage = site + '/wiki/Special:Contributions/' + user |
|||
nextpage_re = re.compile( |
|||
r'<a href="([^"]+)" title="[^"]+" rel="next">older ') |
|||
== Poly thanks == |
|||
newpages = [] |
|||
pagecount = 0 |
|||
while nextpage: |
|||
page = urllib.urlopen(nextpage) |
|||
pagecount +=1 |
|||
nextpage = '' |
|||
for line in page: |
|||
if not nextpage: |
|||
# Search for URL to next page of results for download |
|||
nextpage_match = re.search(nextpage_re, line) |
|||
if nextpage_match: |
|||
nextpage = (site + nextpage_match.groups()[0]).replace('&', '&') |
|||
#print nextpage |
|||
npline=line |
|||
if '<span class="newpage">' in line: |
|||
# extract N page name from title |
|||
newpages.append(line.partition(' title="')[2].partition('"')[0]) |
|||
page.close() |
|||
Thanks but if you needed you see the example to get it clearer... it means the pseudocode is not too much clear:D More over, implemeting Octave solution, I've discovered it's more convenient to keep the higher power first (in the "vectors"), so likely I am going to rewrite the pseudocode ;) ... --[[User:ShinTakezou|ShinTakezou]] 16:31, 18 June 2009 (UTC) |
|||
nontalk = [p for p in newpages if not ':' in p] |
|||
== Ethiopian Multiplication == |
|||
print "User: %s has created %i new pages of which %i were not Talk: pages, from approx %i edits" % ( |
|||
Chalk one up to your vanity search; Ethiopian Multiplication has been the single biggest landing page for Sunday and Monday this week. There's been a huge influx of traffic to it via StumbleUpon. --[[User:Short Circuit|Short Circuit]] 02:13, 25 August 2009 (UTC) |
|||
user, len(newpages), len(nontalk), pagecount*50 ) |
|||
print "New pages created, in order, are:\n ", |
|||
print "\n ".join(nontalk[::-1]) |
|||
:Yah!! (I hope the traffic is OK on your servers though)? |
|||
:Lets hope some stay for a browse around the whole site... --[[User:Paddy3118|Paddy3118]] 03:48, 25 August 2009 (UTC) |
|||
::According to the analytics the bounce rate for stumbleupon referrals for the last three days is about 70%. So some did stay to look around. --[[User:Mwn3d|Mwn3d]] 18:32, 25 August 2009 (UTC) |
|||
It is great that people are staying to look around, but I am puzzled? I can't find what is sending people to the Ethiopian Multiplication page on the Web. Any links? --[[User:Paddy3118|Paddy3118]] 18:21, 26 August 2009 (UTC) |
|||
nextpage = site + '/w/index.php?title=Special:PopularPages' |
|||
:http://www.stumbleupon.com/url/rosettacode.org/wiki/Ethiopian_Multiplication --[[User:Mwn3d|Mwn3d]] 18:22, 26 August 2009 (UTC) |
|||
nextpage_re = re.compile( |
|||
::That one mention means so many hits? Wow. I thought only /. and reddit had that kind of affect. --[[User:Paddy3118|Paddy3118]] 18:48, 26 August 2009 (UTC) |
|||
r'<a href="([^"]+)" class="mw-nextlink">next ') |
|||
:::Well that link is from a while ago. Someone else must have found it and put a link to that SU link somewhere else. I'm not sure how to figure out where though. --[[User:Mwn3d|Mwn3d]] 18:56, 26 August 2009 (UTC) |
|||
:: It wasn't slashdot, digg or front-page-reddit level. Those would have resulted in tens of thousands of visits over a day. Peak traffic so far was Monday, where Google Analytics claims as much as 7.7 page views per minute. (Which is actually a bit off, as GA won't register raw, json or css page requests, so the requests would have been much more clumped, or bot edits, which it wouldn't see at all.) There were 368% more visits Monday(3,768) than the previous Monday(804). Each visit monday averaged 1.79 pages/visit, while the previous Monday averaged 3.56. These wouldn't be hard loads for most setups, but we've been riding close to the limits of the Slice under bursty loads for quite a while. I've got an offer to be pretty much the sole occupant of a 4-core Xeon box with 16GB of RAM, but It'll be a gradual transition, if it goes through at all; I won't have root, and I'm uncertain about the current admin's reaction time. Otherwise, I need to find an income source for RC. My number one desire would be to sell content-derived books, but selling t-shirts and the like, even at $5 markup each, would easily make the site pay for itself as it currently sits; Five t-shirts a month would do it. The next most likely option is a donation link, but I hate asking for handouts. And I hate banner ads even more. --[[User:Short Circuit|Short Circuit]] 21:22, 26 August 2009 (UTC) |
|||
Um... I have just seen one of the last pages I created jump to the HEAD of my vanity list, and by a huge margin! After seeing the figures (below), I'm gob-smacked! |
|||
data_re = re.compile( |
|||
r'^<li><a href="[^"]+" title="([^"]+)".*</a>.*\(([0-9,]+) views\)' ) |
|||
RANK VIEWS +/- TITLE |
|||
title2rankviews = {} |
|||
22 7261 +31 [[Ethiopian Multiplication]] |
|||
rank = 1 |
|||
71 3276 +11 [[Knapsack Problem]] |
|||
pagecount = 0 |
|||
90 2910 -1 [[Monty Hall simulation]] |
|||
while nextpage: |
|||
104 2698 +4 [[Conway's Game of Life]] |
|||
page = urllib.urlopen(nextpage) |
|||
121 2350 +0 [[Anagrams]] |
|||
pagecount +=1 |
|||
197 1486 +1 [[One dimensional cellular automata]] |
|||
nextpage = '' |
|||
206 1388 -4 [[Web Scraping]] |
|||
for line in page: |
|||
209 1317 -2 [[Max Licenses In Use]] |
|||
220 1263 -8 [[Spiral]] |
|||
# Search for URL to next page of results for download |
|||
235 1112 +10 [[Y combinator]] |
|||
nextpage_match = re.search(nextpage_re, line) |
|||
260 994 +3 [[Yuletide Holiday]] |
|||
261 989 -8 [[Sequence of Non-squares]] |
|||
nextpage = (site + nextpage_match.groups()[0]).replace('&', '&') |
|||
262 983 -2 [[Column Aligner]] |
|||
272 928 +5 [[First-class functions]] |
|||
288 836 -6 [[Data Munging]] |
|||
datamatch = re.search(data_re, line) |
|||
297 814 -6 [[Data Munging 2]] |
|||
300 803 -5 [[Probabilistic Choice]] |
|||
title, views = datamatch.groups() |
|||
304 794 +7 [[Bulls and Cows]] |
|||
views = int(views.replace(',', '')) |
|||
306 783 -1 [[Command Line Interpreter]] |
|||
title2rankviews[title] = [rank, views] |
|||
310 772 +4 [[Mutual Recursion]] |
|||
338 682 +0 [[Functional Composition]] |
|||
page.close() |
|||
371 605 -5 [[Integer literals]] |
|||
386 554 -8 [[Common number base formatting]] |
|||
395 533 -1 [[Look-and-say sequence]] |
|||
418 473 -9 [[Octal]] |
|||
443 428 -4 [[Exceptions Through Nested Calls]] |
|||
466 344 +2 [[Average/Simple moving average]] |
|||
490 298 -2 [[Testing a Function]] |
|||
492 297 -1 [[Sort stability]] |
|||
524 249 -3 [[Select]] |
|||
529 244 -1 [[Send an email]] |
|||
562 199 -1 [[Topological (dependency) sort]] |
|||
666 118 +3 [[Simple Random Distribution Checker]] |
|||
678 103 +0 [[First-class Numbers]] |
|||
680 101 +0 [[Seven-dice from Five-dice]] |
|||
685 87 +1 [[List Flattening]] |
|||
99999 0 -4 [[Russian Peasant Multiplication]] |
|||
--[[User:Paddy3118|Paddy3118]] 04:28, 25 August 2009 (UTC) |
|||
print "\n\n Highest page Ranks for user pages:" |
|||
fmt = " %-4s %-6s %s" # rank, views, title |
|||
print fmt % ('RANK', 'VIEWS', 'TITLE') |
|||
highrank = [title2rankviews.get(t,[99999, 0]) + [t] for t in nontalk] |
|||
highrank.sort() |
|||
for x in highrank: |
|||
print fmt % tuple(x) |
|||
</lang> |
|||
===Strange?=== |
|||
===Sample output on 21:28, 4 June 2009=== |
|||
Ethiopian Multiplication jumps to be the most popular page behind the Main Page, and I can find no evidence of a 'buzz' around it. No blog entries, no group discussions. I would have expected something more? --[[User:Paddy3118|Paddy3118]] 06:55, 1 September 2009 (UTC) |
|||
: It's all coming through StumbleUpon. I'd like to write a blog post on exactly what I think happened, but it's going to take a while, and I need to look into it more. A simplified explanation would be that a SU user discovered the page, liked it or reviewed it, leading to both his subscribers (and their subscribers) to see it, as well as increasing the page's general ranking in SU's page selection algorithm. This would be made easier to show if I could identify a trend around the phrase "ethiopian multiplication" in blogs and searches over the last month. The functionality is there in Google's advanced search, but it requires time and opportunity. --[[User:Short Circuit|Short Circuit]] 14:33, 1 September 2009 (UTC) |
|||
=== Ethiopian Multiplication: Missing function names === |
|||
<pre>User: Paddy3118 has created 52 new pages of which 27 were not Talk: pages, from approx 500 edits |
|||
What's the problem with the SNOBOL4? It works (I just tested it!). Is it because the half/double/even functions aren't there? I didn't write it, mind. I could tweak it to suit, but then it makes it less terse, less efficient, less SNOBOL4. --[[User:Axtens|Axtens]] 04:32, 25 February 2010 (UTC) |
|||
New pages created, in order, are: |
|||
And can you point out where the half/double and even are in the SNUSP version? --[[User:Axtens|Axtens]] 04:39, 25 February 2010 (UTC) |
|||
Spiral |
|||
Monty Hall simulation |
|||
Web Scraping |
|||
Sequence of Non-squares |
|||
Anagrams |
|||
Max Licenses In Use |
|||
One dimensional cellular automata |
|||
Conway's Game of Life |
|||
Data Munging |
|||
Data Munging 2 |
|||
Column Aligner |
|||
Probabilistic Choice |
|||
Knapsack Problem |
|||
Yuletide Holiday |
|||
Common number base conversions |
|||
Octal |
|||
Integer literals |
|||
Command Line Interpreter |
|||
First-class functions |
|||
Y combinator |
|||
Functional Composition |
|||
Exceptions Through Nested Calls |
|||
Look-and-say sequence |
|||
Mutual Recursion |
|||
Bulls and Cows |
|||
Testing a Function |
|||
Select |
|||
:The halve add and double functions in the SNUSP example are actually where it says "halve", "add", and "double". Other languages have had to conform to the separate function requirement, so I don't think we should allow a special case for SNOBOL4. --[[User:Mwn3d|Mwn3d]] 04:47, 25 February 2010 (UTC) |
|||
: I purposefully turn a blind eye to the [http://esolangs.org/wiki/SNUSP SNUSP]] versions' idiosyncrasies, but that is because I treat it and Brainf*ck as like the [[wp:Official Monster Raving Loony Party|Monster Raving Loony party]] in British elections - it is there, it can be a good laugh, but taking them seriously would lead to a happy dementia :-) |
|||
Highest page Ranks for user pages: |
|||
: The problem with the SNOBOL4 is that it doesn't use the function names for functionality as expressed in the task description and followed by the other 'language' examples. --[[User:Paddy3118|Paddy3118]] 05:10, 25 February 2010 (UTC) |
|||
RANK VIEWS TITLE |
|||
::Okay, then, I'll have a go at the SNOBOL4, unless the original author gets there first. As for SNUSP ... hmmm, show's how good I am with esolangs :\ . --[[User:Axtens|Axtens]] 06:11, 25 February 2010 (UTC) |
|||
102 2442 Monty Hall simulation |
|||
:: On a slightly related note...is there a particular reason to insist on "function" when "routine" couple be appropriate? Take assembler languages, for example. The type of code structure offered by functions is available in any language with '''goto''', but without explicit language support for arguments and return values. --[[User:Short Circuit|Michael Mol]] 14:22, 25 February 2010 (UTC) |
|||
106 2294 Knapsack Problem |
|||
109 2234 Conway's Game of Life |
|||
141 1798 Anagrams |
|||
214 1131 Web Scraping |
|||
218 1087 Max Licenses In Use |
|||
230 1022 Spiral |
|||
231 997 One dimensional cellular automata |
|||
257 825 Sequence of Non-squares |
|||
258 823 Yuletide Holiday |
|||
274 762 Column Aligner |
|||
314 645 Data Munging 2 |
|||
318 627 Data Munging |
|||
320 623 Probabilistic Choice |
|||
322 620 Y combinator |
|||
323 614 First-class functions |
|||
374 494 Command Line Interpreter |
|||
385 446 Functional Composition |
|||
403 412 Integer literals |
|||
412 404 Mutual Recursion |
|||
417 388 Bulls and Cows |
|||
438 336 Look-and-say sequence |
|||
439 336 Common number base conversions |
|||
450 293 Octal |
|||
468 250 Exceptions Through Nested Calls |
|||
661 75 Select |
|||
677 56 Testing a Function |
|||
>>> </pre> |
|||
:: Hi Michael, The task refers to "functions/methods/procedures/subroutines" I guess I could have followed it by three dots: ..., but I thought most languages would be able to work out what was needed, and the problem seems to be with their omission when the language does have those facilities. I think if I point out the omission, Someone could say that their is no such construct in their language that is normally used, but I don't think it will come to that, except maybe with calculator languages that might not have named subroutines? --[[User:Paddy3118|Paddy3118]] 17:46, 25 February 2010 (UTC) |
|||
From which I deduce their must be a lot of students out there being set a knapsack like problem ;-) |
|||
::: I think the inclusion of incorrect code is better than no code at all, so long as there is an explicit understanding of why the code is marked incorrect, and suggestions are made for how it can be corrected. With simple removal, the unobservant and rushed (and I must count myself among these) might just see a lack or unexplained removal of code, and make the same mistake that the original contributor did. Worse, the original contributor might see the code has been removed, without understanding why. See the mess around the editing of the [[Proof]] task, for an extreme example. (I saw the creator of that task say he wished he'd never created the task in the first place, because nobody "got" the task enough to give a correct response. I'd rather avoid that degree of despondency and cynicism happening to frequent contributors.) |
|||
::: What it boils down to is that my reasoning isn't technical or linguistic, but rather done from the perspective of how contributors will interact with the resulting circumstances in the future. Well, that, and trying to maintain the utility of the spirit of the task without getting too focused on particular language features. Does that make sense? --[[User:Short Circuit|Michael Mol]] 19:10, 25 February 2010 (UTC) |
|||
:::: How about flagging code as incorrect and deleting it after say a month of inactivity? You give a reasonable time for corrections to be made, but eventually don't litter the page with abandoned, buggy code. --[[User:Paddy3118|Paddy3118]] 21:01, 25 February 2010 (UTC) |
|||
===Sample output on 21:24, 17 June 2009 (UTC)=== |
|||
::::: I like the idea, but wouldn't know how to effectively automate the cleanup (or, at least, a maintain a listing of pages that require urgent cleanup). If it could be done right, though, it could be incorporated into the Unimpl page template such that "needs attention within a week" and "needs attention within two weeks" could be placed higher in the page than the general Unimpl, ENA and Omit sections. (I suppose a lot of the pain could be dealt with by having epoch deadlines, such as End-of-[Jan-Dec], and setting the deadline for each required correction to end-of-next-month. That way, we would only need twelve categories for tracking deadlines, rather than finding and parsing arbitrary timestamps.) If code goes uncorrected, it could be marked as Omitted (with an explanation given in the omit usage), or removed entirely, with a placeholder HTML comment for the next person to come along. --[[User:Short Circuit|Michael Mol]] 22:03, 25 February 2010 (UTC) |
|||
===Note from a HS math instructor=== |
|||
<pre>User: Paddy3118 has created 57 new pages of which 29 were not Talk: pages, from approx 550 edits |
|||
I forwarded you an email I got from a math instructor who was pleased to see a task that fit into his CS-into-HS-math curriculum ideas. At least, I ''think'' I forwarded it to you; I don't remember how that email address wound up in my contacts list, but it looked correct from my recollection. :) --[[User:Short Circuit|Michael Mol]] 17:52, 17 April 2010 (UTC) |
|||
New pages created, in order, are: |
|||
Spiral |
|||
Monty Hall simulation |
|||
Web Scraping |
|||
Sequence of Non-squares |
|||
Anagrams |
|||
Max Licenses In Use |
|||
One dimensional cellular automata |
|||
Conway's Game of Life |
|||
Data Munging |
|||
Data Munging 2 |
|||
Column Aligner |
|||
Probabilistic Choice |
|||
Knapsack Problem |
|||
Yuletide Holiday |
|||
Common number base formatting |
|||
Octal |
|||
Integer literals |
|||
Command Line Interpreter |
|||
First-class functions |
|||
Y combinator |
|||
Functional Composition |
|||
Exceptions Through Nested Calls |
|||
Look-and-say sequence |
|||
Mutual Recursion |
|||
Bulls and Cows |
|||
Testing a Function |
|||
Select |
|||
Sort stability |
|||
Moving Average |
|||
: Michael, Thanks for forwarding it - it's great to get positive feedback from a lecturer. (Maybe the site needs a "visitors book")? --[[User:Paddy3118|Paddy3118]] 01:18, 18 April 2010 (UTC) |
|||
===References=== |
|||
Thanks for finding the new location for the BBC Video. Too bad it isn't visible around the world without some network expertise. The Beeb could take a lesson from the Khan Academy. |
|||
<br />[[User:GarveyPatrickD|GarveyPatrickD]] ([[User talk:GarveyPatrickD|talk]]) 14:14, 10 May 2021 (UTC) |
|||
:Hmmm, It's a difficult choice of some or none. There are other references however, and the task description seems complete in itself. |
|||
Highest page Ranks for user pages: |
|||
: Thanks for catching the staleness :-) |
|||
RANK VIEWS TITLE |
|||
: --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 14:22, 10 May 2021 (UTC) |
|||
101 2501 Knapsack Problem |
|||
102 2499 Monty Hall simulation |
|||
108 2309 Conway's Game of Life |
|||
137 1876 Anagrams |
|||
201 1283 One dimensional cellular automata |
|||
214 1162 Web Scraping |
|||
220 1114 Max Licenses In Use |
|||
226 1073 Spiral |
|||
258 844 Yuletide Holiday |
|||
259 842 Sequence of Non-squares |
|||
271 804 Column Aligner |
|||
297 707 Y combinator |
|||
310 685 Data Munging 2 |
|||
311 683 First-class functions |
|||
315 666 Data Munging |
|||
320 649 Probabilistic Choice |
|||
364 525 Command Line Interpreter |
|||
377 487 Mutual Recursion |
|||
378 480 Functional Composition |
|||
391 456 Bulls and Cows |
|||
398 447 Integer literals |
|||
425 386 Common number base formatting |
|||
439 361 Look-and-say sequence |
|||
449 320 Octal |
|||
458 288 Exceptions Through Nested Calls |
|||
518 184 Sort stability |
|||
556 146 Testing a Function |
|||
577 122 Select |
|||
724 4 Moving Average</pre> |
|||
==Evolutionary algorithm== |
|||
So in two weeks I've created two new tasks, and the [[Knapsack Problem]] has finally moved to become my top viewed task. |
|||
I've had ''the dreaded Flu'' the past week, and am still getting over it. To test my faculties I took a look at what tasks were requested and took on [[wp:Weasel_program#Weasel_algorithm|Weasel algorithm]]. |
|||
I wasn't quite happy with the results, and wrote that up in a [http://paddy3118.blogspot.com/2009/10/otter-algorithm.html blog entry]. One of the commenters there, (thanks Steve), used the phrase 'evolutionary algorithm', which turned out to fit a [[wp:Evolutionary algorithm|WP page]], that re-introduced me to all the proper nomenclature. I decided that a re-write using the proper terms, would then make a better RC task. |
|||
===Sample output on 07:06, 25 June 2009 (UTC)=== |
|||
I tried to word the RC task so that people could experiment and slot in different algorithms for things like the fitness and mutation functions and I'm pleased to see that already the C language solution has done just that. (I do like the way the C is coded too; very nice). |
|||
I have added no new pages, but '''I have broken into the top 100 list of page views!!''': |
|||
<pre> Highest page Ranks for user pages: |
|||
RANK VIEWS TITLE |
|||
98 2595 Knapsack Problem |
|||
102 2542 Monty Hall simulation |
|||
108 2361 Conway's Game of Life |
|||
133 1937 Anagrams |
|||
199 1312 One dimensional cellular automata |
|||
215 1179 Web Scraping |
|||
220 1133 Max Licenses In Use |
|||
222 1113 Spiral |
|||
257 872 Yuletide Holiday |
|||
260 870 Sequence of Non-squares |
|||
267 829 Column Aligner |
|||
296 739 Y combinator |
|||
300 720 First-class functions |
|||
311 695 Data Munging 2 |
|||
316 684 Data Munging |
|||
320 664 Probabilistic Choice |
|||
355 563 Command Line Interpreter |
|||
373 519 Mutual Recursion |
|||
376 517 Functional Composition |
|||
380 496 Bulls and Cows |
|||
394 468 Integer literals |
|||
418 421 Common number base formatting |
|||
435 378 Look-and-say sequence |
|||
450 336 Octal |
|||
460 305 Exceptions Through Nested Calls |
|||
504 214 Sort stability |
|||
543 169 Testing a Function |
|||
563 146 Select |
|||
582 130 Moving Average</pre> |
|||
After the coding, what gets me is the amount of controversy that was caused by such programs, especially the original quoted in a [[wp:The_Blind_Watchmaker|book]] by Richard Dawkins (that I have not read). It seems so little to be controversial about, but then I guess RD's delivery might inflame some. |
|||
I did like writing the story around that Knapsack task. |
|||
--[[User:Paddy3118|Paddy3118]] 04:28, 7 October 2009 (UTC) |
|||
:Great little task you added here. rldrenth 7-oct-2009 |
|||
==Vanity Search Updated== |
|||
After the 4th of July RC updates, My RC Vanity Searcher needed to be updated due to HTML changes. I decided to add a modification, that shows the movement between the order a page was created in, vs the max views order called '''+/-'''. |
|||
== [[Sorting Using a Custom Comparator]] - C# incorrect == |
|||
<lang python> |
|||
''' |
|||
Rosetta Code Vanity search: |
|||
How many new pages has someone created? |
|||
''' |
|||
By that measure, the ADA solution would also be incorrect? [[Sorting Using a Custom Comparator#Custom_Comparator.adb]] |
|||
import urllib, re, pdb |
|||
: Thanks, I've tried to point that out now. --[[User:Paddy3118|Paddy3118]] 06:45, 20 November 2009 (UTC) |
|||
== Series out of control == |
|||
user = 'Paddy3118' |
|||
In reply to [http://rosettacode.org/mw/index.php?title=Markov_Algorithm&diff=70238&oldid=70234]: see [http://books.google.com/books?id=qYd35MUlSm4C&lpg=PA414&ots=rV71zja7-n&dq=%22series%20out%20of%20control%22&pg=PA414#v=onepage&q=%22series%20out%20of%20control%22&f=false] (ugh, what a horrific URL!). I'm not gonna change it back, because that would feel too much like edit-warring to me (and heaven forbid I should edit-war over grammar), but I think most professional editors would prefer my version. —[[User:Underscore|Underscore]] ([[User talk:Underscore|Talk]]) 20:53, 16 December 2009 (UTC) |
|||
site = 'http://www.rosettacode.org' |
|||
:I thought I was taught that A, B, C, and D; was to be preferred over A and B and C and D. My partner concurs? P.S. I do try to be cautious over edits, but I thought i was on solid ground. Is this possibly an English vs American English thing? --[[User:Paddy3118|Paddy3118]] 21:08, 16 December 2009 (UTC) |
|||
nextpage = site + '/wiki/Special:Contributions/' + user |
|||
::You're quite right that "A, B, C, and D" is in general better than "A and B and C and D", but that's not the issue here. Look closer at the explication I linked to and at your own sentence. Here's the latter with the irrelevant parts removed: |
|||
nextpage_re = re.compile( |
|||
:::This regexp is multi-line, verbose and uses named groups. |
|||
#r'<a href="([^"]+)" title="[^"]+" rel="next">older ' |
|||
::Clearly, this is equivalent to: |
|||
r'<a href="([^"]+)" title="[^"]+" rel="next"[^>]*>older ' |
|||
:::This regexp is multi-line. This regexp is verbose. This regexp '''is uses''' named groups. |
|||
) |
|||
::So you see, without noticing it, you're making "and" perform two functions at once: |
|||
::#separating two complements of "is" ("multi-line" and "verbose"), and |
|||
::#separating two predicates of "This regexp" ("is multi-line and verbose" and "uses named groups"). |
|||
::This is a no-no because it leads to nonsensical implications such as the "is uses" above. (P.S. I'm American; dunno about you.) —[[User:Underscore|Underscore]] ([[User talk:Underscore|Talk]]) 23:56, 16 December 2009 (UTC) |
|||
Thanks Underscore for pointing out my error. '''Mea culpa'''. I did try your reference before, but the google book search did not show the details for some reason. I have now done my own search with your term "series out of control" and got that full explanation. I will of course change the edit. --[[User:Paddy3118|Paddy3118]] 03:28, 17 December 2009 (UTC) |
|||
:Edited! --[[User:Paddy3118|Paddy3118]] 03:32, 17 December 2009 (UTC) |
|||
:Any time. :) —[[User:Underscore|Underscore]] ([[User talk:Underscore|Talk]]) 23:43, 17 December 2009 (UTC) |
|||
newpages = [] |
|||
pagecount = 0 |
|||
while nextpage: |
|||
page = urllib.urlopen(nextpage) |
|||
pagecount +=1 |
|||
nextpage = '' |
|||
for line in page: |
|||
if not nextpage: |
|||
# Search for URL to next page of results for download |
|||
nextpage_match = re.search(nextpage_re, line) |
|||
if nextpage_match: |
|||
nextpage = (site + nextpage_match.groups()[0]).replace('&', '&') |
|||
#print nextpage |
|||
npline=line |
|||
if '<span class="newpage">' in line: |
|||
# extract N page name from title |
|||
newpages.append(line.partition(' title="')[2].partition('"')[0]) |
|||
page.close() |
|||
== Hi Paddy, I'm Wolf == |
|||
nontalk = [p for p in newpages if not ':' in p] |
|||
Sorry to approach you like this, if I would know your preferred way of communication, I would use it. You may remember me from 19.May 2010, you send me (within minutes of my posting of inferior code) a note pointing out the problem. |
|||
nontalk.reverse() |
|||
I might be totally off track here, but who do you recommend to involve in a discussion about a faulty code? An AHK forum user has discovered a "misleading" pseudo-code regarding CombSort Algorithm, and I want to help fix that. My first steps were starting a discussion on [http://rosettacode.org/wiki/Sorting_algorithms/Comb_sort Comb_sort], then |
|||
print "User: %s has created %i new pages of which %i were not Talk: pages, from approx %i edits" % ( |
|||
posting to [http://rosettacode.org/wiki/Rosetta_Code:Village_Pump/Faulty_Code Village_Pump]. In over a week, there was no answer, no hints for me what to do, so I decided to ask someone who keeps an eye on quality (such as yourself). |
|||
user, len(newpages), len(nontalk), pagecount*50 ) |
|||
print "New pages created, in order, are:\n ", |
|||
Could you please check out my example of numbers-to-be-sorted with the Python code that is posted, and kick me hard if I deserve it. I am a fairly new member here, and try to cause as little upset as possible. But there should be a procedure (informal or otherwise) to ensure a certain level of quality. |
|||
print "\n ".join(nontalk) |
|||
BTW, the pseudo-code is (maybe) copied from wikipedia, where it is also wrong (if I am right). |
|||
--[[User:Wolf|Wolf]] 21:00, 26 May 2010 (UTC) |
|||
:Hi Wolf, my own, sorry, excuse was that I do have some areas of algorithms that don't excite me to contribute and sorting algorithms is on the edge of that as only a few (of the many, many) sorting routines have interested me of late; and mainly because of their close links to other things that I am more interested in. I took a look and gave a tech. reply on the [[Talk:Sorting algorithms/Comb sort]] page. --[[User:Paddy3118|Paddy3118]] 05:35, 27 May 2010 (UTC) |
|||
== Averages/Root mean square == |
|||
Regarding the edit [http://rosettacode.org/mw/index.php?title=Averages/Root_mean_square&diff=84488&oldid=prev here]: What exactly does that paragraph add to the page? Isn't the final size of the executable rather irrelevant? And if it only works with a specific compiler version, there is always <nowiki>{{works with}}</nowiki>. Or am I missing something here? —[[User:Hypftier|Johannes Rössel]] 18:18, 23 June 2010 (UTC) |
|||
: Sorry Johannes, I just did a minor edit of removing a single space. It's not my text. --[[User:Paddy3118|Paddy3118]] 19:55, 23 June 2010 (UTC) |
|||
:: Argh, sorry. I'm reading too many diffs a day and MediaWiki automatically marking compete ''paragraphs'' red if only a single byte changed is a bit confusing. Apologies. —[[User:Hypftier|Johannes Rössel]] 22:57, 23 June 2010 (UTC) |
|||
== The XML link == |
|||
The XML link at the top of [[XML/Output]] comes from it (technically) being a subpage of [[XML]]. I looked for a bit on the MediaWiki help sites but couldn't find a way to remove it for a single page. They can be turned off for the whole site, but sometimes they're useful. --[[User:Mwn3d|Mwn3d]] 01:27, 7 August 2010 (UTC) |
|||
:Thanks. I'll ignore it then. --[[User:Paddy3118|Paddy3118]] 01:28, 7 August 2010 (UTC) |
|||
== More privs. == |
|||
Use them sparingly and wisely. :) --[[User:Short Circuit|Michael Mol]] 20:33, 7 August 2010 (UTC) |
|||
: You must have noted my anger :-)<br>Thanks, I'l use them as advised. --[[User:Paddy3118|Paddy3118]] 20:48, 7 August 2010 (UTC) |
|||
== Timsort == |
|||
Have you heard of [[wp:Timsort|this craziness]]? It says Python uses it. I can't find a non-long-winded explanation of the algorithm though. --[[User:Mwn3d|Mwn3d]] 21:12, 8 August 2010 (UTC) |
|||
: [http://bugs.python.org/file4451/timsort.txt This] seems easy enough to follow. I read through it a few weeks ago. [http://corte.si/posts/code/timsort/index.html This] reads easier, though. --[[User:Short Circuit|Michael Mol]] 22:16, 8 August 2010 (UTC) |
|||
: Hi. Yep, I remember the buzz when Tim Peters introduced it. I don't have the time to google in comp.lang.python to find the first threads after its release, but rest assured, it was heavily tested when it was released, as well as when it was adopted as the sort routine for [http://www.gossamer-threads.com/lists/python/dev/258308 Jython] (which I could find). I have heard that it will be added as the Java sort routine too. I never did go fully into the algorithm though as sort routines give me only a little algorithm "buzz". |
|||
:[http://bugs.python.org/issue587076 Another link] --[[User:Paddy3118|Paddy3118]] 08:26, 9 August 2010 (UTC) |
|||
::I saw a link that said it was added to openjdk, but obviously that code has so much extra stuff going on to keep track of other stuff in the JRE that the algorithm kind of gets lost. Did you see something saying it would be added to the Sun JRE? --[[User:Mwn3d|Mwn3d]] 12:52, 9 August 2010 (UTC) |
|||
:::That must have been what I saw too as I would not have known the difference. I did find [http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6804124 this] though which makes me think that it has not been ratified as yet (but neither does it seem to have been rejected). --[[User:Paddy3118|Paddy3118]] 13:08, 9 August 2010 (UTC) |
|||
I have tracked down a version of timsort written in subset of Python called RPython and used for the PyPy project. I am not sure of the license but you can view it for reference by downloading from [http://pypy.org/download.html#building-from-source here] and extracting file pypy-1.3/pypy/rlib/listsort.py out of file pypy-1.3-src.tar.bz2. |
|||
It doesn't seem like a simple sort algorithm and, no doubt, will be sensitive to small changes. --[[User:Paddy3118|Paddy3118]] 11:16, 10 August 2010 (UTC) |
|||
:You might contrast the Python with this [http://cr.openjdk.java.net/~martin/webrevs/openjdk7/timsort/src/share/classes/java/util/TimSort.java.html Java implementation]. --[[User:Paddy3118|Paddy3118]] 11:20, 10 August 2010 (UTC) |
|||
The [http://mail.python.org/pipermail/python-dev/2002-July/026897.html original thread] (Pointing to an informative msg not at the head of the thread. --[[User:Paddy3118|Paddy3118]] 13:27, 10 August 2010 (UTC) |
|||
==Symmetric Difference for MATLAB== |
|||
I don't understand the error you found with the MATLAB solution to the problem. It gives the proper output given an arbitrary input for sets containing arbitrary members of arbitrary types. Also, is the problem with the first example or the second?[[User:Cferri|Cferri]] 22:40, 10 August 2010 (UTC) |
|||
:Hi Cferri, its your second example and how it would work with the info in the note: |
|||
::'''''Note:''' If your code uses lists of items to represent sets then ensure duplicate items in lists are correctly handled. For example two lists representing sets of <code>a = ["John", "Serena", "Bob", "Mary", "Serena"]</code> and <code>b = ["Jim", "Mary", "John", "Jim", "Bob"]</code> should produce the result of just two strings: <code>["Serena", "Jim"]</code>, in any order.'' |
|||
:I haven't run your ccode but you need to make sure it would give the right answer if their were these type of duplications if you are indeed implementing the behaviour on top of lists/tuples rather than a set type. --[[User:Paddy3118|Paddy3118]] 02:56, 11 August 2010 (UTC) |
|||
::Oh, Ok. I'll check that. [[User:Cferri|Cferri]] 04:27, 11 August 2010 (UTC) |
|||
== Filling out [[Rosetta Code:Add a Task]] == |
|||
Could I get you, [[User:Rdm|Rdm]] and [[User:Rdm|Rdm]] to give [[Rosetta Code:Add a Task]] a thorough treatment of examination, debate and filling? Of the cross section of current users, I think you three are probably the most likely to be familiar with the general pattern and concerns of creating tasks. I added a bunch of my own thoughts in HTML comments in-line, and left a note in the talk page. --[[User:Short Circuit|Michael Mol]] 17:15, 21 September 2010 (UTC) |
|||
== Variations on a theme == |
|||
I noticed you removed the pipe-based PowerShell solution to [[Ethiopian multiplication]]. Is that really necessary? Near as I could see, the relevant example had the necessary code, and only lacked functions demarcating the separate processes. Marking the task with [[Template:Incorrect]] might have been more appropriate, in that case. --[[User:Short Circuit|Michael Mol]] 18:18, 1 November 2010 (UTC) |
|||
:Umm, you're right. I was too harsh. <strike>I can do that now.</strike> I see that changes have already been made. --[[User:Paddy3118|Paddy3118]] 19:44, 1 November 2010 (UTC) |
|||
:: Thanks for helping RC keep a positive tone. :) --[[User:Short Circuit|Michael Mol]] 20:59, 1 November 2010 (UTC) |
|||
::: (Concerning another Rosetta Code task, but in the same vein.) --- Thanks for your input and advice (Egyptian Fractions) talk page, and also at other times and places. It may be not for you to understand why, but it came just at the right time, the whys and whyfors aren't germain in a public forum such as here. Your tone (and demeanor) were much appreciated at that time and helped me along with improving the task verbage and task clarification(s); I was beginning to feel like a brown shoe at a tuxedo party. I wish there was a good way to review a new task, other than to make it a draft task, say, to be able to have it be amongst some kind of peer panel to iron out the wording and whatnot. Even after (many?) years of entering task solutions/examples, I never expected such wrath, ire, and name-calling here on Rosetta Code ... and so it goes; perhaps I'm getting too thin-skinned as my temperament ages and I don't suffer fools gladly. Anywhoooooose, I appreciate your concerns and suggestions with regarding to the new (draft) tasks that I've been entering. It's fast becoming more and more of a chore, and my longish list of new topics may not see the light of day, so I may have to whittle it down to the simpler topics and quit while I'm ahead and while it's still fun working on Rosetta Code tasks (either unsolved or entering new one). -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 00:28, 5 April 2014 (UTC) |
|||
::::Thanks for the kind words Gerard, but I am only one of the many, yourself included, that help set the tone of RC. I like to think that in some ways I am sitting in front of a flat plane of glasswith coloured patterns on it, having a "conversation" with something that gives very little feedback - no unconscious threat, or hint of mood. I guess a lot of conversation skills are based on feedback from natural situations and putting some people in front of a keyboard is likely to loose empathy. There is not much to do but cull the most flagrant abuses - of which there are very few - we set the line (I think), at wanting to maintain a site that would pass if vetted by some "liberal" school board. |
|||
::::Much respect to all fellow task writers. It is the harder path! I do "gird my loins" after posting that first draft because some criticisms hurt and too many people have a dismissive and/or abrupt writing style - especially when they are right! And when they think they are right! |
|||
::::I know that being polite ''is'' harder so at times thinking "but I'm more polite" than whoever gives me a smirk and keeps me going. (Plus the fact that task writing is a difficult skill that I use at work - together with the criticism <strike>l</strike>mitigation strategies). |
|||
==Timings== |
|||
Thanks for fixing up (removing) the CPU timing stuff from the (Classic) REXX example in the Rosetta Code task ''Sieve of Eratosthenes''; It was getting to be a bit of a sticky wicket, and I sure didn't want to remove the inappropriate timings and open up another can of worms, especially since it was Classic REXX programs that were being executed/timed under the ooRexx interpreter, and it probably should've been posted under the ooRexx language (as that's what it was apparently translated for and executed under). Anyway, thanks again. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 01:44, 25 July 2014 (UTC) |
|||
:Well RC isn't set up to do performance comparisons, so we might (on rare occasions), stoop to generalization about orders of magnitude differences in execution time, but those were not really helpful. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 08:33, 25 July 2014 (UTC) |
|||
==Ordered words== |
|||
Please see [[Talk:Ordered words#Output]]. —[[User:Kevin Reid|Kevin Reid]] 18:37, 1 February 2011 (UTC) |
|||
==N-Queens Edit== |
|||
You edited down my (clearly overboard) output for the N-Queens problem. I'm not sure where the cutoff is but several hundred lines was obviously way too much. Sorry. I was very slightly annoyed that you completely eliminated my N=8 output, since that is the prototypical case, an 8x8 chessboard. OTOH I could have avoided the problem in the first place by showing some restraint, so I'm more annoyed at me. |
|||
In any case, I added additional code to winnow the solution sets and also to cut down the output on the largest case. The result is some what larger than your edit but still under 50 lines total, much shorter than the programs themselves. I also re-added the scrollbar to avoid taking up too much vertical real estate. Is this reasonable? --[[User:Balrog|Balrog]] 19:57, 20 March 2011 (UTC) |
|||
:Hi Balrog, sorry about not getting the edits right, I should have taken a bit more time. Instead I decided to show some of the smaller cases and the summary of the last. I had a look at your current edits and they seem fine to me. I hope this won't stop you editing - I'm still learning too! --[[User:Paddy3118|Paddy3118]] 22:00, 20 March 2011 (UTC) |
|||
:In general (for me at least) moving an example to a new page or adding output isn't a matter of the number of lines (we have the scrollbars to deal with that), it's about a number of bytes. We don't have super-servers here and anything we can do to lighten the load on them is good. There shouldn't be any problem with storing lots of data, but there might be problems with retrieving and sending lots of data at once. When one example starts to get into the 10KB range I usually consider shortening it or breaking it out into a new page. Like most things here, though, it's a little touchy-feely. --[[User:Mwn3d|Mwn3d]] 22:18, 20 March 2011 (UTC) |
|||
:: Servers are fine, as is my available bandwidth. I'd be more concerned about page load times for slow and/or congested end-user connections. Similar concerns apply, of course. --[[User:Short Circuit|Michael Mol]] 12:23, 21 March 2011 (UTC) |
|||
==Y Combinator== |
|||
Sorry if I write in a wrong place. |
|||
I'm Trap D. I notice that you removed my contribution to the task Y combinator. I send a mail to U. Neumerkel to know his opinion about the reasons you gave me. |
|||
If you look at my code and the code written on this page it's not exactly the same. I deduce what I think is the Y combinator of the code written on "page 106".[[User:Trap D]] 20:31 11 April 2011 |
|||
I read your answer, Ok. I'm waiting for the reply of U. Neumerkel before posting my contribution again. [[User:Trap D]] 23:15 11 April 2011 |
|||
My mail : |
|||
Hi |
|||
First I apologize for my bad English. |
|||
I'm fond of Prolog and I recently found this page : http://www.complang.tuwien.ac.at/ulrich/Prolog-inedit/ISO-Hiord where you explain how to improve high order programming in Prolog with your implementation of lambda. |
|||
I was very interested by that : |
|||
lists_mod(Member, List) :- |
|||
Me = \X^L^R^ ( L = [X|_] |
|||
; L = [_|Xs], call(R, X, Xs, R) |
|||
), |
|||
Member = Me +\Xr1^Lr1^ call(Me, Xr1, Lr1, Me), |
|||
Li = \Lr1^P^Rr1^ ( Lr1 = [] |
|||
; Lr1 = [X|Xs], call(P,X), call(Rr1,Xs,P,Rr1) |
|||
), |
|||
List = Li +\Lr2^Pr1^call(Li,Lr2,Pr1,Li). |
|||
main_list(Xss) :- |
|||
lists_mod(Member,List), |
|||
call(List,Xss,\Xs^call(Member,1,Xs)). |
|||
main_list2(Xss) :- |
|||
lists_mod(Member,List), |
|||
call(List,Xss,\[1]^true). |
|||
I extract this code that I think it could be a Prolog Y combinator. |
|||
:- use_module(lambda). |
|||
y_combinator(P, Arg, R) :- |
|||
Pred = P +\In^Out^call(P,In,Out,P), |
|||
call(Pred, Arg, R). |
|||
test_y_combinator :- |
|||
Fib = \NFib^RFib^RFibr1^(NFib < 2 -> |
|||
RFib = NFib |
|||
; |
|||
NFib1 is NFib - 1, |
|||
NFib2 is NFib - 2, |
|||
call(RFibr1,NFib1,RFib1,RFibr1), |
|||
call(RFibr1,NFib2,RFib2,RFibr1), |
|||
RFib is RFib1 + RFib2 |
|||
), |
|||
y_combinator(Fib, 10, FR), |
|||
format('Fib(~w) = ~w~n', [10, FR]), |
|||
Fact = \NFact^RFact^RFactr1^(NFact = 1 -> |
|||
RFact = NFact |
|||
; |
|||
NFact1 is NFact - 1, |
|||
call(RFactr1,NFact1,RFact1,RFactr1), |
|||
RFact is NFact * RFact1 |
|||
), |
|||
y-combinator(Fact, 10, FF), |
|||
format('Fact(~w) = ~w~n', [10, FF]). |
|||
with output : |
|||
?- test_y_combinator. |
|||
Fib(10) = 55 |
|||
Fact(10) = 3628800 |
|||
true. |
|||
Do you agree with my interpretation ? |
|||
I publish this code on this site : http://rosettacode.org/ |
|||
It is a site about tasks to solve using languages. I solve few tasks with Prolog and I thought that I could publish this code to solve the task about the Y combinator. Of course, I gave your name for the module lambda and the link to the page above. I thought I could do that because there was a link to the code of the module lambda. |
|||
This site RosettaCode decides to remove my contribution arguing that the site where is the page (www.complang.tuwien.ac.at) is not "non-profit", and I have not your permisssion. |
|||
Are they right ? Do you mind if I publish this code ? |
|||
Thanks anyway for your answer. |
|||
Best regards. |
|||
Joel Foutelet. |
|||
Here is the answer of Ulrich Neumerkel : |
|||
I essentially agree with you. |
|||
However, please note that I *only* transcribed the code which |
|||
was originally written by Hermenengildo et al. Please |
|||
refer to Reference 6. |
|||
Cordialement, |
|||
Ulrich |
|||
So, I'll published my contribution with the notes of U. Neumerkel [[User:Trap D]] 14:10 12 April 2011 |
|||
==Ela (Y combinator)== |
|||
I am not sure why you added this comment to Ela sample: "This example is incorrect. fac and fib seem to be directly recursive functions without the use (or definition), of the Y combinator. Please fix the code and remove this message." |
|||
fac and fib are clearly not directly recursive functions and use fix-point combinator which code is provided at the end of the sample. |
|||
--Disregard, I misread the task. |
|||
== Incomplete == |
|||
If you really intend to mark all (hundreds of) entries that don't give output, you might consider creating a new template for that purpose. {{[[Template:Incomplete|Incomplete]]}} is ill-suited. |
|||
[[User:CRGreathouse|CRGreathouse]] 23:24, 7 May 2011 (UTC) |
|||
: Thanks CRGreathouse, <br>I have created a new ''"output?"'' template that looks like the following, (missing the first parameter which would be the language name): |
|||
{{output?||<Optional explanatory text>.}} |
|||
:This is my first template so I read a little, then shamelessly copied from template incomplete! --[[User:Paddy3118|Paddy3118]] 11:13, 8 May 2011 (UTC) |
|||
:: It looks good. It has already ameliorated some of my (unfortunately misdirected) anger. :) |
|||
:: [[User:CRGreathouse|CRGreathouse]] 06:20, 9 May 2011 (UTC) |
|||
In the future, it will save a lot of eyerolling if people could run some examples on [http://codepad.org codepad] if they do print the output but the author just didn't add it to the example. It doesn't support every language, but it could help a little bit. --[[User:Mwn3d|Mwn3d]] 20:41, 22 June 2011 (UTC) |
|||
==Why [[Permutations/Derangements]]?== |
|||
I wanted some info on permutations and went first to Mathworld rather than wikipedia, where the word 'deranged' stuck out and just had to be followed up! |
|||
The [[wp:Derangement#Generalizations|wp articles generalizations]] section mentioned anagrams which then lead to me creating [[Anagrams/Deranged anagrams]]. --[[User:Paddy3118|Paddy3118]] 21:00, 14 May 2011 (UTC) |
|||
: It is an awesome name for a task subject. When I saw it in the RSS feed, it caught my attention and I shared it with a couple people in the room. :) --[[User:Short Circuit|Michael Mol]] 11:47, 15 May 2011 (UTC) |
|||
:: Who says mathematicians don't have a sense of humour :-)<br>--[[User:Paddy3118|Paddy3118]] 11:54, 15 May 2011 (UTC) |
|||
== [[Quaternion type]] == |
|||
Hi, |
|||
The task said "If your language has built-in support for quaternions then use it.". And I see nowhere in the task that it is required to use the form (a,b,c,d). |
|||
However, the implementation in gap is incomplete : I didn't write -q, q1+q2, etc. which are trivial. But I will, I swear :o) |
|||
[[User:Toucan|Toucan]] 08:20, 13 June 2011 (UTC) |
|||
== [[Permutations/Derangements]] == |
|||
For case 3 the function is built-in. Do you mean I have to rewrite it ? Well, why not... |
|||
[[User:Toucan|Toucan]] 09:09, 13 June 2011 (UTC) |
|||
:Hi Toucan, a note explaining that it is built-in then use your built-in function would suffice. (It's amazing what languages can have in their libraries). --[[User:Paddy3118|Paddy3118]] 13:21, 13 June 2011 (UTC) |
|||
::I made {{tmpl|eff note}} for just this occasion. --[[User:Mwn3d|Mwn3d]] 13:43, 13 June 2011 (UTC) |
|||
:::GAP is very very good at algebra and combinatorics, so it's not too surprising to find it here. It has a huge library for almost everything about discrete mathematics. On the other hand, floating-point support is almost absent, as well as networking, and many things one would like to see in a general purpose language (which it is not, of course). See http://www.gap-system.org/ for explanations on what it really is. I *love* it for quick programs for recreational mathematics ;-) |
|||
== Python discousion with [http://rosettacode.org/wiki/Special:Contributions/217.30.184.33 now Tonyjv]== |
|||
You had approached me about Python code. Now I am registered. |
|||
--[[User:Tonyjv|Tonyjv]] 22:41, 13 June 2011 (UTC) |
|||
:It's going back someways, but I think you replaced Pythons REPL input with the same code but as if it were in a file. Thereby losing the notion that the example was easy enough to develop/display output in the Python shell. In a comparison of languages, Pythons shell can be a good plus point. --[[User:Paddy3118|Paddy3118]] 23:18, 13 June 2011 (UTC) |
|||
It is true, that shell is nice, but you also be carefull with difference of behaviour the IDE environment brings. You should never forget to prepare ready program to file and run it properly from OS prompt/File manager. |
|||
My expertise which brought me here for visit is anagram generation, which I used as training project for learning Python. It still makes me wonder that trying the Go language by coding my anagram program (based on fast enough philosphy), the psyco version was completely unbeatable and pypy is also terrible in file IO. Anagram result from those programs: |
|||
Go |
|||
<pre>>timeit anagrams.exe "tonyveijalainen" |
|||
Name tonyveijalainen |
|||
352 candidate words found. |
|||
------------------------------------------------------------ |
|||
Version Number: Windows NT 5.1 (Build 2600) |
|||
Exit Time: 6:29 pm, Friday, June 17 2011 |
|||
Elapsed Time: 0:00:03.234 |
|||
Process Time: 0:00:03.093 |
|||
System Calls: 26551 |
|||
Context Switches: 6836 |
|||
Page Faults: 1785 |
|||
Bytes Read: 1131190 |
|||
Bytes Written: 173240 |
|||
Bytes Other: 134532 |
|||
pe 17.06.2011 18:29:01,76 C:\Go\programs</pre> |
|||
Python2.6 psyco: |
|||
<pre>>timeit c:\python26\python.exe Recursive_anagrams.py "tonyveijalainen" >nul: |
|||
Version Number: Windows NT 5.1 (Build 2600) |
|||
Exit Time: 6:31 pm, Friday, June 17 2011 |
|||
Elapsed Time: 0:00:00.718 |
|||
Process Time: 0:00:00.718 |
|||
System Calls: 8946 |
|||
Context Switches: 2060 |
|||
Page Faults: 3696 |
|||
Bytes Read: 1494996 |
|||
Bytes Written: 40407 |
|||
Bytes Other: 40078 |
|||
pe 17.06.2011 18:31:56,20 C:\Go\programs</pre> |
|||
:Hi Tonyjv, I ''regularly'' write, use, then toss away small programs written at Pythons command line shell. Especially when I am exploring other stuff and the Python is there as the support. When I need to be innovative elsewhere and keep that other train of thought. Most of the time, I make the correct call and can recall code used if I want to re-use it. Its just one point on the surface of ways of using Python - from calculator to tested, packaged, logged, configuration-managed large application. --[[User:Paddy3118|Paddy3118]] 06:02, 19 June 2011 (UTC) |
|||
:I agree with you on not underestimating Python speed. I have replaced a C++ application by what turned out to be a faster version in pure Python - Pythons in-built datastructures are very fast and compiled languages can't make up for bad algorithm choices. --[[User:Paddy3118|Paddy3118]] 06:02, 19 June 2011 (UTC) |
|||
== Minor edits == |
|||
Ok, I didn't think of that ;-) [[User:Toucan|Toucan]] 19:28, 1 July 2011 (UTC) |
|||
== Comparisons == |
|||
RC sets out to be a comparison site for whatever tools users apply the effort of comparing. One of the earliest pages I created tried to document typical invocation of a C compiler. I can't find it, now, though. --[[User:Short Circuit|Michael Mol]] 11:45, 6 September 2011 (UTC) |
|||
:Hi Michael, does this apply to my comment on preferably ''not'' adding detailed timings to solo program runs? If so, then maybe we need a [[Rosetta Code:Village Pump/Run times on examples?]] page to evolve some consensus? I, as you probably know, am a bit wary as you need to specify a huge amount of probably obscure information to get repeatable timings from different people and would prefer a maximum of: |
|||
:* Not mentioning stand-alone program timings that are less than two minutes and making other comments vague such as approx 5, 10 20 minutes or aprox 0.5/1/2/5 hours |
|||
:* When there are two or more solutions in the one language then mentioning just a rounded comparison i.e. X is approx. 1/2/5/10/100/1000/... times as fast as Y. |
|||
:* Discouraging timing comparisons between different languages. |
|||
:* Allowing detailed timings, if someone wants to; in the talk pages. |
|||
:We don't have the infrastructure of [http://shootout.alioth.debian.org/ The Computer Language Benchmarks Game], which is one of the best sites for comparing language run times, and even they tell users ''[http://shootout.alioth.debian.org/dont-jump-to-conclusions.php don't jump to conclusions]''. |
|||
:: Yeah, I jumped the gun by responding without seeing the context of your original discussion (I misunderstood it to refer to, e.g. different compilers' run-time support libraries). I agree 100%. --[[User:Short Circuit|Michael Mol]] 12:45, 6 September 2011 (UTC) |
|||
Hi, thanks for the feedback! Yeah it entirely makes sense what you wrote on my talk page. Was that in reference to [[Hamming_numbers#Alternative_version]]? I only edited that section to add remarks about memory usage, and left the timing remark in, that was already there before me - it compared I thought with the subsection above it for the same language, that talks about "couple of seconds". Or was it something else? Could you give me a pointer please so I could fix it. Thanks. |
|||
OTOH I like using Ideone.com for testing; I think ''its'' timings ''could'' reasonably be mentioned as it's a uniform platform. Wouldn't it be neat if all code snippets added to RC had a requirement of actually running on Ideone, and be run there automatically by the system and show its produced output and times on RC pages, automatically? Say, requiring of a posting user to provide a runnable link into Ideone entry and show its text on RC, instead of plain textual posting that it is now? The code that won't run wouldn't get accepted, for one. All kinds of comparative reports could be then automatically produced via its API (it has one), etc. Just a vague thought. :) [[User:WillNess|WillNess]] 01:05, 7 September 2011 (UTC) |
|||
: RC supports several hundred lanaguages. We've got links to codepad (for a few languages), and I've got an invite from CodeEval (for a few languages) to try having them execute code by proxy. Given enough time, I can automate just about anything serverside. However, I would be shocked and awed if there were an online site like CodeEval, IdeaOne or CodePad which could handle all the languages RC has, and would add more as they show up on RC. That said, comparative performance measurement is ''hard'' and rightly criticized for technique, and I really don't expect to see it automated any time in the near future. --[[User:Short Circuit|Michael Mol]] 01:30, 7 September 2011 (UTC) |
|||
::Comparative performance measurement is not my primary motivation here. Mainly it would make sure the code posted on RC conforms to the task spec, and output is shown (if specified in task description). But showing times automatically is also nice, and also knowing they are all tested on same platform so the OS/PC specs/ etc. differences are taken out of the picture. The languages that aren't supported would be postable as they are today, as text source not executable source. The execution platform for every executable code snippet would be clearly identified, so if one runs on Codepad and another on Ideone, that would be clearly seen by anybody. |
|||
::When testing different solutions in the same language it would indeed let us compare algorithms performance. For an example take a look at [http://ideone.com/p0e81 this], at the bottom. I've ran all the tests for all the code snippets in there manually at that entry, and manually gradually inserted the timings back into the source comments; to have this kind of thing done automatically would be awsome and ensure all timings are true and current. There is a tool in Haskell that would run (client-side) tests and take statistical measurements automatically, but I can't remember how it's called right now. :) [[User:WillNess|WillNess]] 10:03, 7 September 2011 (UTC) |
|||
:::Hi WillNess, apart from the need to support a vast array of languages, I think comparative timings would skew the examples to produce faster code as a kind of unwritten extra task requirement. Fast code is often un-idiomatic for a language and we hardly ever state what is fast enough in tasks which is very important when timing code. Being the fastest is pretty meaningless in itself - The fastest may not be fast enough; the fastest could be too fast, if the system expects to wait a certain time for a component to finish; the fastest might be too hard to maintain; the fastest might take to long to develop... --[[User:Paddy3118|Paddy3118]] 11:46, 7 September 2011 (UTC) |
|||
:::If you'd like to compare algorithmic efficiency, there are probably better ways to do it that clock time. For example, have key, regularly repeated aspects performed by a function which pokes an accumulator, and count how many times the function was called. That puts focus on the algorithm, and not on shortcuts and optimizations that detract from code clarity. --[[User:Short Circuit|Michael Mol]] 13:42, 7 September 2011 (UTC) |
|||
:::As for showing output, as I noted, CodeEval has offered to provide an execution environment for at least some of the code snippets. I ''will'' eventually get that working in an automated fashion, and I hope to define and implement some kind of API to allow any language community to offer an execution environment for RC's use. --[[User:Short Circuit|Michael Mol]] 13:42, 7 September 2011 (UTC) |
|||
::::''I hope to define and implement some kind of API to allow any language community to offer an execution environment for RC's use''<br> Oooh! I like the sound of the API route. You can get timings if you want; but they don't have to appear by default. Mind you, People love to optimise for runtime for some reason, so it will always be hard to control - Maybe a warning about the normal optimisation being for idiomatic code whenever you select to generate run times...? --[[User:Paddy3118|Paddy3118]] 15:36, 7 September 2011 (UTC) |
|||
:::::''"You can get timings if you want; but they don't have to appear by default. "'' Cool. This could be done also with kind of collapsable sections. Users would click on "Show" to actually show what is there. The contents could be cached so each user's click wouldn't cause the actual run each time, but only say once a month or after a change was made. [[User:WillNess|WillNess]] 12:40, 9 September 2011 (UTC) |
|||
::::(I don't have a pony in this race, but Ideone.com already has an API, or so they say.) Yes, there is a danger of the race for speed, but I think naturally we'd just end up with several versions for same task/language combo. The more the merrier. :) Kinda like [[Hamming_numbers#Haskell]] which now has three versions - nicest, simplest and fastest. I prefer to know more, not less, to have more information, not less information. If it's misleading, then we'd need to expound some more on ''that'' in each specific case. And if someone views this as a competition between languages, it's their choice. But if not to compete, then at least to compare, right? It may not be as clearcut as comparing timings, but timings are still a part of comparison. If some task is 10 times slower on language X, I want to know about it, and if it's 100 times shorter and faster to develop I want to know about that too. [[User:WillNess|WillNess]] 17:21, 7 September 2011 (UTC) |
|||
== Overwrote my responses. == |
|||
You overwrote my responses on [[User talk:24.85.131.247]]. Please fix, so we don't have an edit conflict again? --[[User:Short Circuit|Michael Mol]] 19:27, 20 September 2011 (UTC) |
|||
:Yea, I just posted the fix and got your message. Sorry. Should be OK now. --[[User:Paddy3118|Paddy3118]] 19:30, 20 September 2011 (UTC) |
|||
== Delete == |
|||
I see that you're a 'crat; would you delete this file? |
|||
* [[:File:Langdon-pari.png]] |
|||
I inadvertently uploaded it with a typo. The correct version is at [[:File:Langton-pari.png]]. |
|||
[[User:CRGreathouse|CRGreathouse]] 02:04, 28 November 2011 (UTC) |
|||
:It's gone :-) |
|||
:--[[User:Paddy3118|Paddy3118]] 05:00, 28 November 2011 (UTC) |
|||
:: Thanks! [[User:CRGreathouse|CRGreathouse]] 18:55, 28 November 2011 (UTC) |
|||
==Templates== |
|||
:''"If you're ever looking for a template, try [[:Category:Example attention templates]] and [[:Category:RCTemplates]] first."'' |
|||
- Thanks -[[User:Mwn3d|Mwn3d]] |
|||
:There's [[Help:ENA Templates|this nifty page]] too. --[[User:Mwn3d|Mwn3d]] 20:06, 5 December 2011 (UTC) |
|||
::Thanks. |
|||
== Spam == |
|||
Just wanted to say thanks for being hot on dealing with spam. At this point, I have to think RC is a specific target by spammers. I'll find time to deal with it, it's just slow going right now. --[[User:Short Circuit|Michael Mol]] 20:17, 23 May 2012 (UTC) |
|||
:You're welcome. They're not! --[[User:Paddy3118|Paddy3118]] 21:41, 23 May 2012 (UTC) |
|||
::Adding THANKS (for all you do tirelessly here on RC) --[[User:Walterpachl|Walterpachl]] 16:51, 14 July 2012 (UTC) |
|||
::: Aw shucks. You got me blushing. Which is pretty hard to see on a black guy :-) --[[User:Paddy3118|Paddy3118]] 20:50, 14 July 2012 (UTC) |
|||
::::Agreed on the benefits of your efforts. If I had one small nit to pick, I would prefer that you find a more gender-neutral four-letter word to use on the spammers in the log. <tt>:-)</tt> --[[User:TimToady|TimToady]] 18:50, 6 November 2012 (UTC) |
|||
:::::(British English meaning of cretins or imbeciles. :-) <br> --[[User:Paddy3118|Paddy3118]] 21:30, 6 November 2012 (UTC) |
|||
It looks like [[Special:Contributions/Bengeorge|Bengeorge]] and [[Special:Contributions/Justgerrardz|Justgerrardz]] are two spamming accounts which should be blocked (both are posting spam links on [[:Category:Gambas]]) --[[User:AndiPersti|Andreas Perstinger]] ([[User talk:AndiPersti|talk]]) 17:27, 4 June 2015 (UTC) |
|||
:Rdm zapped them both. Thanks guys. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 06:16, 5 June 2015 (UTC) |
|||
==Empty Program== |
|||
Thanks for fixing |
|||
--[[User:Walterpachl|Walterpachl]] 18:53, 30 June 2012 (UTC) |
|||
: Your welcome :-)<br> --[[User:Paddy3118|Paddy3118]] 21:56, 30 June 2012 (UTC) |
|||
== Sudoku Code for RPN / HP-15C == |
|||
I updated the entry to have the code on your site. |
|||
I realize that programming languages that are intended for a single calculator are not really general purpose and might not belong on this site. On the other handm variations of RPN have been pretty widely used and this is an example an algorithm that most people would not consider RPN suitable for, and in that respect it is interesting. Your call. |
|||
:Hi Marcel. Thanks for adding the code :-) |
|||
:P.s. It's not my site - I just contribute. Like yourself. --[[User:Paddy3118|Paddy3118]] 19:39, 30 January 2013 (UTC) |
|||
== explanation re: include files == |
|||
-- Moved to [[User_talk:Short_Circuit#Possible_vandalism|one place]]. |
|||
== Links in your user page == |
|||
Hi. It does not matter much, but you use external links in your user page, where internal links would do. Example: [http://rosettacode.org/wiki/Monty_Hall_problem Monty Hall problem] instead of [[Monty Hall problem]].--[[User:Grondilu|Grondilu]] ([[User talk:Grondilu|talk]]) 09:30, 4 May 2013 (UTC) |
|||
:Hi Grondilu, The user page gets read ;-) |
|||
:A combination of sloppiness, forgetfulness, and design. I used the prog that generated the table originally to produce a table for a web page that was not on RC so used full paths and did not change things when generating the wikitable. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 11:12, 4 May 2013 (UTC) |
|||
==Re: OOCalc== |
|||
I am a newbie to Excel. Found out how mundane and repetitive tasks can be done in no time when I was playing around with it. My true love is C, but I am open to all languages since I believe there is much to learn from each and everyone. |
|||
:Great! --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 16:18, 9 August 2013 (UTC) |
|||
== Re: Xmerl a language? == |
|||
Hi Paddy3118, |
|||
xmerl is a Erlang Library. I used the libheader to indicate that the code was using the library, and then, as it creates a internal link, I followed it and I edited the page shown (a new one). I was suspicious that it wasn't the correct way to do it. Should I leave the library page empty? |
|||
Thanks! :) |
|||
== Encryption == |
|||
Now that encryption is in every news would it be reasonable to ask for encrypting algorithms? |
|||
Of course I have one in REXX which I think is quite good but I'd love to know what others think about it |
|||
Regards |
|||
Walter |
|||
And thanks once more for your careful moderation!!! ( 20:32, 6 September 2013 Walterpachl ) |
|||
:First, the thanks are welcome! I'll accept on behalf of all the moderators :-) |
|||
:Unfortunately encryption is out of my field (so far), but I, like you, think it would be good to have a disturbingly easily cracked by the NSA algorithm on RC ;-) |
|||
:--[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 22:46, 6 September 2013 (UTC) |
|||
== Who created a solution? == |
|||
Paddy, |
|||
I can't find who created the ooRexx Entry in |
|||
http://rosettacode.org/mw/index.php?title=Synchronous_concurrency&offset=&limit=250&action=history |
|||
can you? |
|||
You're always opposed to putting the authors their name into theit slotion. |
|||
Why? |
|||
--[[User:Walterpachl|Walterpachl]] ([[User talk:Walterpachl|talk]]) 16:22, 14 October 2013 (UTC) |
|||
:Hi Walterpachl, about not putting names in the source: That is because it is generally a good thing for people to improve examples if they can and often improvements are from people other than the initial author. The page history is a better way of finding out who did what. A name on the source would convey ownership when improving is encouraged. It is analogous to author names not appearing on Wikipedia pages - just the discussion pages. |
|||
:On the OORex thing: I had to do a binary search by hand to find [http://rosettacode.org/mw/index.php?title=Synchronous_concurrency&diff=138355&oldid=131569 this]. Have fun :-)<br>--[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 17:23, 14 October 2013 (UTC) |
|||
::Thanks Paddy, I was looking for ooRexx -- should have looked for Rick (whom I happen to know) --[[User:Walterpachl|Walterpachl]] ([[User talk:Walterpachl|talk]]) 22:52, 14 October 2013 (UTC) |
|||
== Please use a unicode capable browser when make changes == |
|||
C.f. [http://rosettacode.org/mw/index.php?title=Twelve_statements&diff=prev&oldid=146946 this edit]. I'm assuming you didn't intentionally made those changes in Haskell and J. --[[User:Ledrug|Ledrug]] ([[User talk:Ledrug|talk]]) 21:20, 16 January 2014 (UTC) |
|||
:Thanks for catching that. I don't usually have that kind of issue, and I cannot remember what browser I might have used at the time. |
|||
:: Using html symbols instead of UTF-8 characters in the first place avoids this problem. Here's a test: |
|||
<br>Right arrow → |
|||
<br>Subset ⊂ |
|||
<br>I found JEdit capable of respecting Unicode characters. --[[User:Walterpachl|Walterpachl]] ([[User talk:Walterpachl|talk]]) 06:49, 17 January 2014 (UTC) |
|||
::: If people don't write code in HTML escape sequences, they shouldn't be required to post code here in them. Having to convert anything non-ASCII into escapes is an undue burden and error-prone. Plus if you plan to read and post text in unicode, what's the reason to choose a text editor or browser that can't write it properly? --18:51, 17 January 2014 (UTC) |
|||
Hopefully this will remain a one-off on my part. Sorry. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 10:27, 18 January 2014 (UTC) |
|||
== hi paddy this is Sxpert == |
|||
I am still here and am working on java and objectivec implementations of the own password algorithm. |
|||
please see my answers in the relative talk pages |
|||
== Link injection == |
|||
Hi, Paddy. When I submitted a Java code just now, a link was injected into the code. Could you have a look at it? |
|||
http://rosettacode.org/wiki/Sutherland-Hodgman_polygon_clipping#Java |
|||
:Hi. I had a word with Michael who started this fine site. He got back to me and said that a feature of the highlighter is to link into ''some'' languages official documentation. In fact, he was wondering why it was not creating documentation links for Python! --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 06:58, 9 June 2014 (UTC) |
|||
:: It's mutilated the code, so that it's no longer correct and compilable.[[User:Fwend|Fwend]] ([[User talk:Fwend|talk]]) 10:09, 9 June 2014 (UTC) |
|||
::: Does Michael realize that the autolink may fail and mangle the code instead? See http://rosettacode.org/mw/index.php?title=Sutherland-Hodgman_polygon_clipping&diff=183768&oldid=181794#Java (towards the bottom) [[User:Fwend|Fwend]] ([[User talk:Fwend|talk]]) 14:26, 9 June 2014 (UTC) |
|||
:::I changed it to use "java5" instead. It's a little better anyway since it's a Java 7 example ("java5" recognizes more of the Collections and things like that added in Java 1.5). In any case "d" was definitely wrong. If you use any highlighting you should use one that applies to the language you wrote it in. Using another language could introduce weird behavior if the highlighting for that other language changes at all in the future. if you want no highlighting just put no argument in the lang tag. --[[User:Mwn3d|Mwn3d]] ([[User talk:Mwn3d|talk]]) 12:48, 9 June 2014 (UTC) |
|||
:::: I only changed the tag to D to get rid of the autolink, I used the java tag earlier. I didn't know about the java5 tag, by the way, that's even better. Thanks. [[User:Fwend|Fwend]] ([[User talk:Fwend|talk]]) 13:39, 9 June 2014 (UTC) |
|||
== bureaucrats@rosettacode.org == |
|||
Is there any plans on reinstating the (above) e-mail address?<br> |
|||
Other than me addressing a particular admin (or opening it up to general discussion on its ''talk'' page ...) |
|||
:Sorry. I don't know about that email? --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 23:15, 31 July 2014 (UTC) |
|||
The Rosetta Code entry ''Reverse words in a string'' probably should be renamed to |
|||
<br>''Reverse words in multiple strings'' or possible variations on that. |
|||
It's a small difference, but is it worth it for a non-draft task? I'm hesitant to change the title at this late date, and for other reasons, I'd prefer it that a Rosetta Code admin do the rename (if at all). -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 20:23, 31 July 2014 (UTC) |
|||
:I guess ''"Reverse word order on lines of a string"'' might be more descriptive, but I, personally, am OK with leaving it as it is. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 23:15, 31 July 2014 (UTC) |
|||
== Unlucky rollback of Power Set == |
|||
Admin |
|||
40 Percent of the task description of Power set is about what the result are with empty sets. For my as a mathematician it is quite clear that the following examples also are explicitly given: |
|||
<math>\mathcal{P}</math>(<math>\varnothing</math>) = { <math>\varnothing</math> } and <math>\mathcal{P}</math>({<math>\varnothing</math>}) = { <math>\varnothing</math>, { <math>\varnothing</math> } } |
|||
So why the erasure including my Scala contribution? In the first place you could deleted the templates only and in the second the empty set were in my opinion asked. And finally my contribution is erased. Please explain.--[[User:Siskus|Siskus]] ([[User talk:Siskus|talk]]) 18:32, 31 August 2014 (UTC) |
|||
: Themed edits. I told you about this at the time. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 07:23, 1 September 2014 (UTC) |
|||
P.S. What happened to your talk page? --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 07:23, 1 September 2014 (UTC) |
|||
=="We tend to omit timings"== |
|||
You wrote: |
|||
"we tend to omit timings on RC or restrict them to orders_of_magnitude comparisons..." |
|||
I'd like to make the case that the time has come for timings to be encouraged, at least on some pages such as [[Text_processing/Max_licenses_in_use]]. There are two basic reasons for this, one having to do with the way RC has evolved; and the other having to do with the nature of certain tasks. |
|||
Of course I realize that a language is not to be confused with the interpreters and compilers that may be available at a particular time, but as a practical matter, many people need information about what kind of performance can be expected if a particular language is chosen. With this understood, here are the two reasons: |
|||
1) For better or worse, RC showcases 535 languages, and probably the number will grow. More and more RC pages are including large numbers of these languages, but very few people will have the time to read, understand and assess more than a few entries, so some guidance as to which languages are appropriate to the task at hand would be extremely useful. More generally, as interesting as many of the languages represented on RC may be, many people visiting RC will at some point probably want to know which languages are most appropriate for them. Some may also want to gather information to determine which languages are really "toy languages" and which are heavyweights in general or in a particular domain. An important criterion in this regard is performance, and given the nature of RC and its authors, it seems to me that the only reasonable way for comparative performance information to be given is for authors to give both one or more performance metrics and some context, such as the CPU MHz rating for CPU times. |
|||
2) Some tasks, by their very nature, call out for performance comparisons. [[Text_processing/Max_licenses_in_use]] specifically requires that a large text file be used. This is a Good Thing, because it raises two questions: |
|||
a) Is there a compiler or interpreter for the target language that can manage a large volume of data? |
|||
b) What are its performance characteristics for that data? |
|||
Finally, I would like to emphasize that I was not the first to add performance data on the [[Text_processing/Max_licenses_in_use]] page. In fact, the very first entry (Ada) includes the elapsed time. I think this at least confirms the validity of the second point (2) above. |
|||
In summary, I encourage you to rethink this issue in light of the way RC has evolved. Should the task description of some pages include some specific performance metrics? What is the best way for performance-related information to be presented in a way that makes it somewhat comparable, without imposing excessively onerous obligations on authors? |
|||
--[[User:Peak|Peak]] ([[User talk:Peak|talk]]) 13:19, 20 September 2014 (UTC) |
|||
:Hi again Peak. I should point out from the beginning that:@ |
|||
:# It's not the first timethat this has been debated on RC (and by other long-term users too). |
|||
:# The problem is the meaninglessness and depth of the problem when you try and do it right, that leaves sites like [http://benchmarksgame.alioth.debian.org/ The Computer Language Benchmarks Game], with all of its resources geared specifically to timing comparisons specifically puts game in its title because of the problems in finding meaning in comparing the figures - yes, you can compare the figures they give, but their are many caveats - such as timings varying due to what Linux may happen to schedule as an OS task; cache, cache, and caches - they give warnings on the site such as [http://benchmarksgame.alioth.debian.org/dont-jump-to-conclusions.html here]. |
|||
:Yep, it would be good to get timings right, but seeing the effort put into the CLBG site, and their admonitions on timing, I think it better that with the state of any comparitive timing setup on RC, the best we should do is leave timings out, except for the occasional, ''obfuscated'', local comparitive timing. |
|||
:'''Obfuscated timings''': If, in the process of converting a C solution to Awk, stating that the C returned almost immediately and the Awk solution after eating half a sandwich" emphasises that the you expect the C to always be faster, but that the Awk solution does not take too long. An alternative of using Unix time is ''bad'' because it presumes that those milliseconds of precision can be duplicated by anyone - including by the by the author on his box, a week later when his partner has moved their music collection onto the machine or installed a critical update.<br> |
|||
:What happens when a second user puts timings for C vs ADA and a third does ADA vs AWK, and a fourth ...; and you end up with multiple relative timings between languages? In an attempt to marshall that you might try for more information; stating your machine characteristics for example, but I am in the chip industry and manufacturers like Intel will ship improved parts with the same part number (as seen by normal consumers); firmware can change; ... |
|||
:What happens when compilers change - do you trust that "update to fix the windows installer" not to slip in some "innocuous to the developer"change such as a slight difference in build options that make timings change for this same "release"? |
|||
:Do your timings depend on your process of timing? Does running it all from unix make give the same timings as from an IDE for example? |
|||
:# You can't just slap ''time'' in front of an invocation and believe in its result. |
|||
:# Why you can't is involved. |
|||
:# (Much) more infrastructure and a site geared to comparing timings Teaches you more about timing vaguaries. |
|||
:I would tend to use a mix of the RC and CLBG sites if I wanted initial coarse comparisons but even then, you must be wary - Python, for example, is an interpreted language with probably slow timings when used by the average Python programmer, and yet many compute intensive tasks in fields including particle Physics, IC design, genome research, and statistics, successfully use Python. In a lot of these cases you have to understand that Python is giving access to best in class libraries written in C, Fortran, C++, C#, Java, ... - What the user programmes in is Python for accessibility and what he sees is great speed and the ability to harness large compute farms or supercomputer clusters but in a manageable way from "Python". |
|||
:In my experience timings are usually a tertiary concern behind getting that component I am writing correct and in a reasonable development time. If working on an embedded system then timing may become more important (or less if as power and memory footprint can also rear their heads). When you know timings are tight then this can and does distort programming style, (such as the use of xor swapping), and which can be highly machine, OS, and network specific. Do we want non-idiomatic, timing optimised, machine specific code on RC? I think we would loose clarity. |
|||
:--[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 07:05, 21 September 2014 (UTC) |
|||
Thank you for taking the time to convey your rationale. I was already familiar with all the points you make, and I am disappointed that you don't seem to be able to see the forest for the trees. The nice thing about RC compared to CLBG (Computer Language Benchmarks Game) is that RC has so many more languages, so many more tasks, and presumably many more contributors (or at least, it's more open to contributions). Thus some of your points I see as arguing for having more timings. One of the things I think you overlook is that a simple timing is objective -- if it's there, users can interpret it, misinterpret it, or ignore it if they wish. Also, since RC is relatively open, if a timing seems "off" by someone, the additional objective information can be added. |
|||
One of the important points you make is that there has been discussion about this topic before. I think that is a sign that instead of censorship, some creativity is required. It was in that spirit that I suggested that on *some* pages, the task description should invite a brief, objective indication of performance (space and/or time as appropriate). I invite you to think "outside the box".--[[User:Peak|Peak]] ([[User talk:Peak|talk]]) 03:57, 22 September 2014 (UTC) |
|||
:;On objectivity (a slight aside): |
|||
:Hi Peak, I would hope that others might join in as they have done in the past to reach a consensus. If your meaning of objectivity is something like: |
|||
::''"(of a person or their judgement) not influenced by personal feelings or opinions in considering and representing facts."'' |
|||
:then no, at this point I am stating my case, (that was discussed before). I have read, and listened to your points however, but I still fear that yes, although we do have a lot of languages, we have no infrastructure to put in place anything like what CLBG has and I think that ''more'' than CLBG is needed. |
|||
:;(And back): |
|||
:Note that I don't say no timings; just that ''more'' effort should be put into fuzzing timings to represent their true use for comparisons: saying that "algorithm A is approx 10x faster than Algorithm B for the givin inputs" is much better than just leaving behind the result of Unix time (with or without Machine and OS versions).<br> --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 06:56, 22 September 2014 (UTC) |
|||
==capitalization of thingys named after people== |
|||
Every place I looked, I noticed that Heronian triangles are capitalized. Naturally, I didn't look everywhere, but if your time is short, I could modify (if you approve) the Rosetta Code task ''Heronian triangle'' (primitive) to capitalize that name. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 11:41, 7 January 2015 (UTC) |
|||
:Please do. Thanks. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 17:11, 7 January 2015 (UTC) |
|||
== Python Roots of a quadratic function == |
|||
Hi Paddy, You may have noticed I've made a few Python contributions recently. I was just looking at this roots task and it has some issues. It was marked incorrect (back in 2009) and you fixed it by removing the first of two solutions. But both solutions had the problem cited by the incorrect tag, which was that they did not "do it better" as required by the task. I've coded up some "better" versions, a version using each of the two better methods mentioned in the description, and also a call to numpy.roots. (It's interesting to compare the three.) My question is what to do with the present solution. I could toss it entirely, put it under a subheading, or incorporate it into my comparison. It has a couple of other differences--it's Python 2 whereas I've been working with Python 3, and it returns an extra bit of information categorizing roots as same, different, real, and so on. If it were moved under a subheading it could stay about as it is, except I would like to add the b=-1e9 case to show that it loses all precision. —[[User:Sonia|Sonia]] ([[User talk:Sonia|talk]]) 17:57, 1 April 2015 (UTC) |
|||
:I guess if it is wrong then it should only stay as an example of how ''not'' to do things. I am happy either way Sonia. :-) |
|||
: (Gosh I've used a smiley several times this morning - I'm in a good mood). --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 05:19, 2 April 2015 (UTC) |
|||
==Cholesky/Pascal identity== |
|||
Hi, |
|||
[http://en.wikipedia.org/wiki/Cholesky_decomposition Cholesky decomposition] of a symmetric matrix A is a lower triangular matrix L such that A=LL', where L' is the transpose of A. I don't know what you mean by "cholesky(pascal_upp(i)) == identity(i)", what software do you use? If L is the identity matrix, then LL' is also the identity matrix, certainly not A. |
|||
It's highly likely that you used a routine that does not check matrix symmetry, and that uses only the lower part in the process (as the upper part is supposed to be the same). This would make sense: if you forget the upper part, pascal_upp(i) is the identity, thus L is indeed the identity. But it's just plain nonsense, of course, to say that this is the Cholesky decomposition of pascal_upp(i). |
|||
May I suggest a good reference if you don't know much about numerical analysis? Golub & Van Loan "Matrix Computations" is really good. "Numerical Methods in Matrix Computations" by Ake Bjorck is also a nice choice. |
|||
[[User:Arbautjc|Arbautjc]] ([[User talk:Arbautjc|talk]]) 19:46, 28 April 2015 (UTC) |
|||
:I see you have noticed one boundary in my maths knowledge :-) |
|||
:Ifyou consider the Python solution to both tasks and add the following identity matrix generator function, then I was refereing to what is tested in the assert statement below. It looks like an identity holding for all positive integer n and is tested for afinite range of integers to be true but I don't have the maths to prove or disprove it. Maybe I should have stated it as "Paddy's conjecture". |
|||
Here's the code: |
|||
<lang python>>>> def identity(n): |
|||
... return [[1 if j == i else 0 for j in range(n)] for i in range(n)] |
|||
... |
|||
>>> for row in identity(3): print(row) |
|||
... |
|||
[1, 0, 0] |
|||
[0, 1, 0] |
|||
[0, 0, 1] |
|||
>>> for row in identity(5): print(row) |
|||
... |
|||
[1, 0, 0, 0, 0] |
|||
[0, 1, 0, 0, 0] |
|||
[0, 0, 1, 0, 0] |
|||
[0, 0, 0, 1, 0] |
|||
[0, 0, 0, 0, 1] |
|||
>>> for n in range(2, 300): |
|||
... assert cholesky(pascal_upp(n)) == identity(n), "Whoops" |
|||
... if not n % 20: print(n) |
|||
... |
|||
20 |
|||
40 |
|||
60 |
|||
80 |
|||
100 |
|||
120 |
|||
140 |
|||
160 |
|||
180 |
|||
200 |
|||
220 |
|||
240 |
|||
260 |
|||
280 |
|||
>>> </lang> |
|||
=="This task has been flagged for clarification."== |
|||
Dear Paddy3118: |
|||
You recently reverted some minor edits I made to the introduction of [[Text_processing/1]] without any comment, so I'm not sure what your objections were, but I would like to point out that the page has a "This task has been flagged for clarification." notice, and I was trying to improve the clarity of the text, which was (and is again now) written in rather poor English. I realize that you have a long history of contributions to RC and perhaps have a preference for "leaving well enough alone" in task descriptions, but as I mentioned, someone else (besides me) tagged the article specifically with respect to the section I edited. Since you have gone to the trouble of reverting the text, I invite you to improve the task description yourself. Thanks. [[User:Peak|Peak]] ([[User talk:Peak|talk]]) 02:28, 29 April 2015 (UTC) |
|||
==duplicate links in Hofstadter Figure-Figure== |
|||
On the discussion/talk page for the '''Hofstadter Figure-Figure''' task, you stated: |
|||
:::: ''When I had finished the Python version I checked it with tables of the first 1000 values refered to from Sloane: '''here''' for R and '''here''' for S, although the table for S has an off-by-one error. --Paddy3118 ...'' |
|||
... the '''here''' and '''here''' (both links) point to the same web-page. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 22:21, 21 May 2015 (UTC) |
|||
:Fixed thanks. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 05:52, 22 May 2015 (UTC) |
|||
==Huge addition to Ledrug's page== |
|||
Hi, unless Ledrug specifically asked for the data, it seems impolite to dump so much on his page and I would urge you to remove it as it can only cause offense. --Paddy3118 13:01, 27 October 2012 (UTC) |
|||
That's Nigel Galloway being Nigel Galloway. The content was from Talk:Kaprekar numbers, which he somehow felt very strongly the urge to remove, probably because I said something not very flattering to him there. I undid that change because deleting 30k+ talk without even a word of explanation was basically vandalism, so he decided that those should go on my talk page instead (and of course it was removed from the original place again). Come to think of it, I kinda suspect this paragraph won't survive very long, either. --Ledrug 13:47, 27 October 2012 (UTC) |
|||
: The above paragraph seems to be a reference at least in part to these two edits on the part of [mailto:Nigel_Galloway@operamail.com Nigel Galloway]: [http://rosettacode.org/mw/index.php?title=User_talk:Ledrug&diff=next&oldid=144840 A big addition] and [http://rosettacode.org/mw/index.php?title=User_talk:Ledrug&diff=next&oldid=146166 A big deletion]. It is perhaps also a copy and paste of some bit of discussion from almost 3 years ago? |
|||
: Anyways, the lack of adequate attribution made me curious and this represents my current best guess. --[[User:Rdm|Rdm]] ([[User talk:Rdm|talk]]) 15:07, 23 May 2015 (UTC) |
|||
== Autoblock? == |
|||
Hi... I am glad you are helping shut out whoever is abusing our registration process. (And I think we are supposed to have email confirmation required before people can update pages, and I think that that does not currently function...) |
|||
But I also noticed that you are leaving [[Special:BlockList|"autoblock"]] active? I was [[User_talk:Short_Circuit#Spam_Deletion|told]] that we should leave that alone because it only winds up blocking the cloudfront cdn proxies. Or has that been fixed? --[[User:Rdm|Rdm]] ([[User talk:Rdm|talk]]) 21:05, 5 July 2015 (UTC) |
|||
:Rdm, unfortunately I know very little about the inner workings and just try and remove spammers and their detritus when I see it. Is there something else I should be doing? Short Circuit is the guy who knows the most I'd guess. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 06:54, 6 July 2015 (UTC) |
|||
::In that case, maybe best to un-check the second box when blocking a user (so you do not block the IP Address) and leave a note for Short Circuit asking for clarification? If those IP blocks are incorrect, they'll need to be cleaned up. If they are correct, perhaps I should be doing that also. |
|||
::That said, it would be interesting if you had been blocking entire geographic regions containing spammers. But it'll probably be messier than that... --[[User:Rdm|Rdm]] ([[User talk:Rdm|talk]]) 10:47, 6 July 2015 (UTC) |
|||
::: Yes, Autoblock will break with Cloudflare. I don't have time to fix that right now. --[[User:Short Circuit|Michael Mol]] ([[User talk:Short Circuit|talk]]) 15:20, 21 October 2015 (UTC) |
|||
== Correction to Ceylon Y Combinator == |
|||
Can you please clarify what is incorrect about the first Ceylon Y Combinator solution? AFAICT, your note is referring to "class RecursiveFunction", but this is just a container. The solution, overall, is very similar to others including Java 8, Scala, and Swift. |
|||
:It seems odd to have a comment to say that the example does not fulfil the task without also stating why it deserves to be there. If its as OK as others then that needs to be said - or omit the comment altogether? --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 20:06, 18 August 2015 (UTC) |
|||
Oh, I guess you mean the third variation. I was simply following the pattern of the others - there are about 13 instances of "The usual version using recursion, disallowed by the task". If this is what you are referring to, and you think it would be better without the third version, I certainly have no problem removing it. Let me know. |
|||
:HI. It isn't so much the code it is the comment - it seems to read as "this doesn't fit the task". Maybe the comment should go but leave the code as it is very like others. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 07:44, 19 August 2015 (UTC) |
|||
::Or maybe those other implementations should get a similar comment? Though perhaps the wording of the comment should also be changed - I'll do that. --[[User:Rdm|Rdm]] ([[User talk:Rdm|talk]]) 13:11, 19 August 2015 (UTC) |
|||
== early promotion == |
|||
I noticed that you promoted a Rosetta Code draft task (after one day), namely: |
|||
::: ''http://rosettacode.org/wiki/Array_length''. |
|||
Normally, I would bring up issues in that particular Rosetta Code draft task's |
|||
discussion page, but since it is already a full-fledged task, it would be |
|||
difficult (I think) to resolve the wording (and/or requirements) of that task |
|||
at this (late) date. I never got to address my concerns during the short |
|||
interim of it being a draft task. |
|||
So, I'm bringing my concerns here so as to not have a discussion that can't be |
|||
resolved there (or the possibility of that not happening here as |
|||
well). But, this issue should be addressed somewhere, namely, that not all |
|||
computer programming languages use the same lexicons nor do they necessarily |
|||
share the same definitions and/or nomenclatures, --- or to get technical: ''stuff''. |
|||
I may be way out on a limb here, so this would be a good place for me to see if my thoughts are on-topic or ... not. |
|||
<Br>So ... let's start sawing on that tree limb: |
|||
An ''array'' has different meanings to programmers of different |
|||
computer languages. (As an E.E., I think of antennae arrays, but that's me.) |
|||
To some, it is a program variable (or ''thingy'' if you want to |
|||
get technical), denoted by a single (program variable) name (but it may have |
|||
aliases) which have addressable (elements) to access/address each element. Most |
|||
people are familiar with one-dimensional arrays, and to keep things simple, let's |
|||
just stick with a single dimension. Most single-dimension arrays have a |
|||
numeric index (almost always an integer, which could be zero or negative). |
|||
To others, an ''array'' may be a single (program) variable, with multiple |
|||
elements (items) in it, or what some programmers would call a ''list'' or a |
|||
''table'' or some other name like ''bag'' or somesuch. The |
|||
elements/items are usually separated by blanks or some other well-known/well-defined |
|||
separator token(s) such as commas, colons, or the like. --- or |
|||
(ugh) '''tabs'''. |
|||
And still others may think an ''array'' as a type of hash table |
|||
(array) that doesn't have a sequential addressing mode (such as in the |
|||
case of some types of associated arrays, as in the family of '''REXX''' languages |
|||
and others). The REXX language calls them ''stemmed arrays''. |
|||
But, back to a simple (one-dimensional) array such as in old-time FORTRAN, where |
|||
the 1<sup>st</sup> element is number <big>1</big>, and (say) continued upwards to |
|||
element <big>100</big>. |
|||
Of course, in the newer Fortrans, one could define/declare the array |
|||
with '''N''' elements, where '''N''' is known only at |
|||
run-time. In this context, I can see the validity of asking the programmer |
|||
to find the number of elements elsewhere in the program. Most high-level |
|||
languages have BIFs to return the low- and high-bound element (indices). |
|||
Of course, most languages allow the programmer to specify the starting element |
|||
(number) and the ending element (or perhaps, the number of elements, starting |
|||
at '''N'''). |
|||
Clearly, in this (FORTRAN) case, there are exactly <big>100</big> elements in the array, |
|||
even though, at this point in this discussion, the array hasn't been assigned any values, |
|||
although they may have been assigned (or cleared) to zero (or some other |
|||
defined value as specified by the computer language). |
|||
This has nothing to do with ''how many elements of the array have been |
|||
assigned'' values (at least, by the program itself). |
|||
Some languages have a facility to detect if a variable (or element of |
|||
an ''array'') has a "value" that isn't assigned |
|||
(i.e., ''undefined''). |
|||
With REXX, it's more complicated. If we use the traditional (as I |
|||
understand it) definition of an ''array'', (let's call the |
|||
array '''A''') then we could assign: |
|||
<lang rexx:>A.1=42 |
|||
A.2=144</lang> |
|||
and the '''A''' array would appear to have two elements (assigned |
|||
and defined). |
|||
Now; lets try something different: |
|||
<lang rexx:>A.50=42 |
|||
z=2 |
|||
A.z=144</lang> |
|||
and as with the 1<sup>st</sup> program, the '''A''' array would |
|||
appear to have (again, as before) two elements (assigned and defined). |
|||
And, now for the fly in the ointment: |
|||
<lang rexx:>A.50=42 |
|||
z='fly' |
|||
A.z=144</lang> |
|||
So, now we have (as previously) exactly two elements of the array defined, one |
|||
element <u>identified</u> as <big>50</big> (two decimal digits or |
|||
characters), and another element <u>identified</u> as <big>fly</big> (three lowercase |
|||
letters). |
|||
And, if the two assignments were performed elsewhere (say, some subroutine or |
|||
function), then there isn't really a handy or viable method to find out how many |
|||
elements there are in the '''A''' array. If the range of |
|||
values for the elements is known, and the range is reasonable, one method is |
|||
just to traipse through all the possible elements and determine how many of them |
|||
are defined. For the most part, this isn't a viable nor practical |
|||
method. Most programmers, when assigning a value to a new element, keep a |
|||
list of all the (unique) element names (or indices, as that would be what people |
|||
would call them if the elements are integers). |
|||
Note that nowhere does the REXX programmer tell/inform/declare how many elements that |
|||
the '''A''' array has (or can have). Indeed, there is no |
|||
way for anything in REXX to be declared/defined/allocated/etc. |
|||
Well, OK, OK, '''labels''' are defined by ... er, ... defining/using |
|||
them, and functions (or subroutines, routines, et alii) are kinda defined by usage, |
|||
that is, when referenced in REXX statements. Another thing |
|||
are ''conditions'' (or subroutines) that handle exceptions, but all |
|||
of these require a '''label''' which is identified by a colon after |
|||
a symbol (statement label). |
|||
[Yes, yes, this train of thought has a caboose.] |
|||
I would like (besides world peace and the end to world hunger) to (possibly, |
|||
kind of, maybe) ''define'' what an '''array''' is |
|||
and for that matter, what an element of an array is --- at least, |
|||
as far as the aforementioned Rosetta Code task. |
|||
By the way, no matter how it is defined, finding the number of elements of an |
|||
array is problematic for the REXX language, but of course, we REXXers have a |
|||
way to deal with this problem. Some REXX implementations have a method |
|||
to vary a '''do''' loop (structure) index to each of the defined |
|||
elements, but it's not part of the Classic REXX language definition. |
|||
-- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 00:31, 8 October 2015 (UTC) |
|||
----- |
|||
:'''You are right; but in my defence...''' |
|||
:The task was very popular and gained ten language examples by the time I promoted it with their editors not having much trouble finding a comparable interpretation of the task description. I usually look for at least four, and no unresolved issues in the talk page; but I now realise that there should be (more of) an element of "time-served as a draft" in my loose equation of when to promote from draft. |
|||
:On your specific language questions, you bring up a point that I think Perl might share, as at least with hashes their is a method of providing a list of keys and creating a hash out of them with all the vales set to undefined. you then have the ability of a key existing in the hash but its value being undefined. Some languages might explicitly allow sparse arrays where possibly non-contiguous ranges of indices are allocated in memory making the concept of number of elements even more complicated. |
|||
:I suggest you first attempt to interpret the task in the manner of the other examples then write about possible differences concisely with small example(s) in the task page or point to a larger exposition in the talk page? |
|||
:--[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 07:13, 8 October 2015 (UTC) |
|||
:'''P.S.''' I have just seen that [[Array_length#J]] does this kind of extra explanation I mentioned. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 07:19, 8 October 2015 (UTC) |
|||
== Be careful with the IP blocks! == |
|||
WilliamNess reported on IRC that he's blocked because of an IP block that he didn't recognize. That means he's behind Cloudflare, and you inadvertently blocked at least one Cloudflare reverse proxy. :( ... and from the sound of it, you got a good chunk of Europe. --[[User:Short Circuit|Michael Mol]] ([[User talk:Short Circuit|talk]]) 18:45, 3 January 2016 (UTC) |
|||
: I cleaned it up. MW doesn't make it easy to do through the web interface, so I went DB delving and disabled all autoblocks and cleared all outstanding IP blocks. --[[User:Short Circuit|Michael Mol]] ([[User talk:Short Circuit|talk]]) 19:10, 3 January 2016 (UTC) |
|||
== Spam == |
|||
There's quite a bit of spam visible at [[Special:RecentChanges]]. (I started to work on it but without delete privileges it's not very effective.) I tried to tell Mike but [[User talk:Short Circuit]] seems to be protected. |
|||
[[User:CRGreathouse|CRGreathouse]] ([[User talk:CRGreathouse|talk]]) 20:00, 20 January 2016 (UTC) |
|||
==massive and erroneous editing== |
|||
Since you are the creator of the Rosetta Code task "Heronian Triangles", I thought it should be |
|||
brought to your attention that user CRGreathouse has done massive (global) editing for that task, |
|||
and among other things, he made the Rosetta Code task preamble less readable (especially the math formulae, as |
|||
I had made them larger to make the italics and superscripts more readable). Now, that's a subjective |
|||
thing, so I won't push that any further, I think a task's editing and re-editing of the preamble would just be |
|||
counterproductive. |
|||
However, he removed a substantial amount of the REXX (programs) preambles which explains what and how the |
|||
REXX programs worked and why the REXX programs made certain (logic) decisions. |
|||
Also, the 2nd REXX program (which is the version that is seven times faster) was removed without comment or discussion. I thought that what the ''discussion page'' was for. |
|||
I also thought the numerous changes made to the REXX programs were for the worse, and it seemed those changes |
|||
weren't beneficial nor made the reading of the program and/or comments any better. |
|||
Not the least of which, the '''Ring''' language was removed in its entirety, and I couldn't easily find who |
|||
added that entry. |
|||
Because of the massive changes, I couldn't just undo the changes he made, it would've undone too many other changes. |
|||
If you could track down the author of the '''Ring''' author and inform him to re-enter that programming entry along with any comments and output, I'm sure it would be appreciated. |
|||
I spent over an hour restoring my comments, the two original REXX programs, their output, and the prologues of the two programs and an epilogue. It seems such a pity to waste this much time undoing these massive damaging |
|||
changes. |
|||
I do not want to address CRGreathouse directly, as I don't want to start an editing war. But this massive |
|||
change was the straw that broke the camel's back. I think I used up my silver bullets, so I only restored |
|||
what I thought was an excessively damaging change to the one language entry that I know extremely well (plus, I was the |
|||
original author). I have no idea why he removed the better of the two REXX versions, but both versions |
|||
have their merits, the the 1<sup>st</sup> REXX version is the simplest (and shorter) and easier to understand, |
|||
the 2<sup>nd</sup> REXX version is the preferred and robust version meant for ''prime-time'' execution. |
|||
Lastly, I also have no idea why the '''Ring''' programming entry was removed without so much as a comment, |
|||
perhaps it wasn't worthy? Or perhaps the baby was thrown out with the bathwater. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 21:31, 8 July 2016 (UTC) |
|||
== [[Multi-dimensional array]] == |
|||
Hello, [http://rosettacode.org/mw/index.php?title=Multi-dimensional_array&diff=237578&oldid=237541 I added a question on storage order] to this task, as it's a very important thing to know when calling libraries from another language, or even when programming in only the given language, in order to optimize memory access. There is an ongoing discussion about Fortran in the talk page, by the way. As this discussion shows, misconceptions are common. I don't know if there is a specific task on RC for this question, however I think it's the right place in a task about multi-dimensional arrays. |
|||
[[User:Arbautjc|Arbautjc]] ([[User talk:Arbautjc|talk]]) 12:27, 25 October 2016 (UTC) |
|||
== previously deleted REXX subroutine entry == |
|||
Sometime in the past, you moved (and then deleted the original) an entry (page) of the REXX subroutine '''$ERR.REX'''. |
|||
18:58, October 3, 2014 Paddy3118 (Talk | contribs) deleted page $ERR.REX (Moved.) |
|||
(Yeah, yeah, I know, about a thousand days ago ···) |
|||
It is, as I believe, what "you" guys call an ''orphan page''. A better word (I think) would be a ''common'' subroutine or function, that is, a page that belongs to (but not <u>owned</u> by) multiple Rosetta Code examples/entries/solutions. The creation of mine which was to save space within a (REXX) example (as well as the overall space on individual Rosetta Code task's space). That is, instead of including it in a (small, er, small''ish'') REXX example, it (the subroutine/function) would just be pointed to by a link (in a comment usually immediately after the source program). These functions/subroutines are not one or two lines, no siree-bob. There doesn't appear to be a way for a computer programming language entries to point to (the same language) subroutine for inclusion (within the programming entry). I chose to use add a comment with a link (after the programming entry) that points to the (commonly used) subroutine. |
|||
To see this "error", see the Rosetta Code page '''$SPELL.REX''', an altered Rosetta Code name for the actual program (function) which is named '''$SPELL#.REX'''. |
|||
The sentence (link) that doesn't work is: |
|||
The '''$ERR.REX''' REXX program is included here ──► [[$ERR.REX]]. |
|||
The above page can be seen here: http://rosettacode.org/wiki/$SPELL.REX |
|||
There are others (links) that also fail similarly. |
|||
Now, most (if not almost all) Rosetta Code users don't have any sophisticated subroutines/functions of the type that I code up (mine intend to be super-sized versions of general programs. A case in point is my '''$SPELL#''' REXX function that spells '''any''' number you can enter (well, any number up to around <strike>600</strike> 3,000 decimal digits), along with options for spelling currency symbols, exponentiated numbers, use of commas in the translated number, "saying" of decimal points, decimal fractions, exponents, leading signs, American or English spelling (well, more than spelling, the English have a different system that uses milliards and the such), and many other options. One options, expressing numbers as an ordinal (which I intend to add as a Rosetta Code task soon). The use of ordinal numbers will, in turn, become another new Rosetta Code task (also, to be entered soon). I could've just removed (very very very carefully) all the options that weren't needed, but that seemed like a lot of work (crippling of features), and worse, now there would exist multiple versions of the same function (by name), and that would surely be confusing whenever somebody comes across a version that doesn't work (compared to another version of the same name). The program (subroutine/function) that was deleted was a general-purpose error routine that issued a myriad of error conditions (and does some minor fix-ups like enabling console output), as well as insuring that the error message was actually seen by the end-user (i.e., not suppressing error messages), as well as displaying the error message in red (if the terminal supports color). Other features are to add whitespace to the error text (making the error easier to see), as well as what program is issuing the error message, and then set the return code (R.C. or RC) in REXX (or the host environment). |
|||
That deleted (subroutine) entry was pointed to by a number of REXX entries that used that subroutine. |
|||
There are numerous other entries that utilize the same mechanism; REXX entries that use a common subroutine, and the subroutine was large enough to move it to it's own page instead of cluttering up multiple REXX examples. |
|||
The only one that was broken (as far as I know) was the link to '''$ERR.REX'''; all the other links (fortunately) are intact (again, as far as I know) and still work as intended. |
|||
I have tried to edit the original (that was deleted), but I received an error message that stated that the entry has been deleted. I hate things that one can't fix. |
|||
One problem with moving (and deleting) the REXX subroutine ('''$ERR.REX''') to a page that used it (invoked it) is that you didn't know that other REXX entries that also used the exact same subroutine and also had a link pointing to it, and now those links are now dead (that is, they don't work as they are pointing to an entry that no longer exists. |
|||
Could the original file/entry (that was deleted) be restored to enable those links that were made invalid? Either that, you could put in place a '''re-direct''' thingy so that the other links would work again. I believe that would be the easiest (and lest work) that would enable the broken links to work. |
|||
I never noticed the failing links until someone mentioned to me that one of my comments mentioned the location (via a link) to one of my REXX subroutines, but it is no longer functional. |
|||
There are a few handfuls of these types of links, and I no longer know where they all are. I think re-instating the original link (that worked) would be the easiest to make thinks work again, ... the original entry (now broken), and all the others that are currently broken. nbsp; Because of the way it was removed (I think), the <big>''' ''what links here'' '''</big> thingy doesn't function. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 04:07, 6 September 2017 (UTC) |
|||
By the way, it isn't an ''orphan page'', as ''' ''What links here'' ''' shows that it isn't an orphan. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 23:35, 6 September 2017 (UTC) |
|||
----- |
|||
As a followup, the REXX language doesn't have any trigonometric functions, nor for that matter, even a '''sqrt''' (square root) function. |
|||
There are two ways to handle this (the lack of some common functions, in particular, '''sqrt'''). |
|||
:::* Code (in-line) a '''sqrt''' function |
|||
:::* Code an external function named '''SQRT''' |
|||
(For the external name, the actual file extension name would be operating system dependent; the |
|||
reasons why it should be in capital letters is in the way REXX was developed many many years ago.) |
|||
Now, when one enters a REXX program in Rosetta Code, you can write the code either way, but the 2<sup>nd</sup> method does not lend itself easily here on Rosetta Code. |
|||
Fortunately, the '''sqrt''' function (or others of the same ilk, but not-so-much for trig functions and the log functions) can be coded fairly small, but an efficient '''sqrt''' function (the kind that I like to write) ain't so small (but it runs fast, and supports the returning of ''complex'' results). I choose to just condense (compact) my version of the '''sqrt''' function instead of supplying an external version. I also chose to not comment the compacted REXX statements, as explaining how the '''sqrt''' function works isn't/wasn't part of the Rosetta Code task(s). |
|||
I did the same for other (rather small) REXX functions, and it does add REXX code to the end of the REXX programs and detract from the readability of the REXX entries somewhat. But at that time, I didn't know much about the ways and means of entering ''common'' REXX functions/subroutines in/on Rosetta Code examples (and, as far as I know, there still isn't a means). Hells bells, I didn't even know enough to create a new page. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 04:54, 6 September 2017 (UTC) |
|||
:Hi Gerard. It was a long time ago! I have skimmed your comment and went looking through my past contributions list and: |
|||
:* Yes, I was moving a REXX entry on that day. |
|||
:* I have no displayed edit at that time. I jump from edits at 14.49 to 23:00. |
|||
:: Note that this isn't really a REXX entry ''per se''; it's a stand-alone page that isn't ''directly'' a part (an entry/example) of a Rosetta Code task, but it is a common subroutine/function that is referred to by several bona fide REXX entries. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 22:02, 6 September 2017 (UTC) |
|||
:I also can't see any mention around then of file ERR.REX in my contributions log? |
|||
:: It's named: |
|||
$ERR.REX |
|||
:'''STOP PRESS''': A search has found http://rosettacode.org/wiki/$err.rex . Could it be that you forgot the name? --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 18:43, 6 September 2017 (UTC) |
|||
:: No, I didn't forget the name. '''$ERR.REX''' |
|||
:: -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 22:02, 6 September 2017 (UTC) |
|||
----- |
|||
Did you go to the Rosetta Code '''$SPELL.REX''' page [that was mentioned above, it's in the 2<sup>nd</sup> light-blue box (on my browser)]? ... re-quoting text from above ... |
|||
███████████████████████████████████████████████████████ |
|||
<br>To see this "error", see the Rosetta Code page '''$SPELL.REX''', an altered Rosetta Code name for the actual program (function) which is named '''$SPELL#.REX'''. |
|||
The sentence (link) that doesn't work is: |
|||
The '''$ERR.REX''' REXX program is included here ──► [[$ERR.REX]]. |
|||
The above page can be seen here: http://rosettacode.org/wiki/$SPELL.REX <br> |
|||
███████████████████████████████████████████████████████ |
|||
and once there, try to click on that: ''The $ERR.REX REXX program is included here ──► $ERR.REX thingy''. |
|||
I tried to get you to take the grand tour so you can see an actual "failure" instead of one of my own contrivance. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 22:02, 6 September 2017 (UTC) |
|||
Hi Guys, Sorry to butt in to the conversation but I may be able to help. Paddy3118: That page '''did''' get deleted. It shows up in the deletion log and if you try to go to http://rosettacode.org/wiki/$ERR.REX you get the message quoted above. The message says it was moved but I can't find where. $err.rex was added in 2016. |
|||
Some questions for Gerard: Is the $err.rex essentially a duplicate of $ERR.REX? Could you just change the links to point to [[$err.rex|$ERR.REX]]? If I restore $ERR.REX can we convert $err.rex to a redirect page or does it have different content? |
|||
: The page was supposed to be named in capital letters (as that is what the REXX program name is, and the original name was). Renaming the original file isn't helping to clarify the naming problem, or the linking issue). However, I wouldn't be adverse to having it both ways, that is, install a ''re-direct'' thingy so it can be found any which way. |
|||
: As to changing the links ... I don't know where they all are. Because of the broken link, I can't use a ''What links here'' tool. But why does anybody have to change all the links (wherever they may exist) when they were working correctly in the first place? This is just a symptom, and the cure shouldn't be worse than the disease. If a file (or entry, or whatever) gets moved, make sure all the links to it remain in working order, even if a re-direct is needed. |
|||
Some of those links were entered far to long ago for me to remember where they all are. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 23:35, 6 September 2017 (UTC) |
|||
Also, it may be useful to make a category page to attach these REXX files to so this doesn't happen again. How do you refer to these pages(as a collection) REXX libraries? REXX NBIFs? REXX Subroutines? --[[User:Thundergnat|Thundergnat]] ([[User talk:Thundergnat|talk]]) 22:51, 6 September 2017 (UTC) |
|||
: This won't happen again if they stay put, that is, don't get moved and/or renamed --- if it works, don't fix it. If it does get fixed, then fix everything that refers (links) to it. I know it's easy to "fix" something, and have somebody else take care of the follow-out. But, to answer your question: I don't refer to those pages (as a collection), for the main reason, they aren't a collection --- a loose hodge-podge or assorted REXX functions/subroutines/routines that are individually referred (invoked) by various REXX programs, most of which a user wouldn't care (or even have knowledge of) --- this kind of stuff happens ''behind the curtain'' and shouldn't be looked at or be concerned about). The '''$ERR.REX''' is just one (internal wolf in an external sheep's clothing?) support (REXX) program that is used by several other REXX programs (Rosetta Code entries/examples), and REXXers don't have a ''library'' as such (although they may be stored in something like a library/directory/folder), they are just (REXX) programs that happen to reside in such a place that the REXX interpreter can (and must) locate them when invoked/called. Most REXXers place these support programs (for a lack of a better name) in the same place (directory, folder, or mini-disk) as all their other REXX (mainline) programs. The REXX language doesn't support a '''DLL''' library type thingy. This is the closest thing to making those programs appear as if they were a (regular REXX) '''BIF''' (built-in function). Also, I don't know what a '''NBIF''' is, and a search on the google-net didn't help any. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 23:35, 6 September 2017 (UTC) |
|||
Just in case it wasn't obvious: '''REXXers''' are REXX programmers. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 23:42, 6 September 2017 (UTC) |
|||
::Ah. So this won't happen again as long as it doesn't happen again. Somehow I don't take much solace in that. BIF - built in function; NBIF non - built in function. No? ok, no. Well whatever you do or don't call them, since you have no opinion '''I'm''' going to call them REXX library routines. |
|||
::: But, but, but, but, they ain't '''library''' routines. I realize you can choose to call them anything ya want, but that would be a misnomer, and ''library'' carries with it many notions and distinctions. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 23:54, 6 September 2017 (UTC) |
|||
:::: I asked for your input and I got "a loose hodge-podge or assorted REXX functions/subroutines/routines that are individually referred (invoked) by various REXX programs" [sic]. Perhaps '[Category:Rexx library routines]' is not as precise, but it isn't as flippant. If it makes you unhappy and you want to change it, feel free. It is a public wiki. Other than undeleting $ERR.REX, there is nothing I did that you couldn't. --[[User:Thundergnat|Thundergnat]] ([[User talk:Thundergnat|talk]]) 00:48, 7 September 2017 (UTC) |
|||
:::: Sorry that you misunderstood my reply. I was trying to ''describe'' what those thingys were, not ''name'' 'em, but in any case, what you choose for a name is OK, as it's just a place-holder name (as I understand it), not necessarily a description. No flippancy was intended. I don't fully understand what a ''category'' does, but if it helps "place" and/or "name" the stuff, then it's a good thing, of course. By the way, I'm not unhappy, --- I was trying to think of a more (and/or accurate) name of such an animal, but I couldn't come up with one. If there was any unhappiness, it was my failure to come up with a better name. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 01:08, 7 September 2017 (UTC) |
|||
:::: I understand that I could've added a ''category'', (I think), but I didn't even know that was an option, nor did I even think that would solve the problem (with $ERR.REX and others). I tried several things, I thought that merely changing the deleted entry would work, but I apparently didn't have the privileges needed for that to happen. If you told me that merely added a ''category'', would've fixed the problem, I could've done that --- well, with a little (or more than a little) help in setting up the ''category'' page. The use of a ''{{category}}'' wasn't mentioned, I thought you were looking for descriptive/definitive name for such an animal for some other purpose. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 01:40, 7 September 2017 (UTC) |
|||
:::: Just an aside, how does one add a ''category'' page? -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 01:40, 7 September 2017 (UTC) |
|||
::::: Sigh. [http://www.letmegooglethat.com/?q=mediawiki+category&l=1| Let me Google that for you] --[[User:Thundergnat|Thundergnat]] ([[User talk:Thundergnat|talk]]) 02:17, 7 September 2017 (UTC) |
|||
:Because these REXX pages are not "standard" could they have a prominent comment added on their purpose on RC after they are "tidied up" so they will ''remain'' good, tidy, RC pages? That comment might also include mention of the consequences of them being moved (or how best to move them if they do need moving). Thanks. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 06:17, 7 September 2017 (UTC) |
|||
:: Actually, nothing was moved. The main fix (that I couldn't perform, I didn't have the authority, and it was a lack of knowledge about that restriction that stymied me in trying to fix the problem) was to "un-delete" the deleted page (either '''$T.REX''' or '''$t.rex''' --- or something to that effect), and (I think) one ''re-direct'' was added (for '''$T.REX''' or '''$t.rex'''). All the other REXX pages just had a ''category'' added. If you could write something that would be acceptable to all the powers-that-be, I'll add it to all those "non-standard" entries that I have entered. All the REXX routines already have a comment stating what the subroutine/function/routine is supposed to be used for and by what (or whom?) it is invoked for. I'll gladly add whatever paragraph would be suitable. However, the text at the top of the ''category'' (Category: REXX library routines) that was added has a very good explanation of what's what. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 06:57, 7 September 2017 (UTC) |
|||
== erroneous creation of a Rosetta Code task == |
|||
Paddy (or any other administrator). |
|||
I erroneously created a Rosetta Code task instead of a (new) discussion page for the Rosetta Code task: '''Eertree'''. |
|||
The erroneous Rosetta Code task name is: '''Suffix trie'''. |
|||
<br>Note that it is '''trie'''. |
|||
Somehow, when I thought I had clicked on the ''Discussion'' tab in the '''Eertree''' task, I had instead, created a new Rosetta Code task. |
|||
The text of which was that the '''Eetree''' task use a URL that was misspelled or just plain missing (or some other explanation). |
|||
<br>See the ''Discussion'' page for the '''Eertree''' task. |
|||
One bad fallout is that the defunct or misspelled URL (or whatever) now points to a valid page on Rosetta Code. |
|||
That erroneous Rosetta Code task ('''Suffix trie''') needs to be deleted as soon as it is convenient. |
|||
<br> -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 21:42, 13 October 2017 (UTC) |
|||
== erroneous modification of the Wikipedia entry for '''Rosetta Code''' entry == |
|||
Paddy (or any other administrator, particularly Michael Mol, if you could contact him, as he entered the original at Wikipedia): |
|||
The user "Siskus" has been making erroneous and incorrect updates to the '''Rosetta Code''' entry on Wikipedia. |
|||
I know this may not be the place for this discussion, but if someone could get hold of Michael Mol and inform him of what is |
|||
happening on that site regarding the '''Rosetta Code''' entry. |
|||
In particular, Siskus has incorrectly updated the programming languages to reflect what Siskus called the top 25 computer programming languages, and in addition, has added broken links, or more specifically, non-existent links (to computer programming languages). |
|||
I believe the changes could be construed as malicious, but I leave that judgement to others. |
|||
The original computer programming list (and somewhat modified/expanded/updated by me to reflect the current state of Rosetta Code as far of the number of tasks, computer programming languages, and the total number of programming entries/solutions) had computer programming languages that were widely known by the general public, and now, some of those names of popular programming languages have been removed. |
|||
I have un-did (rolled back) the three erroneous changes made by Siskus, but an edit war is the last thing that Wikipedia needs (concerning Rosetta Code). |
|||
I do not know how to raise this issue at Wikepedia about this issue (or even if I should), so I'm relying on Michael Mol (or some other person) to look into this problem and hopefully, find a solution. <!-- By the way, Siskus is back on Rosetta Code, albeit using another alias, and has already targetting REXX entries (again!!). !--> I am hoping that this isn't the beginning of worse things to come. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 17:17, 16 July 2018 (UTC) |
|||
----- |
|||
I have been in contact with Michael Mol (via regular e-mail), and he has asked me to ask some Rosetta Code admins (and, oh joy, I picked you) and/or heavyweights to help Michael Mol understand what is probably needed to flag (Mol's word) a certain user (and his two or more sock puppets) on Wikipedia). This concerns many massive malicious and damaging changes on the '''Rosetta Code''' entry on Wikipedia. The original '''Rosetta Code''' entry was created my Michael Mol, ... then, apparently, the original was removed/deleted as not being "noteworthy", and apparently, it was then later re-instated or the deletion was un-done. Since then, I have been updating various Rosetta Code statistics (number of tasks, draft tasks, number of computer programming languages on Rosetta Code, and the number of programming entries/solutions) and such things like creating a (bullet) list of some commonly well-known names of the computer programming languages entered on Rosetta Code. This has, in addition to facts concerning Rosetta Code, makes it known that Rosetta Code is noteworthy and is is indeed active and thriving with almost 60,000 programming entries/solutions. In any case, Siskus (and later, two sock puppets) have been un-doing my un-doing of his un-doing, and the latest un-doing was done by a user named MichMol (another sock puppet). At this point, I e-mailed Michael Mol (the real one) and he asked me to help find out who would know about addressing this issue and what would be needed to try to find or create a solution to this problem(s). Michael will be looking for somebody at Wikipedia that might know how to fix this situation. I'm hoping that the '''Rosetta Code''' entry on Wikipedia could be frozen (or locked), and that would mostly solve the problem with the vandalism. I hate to discuss this on this Rosetta Code forum, so I would appreciate some form of communication other than here, unless you'd require this discourse to be here instead of e-mail. Michael Mol has my e-mail address if you need it. I will await for your advice or somebody else to help us with this problem. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 09:55, 25 July 2018 (UTC) |
|||
:Hi Gerard. I was fighting with the awful wikipedia system to stop them removing the RC entry and trying to get it reinstated. I gave up. I wasn't the only one facing the awful WP moderation of that time - there were others with similar gripes, and I think it also had column inches in national newspapers. I'm done with that stress. I now hardly ever edit anything on WP and had just wished the contributors, such as yourself, luck with WP. |
|||
:If you do talk to a WP person and they are looking for someone who can give another view, then you could put my name forward; but I thought WP editors were dicks with power at one time, and I am loath to stoop in again. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 07:39, 28 July 2018 (UTC) |
|||
::Paddy, I don't see your point. https://en.wikipedia.org/wiki/Rosetta_Code is visible for me. I did not check Gerard's points though. --Walter Pachl 11:04, 28 July 2018 (UTC) |
|||
::: Walter: The sock puppet for Siskus (the fake userid ''MichMol'') stated that "Bad html makes this page partial invisible in e.g. Opera" (the summery from the history page) was incorrect and was intentionally misleading, and it was just used as a bogus reason to undo the un-doing of the un-doing of the un-doing of the un-doing of the ... -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 19:22, 28 July 2018 (UTC) |
|||
::: Paddy: yes, I agree with you that the Wiki moderation is next to awful, and it also seems very capricious. I was reading about one person that they banned, and it took ''forever''. Pages and pages of discussion, and that was a cut-and-dried case of bigotry and hatred speech. Wikipedia does not seem to have an effective way of dealing with abusive and destructive editing. Perhaps a freezing (or locking) of the '''Rosetta Code''' entry on Wikipedia would work, but then, there would be no viable recourse for legitimate updates/edits to be made (except by administrators or others of suitable authority). -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 19:22, 28 July 2018 (UTC) |
|||
== Calmosoft == |
|||
Hi Paddy3118, I just deleted 9 tasks that were entered by Calmosoft where a Google search returned a Leetcode task as the top result with essentially identical task descriptions and test values. I've banned him for a week. See [[User_talk:CalmoSoft]] under "Copying tasks from other sites". He has been warned before. --[[User:Thundergnat|Thundergnat]] ([[User talk:Thundergnat|talk]]) 14:41, 28 July 2018 (UTC) |
|||
:If it is that many, then that seems fair. |
|||
---- |
|||
== wording in the preamble of the task Mind boggling card trick == |
|||
Hi, Donald McCarthy: |
|||
I had a few suggestions and concerns, I thought this would be the best place to address them. |
|||
Some people get quite attached to their task's prose, and I don't know you well enough on |
|||
how you'd take to so many (what may appear as trivial or nitpicking) suggestions. |
|||
Instead of '''pack''', it could just be called a ''normal deck of cards''. |
|||
I think (round) bullets could be used for the four main points, and numbers under those. But I'm |
|||
pretty soft on this. This would make it easier to read and discuss (or refer to) the numerous points. |
|||
1. Create a normal deck of playing cards (half of which are red, half are black). |
|||
or better yet: |
|||
Create a normal deck of playing cards (half of which are red, half are black) and give it a good shuffle. |
|||
Call it a shuffled deck (instead of an assembled pack), and the word '''piles''' could be used instead of |
|||
the word '''stacks''', as '''stacks''' means/suggests something different to computer programmers, and |
|||
'''stack''' also suggests or implies that cards could be added to the top of the stack, whereas it doesn't |
|||
matter how the cards are placed into piles. Also, those '''stacks''' are also called '''piles''' elsewhere |
|||
currently in the text. |
|||
2. Deal from the shuffled deck, and place them into one of three piles. |
|||
Consistent wording (and alignment)  ' could be used for 2.1.1.1. Also, since the red pile isn't really |
|||
red, I put double quotes around it to indicated that it's just called "red", and not, in fact, composed |
|||
of just red cards. Indeed, the colors (''colours'' if you want to use the British |
|||
spelling) of the unseen playing cards are unknown. Ditto for the "black" pile. |
|||
For 2.1.1: |
|||
1. |
|||
1. if it's a black card, then add the ''next'' card (unseen) to the "black" pile. |
|||
2. if it's a red card, then add the ''next'' card (unseen) to the " red " pile. |
|||
For 2.2: |
|||
2. Repeat the above for the rest of the shuffled deck. |
|||
(instead of assembled pack.) |
|||
3.2 It says to choose ... out of each stack. There are, in fact, three stacks. |
|||
<br>3.1 Says '''the number'''. |
|||
<br>3.2 Says '''that number'''. So ... |
|||
2. Randomly choose that number of cards out of the "red" and "black" piles. |
|||
Use '''nobody''' instead of '''we''' at the end of 3.2 (slightly gooder |
|||
Englush). <!-- sic and sic !--> |
|||
... nobody knows). |
|||
If a bullet point has only one entry, then that single entry shouldn't be numbered. |
|||
For 4.1: (also, the red pile isn't composed of red cards (ditto for the black pile), so I included double |
|||
quotes around the pile named '''red''' and '''black''' (this may not be enforced strictly in the rest of |
|||
the task's preamble, but I think it should): |
|||
Check the mathematician's assertion that: |
|||
<big> '''The number of black cards in the ''black'' pile equals the number of red cards in the ''red'' pile.''' </big> |
|||
(It's hard to guess ''how'' or if) the mathematician enunciated/stressed the above annotated |
|||
''red'' and ''black''). I thought it was a much more clearer when |
|||
talking about ''the number of red cards in the red pile'' ... If there are ten cards in the |
|||
red pile, then there're ten cards in the |
|||
red pile, some of which are red (but not read, as they are unseen). Sometimes, written language gets |
|||
in the way of what's intended to be meant (or understood). |
|||
I've already corrected a misspelling and added other whitespace to the (draft) task's preamble. |
|||
What do you think? Should I go ahead and implement any of the above? |
|||
I could update a copy of the task's preamble and show it to you here, so you see the whole thing and |
|||
discuss/review the changes here first. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 06:27, 26 August 2018 (UTC) |
|||
: '''Hi Gerard.''' |
|||
* Attachment: Yep I'm human; but I need to learn to let go :-) |
|||
* Deck vs Pack: Pack seems natural to me. If Matts video says pack then we could leave it that way. (I don't play many card games, but pack came first to me rather than deck). |
|||
** He says deck! |
|||
* He says pile! |
|||
* Double quotes seems right as it is the name he uses but each "pile" can contain either colour. |
|||
::: Yes, I know, that is why I included the double quotes, to make it clearer. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 09:04, 26 August 2018 (UTC) |
|||
* Numbering: I would like someone to be able to refer to point x.y.z unambiguously. I wouldn't want a mixture of numbered and plain bullet points to make things worse. I had to experiment with the wiki layout and this is what I could do, but I'm no expert :-). |
|||
* I like gooder English :-) |
|||
* "If a bullet point has only one entry, then that single entry shouldn't be numbered. " I'll need convincing on that one. See comment on numbering above.<br> |
|||
: I would just ask you to be careful of doing any changes that might affect previous solutions; but without critique I can't get better. Thanks again Gerard, --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 07:47, 26 August 2018 (UTC) |
|||
:: OK. I take it that you'd prefer that I don't make any changes then. None of the changes that I proposed should no way negate any programming examples. But it does read strangely to my American eyes. As an ancient programmer, I like clear and succinct descriptions and directions (I guess I'm too old to change now). I used to write tons of documentation in a previous life, and I got (me thinks) pretty good at it. It was fun and enjoyable when it was part of what I did so many years ago. Well, it '''was''' the last century, and I miss the IBM 3211's with the '''TN''' chain. But I do wish that '''stacks''' wouldn't also be referred to as '''piles''' later in the task's preamble (towards the end of the preamble). -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 09:04, 26 August 2018 (UTC) |
|||
:: As far as numbering a single bullet point, I read that somewhere on a (real) book of how to write (gooder) English, and that book had a whole, er ..., chapter on writing outlines and chapter headers and sub-headers, and this one of the rules that I remember clearly. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 09:04, 26 August 2018 (UTC) |
|||
:: I know how it is when someone re-writes (or worse, ''completely'' re-writes) a task's preamble. '''Lucky numbers''' was one that was butchered almost beyond comprehension. I still think that it is one of the worst descriptions of how to generate lucky numbers (and ''even lucky'' numbers). Someone wrote a macro-like er ..., "generating" generic general macro thingy, and it reads just awful. Not a good Rosetta Code task description to read and comprehend/understand if you already have a headache, if not, you'll get one. I also had another task changed to something that contradicted what the task's intent was, and I had to just walk away from "ownership" of those two tasks; ya can't have an editorial fight with people who buy ink by the barrel. (I hope you know the meaning of that (American?) expression). As used here, I mean people with admin authorities. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 09:04, 26 August 2018 (UTC) |
|||
:: Actually, the better way of annotating headers is to use: |
|||
1. toothpaste |
|||
1.1 toothpaste creams |
|||
1.2 toothpaste pastes |
|||
1.2.1 commercial pastes |
|||
1.2.3 homemade pastes |
|||
1.3 other forms of toothpastes |
|||
2. toothbrushes |
|||
2.1 manual |
|||
2.2 mechanical (motorized) |
|||
:: which solves the problem of not having unique headers. Everything is explicitly numbered (uniquely). ─── But of course, the Wiki that Rosetta Code uses doesn't support those types of chapter headers (automatically) (at least, that I know of). [I had a fleeting thought of using Roman/Greek dildos (types) instead of tooth tools, but humor can only be stretched so far.] -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 09:04, 26 August 2018 (UTC) |
|||
<br> |
|||
----- |
|||
<br> |
|||
I might as well as tell ya a story, kinda related to my ole days or yore whilst writing a tome on (VM) CMS usage waaaaaay back in the late 70's ... |
|||
I was writing a user introduction on how to use the CMS system and take advantage of some of the services; the "users" were experienced programmers, but not quite used to using CMS and VS/1, most came from MVT/TSO backgrounds. It was a labor (for you, ''labour'') of love and showed my passion for technical writing; I did most of it after hours. One of the gals (yeah, I am quite provincial at times) at the documentation group knew '''Script''' quite well, and her skills were sorely needed as the others just barely knew the fundamentals of that language, and I was stretching their skills of the '''Script''' language). So, she took on the project as she wanted a bit of a challenge on the different indentations and numerous illustrating examples and some other neat things that I was wanting to do. She enjoyed working on the project so much, she would take it home and proofread the hard copies, (as it turned out, most often in bed). The plot thickens. Sometime later, a few weeks as I recall, we had a department party (after hours), and that gal walked up to me and introduced her husband. He (all macho and all of 6' 5" or so) gave me the once-over, and said, "so <u>you're</u> the guy that keeps me up at night, losing sleep and ... <u>''whatnot''</u>." Yeah, it sounded like he underscored it for a reason. Various and wild swirling thoughts leapt to mind as he could've snapped me like a twig, and he did not sound like a happy camper, no siree, Bob. She explained that when she got to some really funny parts of my tome, she would nudge her husband (who was, of course, sleeping), to wake up and read this great funny pun. As it turned out, he had a very wry sense of humor, which I did not recognize on him at all. Ahhhhhhh, the good ole days. That tome was sure worth the time I spent on it. There were a lot of humorous ''Easter eggs'' in the examples. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 09:44, 26 August 2018 (UTC) |
|||
: No. '''Please go ahead''' and make some updates. I have confidence that we can work things out between us and RC to get the task description right. Now we know that we have American and British English to work around as well as connecting with the Video. |
|||
:: I just re-watched the video and this time, was careful to note which words he said, and he did (more or less consistently) use the word '''piles''' instead of '''stack''', and he also used the phrase '''deck of cards''' instead of '''pack'''. so I was thinking about doing a revision here (on your talk page) before I make the changes, so it wouldn't needed to be changed that much on the real task page (hopefully just once). We can make more transparent changes (to a working version here). |
|||
: Thanks for the anecdote. Like you and the Script lady, I too, often take the interesting part of work home with me - I find I understand things better after trying to program some minor detail of an issue. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 10:08, 26 August 2018 (UTC) |
|||
==working copy of the draft task: mind boggling card trick== |
|||
I didn't quite love the wording concerning the swapping, so I added a step (separating the taking of cards from the two piles ("red" and "black"). Also added was the concept of a "bunch" as the taking of a random number of random cards from two other piles and putting (swapping) those bunches (back) into the "other" pile(s) --- it was getting my mind a bit foggy (after all, this is a trick, and I really want to understand the intention here). I hope it's clearer. As the ole saying goes, it may be muddy, but it covers the ground. |
|||
I also thought that telling the dealer to "hold" the top card, and, as the dealer will also be taking ''another'' card (to be placed into the "red" or the "black" pile), and ''then'' the dealer has to place the card (that's being held) into a third pile (the ''discard'' pile) was a bit "heady". --- Hopefully, this is less confusing. As I said in other words, this is a "trick", and readers will be reading quite carefully and be looking for different ways to interpret what is being commanded of them to perform. |
|||
I spent some time on aligning a few statements that benefited from an over/under comparison. |
|||
One thing I didn't like about the YouTube video is that the dealer put the ''top card'' into ''two'' discard piles instead of just one pile. ''Don't do as I say, do as I do'' type of thingy. Grrrrr. |
|||
Also, I had some trepidations, but I Americanized the British words. If you want it back into your "flavor", er ..., I should say, "flavour", no problem, it can be changed back ''tout suite'' if you prefer the wording for the east side of the pond: mimicks, colour, randomising, and perhaps some other verbiage like pack of cards instead of deck of cards, ... -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 16:07, 26 August 2018 (UTC) |
|||
: I generally like the re-wording, except for the loss of the Britishisms, after all, both Matt and I are British. |
|||
: Crucially, your section 3 describes the Python way of doing things, and one of the existing solutions just swaps X times and so would need to be updated. |
|||
: If I am correct on the effect of your changes then why not make them. The task is still draft and it makes for a better task. (But try and leave leave in some of the Britishisms - please :-) |
|||
: --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 16:55, 26 August 2018 (UTC) |
|||
:: There is no Americanisms of any Britishisms, except for ''mimicks'' and ''Maths''. I thought (and also the Rosetta Code wiki) that was a misspelling. I put the British word back. And I thought that ''Maths'' was part of a title, so it was left intact. There is no longer any mention of colour, as the words ''red'' and ''black'' don't need specifying as ''red colour'' and/or ''black colour''. As an aside, it seems that most of the Britishisms are treated by Wiki (on my computer) as misspellings. Perhaps because of some wiki setting? Anyways, no big deal. Please let me know if missed any other words that I had Americanized. Two countries, separated by a common language. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 17:49, 26 August 2018 (UTC) |
|||
:: I don't quite follow you on the re-wording of section 3. Since I wrote it, I'm probably blind to the difference. By the way, I don't know a Python "way", as I don't speak Python. Could you elaborate a bit? -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 17:49, 26 August 2018 (UTC) |
|||
:: As I understood the swapping, if one of the programming solutions (entry) swaps '''X''' times (instead of all at once, so to speak), then the same card (chosen randomly) might be the next random card (also chosen randomly) and put back into the original colored pile. Now, in the global scheme of things, this won't effect the validity of what happens, but it isn't what the video narrator (Matt Parker) said to do. I re-listened and then re-re-listened to the video, and he said to take '''5''' random cards from each pile and swap them for '''5''' random cards from the other pile, not to take a random card from each pile and swap a card from the other pile '''5''' times. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 17:49, 26 August 2018 (UTC) |
|||
:: By the way, I like to see embedded URLs (links) as being underlined, so I showed the YouTube video link as such. My eyes can't tell that much difference between black text and blue text, so the underlining helps make it clear that it's a link. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 17:49, 26 August 2018 (UTC) |
|||
:: Boy, it seems that most of the 820 reviews/comments (for the video) were not kind. For some reason, a number of people fixated on the (awful) die that he rolled (complaining about the props?). -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 17:49, 26 August 2018 (UTC) |
|||
:: So, give me the high sign when I should "move" this working copy to the real McCoy, assuming we iron out the remaining kinks first. (Also, I'm a railroad buff, and there is an interesting story about ''the real McCoy''.) -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) |
|||
:: Does the wording of the (draft) task meet with your approval? -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 08:38, 28 August 2018 (UTC) |
|||
<br> |
|||
----- |
|||
<br> |
|||
''' ''draft task'' ''' <--- (this is boogied up thingy so not to actually cause a draft task to be created in Rosetta Code land, we certainly don't need ''two'' of 'em.) |
|||
Matt Parker of the "Stand Up Maths channel" has a [https://www.youtube.com/watch?v=aNpGxZ_1KXU <u>YouTube video</u>] of a card trick that creates a semblance of order from chaos. |
|||
The task is to simulate the trick in a way that mimics the steps shown in the video. |
|||
; 1. Cards. |
|||
# Create a common deck of cards of 52 cards (which are half red, half black). |
|||
# Give the pack a good shuffle. |
|||
; 2. Deal from the shuffled deck, you'll be creating three piles. |
|||
# Assemble the cards face down. |
|||
## Turn up the ''top card'' and hold it in your hand. |
|||
### if the card is black, then add the ''next'' card (unseen) to the "black" pile. |
|||
### If the card is red, then add the ''next'' card (unseen) to the "red" pile. |
|||
## Add the ''top card'' that you're holding to the '''discard''' pile. (You might optionally show these discarded cards to get an idea of the randomness). |
|||
# Repeat the above for the rest of the shuffled deck. |
|||
; 3. Choose a random number (call it '''X''') that will be used to swap cards from the "red" and "black" piles. |
|||
# Randomly choose '''X''' cards from the "red" pile (unseen), let's call this the "red" bunch. |
|||
# Randomly choose '''X''' cards from the "black" pile (unseen), let's call this the "black" bunch. |
|||
# Put the "red" bunch into the "black" pile. |
|||
# Put the "black" bunch into the "red" pile. |
|||
# (The above two steps complete the swap of '''X''' cards of the "red" and "black" piles. <br> (Without knowing what those cards are --- they could be red or black, nobody knows). |
|||
; 4. Order from randomness? |
|||
# Verify (or not) the mathematician's assertion that: |
|||
<big> '''The number of black cards in the "black" pile equals the number of red cards in the "red" pile.''' </big> |
|||
(Optionally, run this simulation a number of times, gathering more evidence of the truthfulness of the assertion.) |
|||
Show output on this page. |
|||
<br><br> |
|||
----- table of contents comes here, followed by, of course, the computer programming languages examples. ----- |
|||
== curious about the number of userids on Rosetta Code == |
|||
Paddy: I'm a more than a bit curious about all the userids that are being added (apparently each and every day, and almost all of them have no contributions, apparently). Is there a place on Rosetta Code that states how many userids there are, and also, how many of those have any contributions? It would be nice to see how many userids there have been created for each year of Rosetta Code's existence. |
|||
There must be a butt-load of 'em by now (a truly scientific term if I ever heard one). |
|||
<!-- |
|||
From the first names (of the userids being added), I did notice that the userids ''appear'' to be not |
|||
be coming from North America or mainland Europe. |
|||
Hardly the normal amount of for the top 300 male names in the USA: |
|||
Aaron Adam Adrian Alan Albert Alberto Alex Alexander Alfred Alfredo Allan Allen Alvin |
|||
Andre Andrew Andy Angel Anthony Antonio Armando Arnold Arthur Barry Ben Benjamin Bernard |
|||
Bill Billy Bob Bobby Brad Bradley Brandon Brent Brett Brian Bruce Bryan Byron Calvin Carl |
|||
Carlos Casey Cecil Chad Charles Charlie Chester Chris Christian Christopher Clarence |
|||
Claude Clayton Clifford Clifton Clinton Clyde Cody Corey Cory Craig Curtis Dale Dan Daniel |
|||
Danny Darrell Darren Darryl Daryl Dave David Dean Dennis Derek Derrick Don Donald Douglas |
|||
Duane Dustin Dwayne Dwight Earl Eddie Edgar Eduardo Edward Edwin Elmer Enrique Eric Erik |
|||
Ernest Eugene Everett Felix Fernando Floyd Francis Francisco Frank Franklin Fred Freddie |
|||
Frederick Gabriel Gary Gene George Gerald Gilbert Glen Glenn Gordon Greg Gregory Guy |
|||
Harold Harry Harvey Hector Henry Herbert Herman Howard Hugh Ian Isaac Ivan Jack Jacob |
|||
Jaime James Jamie Jared Jason Javier Jay Jeff Jeffery Jeffrey Jeremy Jerome Jerry Jesse |
|||
Jessie Jesus Jim Jimmie Jimmy Joe Joel John Johnnie Johnny Jon Jonathan Jordan Jorge Jose |
|||
Joseph Joshua Juan Julian Julio Justin Karl Keith Kelly Ken Kenneth Kent Kevin Kirk Kurt |
|||
Kyle Lance Larry Lawrence Lee Leo Leon Leonard Leroy Leslie Lester Lewis Lloyd Lonnie |
|||
Louis Luis Manuel Marc Marcus Mario Marion Mark Marshall Martin Marvin Mathew Matthew |
|||
Maurice Max Melvin Michael Micheal Miguel Mike Milton Mitchell Morris Nathan Nathaniel |
|||
Neil Nelson Nicholas Norman Oscar Patrick Paul Pedro Perry Peter Philip Phillip Rafael |
|||
Ralph Ramon Randall Randy Raul Ray Raymond Reginald Rene Ricardo Richard Rick Ricky Robert |
|||
Roberto Rodney Roger Roland Ron Ronald Ronnie Ross Roy Ruben Russell Ryan Salvador Sam |
|||
Samuel Scott Sean Sergio Seth Shane Shawn Sidney Stanley Stephen Steve Steven Ted Terrance |
|||
Terrence Terry Theodore Thomas Tim Timothy Todd Tom Tommy Tony Tracy Travis Troy Tyler |
|||
Tyrone Vernon Victor Vincent Virgil Wade Wallace Walter Warren Wayne Wesley Willard |
|||
William Willie Zachary |
|||
I would certainly like to to be able to see a list of all the names currently on Rosetta Code |
|||
and make a prediction of ''where'' the (new) names are "coming" from. |
|||
Yeah, yeah, I know, ... confidentiality, privacy, and all that there stuff. |
|||
!--> |
|||
-- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 23:17, 12 August 2019 (UTC) |
|||
:Sorry Gerard, but I've never found such a page. I occasionally look up mentions of Rosetta code online, and I know that |
|||
:1. More Coding challenges and Coder training sites are apt to use RC examples. |
|||
:2. There are more Programming language communities mentioning Rosetta Code. |
|||
:3. RC gets mentioned in science papers. Usually by authors wanting a routine, or a corpus of multi-language code. |
|||
:I would guess that people join as a statement of support for what RC has and does - but that's my optimistic side :-) |
|||
:--[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 16:00, 17 August 2019 (UTC) |
|||
::Don't you guys ever check out any of the other links on the site? These are all publicly accessible, don't even need to be logged in. [http://rosettacode.org/mw/index.php?title=Special:Log&offset=&limit=100&type=newusers&user=&page=&hide_tag_log=1 User creation log] --- [http://rosettacode.org/wiki/Special:ListUsers User list] --- [http://rosettacode.org/wiki/Special:ActiveUsers Active users (in the last 30 days)] --- [http://rosettacode.org/mw/index.php?title=Special%3AListUsers&username=&group=&editsOnly=1&creationSort=1&desc=1&limit=250 Users that have made edits] |
|||
::I doubt if there is going to be much of a username <=> locality correlation. The IP addresses of users are not available; (except maybe to [[user:Short_Circuit|Short Circuit]]), that would be a much more reliable (though still suspect) indicator of a users location. --[[User:Thundergnat|Thundergnat]] ([[User talk:Thundergnat|talk]]) 17:26, 17 August 2019 (UTC)) |
|||
::: Where are these links mentioned of Rosetta Code? If (old/experienced/has-been-around-forever) Paddy3118 never found it, how would most people find it? ? Once I found out what the page was called, a search didn't help. I then looked under ''special pages'' and I finally located the '''user list'''. The first page of the list of users (pointed to above) has users up to "'''AI...'''" on the first page, which has around 1,000 users; that gives me a clue (but not a number) of how many users actually exist, as I can only extrapolate the total number based on one letter of the alphabet. All of the '''A's''' have about 4,900 userids. Getting the rest of the names would be a chore (doing 1,000 userids at a time). By the way, I wasn't trying to find out ''where'' the users are from, but I wanted an inkling where they are being created (added) ''from''. If that user (userid) list was readily downloadable, I was thinking about adding (somewhere) a histogram plot of the growth of users on Rosetta Code (plotted maybe by month and/or by year, and stuff like that there. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 19:44, 17 August 2019 (UTC) |
|||
<div style="background:#eee;"> |
|||
::::Replies to several inquiries: <blockquote>Where are these links mentioned of Rosetta Code?</blockquote> Under [http://rosettacode.org/wiki/Special:SpecialPages Special Pages]. |
|||
::::<blockquote>If (old/experienced/has-been-around-forever) Paddy3118 never found it, how would most people find it?</blockquote> Hmm. I'll quote myself.<blockquote>Don't you guys ever check out any of the other links on the site?</blockquote> That's how ''I'' found them. |
|||
::::<blockquote>...that gives me a clue (but not a number) of how many users actually exist,... Getting the rest of the names would be a chore...</blockquote> Or a matter of writing a short program that queries the Mediawiki API. |
|||
::::<blockquote>By the way, I wasn't trying to find out ''where'' the users are from, but I wanted an inkling where they are being created (added) ''from''.</blockquote> If you aren't looking for a geographic location I would suspect the answer would be "the Internet". ¯\_(ツ)_/¯ --[[User:Thundergnat|Thundergnat]] ([[User talk:Thundergnat|talk]]) 20:01, 17 August 2019 (UTC) |
|||
::::: I know a guy that fell overboard from a cruise ship (he wasn't harmed). If you would ask, "where?" I could answer, "in the water". ... Not very helpful. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 16:16, 28 August 2019 (UTC) |
|||
::::Ooo!, Here's another link you might find interesting. [http://rosettacode.org/wiki/Special:Statistics Special:Statistics] Under Special pages -> Admin links-> General-> Statistics. --[[User:Thundergnat|Thundergnat]] ([[User talk:Thundergnat|talk]]) 20:10, 17 August 2019 (UTC) |
|||
</div> |
|||
== "Functional" versions in py of 99 Bottles of Beer == |
|||
The previous versions was the first example to how to "personalize" the song. And this was fantastic. It's the unique funny code in that page, apart the Go Typoglycemic version... :-D |
|||
I was inspired by these py codes, but, modesty apart, I think my solution is better. It's more simple and more readable. |
|||
Do you think we can move the two old functions to "Other solutions" and cite/link them? |
|||
:Hm,probably somone will complain. I usually try and keep the first solution as the fist unless there are reasons not to; and only remove code with good reason (and rarely). Not much help, I know... --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 00:19, 20 January 2020 (UTC) |
|||
:: Ok, no problem... even if the Haskell version translated in Python is really terrible :-D |
|||
:: [[User:Marco Sulla|Marco Sulla]] ([[User talk:Marco Sulla|talk]]) 00:49, 20 January 2020 (UTC) |
|||
::: :-) Your 'Simplified' version will be of more Rosetta value (as defined by the RC landing page - ''to aid a person with a grounding in one approach to a problem in learning another'') next to versions taking a differing approach, than on its own. |
|||
::: Quality is not an inherent property of code, but a function of how well optimized it is for a particular operational and institutional context. Brevity and speed are seldom good proxies for how well code really works in a given context (reliability will often tend to be a slightly better proxy, but even then, readability will depend as much on local conventions and experience as on general guidelines). |
|||
::: Definitions of 'functional' composition tend, incidentally, to focus on building blocks that are '''immutable''' as well as pure, so you will find that many functional programmers would be a little surprised to see that label attached to the 'Simple' version's ''for'' loop, with its mutable variables. |
|||
::: But no matter – the value of Rosetta code lies not in claims to canonicity, but in insight yielded by comparison. [[User:Hout|Hout]] ([[User talk:Hout|talk]]) 01:36, 20 January 2020 (UTC) |
|||
:::: Yes, well... I used the term "functional" because it was already used by the py version of the Haskell translation. Maybe "flexible" is more correct. |
|||
:::: [[User:Marco Sulla|Marco Sulla]] ([[User talk:Marco Sulla|talk]]) 01:56, 20 January 2020 (UTC) |
|||
== Problems with 99 d****d bottle of beer in Py == |
|||
Okay, I'm sorry to disturb you for this... but evidently I can't find a compromise with the user Anonymous31415927. |
|||
1. He targeted my simple version as copied by http://www.99-bottles-of-beer.net/language-python-573.html . And yes, I first wrote a simple version myself, I saw the www.99-bottles-of-beer.net version and I modified it, clearly inspired. I also explicitly linked the original code. But the code is different. I simply copied the *concept* of not repeating "bottles of beer on the wall", but to use it in a variable. |
|||
2. He continue to rename my version. Now is "Python 2, short version". Okay: |
|||
: a. "Python 2" is useless and inexact. It's useless because I wrote the target version before the code. It's not exact because it works also for Python 3 (I tested it on Python 3.9 alpha... :-D). |
|||
: |
|||
: b. He also changed the target version! I wrote "2.6+" and he removed the plus! |
|||
The name I would give to my code is "(Currently) the simplest version". Probably is also the shorter, but who cares. |
|||
I think it's the simplest because it does not manage special cases of 0 and 1, as allowed in the task. |
|||
It simply do one string assignment, a loop and a print inside the loop. Stop. |
|||
More simple than that can only be printing the entire song :-D |
|||
Sorry for the disturb, and Happy new Year, with a *little* retard :-D |
|||
[[User:Marco Sulla|Marco Sulla]] ([[User talk:Marco Sulla|talk]]) 17:44, 26 January 2020 (UTC) |
|||
:Hi Marco.Best to ask him to converse with you and explain his reasoning, politely. Explain what you would want to see, as well as point out factual innaccuracies (such as what Python versions it can run under). Be polite, and ask for similar explanation from the other user. If the other user just indulges in a mute edit war then steps can be taken, but first try and give them a chance to explain themselves, and maybe a compromise will evolve. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 19:28, 26 January 2020 (UTC) |
|||
::Well, the problem is the user seems to be not very open to a normal discussion... We started a discussion on my talk page, and a certain point he removed all the contents and posted only its reply. I wrote to him "I hope this is done by mistake", I restored the page, added its reply and replied. Well, it cleared the page another time. So I simply restored the page and stopped to talk to him. |
|||
::...Well, anyway, I'll try to reason with him. But I'm not so happy and positive :-| |
|||
::[[User:Marco_Sulla|Marco Sulla]] - [[User_talk:Marco_Sulla|talk]] - [https://github.com/Marco-Sulla GitHub] 22:54, 26 January 2020 (UTC) |
|||
::: Oh, and try and be courteous - let your argument persuade on RC. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 23:52, 26 January 2020 (UTC) |
|||
== Perl 6 Fairshare marked incomplete? == |
|||
Um. Why exactly did you mark the [[Fairshare_between_two_and_more#Perl_6|Perl 6 Fairshare]] example as incomplete? It ''' ''already'' ''' computes the sequence at 11, and did so ''' ''before'' ''' you changed the task requirements. What else can I do to make it not incomplete?. Am I just not seeing something? Did you even glance at the code before flagging it? --[[User:Thundergnat|Thundergnat]] ([[User talk:Thundergnat|talk]]) 18:30, 1 February 2020 (UTC) |
|||
:I needed to change the task to use 11 instead of 7, and although I had at one stage read your Perl 6 example, I also had more than one tab open and might have got confused. I can only apologise if I marked a perfectly good example of yours in error. It wasn't meant, and I hope to do better. "My bad" I think is the phrase that fits. Sorry Thundergnat. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 00:07, 2 February 2020 (UTC) |
|||
== liquify image == |
|||
Hi Paddy3118 why did you delete my task? dice according |
|||
"I don't see how this could be accomplished on RC." |
|||
there are many ways to show this in RC for example a link to a video where it shows how to deform the image. Restore the page please |
|||
:As you demonstrate, there is no way to show output on RC. Programs are likely to be huge, or trite, (do you have an example we can look at)? It looked as if it were too far from the norm to even be draft. |
|||
:I decided move it to your own space. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 07:31, 5 March 2020 (UTC) |
|||
== login == |
|||
Paddy, |
|||
Could you please send me the code of login: |
|||
href="/mw/index.php |
|||
-> pachl(at)chello.at |
|||
I forgot how to "sign" entries :-) |
|||
Walter |
|||
:Hi Walter, unfortunately I am not sure of what you are requesting? --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 05:54, 2 April 2020 (UTC) |
|||
::pls send me an email so that I can explain "privately" |
|||
== order of addition of new talk sections == |
|||
Is there an accepted protocol (or generally accepted) order of adding new talk/discussion entries (sections)? I always thought that you add new entries at the end of list. |
|||
:Yep. 99.9% of the time. An exception is major, like notice of task removal. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 20:26, 24 June 2020 (UTC) |
|||
:: Thanks. I will move a top-posting to the bottom for the discussion of the task: ''Determine if a string is collapsible''. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 08:05, 25 June 2020 (UTC) |
|||
== concerning the raw.githubusercontent, English words dictionary == |
|||
I'd thought you'd like to know that the dictionary that you used for finding a better (higher) solution for |
|||
a specific (optimized) word wheel (grid), in particular: |
|||
''https://raw.githubusercontent.com/dwyl/english-words/master/words.txt'' |
|||
isn't in alphabetic order. |
|||
Namely, --- and I haven't looked further then this --- that the '''Y'''s are out of order, and also scattered throughout the dictionary (''throughout'' may be too strong a word here). |
|||
nextpage = site + '/w/index.php?title=Special:PopularPages' |
|||
nextpage_re = re.compile( |
|||
#r'<a href="([^"]+)" class="mw-nextlink">next ' |
|||
r'<a href="([^"]+)"[^>]* class="mw-nextlink"[^>]*>next' |
|||
) |
|||
:: Later, I found out that there were a lot (well, a significant number) of '''Y''' words mixed in with the '''I''' words. I don't know if there is a systemic reason for this. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 15:12, 8 July 2020 (UTC) |
|||
data_re = re.compile( |
|||
r'^<li><a href="[^"]+" title="([^"]+)".*</a>.*\(([0-9,]+) views\)' ) |
|||
title2rankviews = {} |
|||
rank = 1 |
|||
pagecount = 0 |
|||
while nextpage: |
|||
page = urllib.urlopen(nextpage) |
|||
pagecount +=1 |
|||
nextpage = '' |
|||
for line in page: |
|||
if not nextpage: |
|||
# Search for URL to next page of results for download |
|||
nextpage_match = re.search(nextpage_re, line) |
|||
if nextpage_match: |
|||
nextpage = (site + nextpage_match.groups()[0]).replace('&', '&') |
|||
# print nextpage |
|||
npline=line |
|||
datamatch = re.search(data_re, line) |
|||
if datamatch: |
|||
title, views = datamatch.groups() |
|||
views = int(views.replace(',', '')) |
|||
title2rankviews[title] = [rank, views] |
|||
rank += 1 |
|||
page.close() |
|||
I just wanted you to know in case you're doing research/searches/whatever, and you're depending/expecting that the dictionary being in an alphabetic order. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 21:47, 5 July 2020 (UTC) |
|||
print "\n\n Highest page Ranks for user pages:\n" |
|||
fmt = " %-4s %-6s %-3s %s" # rank, views, +/- title |
|||
print fmt % ('RANK', 'VIEWS', '+/-', 'TITLE') |
|||
fmt = " %4s %6s %+3i %s" # rank, views, +/- title |
|||
highrank = [title2rankviews.get(t,[99999, 0]) + [t] for t in nontalk] |
|||
highrank.sort() |
|||
for i,x in enumerate(highrank): |
|||
rank, view, title = x |
|||
movement = nontalk.index(title) - i |
|||
print fmt % (rank, view, movement, title) |
|||
</lang> |
|||
===Sample output on 12 July 2009=== |
|||
By the way, I'm in the process of merging the words from that dictionary with "my" personal ultra-fat dictionary. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 21:47, 5 July 2020 (UTC) |
|||
Since the 25th of June I've added two tasks: 'Send an email' and 'Topological (dependency) sort'. |
|||
:Thanks Gerard for the notice. It seems that there are and should be word lists for different applications; some having easier or more specialised words; swearing, slang,... |
|||
With the new +/- column showing views w.r.t. creation order, you can see that the Knapsack Problem has captured the readers imagination. The Y combinator has a strong showing too. |
|||
:The more I look, the more there is to see ☺️--[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 06:07, 6 July 2020 (UTC) |
|||
'''Is it possible to get views in the last three months rather than total views?''' That would allow me to discount some of the bias due to date created. |
|||
:: I finished up the merging of the words from the (above) mentioned "GitHub user content" (English dictionary), and it added over '''32,000''' words in "my" dictionary. As the new words were being merged, I noticed a whole she-bang of hyphenated words being added. "My" dictionary now has '''947,359''' words in it. Maybe "words" isn't the correct word to use, "entries" would be a better fit. Thanks again for informing me of that English dictionary. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 15:12, 8 July 2020 (UTC) |
|||
<pre>User: Paddy3118 has created 63 new pages of which 31 were not Talk: pages, from approx 600 edits |
|||
New pages created, in order, are: |
|||
Spiral |
|||
Monty Hall simulation |
|||
Web Scraping |
|||
Sequence of Non-squares |
|||
Anagrams |
|||
Max Licenses In Use |
|||
One dimensional cellular automata |
|||
Conway's Game of Life |
|||
Data Munging |
|||
Data Munging 2 |
|||
Column Aligner |
|||
Probabilistic Choice |
|||
Knapsack Problem |
|||
Yuletide Holiday |
|||
Common number base formatting |
|||
Octal |
|||
Integer literals |
|||
Command Line Interpreter |
|||
First-class functions |
|||
Y combinator |
|||
Functional Composition |
|||
Exceptions Through Nested Calls |
|||
Look-and-say sequence |
|||
Mutual Recursion |
|||
Bulls and Cows |
|||
Testing a Function |
|||
Select |
|||
Sort stability |
|||
Moving Average |
|||
Send an email |
|||
Topological (dependency) sort |
|||
== natural sorting, less spaced out == |
|||
I noticed that you stated that your latest edit (for the '''Sample input''') was less spaced out, and that, in part, is true. It was spaced out wider (but didn't require horizontal scrolling), and took advantage of the horizontal real estate, but it was much shorter so that '''Sample input''' section would fit on one screen without vertical scrolling. |
|||
Highest page Ranks for user pages: |
|||
However, it is now quite a bit ''longer'' (vertically). My intent to was to make the '''Sample input''' easier to read (on one screen) without vertical scrolling, and not have the reading of the sub-fields interfere with that visual scanning. Also, one could read the three major headers (sections?) without having to visually compete with the secondary title entries, '''Text strings:''', and its tertiary entries, the examples themselves which are for the most part, ''literals'' (cluttered with their own sub-fields, necessarily so) which read better when having them in their own column. That section of the task's preamble is now eighteen lines longer and the whole is a lot harder to peruse to my eyes, forcing me to now read all the sub-fields. I was going for a more columnar look rather than a vertical/stacked list for a shorter vertical presentation where the primary and secondary/tertiary fields have their own columnar locations. I'm not arguing that it should be changed once again, but I thought you should be aware what was intended and I was trying for a more Wiki-look approach in presenting multiple fields of information that fitted on one screen instead of forcing the reader to vertically scroll to enable to perusing the presented fields of the '''Sample input'''. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 08:53, 7 July 2020 (UTC) |
|||
RANK VIEWS +/- TITLE |
|||
84 2792 +12 Knapsack Problem |
|||
100 2629 +0 Monty Hall simulation |
|||
107 2431 +5 Conway's Game of Life |
|||
132 2013 +1 Anagrams |
|||
199 1368 +2 One dimensional cellular automata |
|||
211 1233 -3 Web Scraping |
|||
218 1189 -1 Max Licenses In Use |
|||
221 1158 -7 Spiral |
|||
256 919 -5 Sequence of Non-squares |
|||
261 900 +4 Yuletide Holiday |
|||
267 866 +0 Column Aligner |
|||
281 809 +8 Y combinator |
|||
290 780 +6 First-class functions |
|||
303 732 -4 Data Munging 2 |
|||
309 718 -6 Data Munging |
|||
315 706 -4 Probabilistic Choice |
|||
332 642 +1 Command Line Interpreter |
|||
351 598 +6 Mutual Recursion |
|||
365 568 +6 Bulls and Cows |
|||
366 566 +1 Functional Composition |
|||
388 501 -4 Integer literals |
|||
407 463 -7 Common number base formatting |
|||
418 436 +0 Look-and-say sequence |
|||
446 375 -8 Octal |
|||
455 347 -3 Exceptions Through Nested Calls |
|||
493 248 +2 Sort stability |
|||
525 207 -1 Testing a Function |
|||
548 186 -1 Select |
|||
559 174 +0 Moving Average |
|||
703 69 +0 Send an email |
|||
725 43 +0 Topological (dependency) sort</pre> |
|||
===Sample output on 24 July 2009=== |
|||
What has happened in the last twelve days? |
|||
* [[Ethiopian Multiplication]] is newly added and is off to a great start. Editors seem attracted to the challenge. I decided to add this as I was drawn by the simplicity of the algorithm. To make it a better RC task I decided on the restriction that you must create the function using a functions to half, double, and test for even-ness. |
|||
* I guess viewers are tired of yet another sort: [[Topological (dependency) sort]] still languishes at the bottom. |
|||
* I created my first #REDIRECT page: [[Russian Peasant Multiplication]] |
|||
* [[Knapsack Problem]] still continues its rise in ranking (thank you). |
|||
* At the top of my table, everything above [[Sequence of Non-squares]] has improved its rank. I tried to think of some other thing thats links them, but nothing special comes to mind. |
|||
* I am not sure if [[spiral]] is unpopular, as it has a lot of views, was my first page ever, but appears seven places down from its original top spot - I remember writing it after creating the Python solution to [[Zig Zag]]. |
|||
Here's the table: |
|||
<pre> Highest page Ranks for user pages: |
|||
RANK VIEWS +/- TITLE |
|||
For easier comparisons, the older presentation is shown below so viewers can do a side-by-side comparison (using two windows). |
|||
79 2898 +12 Knapsack Problem |
|||
97 2707 +0 Monty Hall simulation |
|||
<small>(I was also thinking about ''not'' using the abbreviation '''Equiv.''' (two sections) but I wasn't sure if that was legitimate to use the full uncapitalized word instead. |
|||
106 2490 +5 Conway's Game of Life |
|||
<br>Also, the '''m.a.s''' abbreviation should be replaced with '''MAS''' which could further reduce the width of the '''Sample input''' section.)</small> |
|||
131 2059 +1 Anagrams |
|||
196 1391 +2 One dimensional cellular automata |
|||
208 1257 -3 Web Scraping |
|||
The older presentation below is '''44''' lines deep, the newer revised view is '''62''' lines deep. |
|||
216 1207 -1 Max Licenses In Use |
|||
220 1182 -7 Spiral |
|||
256 936 -5 Sequence of Non-squares |
|||
259 915 +4 Yuletide Holiday |
|||
;Sample input: |
|||
269 878 +0 Column Aligner |
|||
<pre> |
|||
270 871 +8 Y combinator |
|||
# Ignoring leading spaces. Text strings: ['ignore leading spaces: 2-2', |
|||
285 803 +6 First-class functions |
|||
'ignore leading spaces: 2-1', |
|||
300 744 -4 Data Munging 2 |
|||
'ignore leading spaces: 2+0', |
|||
305 733 -6 Data Munging |
|||
'ignore leading spaces: 2+1'] |
|||
312 717 -4 Probabilistic Choice |
|||
321 678 +1 Command Line Interpreter |
|||
# Ignoring multiple adjacent spaces (m.a.s). Text strings: ['ignore m.a.s spaces: 2-2', |
|||
331 648 +6 Mutual Recursion |
|||
'ignore m.a.s spaces: 2-1', |
|||
348 614 +6 Bulls and Cows |
|||
'ignore m.a.s spaces: 2+0', |
|||
360 582 +1 Functional Composition |
|||
'ignore m.a.s spaces: 2+1'] |
|||
384 525 -4 Integer literals |
|||
396 486 -7 Common number base formatting |
|||
# Equivalent whitespace characters. Text strings: ['Equiv. spaces: 3-3', |
|||
407 466 +0 Look-and-say sequence |
|||
'Equiv. \rspaces: 3-2', |
|||
432 410 -8 Octal |
|||
'Equiv. \x0cspaces: 3-1', |
|||
450 367 -3 Exceptions Through Nested Calls |
|||
'Equiv. \x0bspaces: 3+0', |
|||
479 275 +6 Ethiopian Multiplication |
|||
'Equiv. \nspaces: 3+1', |
|||
491 255 +1 Sort stability |
|||
'Equiv. \tspaces: 3+2'] |
|||
516 218 -2 Testing a Function |
|||
537 200 -2 Select |
|||
# Case Independent sort. Text strings: ['cASE INDEPENDENT: 3-2', |
|||
540 192 -1 Moving Average |
|||
'caSE INDEPENDENT: 3-1', |
|||
669 90 -1 Send an email |
|||
'casE INDEPENDENT: 3+0', |
|||
676 79 -1 Topological (dependency) sort |
|||
'case INDEPENDENT: 3+1'] |
|||
99999 0 +0 Russian Peasant Multiplication |
|||
# Numeric fields as numerics. Text strings: ['foo100bar99baz0.txt', |
|||
'foo100bar10baz0.txt', |
|||
'foo1000bar99baz10.txt', |
|||
'foo1000bar99baz9.txt'] |
|||
# Title sorts. Text strings: ['The Wind in the Willows', |
|||
'The 40th step more', |
|||
'The 39 steps', |
|||
'Wanda'] |
|||
# Equivalent accented characters (and case). Text strings: [u'Equiv. \xfd accents: 2-2', |
|||
u'Equiv. \xdd accents: 2-1', |
|||
u'Equiv. y accents: 2+0', |
|||
u'Equiv. Y accents: 2+1'] |
|||
# Separated ligatures. Text strings: [u'\u0132 ligatured ij', |
|||
'no ligature'] |
|||
# Character replacements. Text strings: [u'Start with an \u0292: 2-2', |
|||
u'Start with an \u017f: 2-1', |
|||
u'Start with an \xdf: 2+0', |
|||
u'Start with an s: 2+1'] |
|||
</pre> |
</pre> |
||
===Sample output on 6 August 2009 === |
|||
So, what's been moving! <br> |
|||
Well I am glad to see that I have to go right down to [[Sort stability]] before I see a task that is lower in the rankings than last time. [[Y combinator]] has leap-frogged even more of my tasks, from +8 to +11; and [[Bulls and Cows]], and [[Ethiopian Multiplication]] are also doing well. |
|||
(Editorial note: the above '''Sample input''' has been shortened and elongated, plus other changes made.) |
|||
Newly created is [[First-class Numbers]]. When reviewing [[wp:First-class function]], There were comments in the talk page about what languages really have FcF. I decided that rather than bring the discussion to RC, I would create a sister task - similar but using numbers and asking examples to compare the numbers solution with the functions solution. I guess people can still get around it, but I hope they follow the spirit of the task. |
|||
<code> |
|||
Highest page Ranks for user pages:<br><br> |
|||
RANK VIEWS +/- TITLE |
|||
76 3064 +12 [[Knapsack Problem]] |
|||
93 2826 +0 [[Monty Hall simulation]] |
|||
103 2611 +5 [[Conway's Game of Life]] |
|||
127 2156 +1 [[Anagrams]] |
|||
195 1442 +2 [[One dimensional cellular automata]] |
|||
208 1285 -3 [[Web Scraping]] |
|||
213 1259 -1 [[Max Licenses In Use]] |
|||
219 1218 -7 [[Spiral]] |
|||
249 999 +11 [[Y combinator]] |
|||
259 966 -6 [[Sequence of Non-squares]] |
|||
261 956 +3 [[Yuletide Holiday]] |
|||
268 919 -1 [[Column Aligner]] |
|||
274 861 +6 [[First-class functions]] |
|||
298 785 -5 [[Data Munging]] |
|||
301 776 -3 [[Probabilistic Choice]] |
|||
302 770 -6 [[Data Munging 2]] |
|||
315 729 +1 [[Command Line Interpreter]] |
|||
317 721 +7 [[Bulls and Cows]] |
|||
321 711 +5 [[Mutual Recursion]] |
|||
350 631 +1 [[Functional Composition]] |
|||
373 562 -4 [[Integer literals]] |
|||
393 508 -7 [[Common number base formatting]] |
|||
398 501 +0 [[Look-and-say sequence]] |
|||
424 446 -8 [[Octal]] |
|||
437 427 +7 [[Ethiopian Multiplication]] |
|||
451 392 -4 [[Exceptions Through Nested Calls]] |
|||
496 276 +1 [[Sort stability]] |
|||
499 267 -2 [[Testing a Function]] |
|||
502 265 +0 [[Moving Average]] |
|||
529 226 -3 [[Select]] |
|||
576 160 -1 [[Send an email]] |
|||
590 146 -1 [[Topological (dependency) sort]] |
|||
720 25 +1 [[First-class Numbers]] |
|||
99999 0 -1 [[Russian Peasant Multiplication]] |
|||
</code> |
|||
== Poly thanks == |
|||
Thanks but if you needed you see the example to get it clearer... it means the pseudocode is not too much clear:D More over, implemeting Octave solution, I've discovered it's more convenient to keep the higher power first (in the "vectors"), so likely I am going to rewrite the pseudocode ;) ... --[[User:ShinTakezou|ShinTakezou]] 16:31, 18 June 2009 (UTC) |
|||
The above chart would be presented better as an HTML table, but that might start an edit war/tiff. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 08:53, 7 July 2020 (UTC) |
|||
== Ethiopian Multiplication == |
|||
: Hi Gerard. The main cleanup is your edit that I then shortened the line lengths of. Your points are valid.Thanks for pointing out the increase in line lengths. I'll revert my edits with a smile, either are better than what you straightened out :-)<br> |
|||
Chalk one up to your vanity search; Ethiopian Multiplication has been the single biggest landing page for Sunday and Monday this week. There's been a huge influx of traffic to it via StumbleUpon. --[[User:Short Circuit|Short Circuit]] 02:13, 25 August 2009 (UTC) |
|||
: --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 09:59, 7 July 2020 (UTC) |
|||
:: Thanks, you can't possible know how much I appreciate the restoration. It takes a well-centered person (they used to be called a "big man") to see both sides of such a situation. I too am a big man, but it's mostly fat, er, ... I mean table muscle, but still ··· I'll get to work and elide some of the horizontal spacing as well as changing the the abbreviation '''m.a.s.''' will forthwith be reduced to '''MAS'''. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 13:13, 7 July 2020 (UTC) |
|||
:Yah!! (I hope the traffic is OK on your servers though)? |
|||
:Lets hope some stay for a browse around the whole site... --[[User:Paddy3118|Paddy3118]] 03:48, 25 August 2009 (UTC) |
|||
::According to the analytics the bounce rate for stumbleupon referrals for the last three days is about 70%. So some did stay to look around. --[[User:Mwn3d|Mwn3d]] 18:32, 25 August 2009 (UTC) |
|||
It is great that people are staying to look around, but I am puzzled? I can't find what is sending people to the Ethiopian Multiplication page on the Web. Any links? --[[User:Paddy3118|Paddy3118]] 18:21, 26 August 2009 (UTC) |
|||
Paddy: I replaced the hash marks ('''#''') with bullet points, but I'm not 100% sure that it's an improvement. The bullet points look nicer, but they don't have the size. From some reason, Wiki doesn't display the bullet point glyph the correct size, it should be more of the <big>•</big> size instead of the • size. I'm more used to the size bullet that the IBM fonts used for the '''TN''' print chain (ya, too long in the tooth). But there ya have it. I also would like world peace and an end to world hunger. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 13:50, 7 July 2020 (UTC) |
|||
Um... I have just seen one of the last pages I created jump to the HEAD of my vanity list, and by a huge margin! After seeing the figures (below), I'm gob-smacked! |
|||
: Hash vs bullet - I agree, it's a hard call. I did see that the ''opening'' single quotes for the ligature/no ligature lines are alligned which emphasises the initial u which is only on one of the lines. I like that :-)<br> |
|||
RANK VIEWS +/- TITLE |
|||
--[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 15:34, 11 July 2020 (UTC) |
|||
22 7261 +31 [[Ethiopian Multiplication]] |
|||
71 3276 +11 [[Knapsack Problem]] |
|||
90 2910 -1 [[Monty Hall simulation]] |
|||
104 2698 +4 [[Conway's Game of Life]] |
|||
121 2350 +0 [[Anagrams]] |
|||
197 1486 +1 [[One dimensional cellular automata]] |
|||
206 1388 -4 [[Web Scraping]] |
|||
209 1317 -2 [[Max Licenses In Use]] |
|||
220 1263 -8 [[Spiral]] |
|||
235 1112 +10 [[Y combinator]] |
|||
260 994 +3 [[Yuletide Holiday]] |
|||
261 989 -8 [[Sequence of Non-squares]] |
|||
262 983 -2 [[Column Aligner]] |
|||
272 928 +5 [[First-class functions]] |
|||
288 836 -6 [[Data Munging]] |
|||
297 814 -6 [[Data Munging 2]] |
|||
300 803 -5 [[Probabilistic Choice]] |
|||
304 794 +7 [[Bulls and Cows]] |
|||
306 783 -1 [[Command Line Interpreter]] |
|||
310 772 +4 [[Mutual Recursion]] |
|||
338 682 +0 [[Functional Composition]] |
|||
371 605 -5 [[Integer literals]] |
|||
386 554 -8 [[Common number base formatting]] |
|||
395 533 -1 [[Look-and-say sequence]] |
|||
418 473 -9 [[Octal]] |
|||
443 428 -4 [[Exceptions Through Nested Calls]] |
|||
466 344 +2 [[Average/Simple moving average]] |
|||
490 298 -2 [[Testing a Function]] |
|||
492 297 -1 [[Sort stability]] |
|||
524 249 -3 [[Select]] |
|||
529 244 -1 [[Send an email]] |
|||
562 199 -1 [[Topological (dependency) sort]] |
|||
666 118 +3 [[Simple Random Distribution Checker]] |
|||
678 103 +0 [[First-class Numbers]] |
|||
680 101 +0 [[Seven-dice from Five-dice]] |
|||
685 87 +1 [[List Flattening]] |
|||
99999 0 -4 [[Russian Peasant Multiplication]] |
|||
== adding a thingy for ''prime numbers'' as there is for ''sorting'' (algorithms) == |
|||
--[[User:Paddy3118|Paddy3118]] 04:28, 25 August 2009 (UTC) |
|||
Paddy: I was thinking about adding a thingy for prime numbers and factorization, very much like that thingy that Rosetta Code sorting algorithms have at the top right of every Rosetta Code task (the preamble) that does some sort of sorting. It's that box that shows readers what other Rosetta Code tasks deal with sorting (algorithms). |
|||
I would include (maybe) these sections: |
|||
:::* "regular" primes |
|||
:::* kinds/types of primes |
|||
:::* factorization of integers |
|||
:::* tasks that make use of primes |
|||
:::* miscellaneous prime stuff ... I don't know what to call this catch-all stuff ... ''other'' ? |
|||
This addition would be not so much for the casual reader, but for Rosetta Code coders who, once they start programming for various prime tasks and other types of primes, would naturally delve into (integer) factorization and possible some related fields. I've been <strike>added</strike> adding the category '''Prime numbers''' to any Rosetta Code task that deals with primes or (integer) factorization, or tasks that make use of primes. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 14:21, 7 July 2020 (UTC) |
|||
By the way, I think there should be another category added, '''Primes''' that re-directs to '''Prime numbers''', but I'm not sure quite how to enter it, or even if it ''should'' be created. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 14:21, 7 July 2020 (UTC) |
|||
: I agree with you, primes are a natural grouping. On the name for "others" it might be best to see what gets put there and name it afterwards?<br> |
|||
--[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 15:39, 11 July 2020 (UTC) |
|||
== «math» HTML tags not rendering correctly == |
|||
In a Rosetta Code task (that I entered, namely the task: '''Leonardo numbers'''), I tried to use the ''exact'' <big> <nowiki> <math> </nowiki> </big> HTML tag that is used on Wikipedia (for '''Leonardo number'''), but on Rosetta Code, it produces a big red error message. |
|||
Here is the Wikipedia code, as-is (from the '''Leonardo number''' entry on Wikipedia): |
|||
<pre> |
|||
:<math> |
|||
L(n) = |
|||
\begin{cases} |
|||
1 & \mbox{if } n = 0 \\ |
|||
1 & \mbox{if } n = 1 \\ |
|||
L(n - 1) + L(n - 2) + 1 & \mbox{if } n > 1 \\ |
|||
\end{cases} |
|||
</math> |
|||
</pre> |
|||
{I also have the (above) code "inside" the '''Leonardo numbers''' Rosetta Code task as an HTML comment.} |
|||
The error messages produced are (the original error message is one big long sentence): |
|||
<b> |
|||
<pre style="font-size:200%;color: red"> |
|||
Failed to parse (MathML with SVG or PNG fallback (recommended |
|||
for modern browsers and accessibility tools): Invalid |
|||
response ("<p>There was a problem during the HTTP request: |
|||
503 Service Unavailable </p>") from server |
|||
"http://mathoid.testme.wmflabs.org":): |
|||
L(n) = \begin{cases} 1 & \mbox{if } n = 0 \\ 1 & \mbox{if } |
|||
n = 1 \\ L(n - 1) + L(n - 2) + 1 & \mbox{if } n > 1 \\ |
|||
\end{cases} |
|||
</pre> |
|||
</b> |
|||
The (above) messages are very similar to the error messages produced when there are leading and/or trailing whitespace in the <big> <nowiki> <math> </nowiki> </big> HTML tags elsewhere on Rosetta Code. |
|||
Now, the (failing) text does have leading and trailing blanks, but it <u>does</u> work on Wikipedia, but not on Rosetta Code. You may recall the tiff that ensued when I used leading and trailing blanks on various <big> <nowiki> <math> </nowiki> </big> HTML tags, (it worked for FireFox, but not some other web browsers), and the ensuing stone throwing. Apparently, it's easier to cast stones than address the real problem. I had found/mentioned a fix that I read about after searching in the dark (this was because the error is caused in an "area" of HTML rendering that I newer heard or knew of), but the fix (not a program fix, but some kind of specification) was never implemented as far as I know; the fix is outside of my knowledge of such things. |
|||
I have elided the leading, trailing, and embedded superfluous whitespace, but no matter what combination I used, it always produced an error message. |
|||
In trying to debug the (above) error, I had taken the <big> <nowiki> <math> </nowiki> </big> HTML tag that is used within the preamble of the Rosetta Code task '''Bernoulli numbers''', and I changed (on the Rosetta Code task '''Bernoulli numbers''') the bold '''B''' within the <big> <nowiki> <math> </nowiki> </big> HTML tag text to an '''S''', and that also produced the same error!! Just an attempted single character change. I also tried various other character (letter) substitutions, all produced the same error message. No whitespace was changed. What's going on? A caching problem, perhaps? -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 19:10, 11 July 2020 (UTC) |
|||
Also (and you might want to burn this paragraph after reading, least I propagate vandelous information), I have found that when those particular red bold error messages are produced, <u>and</u> left there (without clearing the display of the error), and then, in another (FireFox or Internet Explorer) window, trying to access the Rosetta Code website (any page), I essentially received a (I think) a '''505''' (504?) error saying that the '''Rosetta Code''' website isn't responding. Now, it could be that only '''I''' couldn't access the Rosetta Code site, not others. In essence, I may have stumbled on a method for a denial-of-service. This is one reason that I think this problem should be addressed and fixed. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 19:10, 11 July 2020 (UTC) |
|||
== Response has been posted to your raslbg|talk comment. == |
|||
. |
|||
== a Rosetta Code task is scrambled == |
|||
<strike> |
|||
The Rosetta Code task '''Spelling of ordinal numbers''' is messed up |
|||
<br> (the text on the task page appears a bit scrambled with another Rosetta Code task). |
|||
The task page now has the content of something to do with "twin primes", and |
|||
the other part seems to have the content of the original page, namely the |
|||
spelling of ordinal numbers. |
|||
Also, at the top of the page, something is complaining about: |
|||
Template loop detected: Template:Task |
|||
(the 1st three words are in red color, the last word (with the colon inside it) |
|||
is a link, apparently to a task template. |
|||
I thought you should know about this problem ASAP so that it can be fixed, undone/undo/retrograded, or |
|||
something. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 06:08, 26 July 2020 (UTC) |
|||
----- |
|||
The page looks like: |
|||
<pre> |
|||
Template:Twin Prime Conjecture |
|||
Twin primes are pairs of natural numbers(P1 and P2) that satisfy the following: |
|||
P1 and P2 are primes |
|||
P1 + 2 = P2 |
|||
Write a program that displays the number of twin primes that can be found under a user-inputted number. |
|||
Examples below: |
|||
Output: |
|||
> Search Size: 100 |
|||
> 8 twin prime pairs. |
|||
> Search Size: 1000 |
|||
> 35 twin prime pairs. |
|||
............................................... end of the "bad" stuff, and the start of the "good" stuff (original stuff) ... |
|||
Ordinal numbers (as used in this Rosetta Code task), are numbers that describe the position of something in a list. |
|||
It is this context that ordinal numbers will be used, using an English-spelled name of an ordinal number. |
|||
The ordinal numbers are (at least, one form of them): |
|||
............................................... the rest looks normal .............................................. |
|||
</pre> |
|||
However, when I "edit" the page to view the source, it appears normal, so the errant text seems to be "coming from" a template of some kind. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 06:15, 26 July 2020 (UTC) |
|||
</strike> |
|||
<big>Never mind, the problem has been fixed (apparently). </big> -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 09:26, 26 July 2020 (UTC) |
|||
Apparently, the ''template'' for a '''task''' was modified, and then fixed. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 22:12, 26 July 2020 (UTC) |
|||
== super_d numbers Python example == |
|||
When I run it, the Python code in the Super_d numbers task does not produce the output it shows - the d = 8 line is not actually calculated. |
|||
--[[User:Steenslag|Steenslag]] ([[User talk:Steenslag|talk]]) 11:43, 21 August 2020 (UTC) |
|||
:Yep, you're right. Corrected now, Thanks 👍--[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 15:33, 21 August 2020 (UTC) |
|||
== some general comments of too-quick task deletions and more == |
|||
I do believe that the deletion of tasks should be discussed first. <big>But ... </big> |
|||
I have had a discussion (not fruitful nor pleasant) about the uniqueness of recently entered (draft) tasks and their value (on being on Rosetta Code) and it did not go well for the lone Indian. When challenged, the discourse just got inflammatory, along with strawman arguments, and silly ('''So?''') rebuttals, and the stating of opinions as facts, and the use of capitalized use of supposedly shouting <big> '''is completely besides the point''',</big> whenever I try to make a point which is either disagreed upon or dismissed, and so on and so on and ... Rosetta Code (discussions/talks) has become a pretty unfriendly place, and in my opinion, toxic. Yeah, I know, I know, a strong word. Whenever challenged, the challenger just doubled-down, and went downhill from there. I had entered a solution to the draft task ''Similar words'', and it was summarily deleted, along with the (draft) task. I think that that (draft) task definitely had a uniqueness to it and wasn't just another version of finding an '''xxx''' string in a list of words in a dictionary. Far from it. As a matter of fact, the other deleted tasks also had their merits, but there is no sense in me trying to defend those merits, as defending something (lately) just means the defender gets rebuffed with a lot of sarcasm and acidic rhetoric ... and worse. If one can't have a polite discourse on the merits of a task without all that vitriol and ad-holmium attacks, then why bother having "talk" discussions? Something has to be done (or should be done). Not to mention that someone needs to define what "spam" is so that term is used correctly. Not to mention janitorial services. A janitor doesn't throw the furniture out, just the dust and junk on the floor. I think the use of words like "dump" (does it really matter if someone adds draft tasks at a certain speed?) is so condescending and judgemental. ... And the use of words like "vomiting", "low quality", and numerous other words/phrases of that ilk. And the statement of opinions as fact ... hard to argue with a closed mind (or gawd-like). These are some of the reasons (regarding wording and phrasing and "it's true 'cause I say it's true ...) that I call toxic to opening a discussion. It may appear to anyone that the wording is toxic, but it doesn't sink home unless YOU get defamed, then it's a story of a different color). I fear that this sort of rhetoric will quell (or discourage) others from joining it or offering/opening a new discussion. Why have to suffer the slings and arrows from offering one's opinion on a Rosetta Code discussion? I wish I could go on and write about some of the (draft) tasks that were deleted. Each task had (bless their departed souls) their merits and different ways/methods of solving them (not to mention their solutions), and it wasn't just variants of find '''xyz''' words in a dictionary. Some were ''like'' anagrams, others needed a somewhat different method(s). Every chef, er, ... programmer can bring a new recipe for solutions here at (old) Rosetta Code. For what I've observed, the discussion of deletion of tasks is like asking five wolves and a sheep on what's going to be for supper? (<strike>Deleting</strike> Voting on tasks isn't a democracy. Ya can't <strike>execute</strike> delete someone by counting votes. There ''should be'' a discussion/debate). There are always people who think word searches are all alike. Well, they ain't. Anyone who thinks otherwise should be <strike>banned</strike> blocked for a week or more. Boy oh boy!! That'll teach 'em from trying to to participate in the culture at Rosetta Code!! --- By the way, I wish <u>any</u> other dictionary would be used that mimics a true dictionary: duplicate words, capitalization (God and god), word phrases, hyphenated words, etc.). Someone actually said, the '''xxx''' word isn't in the unixdict.txt (or whatever it's called) file, so it isn't a word (!!!). OMG! Having ALL words in lowercase defeats the purpose of a dictionary. Searches should be caseless, unless specifically requested that they be not. At this point, I might as well rant a bit (with my tongue <u>firmly</u> and humorously in cheek). Why have all those (vomited?) types of sorts? You've seen one type of sort if you've seen 'em all. Does Rosetta Code really need all those types/categories of sorts? My oh my, the sorts! The sorts!. All those sorts!! And all those kinds of primes. Yikes! And all those types of sequences. To borrow a phrase: '''Sheesh!!''' (Use of the that exclamation should prove my point beyond all possibility of any and all rebuttals ... 'cause I said so). And all those types of trivial '''DO/FOR''' loops. I wonder what Dr. N. J. A. Sloane thinks or all those thousand and thousands and thousands of integer sequences in OEIS. Oy veh!! The mind boggles on what a janitor with unlimited power (or ego) could do. End of silly rant. Well, at least I feel better. None of the above needs responding, that way I can actually think I made a point or two. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 02:51, 9 December 2020 (UTC) |
|||
:* These discussions, were they deleted too? |
|||
:* Who did the deletions? |
|||
:I read your vent. Text wrangling is an important part of work done on the Unix command line for example, made less visible because, for a large number of users, it is "just what you do" in some script or one-liner to prepare data to or from more expansive/expensive programs. |
|||
:Deleting tasks without adequate discussion and/or warning should not be done. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 10:26, 9 December 2020 (UTC) |
|||
:P.S: Can vents be punctuated? --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 10:26, 9 December 2020 (UTC) |
|||
;STOP PRESS! |
|||
Gerard, please see [http://rosettacode.org/wiki/User_talk:Thundergnat#Task_deletions this] reply from Thundergnat. He explains the task is from a "serial dumper" leading to his actions. If so, then the root problem is that serial dumper. --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 10:37, 9 December 2020 (UTC) |
|||
:: Yes, I had already read it, and yet I wrote all this. But, I believe the real root problem is: ''deleting tasks without adequate discussion and/or warning should not be done''. The baby got thrown out with the bathwater. Wait, where have I read that? If everyone agrees (two people, three people?) that it was a case of "serial dumping", then it is what it is. Can't argue with that logic. But, I want to hear anything/something from the other side first. Calling it "dumping" is part of the problem. And, to top it off, it was "serial". Maybe we should call it very sudden stupid and mindless serial dumping unto innocent Rosetta Code victims of nearly identical tasks with nearly exactly the same programming solutions taken from a maze of twisted and twisting passages, all alike. Oh my. Oh well, I sympathize with the guy <strike>banned</strike> blocked (even for a few days). It makes it hard to have a discussion with a guy who can't give his side, and I have a suspicion that English is his second (or third) language, and that he may have a hard time expressing himself adequately, or maybe he doesn't feel it's worth the effort to explain his motives or actions (heaven knows how that can work out, I can attest it does no good). But once <strike>banned</strike> blocked, I doubt that he'll be forth coming. I remember my first foray at Rosetta Code, I knew not of what templates were (that could be used to flag an incorrect programming solution (as I had never seen a flag at that early time at Rosetta Code), nor did I know where people were trying to contact me on my user page, which I really didn't know existed. Thankfully, Michael Mol wrote me an e-mail (very politely and courteously worded, that guy has got class) clued me in where things were. That was a little over a decade ago. Any-a-whose, just a thought as I have no proof either way ya look at it. Just ignore my stuff (above), it's just like a fart in the wind. (Nice movie, made in 1939.) Gone in a few seconds, and nothing is noticed. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 12:09, 9 December 2020 (UTC)) |
|||
:: By the way, the "stress" that you said that I have been enduring is not from the Calmosoft user, but the characterizations (by others) of his actions and the summarily actions taking ''against'' that user and some of his draft tasks, especially with the lack of communication to/from that said user. Maybe he has other time or health issues, or whatever. I know I was out-of-pocket more than once (away from Rosetta Code) for various reasons and/or for lengthy time periods. Or maybe some other kind of communication breakdown or difficulty is the culprit. But who knows what's happening "over there" at the other end. I know for certain that -I- don't know. I'm not that quick to judge when there isn't two-way communications. I was on that same side of that fence once myself, so I guess I sympathize more with guy being hanged then most people. This is why I was helping out with those draft tasks and added verbiage to Calmosoft's draft tasks (as well as others, here and there). Once Calmosoft saw how to include URL's and my somewhat more verbose way of asking for task requirements, he was adding the "extra" stuff (wording) on his own. A little bit of help here and there (and there and here) goes a long way instead of beating the poor guy over the head with a large stick. I believe that is (or should be) one of the core beliefs at Rosetta Code. Treat others like you'd like to be treated yourself. Sorry to quote Biblical. But sometimes, ya gotta do what ya gotta do. (Waaaaaaaaaaaaaay back when maybe you were that inexperienced --- I know I certainly was. --- It was Michael Mol who helped me out (there were a lot of arrows stuck in my back at the time, but I didn't know it as "they" were leaving messages on "my" talk page which I never knew that there was such a thing), without Mol's kindness and time spent, I wouldn't go on to enter over a thousand examples). Ha! I hope that that experience won't stop Mol from helping others out. Meanwhile, back at the ranch ... the earth's horizon keeps lowering and I must get some sleep. <big> <br>So, the beatings shall continue until moral improves! </big> -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 12:59, 9 December 2020 (UTC) |
|||
:::Gerard, you seem to be ignoring the lack of communication, and repeated posting of problem posts by CalmoSoft over many months. This seems to have culminated in a posting of several problem posts in a very short time, with little to no interaction with people querying them. I think it is reasonable for first authors to stick around and answer queries on draft posts - it seems that that is not forthcoming from CalmoSoft, and his tasks ''are'' questioned. |
|||
::: Check CalmoSofts talk page, people have attempted to converse with him there, and on the tasks he starts, before. The lack of work CalmoSoft puts into them is wearying to others. |
|||
::: Gerard, you seem to state that CalmoSofts circumstances may not allow him to do better, but surely his ability to start tasks is enough ability to defend or improve them in comments over the ''years'' in which that dialogue would have been welcomed? |
|||
::: --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 13:31, 9 December 2020 (UTC) |
|||
:::: I agree with you almost 100%. (If I agreed with everyone 100%, there would not be a need for a conversation, and you would never hear of my forays into humorous minutia ... well at least <u>one</u> of us thinks they're humorous.) Any-a-whose, continuing on ... There <u>is</u> a lack of communication, and some (maybe most by some opinions) posting of his Rosetta Code tasks are problematic, some of which muchly favor brevity, which is a one way to put it. And that several postings were, indeed, posted in a short time, even in a very short time, depending upon what one would consider normal for creating/posting Rosetta Code (draft) tasks. --- (I think if I had written/created all the flavors of the various type/kinds of primes tasks that I did eventually create/write/enter, would the same uproar be heard? Most likely, assuredly and probably so, me thinks. Worse, some or most would've been rejected and then deleted, and Rosetta Code would be lessor for it.) And it appears that CalmoSoft has not made many (or any) responses to some (or most) queries about his draft tasks. However, many of his tasks have had programming solutions entered without having the need for further explanation. I would've entered more programming solutions (and addressed each of the draft tasks) if they weren't deleted. I <u>try</u> to create solutions that address the nuances of the best way to approach/solve/meet the requirements and use idiomatic REXX code, and treat the dictionary as if it were a true dictionary, not just an incomplete all lowercase words, especially those words that should be capitalized. Thus the reason I mention that my REXX programs meet the requirements and perform <u>caseless</u> searches/finds, and also present the answers in the ''case'' (same manner) that the word is in the dictionary. Not all of those tasks that required the reading of a dictionary needed a common method to assimilate the dictionary words, and I could've used some boilerplate code to do exactly that, but that would've been inelegant. And homey don't do inelegant. Yes, I did state that there ''may'' be circumstances that may not allow him to do better, and certainly there may be circumstances that I have not thought of or know of. And yes, it appears that he could put more time into the structure and wording of the draft tasks. I have added (sometimes) quite a bit of verbiage to my own draft tasks, and I still have overlooked or omitted vital details and/or specifications and/or requirements, it usually takes someone helpful to peruse the wording and tell me (or even correct) the obvious stuff that I overlooked, and I'm very thankful and appreciative for that help. Others have gone the other route which made it more difficult to change/alter/fix the wording of the specifications, or make a compromise that didn't invalidate existing programming solutions. Saying that it stinks to high heaven (or other such phrases/words) doesn't facilitate a fruitful conversation or repair. And, yes, of course a dialogue would've been welcomed, no matter how succinct. This is probably always the case, as long as the dialogue is constructive, and that, of course, begs a definition of "constructive"; there's a fine line between helpful and not helpful, depending upon how the "advice" is interpreted, sometimes filtered through social [https://www.merriam-webster.com/dictionary/mores mores] and customs (as I eluded to before on my suspicions, possibly even unfounded suspicions). I won't throw stones at him, I still await to hear his side (if he intends to tell it or not), and I do insist that he has one, albeit almost fully unheard so far. So, I hope we agree on these points, even if only 99%. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 18:39, 9 December 2020 (UTC) |
|||
:::: Forgot to mention: the Merriam-Webster site defining ''mores'' leaves cookies. It seems that most web dictionaries do so. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 18:39, 9 December 2020 (UTC) |
|||
== question on numbers for the hourglass puzzle == |
|||
I have a question about your flagging of the REXX solution for the '''hourglass puzzle'''. Is it your concern that words were used instead of Arabic numerals? The output was almost identical of the '''Python''' entry (as noted by the '''trans''' tag). Which computer programming entry would be better emulated? Would changing it to exactly match Python's output be OK? (Except for the misspelling error). -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 18:04, 30 December 2020 (UTC) |
|||
:Python is using string interpolation there so an expression such as {t4//4} will be replaced by its actual value (4) when the string is printed. Does REXX have a similar facility? --[[User:PureFox|PureFox]] ([[User talk:PureFox|talk]]) 20:15, 30 December 2020 (UTC) |
|||
:: Ah, now I see the light. I was thinking that the characters '''{t4///4}''' were just that and I didn't realize that they were meant to be substituted. I will correct it ASAP. Thanks for finding my (glaring) omission. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 20:27, 30 December 2020 (UTC) |
|||
::: Sorry for being vague :-) |
|||
::: --[[User:Paddy3118|Paddy3118]] ([[User talk:Paddy3118|talk]]) 20:34, 30 December 2020 (UTC) |
|||
:::: Naw, my bad. If I had been paying more attention to Python's output, I would have noticed that there was string |
|||
interpolation going on. I need better eyes or I need to do less programming when my eyesight begins to get the best of me. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 02:31, 31 December 2020 (UTC) |
|||
== Fibonacci numbers definition for Padovan task == |
|||
Concerning the ''Padovan'' task, the Fibonacci numbers definition for the first two terms may need re-doing, '''F(0) = 0''', '''F(1) = 1'''. Of course, this depends where you start the Fibonacci series. But ten terms were listed starting with zero, so then F(0) has to be zero. -- [[User:Gerard Schildberger|Gerard Schildberger]] ([[User talk:Gerard Schildberger|talk]]) 10:35, 27 February 2021 (UTC) |
Latest revision as of 14:22, 10 May 2021
zkl "Aliquot sequence classifications" incomplete
Hi - you flagged this as incomplete due to lack of 140737488355328 check. Actually, it is there as (2).pow(47). So I added a comment and removed the flag. Hopefully OK now. Thanks, Craig
RC_vanity_search.py
Sad, but I like to see how my tasks are faring over time:
Archived to User talk:Paddy3118/Vanity Search
Vanity Search Updated
After the 4th of July RC updates, My RC Vanity Searcher needed to be updated due to HTML changes. I decided to add a modification, that shows the movement between the order a page was created in, vs the max views order called +/-.
Moved to User talk:Paddy3118/Vanity Search Updated ...
Yet more Vanity searches
Forgive me for I have sinned. It has been many months since posted my Vanity search data due to a site update causing my script to need updating, and I just couldn't be *rsed.
Poly thanks
Thanks but if you needed you see the example to get it clearer... it means the pseudocode is not too much clear:D More over, implemeting Octave solution, I've discovered it's more convenient to keep the higher power first (in the "vectors"), so likely I am going to rewrite the pseudocode ;) ... --ShinTakezou 16:31, 18 June 2009 (UTC)
Ethiopian Multiplication
Chalk one up to your vanity search; Ethiopian Multiplication has been the single biggest landing page for Sunday and Monday this week. There's been a huge influx of traffic to it via StumbleUpon. --Short Circuit 02:13, 25 August 2009 (UTC)
- Yah!! (I hope the traffic is OK on your servers though)?
- Lets hope some stay for a browse around the whole site... --Paddy3118 03:48, 25 August 2009 (UTC)
- According to the analytics the bounce rate for stumbleupon referrals for the last three days is about 70%. So some did stay to look around. --Mwn3d 18:32, 25 August 2009 (UTC)
It is great that people are staying to look around, but I am puzzled? I can't find what is sending people to the Ethiopian Multiplication page on the Web. Any links? --Paddy3118 18:21, 26 August 2009 (UTC)
- http://www.stumbleupon.com/url/rosettacode.org/wiki/Ethiopian_Multiplication --Mwn3d 18:22, 26 August 2009 (UTC)
- That one mention means so many hits? Wow. I thought only /. and reddit had that kind of affect. --Paddy3118 18:48, 26 August 2009 (UTC)
- Well that link is from a while ago. Someone else must have found it and put a link to that SU link somewhere else. I'm not sure how to figure out where though. --Mwn3d 18:56, 26 August 2009 (UTC)
- It wasn't slashdot, digg or front-page-reddit level. Those would have resulted in tens of thousands of visits over a day. Peak traffic so far was Monday, where Google Analytics claims as much as 7.7 page views per minute. (Which is actually a bit off, as GA won't register raw, json or css page requests, so the requests would have been much more clumped, or bot edits, which it wouldn't see at all.) There were 368% more visits Monday(3,768) than the previous Monday(804). Each visit monday averaged 1.79 pages/visit, while the previous Monday averaged 3.56. These wouldn't be hard loads for most setups, but we've been riding close to the limits of the Slice under bursty loads for quite a while. I've got an offer to be pretty much the sole occupant of a 4-core Xeon box with 16GB of RAM, but It'll be a gradual transition, if it goes through at all; I won't have root, and I'm uncertain about the current admin's reaction time. Otherwise, I need to find an income source for RC. My number one desire would be to sell content-derived books, but selling t-shirts and the like, even at $5 markup each, would easily make the site pay for itself as it currently sits; Five t-shirts a month would do it. The next most likely option is a donation link, but I hate asking for handouts. And I hate banner ads even more. --Short Circuit 21:22, 26 August 2009 (UTC)
- That one mention means so many hits? Wow. I thought only /. and reddit had that kind of affect. --Paddy3118 18:48, 26 August 2009 (UTC)
Um... I have just seen one of the last pages I created jump to the HEAD of my vanity list, and by a huge margin! After seeing the figures (below), I'm gob-smacked!
RANK VIEWS +/- TITLE 22 7261 +31 Ethiopian Multiplication 71 3276 +11 Knapsack Problem 90 2910 -1 Monty Hall simulation 104 2698 +4 Conway's Game of Life 121 2350 +0 Anagrams 197 1486 +1 One dimensional cellular automata 206 1388 -4 Web Scraping 209 1317 -2 Max Licenses In Use 220 1263 -8 Spiral 235 1112 +10 Y combinator 260 994 +3 Yuletide Holiday 261 989 -8 Sequence of Non-squares 262 983 -2 Column Aligner 272 928 +5 First-class functions 288 836 -6 Data Munging 297 814 -6 Data Munging 2 300 803 -5 Probabilistic Choice 304 794 +7 Bulls and Cows 306 783 -1 Command Line Interpreter 310 772 +4 Mutual Recursion 338 682 +0 Functional Composition 371 605 -5 Integer literals 386 554 -8 Common number base formatting 395 533 -1 Look-and-say sequence 418 473 -9 Octal 443 428 -4 Exceptions Through Nested Calls 466 344 +2 Average/Simple moving average 490 298 -2 Testing a Function 492 297 -1 Sort stability 524 249 -3 Select 529 244 -1 Send an email 562 199 -1 Topological (dependency) sort 666 118 +3 Simple Random Distribution Checker 678 103 +0 First-class Numbers 680 101 +0 Seven-dice from Five-dice 685 87 +1 List Flattening 99999 0 -4 Russian Peasant Multiplication
--Paddy3118 04:28, 25 August 2009 (UTC)
Strange?
Ethiopian Multiplication jumps to be the most popular page behind the Main Page, and I can find no evidence of a 'buzz' around it. No blog entries, no group discussions. I would have expected something more? --Paddy3118 06:55, 1 September 2009 (UTC)
- It's all coming through StumbleUpon. I'd like to write a blog post on exactly what I think happened, but it's going to take a while, and I need to look into it more. A simplified explanation would be that a SU user discovered the page, liked it or reviewed it, leading to both his subscribers (and their subscribers) to see it, as well as increasing the page's general ranking in SU's page selection algorithm. This would be made easier to show if I could identify a trend around the phrase "ethiopian multiplication" in blogs and searches over the last month. The functionality is there in Google's advanced search, but it requires time and opportunity. --Short Circuit 14:33, 1 September 2009 (UTC)
Ethiopian Multiplication: Missing function names
What's the problem with the SNOBOL4? It works (I just tested it!). Is it because the half/double/even functions aren't there? I didn't write it, mind. I could tweak it to suit, but then it makes it less terse, less efficient, less SNOBOL4. --Axtens 04:32, 25 February 2010 (UTC) And can you point out where the half/double and even are in the SNUSP version? --Axtens 04:39, 25 February 2010 (UTC)
- The halve add and double functions in the SNUSP example are actually where it says "halve", "add", and "double". Other languages have had to conform to the separate function requirement, so I don't think we should allow a special case for SNOBOL4. --Mwn3d 04:47, 25 February 2010 (UTC)
- I purposefully turn a blind eye to the SNUSP] versions' idiosyncrasies, but that is because I treat it and Brainf*ck as like the Monster Raving Loony party in British elections - it is there, it can be a good laugh, but taking them seriously would lead to a happy dementia :-)
- The problem with the SNOBOL4 is that it doesn't use the function names for functionality as expressed in the task description and followed by the other 'language' examples. --Paddy3118 05:10, 25 February 2010 (UTC)
- Okay, then, I'll have a go at the SNOBOL4, unless the original author gets there first. As for SNUSP ... hmmm, show's how good I am with esolangs :\ . --Axtens 06:11, 25 February 2010 (UTC)
- On a slightly related note...is there a particular reason to insist on "function" when "routine" couple be appropriate? Take assembler languages, for example. The type of code structure offered by functions is available in any language with goto, but without explicit language support for arguments and return values. --Michael Mol 14:22, 25 February 2010 (UTC)
- Hi Michael, The task refers to "functions/methods/procedures/subroutines" I guess I could have followed it by three dots: ..., but I thought most languages would be able to work out what was needed, and the problem seems to be with their omission when the language does have those facilities. I think if I point out the omission, Someone could say that their is no such construct in their language that is normally used, but I don't think it will come to that, except maybe with calculator languages that might not have named subroutines? --Paddy3118 17:46, 25 February 2010 (UTC)
- I think the inclusion of incorrect code is better than no code at all, so long as there is an explicit understanding of why the code is marked incorrect, and suggestions are made for how it can be corrected. With simple removal, the unobservant and rushed (and I must count myself among these) might just see a lack or unexplained removal of code, and make the same mistake that the original contributor did. Worse, the original contributor might see the code has been removed, without understanding why. See the mess around the editing of the Proof task, for an extreme example. (I saw the creator of that task say he wished he'd never created the task in the first place, because nobody "got" the task enough to give a correct response. I'd rather avoid that degree of despondency and cynicism happening to frequent contributors.)
- What it boils down to is that my reasoning isn't technical or linguistic, but rather done from the perspective of how contributors will interact with the resulting circumstances in the future. Well, that, and trying to maintain the utility of the spirit of the task without getting too focused on particular language features. Does that make sense? --Michael Mol 19:10, 25 February 2010 (UTC)
- Hi Michael, The task refers to "functions/methods/procedures/subroutines" I guess I could have followed it by three dots: ..., but I thought most languages would be able to work out what was needed, and the problem seems to be with their omission when the language does have those facilities. I think if I point out the omission, Someone could say that their is no such construct in their language that is normally used, but I don't think it will come to that, except maybe with calculator languages that might not have named subroutines? --Paddy3118 17:46, 25 February 2010 (UTC)
- How about flagging code as incorrect and deleting it after say a month of inactivity? You give a reasonable time for corrections to be made, but eventually don't litter the page with abandoned, buggy code. --Paddy3118 21:01, 25 February 2010 (UTC)
- I like the idea, but wouldn't know how to effectively automate the cleanup (or, at least, a maintain a listing of pages that require urgent cleanup). If it could be done right, though, it could be incorporated into the Unimpl page template such that "needs attention within a week" and "needs attention within two weeks" could be placed higher in the page than the general Unimpl, ENA and Omit sections. (I suppose a lot of the pain could be dealt with by having epoch deadlines, such as End-of-[Jan-Dec], and setting the deadline for each required correction to end-of-next-month. That way, we would only need twelve categories for tracking deadlines, rather than finding and parsing arbitrary timestamps.) If code goes uncorrected, it could be marked as Omitted (with an explanation given in the omit usage), or removed entirely, with a placeholder HTML comment for the next person to come along. --Michael Mol 22:03, 25 February 2010 (UTC)
- How about flagging code as incorrect and deleting it after say a month of inactivity? You give a reasonable time for corrections to be made, but eventually don't litter the page with abandoned, buggy code. --Paddy3118 21:01, 25 February 2010 (UTC)
Note from a HS math instructor
I forwarded you an email I got from a math instructor who was pleased to see a task that fit into his CS-into-HS-math curriculum ideas. At least, I think I forwarded it to you; I don't remember how that email address wound up in my contacts list, but it looked correct from my recollection. :) --Michael Mol 17:52, 17 April 2010 (UTC)
- Michael, Thanks for forwarding it - it's great to get positive feedback from a lecturer. (Maybe the site needs a "visitors book")? --Paddy3118 01:18, 18 April 2010 (UTC)
References
Thanks for finding the new location for the BBC Video. Too bad it isn't visible around the world without some network expertise. The Beeb could take a lesson from the Khan Academy.
GarveyPatrickD (talk) 14:14, 10 May 2021 (UTC)
- Hmmm, It's a difficult choice of some or none. There are other references however, and the task description seems complete in itself.
- Thanks for catching the staleness :-)
- --Paddy3118 (talk) 14:22, 10 May 2021 (UTC)
Evolutionary algorithm
I've had the dreaded Flu the past week, and am still getting over it. To test my faculties I took a look at what tasks were requested and took on Weasel algorithm.
I wasn't quite happy with the results, and wrote that up in a blog entry. One of the commenters there, (thanks Steve), used the phrase 'evolutionary algorithm', which turned out to fit a WP page, that re-introduced me to all the proper nomenclature. I decided that a re-write using the proper terms, would then make a better RC task.
I tried to word the RC task so that people could experiment and slot in different algorithms for things like the fitness and mutation functions and I'm pleased to see that already the C language solution has done just that. (I do like the way the C is coded too; very nice).
After the coding, what gets me is the amount of controversy that was caused by such programs, especially the original quoted in a book by Richard Dawkins (that I have not read). It seems so little to be controversial about, but then I guess RD's delivery might inflame some.
--Paddy3118 04:28, 7 October 2009 (UTC)
- Great little task you added here. rldrenth 7-oct-2009
Sorting Using a Custom Comparator - C# incorrect
By that measure, the ADA solution would also be incorrect? Sorting Using a Custom Comparator#Custom_Comparator.adb
- Thanks, I've tried to point that out now. --Paddy3118 06:45, 20 November 2009 (UTC)
Series out of control
In reply to [1]: see [2] (ugh, what a horrific URL!). I'm not gonna change it back, because that would feel too much like edit-warring to me (and heaven forbid I should edit-war over grammar), but I think most professional editors would prefer my version. —Underscore (Talk) 20:53, 16 December 2009 (UTC)
- I thought I was taught that A, B, C, and D; was to be preferred over A and B and C and D. My partner concurs? P.S. I do try to be cautious over edits, but I thought i was on solid ground. Is this possibly an English vs American English thing? --Paddy3118 21:08, 16 December 2009 (UTC)
- You're quite right that "A, B, C, and D" is in general better than "A and B and C and D", but that's not the issue here. Look closer at the explication I linked to and at your own sentence. Here's the latter with the irrelevant parts removed:
- This regexp is multi-line, verbose and uses named groups.
- Clearly, this is equivalent to:
- This regexp is multi-line. This regexp is verbose. This regexp is uses named groups.
- So you see, without noticing it, you're making "and" perform two functions at once:
- separating two complements of "is" ("multi-line" and "verbose"), and
- separating two predicates of "This regexp" ("is multi-line and verbose" and "uses named groups").
- This is a no-no because it leads to nonsensical implications such as the "is uses" above. (P.S. I'm American; dunno about you.) —Underscore (Talk) 23:56, 16 December 2009 (UTC)
- You're quite right that "A, B, C, and D" is in general better than "A and B and C and D", but that's not the issue here. Look closer at the explication I linked to and at your own sentence. Here's the latter with the irrelevant parts removed:
Thanks Underscore for pointing out my error. Mea culpa. I did try your reference before, but the google book search did not show the details for some reason. I have now done my own search with your term "series out of control" and got that full explanation. I will of course change the edit. --Paddy3118 03:28, 17 December 2009 (UTC)
- Edited! --Paddy3118 03:32, 17 December 2009 (UTC)
- Any time. :) —Underscore (Talk) 23:43, 17 December 2009 (UTC)
Hi Paddy, I'm Wolf
Sorry to approach you like this, if I would know your preferred way of communication, I would use it. You may remember me from 19.May 2010, you send me (within minutes of my posting of inferior code) a note pointing out the problem.
I might be totally off track here, but who do you recommend to involve in a discussion about a faulty code? An AHK forum user has discovered a "misleading" pseudo-code regarding CombSort Algorithm, and I want to help fix that. My first steps were starting a discussion on Comb_sort, then posting to Village_Pump. In over a week, there was no answer, no hints for me what to do, so I decided to ask someone who keeps an eye on quality (such as yourself).
Could you please check out my example of numbers-to-be-sorted with the Python code that is posted, and kick me hard if I deserve it. I am a fairly new member here, and try to cause as little upset as possible. But there should be a procedure (informal or otherwise) to ensure a certain level of quality.
BTW, the pseudo-code is (maybe) copied from wikipedia, where it is also wrong (if I am right).
--Wolf 21:00, 26 May 2010 (UTC)
- Hi Wolf, my own, sorry, excuse was that I do have some areas of algorithms that don't excite me to contribute and sorting algorithms is on the edge of that as only a few (of the many, many) sorting routines have interested me of late; and mainly because of their close links to other things that I am more interested in. I took a look and gave a tech. reply on the Talk:Sorting algorithms/Comb sort page. --Paddy3118 05:35, 27 May 2010 (UTC)
Averages/Root mean square
Regarding the edit here: What exactly does that paragraph add to the page? Isn't the final size of the executable rather irrelevant? And if it only works with a specific compiler version, there is always {{works with}}. Or am I missing something here? —Johannes Rössel 18:18, 23 June 2010 (UTC)
- Sorry Johannes, I just did a minor edit of removing a single space. It's not my text. --Paddy3118 19:55, 23 June 2010 (UTC)
- Argh, sorry. I'm reading too many diffs a day and MediaWiki automatically marking compete paragraphs red if only a single byte changed is a bit confusing. Apologies. —Johannes Rössel 22:57, 23 June 2010 (UTC)
The XML link
The XML link at the top of XML/Output comes from it (technically) being a subpage of XML. I looked for a bit on the MediaWiki help sites but couldn't find a way to remove it for a single page. They can be turned off for the whole site, but sometimes they're useful. --Mwn3d 01:27, 7 August 2010 (UTC)
- Thanks. I'll ignore it then. --Paddy3118 01:28, 7 August 2010 (UTC)
More privs.
Use them sparingly and wisely. :) --Michael Mol 20:33, 7 August 2010 (UTC)
- You must have noted my anger :-)
Thanks, I'l use them as advised. --Paddy3118 20:48, 7 August 2010 (UTC)
Timsort
Have you heard of this craziness? It says Python uses it. I can't find a non-long-winded explanation of the algorithm though. --Mwn3d 21:12, 8 August 2010 (UTC)
- This seems easy enough to follow. I read through it a few weeks ago. This reads easier, though. --Michael Mol 22:16, 8 August 2010 (UTC)
- Hi. Yep, I remember the buzz when Tim Peters introduced it. I don't have the time to google in comp.lang.python to find the first threads after its release, but rest assured, it was heavily tested when it was released, as well as when it was adopted as the sort routine for Jython (which I could find). I have heard that it will be added as the Java sort routine too. I never did go fully into the algorithm though as sort routines give me only a little algorithm "buzz".
- Another link --Paddy3118 08:26, 9 August 2010 (UTC)
- I saw a link that said it was added to openjdk, but obviously that code has so much extra stuff going on to keep track of other stuff in the JRE that the algorithm kind of gets lost. Did you see something saying it would be added to the Sun JRE? --Mwn3d 12:52, 9 August 2010 (UTC)
I have tracked down a version of timsort written in subset of Python called RPython and used for the PyPy project. I am not sure of the license but you can view it for reference by downloading from here and extracting file pypy-1.3/pypy/rlib/listsort.py out of file pypy-1.3-src.tar.bz2.
It doesn't seem like a simple sort algorithm and, no doubt, will be sensitive to small changes. --Paddy3118 11:16, 10 August 2010 (UTC)
- You might contrast the Python with this Java implementation. --Paddy3118 11:20, 10 August 2010 (UTC)
The original thread (Pointing to an informative msg not at the head of the thread. --Paddy3118 13:27, 10 August 2010 (UTC)
Symmetric Difference for MATLAB
I don't understand the error you found with the MATLAB solution to the problem. It gives the proper output given an arbitrary input for sets containing arbitrary members of arbitrary types. Also, is the problem with the first example or the second?Cferri 22:40, 10 August 2010 (UTC)
- Hi Cferri, its your second example and how it would work with the info in the note:
- Note: If your code uses lists of items to represent sets then ensure duplicate items in lists are correctly handled. For example two lists representing sets of
a = ["John", "Serena", "Bob", "Mary", "Serena"]
andb = ["Jim", "Mary", "John", "Jim", "Bob"]
should produce the result of just two strings:["Serena", "Jim"]
, in any order.
- Note: If your code uses lists of items to represent sets then ensure duplicate items in lists are correctly handled. For example two lists representing sets of
- I haven't run your ccode but you need to make sure it would give the right answer if their were these type of duplications if you are indeed implementing the behaviour on top of lists/tuples rather than a set type. --Paddy3118 02:56, 11 August 2010 (UTC)
- Oh, Ok. I'll check that. Cferri 04:27, 11 August 2010 (UTC)
Filling out Rosetta Code:Add a Task
Could I get you, Rdm and Rdm to give Rosetta Code:Add a Task a thorough treatment of examination, debate and filling? Of the cross section of current users, I think you three are probably the most likely to be familiar with the general pattern and concerns of creating tasks. I added a bunch of my own thoughts in HTML comments in-line, and left a note in the talk page. --Michael Mol 17:15, 21 September 2010 (UTC)
Variations on a theme
I noticed you removed the pipe-based PowerShell solution to Ethiopian multiplication. Is that really necessary? Near as I could see, the relevant example had the necessary code, and only lacked functions demarcating the separate processes. Marking the task with Template:Incorrect might have been more appropriate, in that case. --Michael Mol 18:18, 1 November 2010 (UTC)
- Umm, you're right. I was too harsh.
I can do that now.I see that changes have already been made. --Paddy3118 19:44, 1 November 2010 (UTC)- Thanks for helping RC keep a positive tone. :) --Michael Mol 20:59, 1 November 2010 (UTC)
- (Concerning another Rosetta Code task, but in the same vein.) --- Thanks for your input and advice (Egyptian Fractions) talk page, and also at other times and places. It may be not for you to understand why, but it came just at the right time, the whys and whyfors aren't germain in a public forum such as here. Your tone (and demeanor) were much appreciated at that time and helped me along with improving the task verbage and task clarification(s); I was beginning to feel like a brown shoe at a tuxedo party. I wish there was a good way to review a new task, other than to make it a draft task, say, to be able to have it be amongst some kind of peer panel to iron out the wording and whatnot. Even after (many?) years of entering task solutions/examples, I never expected such wrath, ire, and name-calling here on Rosetta Code ... and so it goes; perhaps I'm getting too thin-skinned as my temperament ages and I don't suffer fools gladly. Anywhoooooose, I appreciate your concerns and suggestions with regarding to the new (draft) tasks that I've been entering. It's fast becoming more and more of a chore, and my longish list of new topics may not see the light of day, so I may have to whittle it down to the simpler topics and quit while I'm ahead and while it's still fun working on Rosetta Code tasks (either unsolved or entering new one). -- Gerard Schildberger (talk) 00:28, 5 April 2014 (UTC)
- Thanks for the kind words Gerard, but I am only one of the many, yourself included, that help set the tone of RC. I like to think that in some ways I am sitting in front of a flat plane of glasswith coloured patterns on it, having a "conversation" with something that gives very little feedback - no unconscious threat, or hint of mood. I guess a lot of conversation skills are based on feedback from natural situations and putting some people in front of a keyboard is likely to loose empathy. There is not much to do but cull the most flagrant abuses - of which there are very few - we set the line (I think), at wanting to maintain a site that would pass if vetted by some "liberal" school board.
- Much respect to all fellow task writers. It is the harder path! I do "gird my loins" after posting that first draft because some criticisms hurt and too many people have a dismissive and/or abrupt writing style - especially when they are right! And when they think they are right!
- I know that being polite is harder so at times thinking "but I'm more polite" than whoever gives me a smirk and keeps me going. (Plus the fact that task writing is a difficult skill that I use at work - together with the criticism
lmitigation strategies).
Timings
Thanks for fixing up (removing) the CPU timing stuff from the (Classic) REXX example in the Rosetta Code task Sieve of Eratosthenes; It was getting to be a bit of a sticky wicket, and I sure didn't want to remove the inappropriate timings and open up another can of worms, especially since it was Classic REXX programs that were being executed/timed under the ooRexx interpreter, and it probably should've been posted under the ooRexx language (as that's what it was apparently translated for and executed under). Anyway, thanks again. -- Gerard Schildberger (talk) 01:44, 25 July 2014 (UTC)
- Well RC isn't set up to do performance comparisons, so we might (on rare occasions), stoop to generalization about orders of magnitude differences in execution time, but those were not really helpful. --Paddy3118 (talk) 08:33, 25 July 2014 (UTC)
Ordered words
Please see Talk:Ordered words#Output. —Kevin Reid 18:37, 1 February 2011 (UTC)
N-Queens Edit
You edited down my (clearly overboard) output for the N-Queens problem. I'm not sure where the cutoff is but several hundred lines was obviously way too much. Sorry. I was very slightly annoyed that you completely eliminated my N=8 output, since that is the prototypical case, an 8x8 chessboard. OTOH I could have avoided the problem in the first place by showing some restraint, so I'm more annoyed at me.
In any case, I added additional code to winnow the solution sets and also to cut down the output on the largest case. The result is some what larger than your edit but still under 50 lines total, much shorter than the programs themselves. I also re-added the scrollbar to avoid taking up too much vertical real estate. Is this reasonable? --Balrog 19:57, 20 March 2011 (UTC)
- Hi Balrog, sorry about not getting the edits right, I should have taken a bit more time. Instead I decided to show some of the smaller cases and the summary of the last. I had a look at your current edits and they seem fine to me. I hope this won't stop you editing - I'm still learning too! --Paddy3118 22:00, 20 March 2011 (UTC)
- In general (for me at least) moving an example to a new page or adding output isn't a matter of the number of lines (we have the scrollbars to deal with that), it's about a number of bytes. We don't have super-servers here and anything we can do to lighten the load on them is good. There shouldn't be any problem with storing lots of data, but there might be problems with retrieving and sending lots of data at once. When one example starts to get into the 10KB range I usually consider shortening it or breaking it out into a new page. Like most things here, though, it's a little touchy-feely. --Mwn3d 22:18, 20 March 2011 (UTC)
- Servers are fine, as is my available bandwidth. I'd be more concerned about page load times for slow and/or congested end-user connections. Similar concerns apply, of course. --Michael Mol 12:23, 21 March 2011 (UTC)
Y Combinator
Sorry if I write in a wrong place. I'm Trap D. I notice that you removed my contribution to the task Y combinator. I send a mail to U. Neumerkel to know his opinion about the reasons you gave me. If you look at my code and the code written on this page it's not exactly the same. I deduce what I think is the Y combinator of the code written on "page 106".User:Trap D 20:31 11 April 2011
I read your answer, Ok. I'm waiting for the reply of U. Neumerkel before posting my contribution again. User:Trap D 23:15 11 April 2011
My mail :
Hi
First I apologize for my bad English.
I'm fond of Prolog and I recently found this page : http://www.complang.tuwien.ac.at/ulrich/Prolog-inedit/ISO-Hiord where you explain how to improve high order programming in Prolog with your implementation of lambda.
I was very interested by that :
lists_mod(Member, List) :-
Me = \X^L^R^ ( L = [X|_] ; L = [_|Xs], call(R, X, Xs, R) ), Member = Me +\Xr1^Lr1^ call(Me, Xr1, Lr1, Me), Li = \Lr1^P^Rr1^ ( Lr1 = [] ; Lr1 = [X|Xs], call(P,X), call(Rr1,Xs,P,Rr1) ), List = Li +\Lr2^Pr1^call(Li,Lr2,Pr1,Li).
main_list(Xss) :-
lists_mod(Member,List), call(List,Xss,\Xs^call(Member,1,Xs)).
main_list2(Xss) :-
lists_mod(Member,List), call(List,Xss,\[1]^true).
I extract this code that I think it could be a Prolog Y combinator.
- - use_module(lambda).
y_combinator(P, Arg, R) :-
Pred = P +\In^Out^call(P,In,Out,P), call(Pred, Arg, R).
test_y_combinator :-
Fib = \NFib^RFib^RFibr1^(NFib < 2 -> RFib = NFib ; NFib1 is NFib - 1, NFib2 is NFib - 2, call(RFibr1,NFib1,RFib1,RFibr1), call(RFibr1,NFib2,RFib2,RFibr1), RFib is RFib1 + RFib2 ),
y_combinator(Fib, 10, FR), format('Fib(~w) = ~w~n', [10, FR]),
Fact = \NFact^RFact^RFactr1^(NFact = 1 -> RFact = NFact ; NFact1 is NFact - 1, call(RFactr1,NFact1,RFact1,RFactr1), RFact is NFact * RFact1 ),
y-combinator(Fact, 10, FF), format('Fact(~w) = ~w~n', [10, FF]).
with output :
?- test_y_combinator.
Fib(10) = 55 Fact(10) = 3628800 true.
Do you agree with my interpretation ?
I publish this code on this site : http://rosettacode.org/ It is a site about tasks to solve using languages. I solve few tasks with Prolog and I thought that I could publish this code to solve the task about the Y combinator. Of course, I gave your name for the module lambda and the link to the page above. I thought I could do that because there was a link to the code of the module lambda. This site RosettaCode decides to remove my contribution arguing that the site where is the page (www.complang.tuwien.ac.at) is not "non-profit", and I have not your permisssion.
Are they right ? Do you mind if I publish this code ?
Thanks anyway for your answer.
Best regards.
Joel Foutelet.
Here is the answer of Ulrich Neumerkel :
I essentially agree with you.
However, please note that I *only* transcribed the code which was originally written by Hermenengildo et al. Please refer to Reference 6.
Cordialement, Ulrich
So, I'll published my contribution with the notes of U. Neumerkel User:Trap D 14:10 12 April 2011
Ela (Y combinator)
I am not sure why you added this comment to Ela sample: "This example is incorrect. fac and fib seem to be directly recursive functions without the use (or definition), of the Y combinator. Please fix the code and remove this message."
fac and fib are clearly not directly recursive functions and use fix-point combinator which code is provided at the end of the sample. --Disregard, I misread the task.
Incomplete
If you really intend to mark all (hundreds of) entries that don't give output, you might consider creating a new template for that purpose. {{Incomplete}} is ill-suited.
CRGreathouse 23:24, 7 May 2011 (UTC)
- Thanks CRGreathouse,
I have created a new "output?" template that looks like the following, (missing the first parameter which would be the language name):
- This is my first template so I read a little, then shamelessly copied from template incomplete! --Paddy3118 11:13, 8 May 2011 (UTC)
- It looks good. It has already ameliorated some of my (unfortunately misdirected) anger. :)
- CRGreathouse 06:20, 9 May 2011 (UTC)
In the future, it will save a lot of eyerolling if people could run some examples on codepad if they do print the output but the author just didn't add it to the example. It doesn't support every language, but it could help a little bit. --Mwn3d 20:41, 22 June 2011 (UTC)
Why Permutations/Derangements?
I wanted some info on permutations and went first to Mathworld rather than wikipedia, where the word 'deranged' stuck out and just had to be followed up!
The wp articles generalizations section mentioned anagrams which then lead to me creating Anagrams/Deranged anagrams. --Paddy3118 21:00, 14 May 2011 (UTC)
- It is an awesome name for a task subject. When I saw it in the RSS feed, it caught my attention and I shared it with a couple people in the room. :) --Michael Mol 11:47, 15 May 2011 (UTC)
- Who says mathematicians don't have a sense of humour :-)
--Paddy3118 11:54, 15 May 2011 (UTC)
- Who says mathematicians don't have a sense of humour :-)
Quaternion type
Hi,
The task said "If your language has built-in support for quaternions then use it.". And I see nowhere in the task that it is required to use the form (a,b,c,d). However, the implementation in gap is incomplete : I didn't write -q, q1+q2, etc. which are trivial. But I will, I swear :o)
Toucan 08:20, 13 June 2011 (UTC)
Permutations/Derangements
For case 3 the function is built-in. Do you mean I have to rewrite it ? Well, why not... Toucan 09:09, 13 June 2011 (UTC)
- Hi Toucan, a note explaining that it is built-in then use your built-in function would suffice. (It's amazing what languages can have in their libraries). --Paddy3118 13:21, 13 June 2011 (UTC)
- I made {{eff note}} for just this occasion. --Mwn3d 13:43, 13 June 2011 (UTC)
- GAP is very very good at algebra and combinatorics, so it's not too surprising to find it here. It has a huge library for almost everything about discrete mathematics. On the other hand, floating-point support is almost absent, as well as networking, and many things one would like to see in a general purpose language (which it is not, of course). See http://www.gap-system.org/ for explanations on what it really is. I *love* it for quick programs for recreational mathematics ;-)
- I made {{eff note}} for just this occasion. --Mwn3d 13:43, 13 June 2011 (UTC)
Python discousion with now Tonyjv
You had approached me about Python code. Now I am registered. --Tonyjv 22:41, 13 June 2011 (UTC)
- It's going back someways, but I think you replaced Pythons REPL input with the same code but as if it were in a file. Thereby losing the notion that the example was easy enough to develop/display output in the Python shell. In a comparison of languages, Pythons shell can be a good plus point. --Paddy3118 23:18, 13 June 2011 (UTC)
It is true, that shell is nice, but you also be carefull with difference of behaviour the IDE environment brings. You should never forget to prepare ready program to file and run it properly from OS prompt/File manager.
My expertise which brought me here for visit is anagram generation, which I used as training project for learning Python. It still makes me wonder that trying the Go language by coding my anagram program (based on fast enough philosphy), the psyco version was completely unbeatable and pypy is also terrible in file IO. Anagram result from those programs: Go
>timeit anagrams.exe "tonyveijalainen" Name tonyveijalainen 352 candidate words found. ------------------------------------------------------------ Version Number: Windows NT 5.1 (Build 2600) Exit Time: 6:29 pm, Friday, June 17 2011 Elapsed Time: 0:00:03.234 Process Time: 0:00:03.093 System Calls: 26551 Context Switches: 6836 Page Faults: 1785 Bytes Read: 1131190 Bytes Written: 173240 Bytes Other: 134532 pe 17.06.2011 18:29:01,76 C:\Go\programs
Python2.6 psyco:
>timeit c:\python26\python.exe Recursive_anagrams.py "tonyveijalainen" >nul: Version Number: Windows NT 5.1 (Build 2600) Exit Time: 6:31 pm, Friday, June 17 2011 Elapsed Time: 0:00:00.718 Process Time: 0:00:00.718 System Calls: 8946 Context Switches: 2060 Page Faults: 3696 Bytes Read: 1494996 Bytes Written: 40407 Bytes Other: 40078 pe 17.06.2011 18:31:56,20 C:\Go\programs
- Hi Tonyjv, I regularly write, use, then toss away small programs written at Pythons command line shell. Especially when I am exploring other stuff and the Python is there as the support. When I need to be innovative elsewhere and keep that other train of thought. Most of the time, I make the correct call and can recall code used if I want to re-use it. Its just one point on the surface of ways of using Python - from calculator to tested, packaged, logged, configuration-managed large application. --Paddy3118 06:02, 19 June 2011 (UTC)
- I agree with you on not underestimating Python speed. I have replaced a C++ application by what turned out to be a faster version in pure Python - Pythons in-built datastructures are very fast and compiled languages can't make up for bad algorithm choices. --Paddy3118 06:02, 19 June 2011 (UTC)
Minor edits
Ok, I didn't think of that ;-) Toucan 19:28, 1 July 2011 (UTC)
Comparisons
RC sets out to be a comparison site for whatever tools users apply the effort of comparing. One of the earliest pages I created tried to document typical invocation of a C compiler. I can't find it, now, though. --Michael Mol 11:45, 6 September 2011 (UTC)
- Hi Michael, does this apply to my comment on preferably not adding detailed timings to solo program runs? If so, then maybe we need a Rosetta Code:Village Pump/Run times on examples? page to evolve some consensus? I, as you probably know, am a bit wary as you need to specify a huge amount of probably obscure information to get repeatable timings from different people and would prefer a maximum of:
- Not mentioning stand-alone program timings that are less than two minutes and making other comments vague such as approx 5, 10 20 minutes or aprox 0.5/1/2/5 hours
- When there are two or more solutions in the one language then mentioning just a rounded comparison i.e. X is approx. 1/2/5/10/100/1000/... times as fast as Y.
- Discouraging timing comparisons between different languages.
- Allowing detailed timings, if someone wants to; in the talk pages.
- We don't have the infrastructure of The Computer Language Benchmarks Game, which is one of the best sites for comparing language run times, and even they tell users don't jump to conclusions.
- Yeah, I jumped the gun by responding without seeing the context of your original discussion (I misunderstood it to refer to, e.g. different compilers' run-time support libraries). I agree 100%. --Michael Mol 12:45, 6 September 2011 (UTC)
Hi, thanks for the feedback! Yeah it entirely makes sense what you wrote on my talk page. Was that in reference to Hamming_numbers#Alternative_version? I only edited that section to add remarks about memory usage, and left the timing remark in, that was already there before me - it compared I thought with the subsection above it for the same language, that talks about "couple of seconds". Or was it something else? Could you give me a pointer please so I could fix it. Thanks.
OTOH I like using Ideone.com for testing; I think its timings could reasonably be mentioned as it's a uniform platform. Wouldn't it be neat if all code snippets added to RC had a requirement of actually running on Ideone, and be run there automatically by the system and show its produced output and times on RC pages, automatically? Say, requiring of a posting user to provide a runnable link into Ideone entry and show its text on RC, instead of plain textual posting that it is now? The code that won't run wouldn't get accepted, for one. All kinds of comparative reports could be then automatically produced via its API (it has one), etc. Just a vague thought. :) WillNess 01:05, 7 September 2011 (UTC)
- RC supports several hundred lanaguages. We've got links to codepad (for a few languages), and I've got an invite from CodeEval (for a few languages) to try having them execute code by proxy. Given enough time, I can automate just about anything serverside. However, I would be shocked and awed if there were an online site like CodeEval, IdeaOne or CodePad which could handle all the languages RC has, and would add more as they show up on RC. That said, comparative performance measurement is hard and rightly criticized for technique, and I really don't expect to see it automated any time in the near future. --Michael Mol 01:30, 7 September 2011 (UTC)
- Comparative performance measurement is not my primary motivation here. Mainly it would make sure the code posted on RC conforms to the task spec, and output is shown (if specified in task description). But showing times automatically is also nice, and also knowing they are all tested on same platform so the OS/PC specs/ etc. differences are taken out of the picture. The languages that aren't supported would be postable as they are today, as text source not executable source. The execution platform for every executable code snippet would be clearly identified, so if one runs on Codepad and another on Ideone, that would be clearly seen by anybody.
- When testing different solutions in the same language it would indeed let us compare algorithms performance. For an example take a look at this, at the bottom. I've ran all the tests for all the code snippets in there manually at that entry, and manually gradually inserted the timings back into the source comments; to have this kind of thing done automatically would be awsome and ensure all timings are true and current. There is a tool in Haskell that would run (client-side) tests and take statistical measurements automatically, but I can't remember how it's called right now. :) WillNess 10:03, 7 September 2011 (UTC)
- Hi WillNess, apart from the need to support a vast array of languages, I think comparative timings would skew the examples to produce faster code as a kind of unwritten extra task requirement. Fast code is often un-idiomatic for a language and we hardly ever state what is fast enough in tasks which is very important when timing code. Being the fastest is pretty meaningless in itself - The fastest may not be fast enough; the fastest could be too fast, if the system expects to wait a certain time for a component to finish; the fastest might be too hard to maintain; the fastest might take to long to develop... --Paddy3118 11:46, 7 September 2011 (UTC)
- If you'd like to compare algorithmic efficiency, there are probably better ways to do it that clock time. For example, have key, regularly repeated aspects performed by a function which pokes an accumulator, and count how many times the function was called. That puts focus on the algorithm, and not on shortcuts and optimizations that detract from code clarity. --Michael Mol 13:42, 7 September 2011 (UTC)
- As for showing output, as I noted, CodeEval has offered to provide an execution environment for at least some of the code snippets. I will eventually get that working in an automated fashion, and I hope to define and implement some kind of API to allow any language community to offer an execution environment for RC's use. --Michael Mol 13:42, 7 September 2011 (UTC)
- I hope to define and implement some kind of API to allow any language community to offer an execution environment for RC's use
Oooh! I like the sound of the API route. You can get timings if you want; but they don't have to appear by default. Mind you, People love to optimise for runtime for some reason, so it will always be hard to control - Maybe a warning about the normal optimisation being for idiomatic code whenever you select to generate run times...? --Paddy3118 15:36, 7 September 2011 (UTC)
- I hope to define and implement some kind of API to allow any language community to offer an execution environment for RC's use
- "You can get timings if you want; but they don't have to appear by default. " Cool. This could be done also with kind of collapsable sections. Users would click on "Show" to actually show what is there. The contents could be cached so each user's click wouldn't cause the actual run each time, but only say once a month or after a change was made. WillNess 12:40, 9 September 2011 (UTC)
- (I don't have a pony in this race, but Ideone.com already has an API, or so they say.) Yes, there is a danger of the race for speed, but I think naturally we'd just end up with several versions for same task/language combo. The more the merrier. :) Kinda like Hamming_numbers#Haskell which now has three versions - nicest, simplest and fastest. I prefer to know more, not less, to have more information, not less information. If it's misleading, then we'd need to expound some more on that in each specific case. And if someone views this as a competition between languages, it's their choice. But if not to compete, then at least to compare, right? It may not be as clearcut as comparing timings, but timings are still a part of comparison. If some task is 10 times slower on language X, I want to know about it, and if it's 100 times shorter and faster to develop I want to know about that too. WillNess 17:21, 7 September 2011 (UTC)
Overwrote my responses.
You overwrote my responses on User talk:24.85.131.247. Please fix, so we don't have an edit conflict again? --Michael Mol 19:27, 20 September 2011 (UTC)
- Yea, I just posted the fix and got your message. Sorry. Should be OK now. --Paddy3118 19:30, 20 September 2011 (UTC)
Delete
I see that you're a 'crat; would you delete this file?
I inadvertently uploaded it with a typo. The correct version is at File:Langton-pari.png.
CRGreathouse 02:04, 28 November 2011 (UTC)
- It's gone :-)
- --Paddy3118 05:00, 28 November 2011 (UTC)
- Thanks! CRGreathouse 18:55, 28 November 2011 (UTC)
Templates
- "If you're ever looking for a template, try Category:Example attention templates and Category:RCTemplates first."
- Thanks -Mwn3d
- There's this nifty page too. --Mwn3d 20:06, 5 December 2011 (UTC)
- Thanks.
Spam
Just wanted to say thanks for being hot on dealing with spam. At this point, I have to think RC is a specific target by spammers. I'll find time to deal with it, it's just slow going right now. --Michael Mol 20:17, 23 May 2012 (UTC)
- You're welcome. They're not! --Paddy3118 21:41, 23 May 2012 (UTC)
- Adding THANKS (for all you do tirelessly here on RC) --Walterpachl 16:51, 14 July 2012 (UTC)
- Aw shucks. You got me blushing. Which is pretty hard to see on a black guy :-) --Paddy3118 20:50, 14 July 2012 (UTC)
- Agreed on the benefits of your efforts. If I had one small nit to pick, I would prefer that you find a more gender-neutral four-letter word to use on the spammers in the log. :-) --TimToady 18:50, 6 November 2012 (UTC)
- (British English meaning of cretins or imbeciles. :-)
--Paddy3118 21:30, 6 November 2012 (UTC)
- (British English meaning of cretins or imbeciles. :-)
- Agreed on the benefits of your efforts. If I had one small nit to pick, I would prefer that you find a more gender-neutral four-letter word to use on the spammers in the log. :-) --TimToady 18:50, 6 November 2012 (UTC)
It looks like Bengeorge and Justgerrardz are two spamming accounts which should be blocked (both are posting spam links on Category:Gambas) --Andreas Perstinger (talk) 17:27, 4 June 2015 (UTC)
Empty Program
Thanks for fixing --Walterpachl 18:53, 30 June 2012 (UTC)
- Your welcome :-)
--Paddy3118 21:56, 30 June 2012 (UTC)
Sudoku Code for RPN / HP-15C
I updated the entry to have the code on your site.
I realize that programming languages that are intended for a single calculator are not really general purpose and might not belong on this site. On the other handm variations of RPN have been pretty widely used and this is an example an algorithm that most people would not consider RPN suitable for, and in that respect it is interesting. Your call.
- Hi Marcel. Thanks for adding the code :-)
- P.s. It's not my site - I just contribute. Like yourself. --Paddy3118 19:39, 30 January 2013 (UTC)
explanation re: include files
-- Moved to one place.
Links in your user page
Hi. It does not matter much, but you use external links in your user page, where internal links would do. Example: Monty Hall problem instead of Monty Hall problem.--Grondilu (talk) 09:30, 4 May 2013 (UTC)
- Hi Grondilu, The user page gets read ;-)
- A combination of sloppiness, forgetfulness, and design. I used the prog that generated the table originally to produce a table for a web page that was not on RC so used full paths and did not change things when generating the wikitable. --Paddy3118 (talk) 11:12, 4 May 2013 (UTC)
Re: OOCalc
I am a newbie to Excel. Found out how mundane and repetitive tasks can be done in no time when I was playing around with it. My true love is C, but I am open to all languages since I believe there is much to learn from each and everyone.
Re: Xmerl a language?
Hi Paddy3118,
xmerl is a Erlang Library. I used the libheader to indicate that the code was using the library, and then, as it creates a internal link, I followed it and I edited the page shown (a new one). I was suspicious that it wasn't the correct way to do it. Should I leave the library page empty?
Thanks! :)
Encryption
Now that encryption is in every news would it be reasonable to ask for encrypting algorithms? Of course I have one in REXX which I think is quite good but I'd love to know what others think about it Regards Walter And thanks once more for your careful moderation!!! ( 20:32, 6 September 2013 Walterpachl )
- First, the thanks are welcome! I'll accept on behalf of all the moderators :-)
- Unfortunately encryption is out of my field (so far), but I, like you, think it would be good to have a disturbingly easily cracked by the NSA algorithm on RC ;-)
- --Paddy3118 (talk) 22:46, 6 September 2013 (UTC)
Who created a solution?
Paddy, I can't find who created the ooRexx Entry in http://rosettacode.org/mw/index.php?title=Synchronous_concurrency&offset=&limit=250&action=history can you? You're always opposed to putting the authors their name into theit slotion. Why? --Walterpachl (talk) 16:22, 14 October 2013 (UTC)
- Hi Walterpachl, about not putting names in the source: That is because it is generally a good thing for people to improve examples if they can and often improvements are from people other than the initial author. The page history is a better way of finding out who did what. A name on the source would convey ownership when improving is encouraged. It is analogous to author names not appearing on Wikipedia pages - just the discussion pages.
- On the OORex thing: I had to do a binary search by hand to find this. Have fun :-)
--Paddy3118 (talk) 17:23, 14 October 2013 (UTC)
- Thanks Paddy, I was looking for ooRexx -- should have looked for Rick (whom I happen to know) --Walterpachl (talk) 22:52, 14 October 2013 (UTC)
Please use a unicode capable browser when make changes
C.f. this edit. I'm assuming you didn't intentionally made those changes in Haskell and J. --Ledrug (talk) 21:20, 16 January 2014 (UTC)
- Thanks for catching that. I don't usually have that kind of issue, and I cannot remember what browser I might have used at the time.
- Using html symbols instead of UTF-8 characters in the first place avoids this problem. Here's a test:
Right arrow →
Subset ⊂
I found JEdit capable of respecting Unicode characters. --Walterpachl (talk) 06:49, 17 January 2014 (UTC)
- If people don't write code in HTML escape sequences, they shouldn't be required to post code here in them. Having to convert anything non-ASCII into escapes is an undue burden and error-prone. Plus if you plan to read and post text in unicode, what's the reason to choose a text editor or browser that can't write it properly? --18:51, 17 January 2014 (UTC)
Hopefully this will remain a one-off on my part. Sorry. --Paddy3118 (talk) 10:27, 18 January 2014 (UTC)
hi paddy this is Sxpert
I am still here and am working on java and objectivec implementations of the own password algorithm. please see my answers in the relative talk pages
Link injection
Hi, Paddy. When I submitted a Java code just now, a link was injected into the code. Could you have a look at it? http://rosettacode.org/wiki/Sutherland-Hodgman_polygon_clipping#Java
- Hi. I had a word with Michael who started this fine site. He got back to me and said that a feature of the highlighter is to link into some languages official documentation. In fact, he was wondering why it was not creating documentation links for Python! --Paddy3118 (talk) 06:58, 9 June 2014 (UTC)
- It's mutilated the code, so that it's no longer correct and compilable.Fwend (talk) 10:09, 9 June 2014 (UTC)
- Does Michael realize that the autolink may fail and mangle the code instead? See http://rosettacode.org/mw/index.php?title=Sutherland-Hodgman_polygon_clipping&diff=183768&oldid=181794#Java (towards the bottom) Fwend (talk) 14:26, 9 June 2014 (UTC)
- It's mutilated the code, so that it's no longer correct and compilable.Fwend (talk) 10:09, 9 June 2014 (UTC)
- I changed it to use "java5" instead. It's a little better anyway since it's a Java 7 example ("java5" recognizes more of the Collections and things like that added in Java 1.5). In any case "d" was definitely wrong. If you use any highlighting you should use one that applies to the language you wrote it in. Using another language could introduce weird behavior if the highlighting for that other language changes at all in the future. if you want no highlighting just put no argument in the lang tag. --Mwn3d (talk) 12:48, 9 June 2014 (UTC)
bureaucrats@rosettacode.org
Is there any plans on reinstating the (above) e-mail address?
Other than me addressing a particular admin (or opening it up to general discussion on its talk page ...)
The Rosetta Code entry Reverse words in a string probably should be renamed to
Reverse words in multiple strings or possible variations on that.
It's a small difference, but is it worth it for a non-draft task? I'm hesitant to change the title at this late date, and for other reasons, I'd prefer it that a Rosetta Code admin do the rename (if at all). -- Gerard Schildberger (talk) 20:23, 31 July 2014 (UTC)
- I guess "Reverse word order on lines of a string" might be more descriptive, but I, personally, am OK with leaving it as it is. --Paddy3118 (talk) 23:15, 31 July 2014 (UTC)
Unlucky rollback of Power Set
Admin 40 Percent of the task description of Power set is about what the result are with empty sets. For my as a mathematician it is quite clear that the following examples also are explicitly given:
() = { } and ({}) = { , { } }
So why the erasure including my Scala contribution? In the first place you could deleted the templates only and in the second the empty set were in my opinion asked. And finally my contribution is erased. Please explain.--Siskus (talk) 18:32, 31 August 2014 (UTC)
P.S. What happened to your talk page? --Paddy3118 (talk) 07:23, 1 September 2014 (UTC)
"We tend to omit timings"
You wrote:
"we tend to omit timings on RC or restrict them to orders_of_magnitude comparisons..."
I'd like to make the case that the time has come for timings to be encouraged, at least on some pages such as Text_processing/Max_licenses_in_use. There are two basic reasons for this, one having to do with the way RC has evolved; and the other having to do with the nature of certain tasks.
Of course I realize that a language is not to be confused with the interpreters and compilers that may be available at a particular time, but as a practical matter, many people need information about what kind of performance can be expected if a particular language is chosen. With this understood, here are the two reasons:
1) For better or worse, RC showcases 535 languages, and probably the number will grow. More and more RC pages are including large numbers of these languages, but very few people will have the time to read, understand and assess more than a few entries, so some guidance as to which languages are appropriate to the task at hand would be extremely useful. More generally, as interesting as many of the languages represented on RC may be, many people visiting RC will at some point probably want to know which languages are most appropriate for them. Some may also want to gather information to determine which languages are really "toy languages" and which are heavyweights in general or in a particular domain. An important criterion in this regard is performance, and given the nature of RC and its authors, it seems to me that the only reasonable way for comparative performance information to be given is for authors to give both one or more performance metrics and some context, such as the CPU MHz rating for CPU times.
2) Some tasks, by their very nature, call out for performance comparisons. Text_processing/Max_licenses_in_use specifically requires that a large text file be used. This is a Good Thing, because it raises two questions:
a) Is there a compiler or interpreter for the target language that can manage a large volume of data?
b) What are its performance characteristics for that data?
Finally, I would like to emphasize that I was not the first to add performance data on the Text_processing/Max_licenses_in_use page. In fact, the very first entry (Ada) includes the elapsed time. I think this at least confirms the validity of the second point (2) above.
In summary, I encourage you to rethink this issue in light of the way RC has evolved. Should the task description of some pages include some specific performance metrics? What is the best way for performance-related information to be presented in a way that makes it somewhat comparable, without imposing excessively onerous obligations on authors? --Peak (talk) 13:19, 20 September 2014 (UTC)
- Hi again Peak. I should point out from the beginning that:@
- It's not the first timethat this has been debated on RC (and by other long-term users too).
- The problem is the meaninglessness and depth of the problem when you try and do it right, that leaves sites like The Computer Language Benchmarks Game, with all of its resources geared specifically to timing comparisons specifically puts game in its title because of the problems in finding meaning in comparing the figures - yes, you can compare the figures they give, but their are many caveats - such as timings varying due to what Linux may happen to schedule as an OS task; cache, cache, and caches - they give warnings on the site such as here.
- Yep, it would be good to get timings right, but seeing the effort put into the CLBG site, and their admonitions on timing, I think it better that with the state of any comparitive timing setup on RC, the best we should do is leave timings out, except for the occasional, obfuscated, local comparitive timing.
- Obfuscated timings: If, in the process of converting a C solution to Awk, stating that the C returned almost immediately and the Awk solution after eating half a sandwich" emphasises that the you expect the C to always be faster, but that the Awk solution does not take too long. An alternative of using Unix time is bad because it presumes that those milliseconds of precision can be duplicated by anyone - including by the by the author on his box, a week later when his partner has moved their music collection onto the machine or installed a critical update.
- What happens when a second user puts timings for C vs ADA and a third does ADA vs AWK, and a fourth ...; and you end up with multiple relative timings between languages? In an attempt to marshall that you might try for more information; stating your machine characteristics for example, but I am in the chip industry and manufacturers like Intel will ship improved parts with the same part number (as seen by normal consumers); firmware can change; ...
- What happens when compilers change - do you trust that "update to fix the windows installer" not to slip in some "innocuous to the developer"change such as a slight difference in build options that make timings change for this same "release"?
- Do your timings depend on your process of timing? Does running it all from unix make give the same timings as from an IDE for example?
- You can't just slap time in front of an invocation and believe in its result.
- Why you can't is involved.
- (Much) more infrastructure and a site geared to comparing timings Teaches you more about timing vaguaries.
- I would tend to use a mix of the RC and CLBG sites if I wanted initial coarse comparisons but even then, you must be wary - Python, for example, is an interpreted language with probably slow timings when used by the average Python programmer, and yet many compute intensive tasks in fields including particle Physics, IC design, genome research, and statistics, successfully use Python. In a lot of these cases you have to understand that Python is giving access to best in class libraries written in C, Fortran, C++, C#, Java, ... - What the user programmes in is Python for accessibility and what he sees is great speed and the ability to harness large compute farms or supercomputer clusters but in a manageable way from "Python".
- In my experience timings are usually a tertiary concern behind getting that component I am writing correct and in a reasonable development time. If working on an embedded system then timing may become more important (or less if as power and memory footprint can also rear their heads). When you know timings are tight then this can and does distort programming style, (such as the use of xor swapping), and which can be highly machine, OS, and network specific. Do we want non-idiomatic, timing optimised, machine specific code on RC? I think we would loose clarity.
Thank you for taking the time to convey your rationale. I was already familiar with all the points you make, and I am disappointed that you don't seem to be able to see the forest for the trees. The nice thing about RC compared to CLBG (Computer Language Benchmarks Game) is that RC has so many more languages, so many more tasks, and presumably many more contributors (or at least, it's more open to contributions). Thus some of your points I see as arguing for having more timings. One of the things I think you overlook is that a simple timing is objective -- if it's there, users can interpret it, misinterpret it, or ignore it if they wish. Also, since RC is relatively open, if a timing seems "off" by someone, the additional objective information can be added.
One of the important points you make is that there has been discussion about this topic before. I think that is a sign that instead of censorship, some creativity is required. It was in that spirit that I suggested that on *some* pages, the task description should invite a brief, objective indication of performance (space and/or time as appropriate). I invite you to think "outside the box".--Peak (talk) 03:57, 22 September 2014 (UTC)
- On objectivity (a slight aside)
- Hi Peak, I would hope that others might join in as they have done in the past to reach a consensus. If your meaning of objectivity is something like:
- "(of a person or their judgement) not influenced by personal feelings or opinions in considering and representing facts."
- then no, at this point I am stating my case, (that was discussed before). I have read, and listened to your points however, but I still fear that yes, although we do have a lot of languages, we have no infrastructure to put in place anything like what CLBG has and I think that more than CLBG is needed.
- (And back)
- Note that I don't say no timings; just that more effort should be put into fuzzing timings to represent their true use for comparisons: saying that "algorithm A is approx 10x faster than Algorithm B for the givin inputs" is much better than just leaving behind the result of Unix time (with or without Machine and OS versions).
--Paddy3118 (talk) 06:56, 22 September 2014 (UTC)
capitalization of thingys named after people
Every place I looked, I noticed that Heronian triangles are capitalized. Naturally, I didn't look everywhere, but if your time is short, I could modify (if you approve) the Rosetta Code task Heronian triangle (primitive) to capitalize that name. -- Gerard Schildberger (talk) 11:41, 7 January 2015 (UTC)
Python Roots of a quadratic function
Hi Paddy, You may have noticed I've made a few Python contributions recently. I was just looking at this roots task and it has some issues. It was marked incorrect (back in 2009) and you fixed it by removing the first of two solutions. But both solutions had the problem cited by the incorrect tag, which was that they did not "do it better" as required by the task. I've coded up some "better" versions, a version using each of the two better methods mentioned in the description, and also a call to numpy.roots. (It's interesting to compare the three.) My question is what to do with the present solution. I could toss it entirely, put it under a subheading, or incorporate it into my comparison. It has a couple of other differences--it's Python 2 whereas I've been working with Python 3, and it returns an extra bit of information categorizing roots as same, different, real, and so on. If it were moved under a subheading it could stay about as it is, except I would like to add the b=-1e9 case to show that it loses all precision. —Sonia (talk) 17:57, 1 April 2015 (UTC)
- I guess if it is wrong then it should only stay as an example of how not to do things. I am happy either way Sonia. :-)
- (Gosh I've used a smiley several times this morning - I'm in a good mood). --Paddy3118 (talk) 05:19, 2 April 2015 (UTC)
Cholesky/Pascal identity
Hi,
Cholesky decomposition of a symmetric matrix A is a lower triangular matrix L such that A=LL', where L' is the transpose of A. I don't know what you mean by "cholesky(pascal_upp(i)) == identity(i)", what software do you use? If L is the identity matrix, then LL' is also the identity matrix, certainly not A.
It's highly likely that you used a routine that does not check matrix symmetry, and that uses only the lower part in the process (as the upper part is supposed to be the same). This would make sense: if you forget the upper part, pascal_upp(i) is the identity, thus L is indeed the identity. But it's just plain nonsense, of course, to say that this is the Cholesky decomposition of pascal_upp(i).
May I suggest a good reference if you don't know much about numerical analysis? Golub & Van Loan "Matrix Computations" is really good. "Numerical Methods in Matrix Computations" by Ake Bjorck is also a nice choice.
Arbautjc (talk) 19:46, 28 April 2015 (UTC)
- I see you have noticed one boundary in my maths knowledge :-)
- Ifyou consider the Python solution to both tasks and add the following identity matrix generator function, then I was refereing to what is tested in the assert statement below. It looks like an identity holding for all positive integer n and is tested for afinite range of integers to be true but I don't have the maths to prove or disprove it. Maybe I should have stated it as "Paddy's conjecture".
Here's the code: <lang python>>>> def identity(n): ... return [[1 if j == i else 0 for j in range(n)] for i in range(n)] ... >>> for row in identity(3): print(row) ... [1, 0, 0] [0, 1, 0] [0, 0, 1] >>> for row in identity(5): print(row) ... [1, 0, 0, 0, 0] [0, 1, 0, 0, 0] [0, 0, 1, 0, 0] [0, 0, 0, 1, 0] [0, 0, 0, 0, 1] >>> for n in range(2, 300): ... assert cholesky(pascal_upp(n)) == identity(n), "Whoops" ... if not n % 20: print(n) ... 20 40 60 80 100 120 140 160 180 200 220 240 260 280 >>> </lang>
"This task has been flagged for clarification."
Dear Paddy3118: You recently reverted some minor edits I made to the introduction of Text_processing/1 without any comment, so I'm not sure what your objections were, but I would like to point out that the page has a "This task has been flagged for clarification." notice, and I was trying to improve the clarity of the text, which was (and is again now) written in rather poor English. I realize that you have a long history of contributions to RC and perhaps have a preference for "leaving well enough alone" in task descriptions, but as I mentioned, someone else (besides me) tagged the article specifically with respect to the section I edited. Since you have gone to the trouble of reverting the text, I invite you to improve the task description yourself. Thanks. Peak (talk) 02:28, 29 April 2015 (UTC)
duplicate links in Hofstadter Figure-Figure
On the discussion/talk page for the Hofstadter Figure-Figure task, you stated:
- When I had finished the Python version I checked it with tables of the first 1000 values refered to from Sloane: here for R and here for S, although the table for S has an off-by-one error. --Paddy3118 ...
... the here and here (both links) point to the same web-page. -- Gerard Schildberger (talk) 22:21, 21 May 2015 (UTC)
Huge addition to Ledrug's page
Hi, unless Ledrug specifically asked for the data, it seems impolite to dump so much on his page and I would urge you to remove it as it can only cause offense. --Paddy3118 13:01, 27 October 2012 (UTC) That's Nigel Galloway being Nigel Galloway. The content was from Talk:Kaprekar numbers, which he somehow felt very strongly the urge to remove, probably because I said something not very flattering to him there. I undid that change because deleting 30k+ talk without even a word of explanation was basically vandalism, so he decided that those should go on my talk page instead (and of course it was removed from the original place again). Come to think of it, I kinda suspect this paragraph won't survive very long, either. --Ledrug 13:47, 27 October 2012 (UTC)
- The above paragraph seems to be a reference at least in part to these two edits on the part of Nigel Galloway: A big addition and A big deletion. It is perhaps also a copy and paste of some bit of discussion from almost 3 years ago?
- Anyways, the lack of adequate attribution made me curious and this represents my current best guess. --Rdm (talk) 15:07, 23 May 2015 (UTC)
Autoblock?
Hi... I am glad you are helping shut out whoever is abusing our registration process. (And I think we are supposed to have email confirmation required before people can update pages, and I think that that does not currently function...)
But I also noticed that you are leaving "autoblock" active? I was told that we should leave that alone because it only winds up blocking the cloudfront cdn proxies. Or has that been fixed? --Rdm (talk) 21:05, 5 July 2015 (UTC)
- Rdm, unfortunately I know very little about the inner workings and just try and remove spammers and their detritus when I see it. Is there something else I should be doing? Short Circuit is the guy who knows the most I'd guess. --Paddy3118 (talk) 06:54, 6 July 2015 (UTC)
- In that case, maybe best to un-check the second box when blocking a user (so you do not block the IP Address) and leave a note for Short Circuit asking for clarification? If those IP blocks are incorrect, they'll need to be cleaned up. If they are correct, perhaps I should be doing that also.
- Yes, Autoblock will break with Cloudflare. I don't have time to fix that right now. --Michael Mol (talk) 15:20, 21 October 2015 (UTC)
Correction to Ceylon Y Combinator
Can you please clarify what is incorrect about the first Ceylon Y Combinator solution? AFAICT, your note is referring to "class RecursiveFunction", but this is just a container. The solution, overall, is very similar to others including Java 8, Scala, and Swift.
- It seems odd to have a comment to say that the example does not fulfil the task without also stating why it deserves to be there. If its as OK as others then that needs to be said - or omit the comment altogether? --Paddy3118 (talk) 20:06, 18 August 2015 (UTC)
Oh, I guess you mean the third variation. I was simply following the pattern of the others - there are about 13 instances of "The usual version using recursion, disallowed by the task". If this is what you are referring to, and you think it would be better without the third version, I certainly have no problem removing it. Let me know.
- HI. It isn't so much the code it is the comment - it seems to read as "this doesn't fit the task". Maybe the comment should go but leave the code as it is very like others. --Paddy3118 (talk) 07:44, 19 August 2015 (UTC)
early promotion
I noticed that you promoted a Rosetta Code draft task (after one day), namely:
Normally, I would bring up issues in that particular Rosetta Code draft task's discussion page, but since it is already a full-fledged task, it would be difficult (I think) to resolve the wording (and/or requirements) of that task at this (late) date. I never got to address my concerns during the short interim of it being a draft task.
So, I'm bringing my concerns here so as to not have a discussion that can't be resolved there (or the possibility of that not happening here as well). But, this issue should be addressed somewhere, namely, that not all computer programming languages use the same lexicons nor do they necessarily share the same definitions and/or nomenclatures, --- or to get technical: stuff.
I may be way out on a limb here, so this would be a good place for me to see if my thoughts are on-topic or ... not.
So ... let's start sawing on that tree limb:
An array has different meanings to programmers of different computer languages. (As an E.E., I think of antennae arrays, but that's me.)
To some, it is a program variable (or thingy if you want to get technical), denoted by a single (program variable) name (but it may have aliases) which have addressable (elements) to access/address each element. Most people are familiar with one-dimensional arrays, and to keep things simple, let's just stick with a single dimension. Most single-dimension arrays have a numeric index (almost always an integer, which could be zero or negative).
To others, an array may be a single (program) variable, with multiple elements (items) in it, or what some programmers would call a list or a table or some other name like bag or somesuch. The elements/items are usually separated by blanks or some other well-known/well-defined separator token(s) such as commas, colons, or the like. --- or (ugh) tabs.
And still others may think an array as a type of hash table (array) that doesn't have a sequential addressing mode (such as in the case of some types of associated arrays, as in the family of REXX languages and others). The REXX language calls them stemmed arrays.
But, back to a simple (one-dimensional) array such as in old-time FORTRAN, where the 1st element is number 1, and (say) continued upwards to element 100.
Of course, in the newer Fortrans, one could define/declare the array with N elements, where N is known only at run-time. In this context, I can see the validity of asking the programmer to find the number of elements elsewhere in the program. Most high-level languages have BIFs to return the low- and high-bound element (indices).
Of course, most languages allow the programmer to specify the starting element (number) and the ending element (or perhaps, the number of elements, starting at N).
Clearly, in this (FORTRAN) case, there are exactly 100 elements in the array, even though, at this point in this discussion, the array hasn't been assigned any values, although they may have been assigned (or cleared) to zero (or some other defined value as specified by the computer language).
This has nothing to do with how many elements of the array have been assigned values (at least, by the program itself).
Some languages have a facility to detect if a variable (or element of an array) has a "value" that isn't assigned (i.e., undefined).
With REXX, it's more complicated. If we use the traditional (as I understand it) definition of an array, (let's call the array A) then we could assign: <lang rexx:>A.1=42 A.2=144</lang> and the A array would appear to have two elements (assigned and defined).
Now; lets try something different: <lang rexx:>A.50=42 z=2 A.z=144</lang> and as with the 1st program, the A array would appear to have (again, as before) two elements (assigned and defined).
And, now for the fly in the ointment: <lang rexx:>A.50=42 z='fly' A.z=144</lang> So, now we have (as previously) exactly two elements of the array defined, one element identified as 50 (two decimal digits or characters), and another element identified as fly (three lowercase letters).
And, if the two assignments were performed elsewhere (say, some subroutine or function), then there isn't really a handy or viable method to find out how many elements there are in the A array. If the range of values for the elements is known, and the range is reasonable, one method is just to traipse through all the possible elements and determine how many of them are defined. For the most part, this isn't a viable nor practical method. Most programmers, when assigning a value to a new element, keep a list of all the (unique) element names (or indices, as that would be what people would call them if the elements are integers).
Note that nowhere does the REXX programmer tell/inform/declare how many elements that the A array has (or can have). Indeed, there is no way for anything in REXX to be declared/defined/allocated/etc.
Well, OK, OK, labels are defined by ... er, ... defining/using them, and functions (or subroutines, routines, et alii) are kinda defined by usage, that is, when referenced in REXX statements. Another thing are conditions (or subroutines) that handle exceptions, but all of these require a label which is identified by a colon after a symbol (statement label).
[Yes, yes, this train of thought has a caboose.]
I would like (besides world peace and the end to world hunger) to (possibly, kind of, maybe) define what an array is and for that matter, what an element of an array is --- at least, as far as the aforementioned Rosetta Code task.
By the way, no matter how it is defined, finding the number of elements of an array is problematic for the REXX language, but of course, we REXXers have a way to deal with this problem. Some REXX implementations have a method to vary a do loop (structure) index to each of the defined elements, but it's not part of the Classic REXX language definition.
-- Gerard Schildberger (talk) 00:31, 8 October 2015 (UTC)
- You are right; but in my defence...
- The task was very popular and gained ten language examples by the time I promoted it with their editors not having much trouble finding a comparable interpretation of the task description. I usually look for at least four, and no unresolved issues in the talk page; but I now realise that there should be (more of) an element of "time-served as a draft" in my loose equation of when to promote from draft.
- On your specific language questions, you bring up a point that I think Perl might share, as at least with hashes their is a method of providing a list of keys and creating a hash out of them with all the vales set to undefined. you then have the ability of a key existing in the hash but its value being undefined. Some languages might explicitly allow sparse arrays where possibly non-contiguous ranges of indices are allocated in memory making the concept of number of elements even more complicated.
- I suggest you first attempt to interpret the task in the manner of the other examples then write about possible differences concisely with small example(s) in the task page or point to a larger exposition in the talk page?
- P.S. I have just seen that Array_length#J does this kind of extra explanation I mentioned. --Paddy3118 (talk) 07:19, 8 October 2015 (UTC)
Be careful with the IP blocks!
WilliamNess reported on IRC that he's blocked because of an IP block that he didn't recognize. That means he's behind Cloudflare, and you inadvertently blocked at least one Cloudflare reverse proxy. :( ... and from the sound of it, you got a good chunk of Europe. --Michael Mol (talk) 18:45, 3 January 2016 (UTC)
- I cleaned it up. MW doesn't make it easy to do through the web interface, so I went DB delving and disabled all autoblocks and cleared all outstanding IP blocks. --Michael Mol (talk) 19:10, 3 January 2016 (UTC)
Spam
There's quite a bit of spam visible at Special:RecentChanges. (I started to work on it but without delete privileges it's not very effective.) I tried to tell Mike but User talk:Short Circuit seems to be protected.
CRGreathouse (talk) 20:00, 20 January 2016 (UTC)
massive and erroneous editing
Since you are the creator of the Rosetta Code task "Heronian Triangles", I thought it should be brought to your attention that user CRGreathouse has done massive (global) editing for that task, and among other things, he made the Rosetta Code task preamble less readable (especially the math formulae, as I had made them larger to make the italics and superscripts more readable). Now, that's a subjective thing, so I won't push that any further, I think a task's editing and re-editing of the preamble would just be counterproductive.
However, he removed a substantial amount of the REXX (programs) preambles which explains what and how the REXX programs worked and why the REXX programs made certain (logic) decisions.
Also, the 2nd REXX program (which is the version that is seven times faster) was removed without comment or discussion. I thought that what the discussion page was for.
I also thought the numerous changes made to the REXX programs were for the worse, and it seemed those changes weren't beneficial nor made the reading of the program and/or comments any better.
Not the least of which, the Ring language was removed in its entirety, and I couldn't easily find who
added that entry.
Because of the massive changes, I couldn't just undo the changes he made, it would've undone too many other changes.
If you could track down the author of the Ring author and inform him to re-enter that programming entry along with any comments and output, I'm sure it would be appreciated.
I spent over an hour restoring my comments, the two original REXX programs, their output, and the prologues of the two programs and an epilogue. It seems such a pity to waste this much time undoing these massive damaging changes.
I do not want to address CRGreathouse directly, as I don't want to start an editing war. But this massive change was the straw that broke the camel's back. I think I used up my silver bullets, so I only restored what I thought was an excessively damaging change to the one language entry that I know extremely well (plus, I was the original author). I have no idea why he removed the better of the two REXX versions, but both versions have their merits, the the 1st REXX version is the simplest (and shorter) and easier to understand, the 2nd REXX version is the preferred and robust version meant for prime-time execution.
Lastly, I also have no idea why the Ring programming entry was removed without so much as a comment, perhaps it wasn't worthy? Or perhaps the baby was thrown out with the bathwater. -- Gerard Schildberger (talk) 21:31, 8 July 2016 (UTC)
Multi-dimensional array
Hello, I added a question on storage order to this task, as it's a very important thing to know when calling libraries from another language, or even when programming in only the given language, in order to optimize memory access. There is an ongoing discussion about Fortran in the talk page, by the way. As this discussion shows, misconceptions are common. I don't know if there is a specific task on RC for this question, however I think it's the right place in a task about multi-dimensional arrays.
Arbautjc (talk) 12:27, 25 October 2016 (UTC)
previously deleted REXX subroutine entry
Sometime in the past, you moved (and then deleted the original) an entry (page) of the REXX subroutine $ERR.REX.
18:58, October 3, 2014 Paddy3118 (Talk | contribs) deleted page $ERR.REX (Moved.)
(Yeah, yeah, I know, about a thousand days ago ···)
It is, as I believe, what "you" guys call an orphan page. A better word (I think) would be a common subroutine or function, that is, a page that belongs to (but not owned by) multiple Rosetta Code examples/entries/solutions. The creation of mine which was to save space within a (REXX) example (as well as the overall space on individual Rosetta Code task's space). That is, instead of including it in a (small, er, smallish) REXX example, it (the subroutine/function) would just be pointed to by a link (in a comment usually immediately after the source program). These functions/subroutines are not one or two lines, no siree-bob. There doesn't appear to be a way for a computer programming language entries to point to (the same language) subroutine for inclusion (within the programming entry). I chose to use add a comment with a link (after the programming entry) that points to the (commonly used) subroutine.
To see this "error", see the Rosetta Code page $SPELL.REX, an altered Rosetta Code name for the actual program (function) which is named $SPELL#.REX.
The sentence (link) that doesn't work is:
The $ERR.REX REXX program is included here ──► $ERR.REX.
The above page can be seen here: http://rosettacode.org/wiki/$SPELL.REX
There are others (links) that also fail similarly.
Now, most (if not almost all) Rosetta Code users don't have any sophisticated subroutines/functions of the type that I code up (mine intend to be super-sized versions of general programs. A case in point is my $SPELL# REXX function that spells any number you can enter (well, any number up to around 600 3,000 decimal digits), along with options for spelling currency symbols, exponentiated numbers, use of commas in the translated number, "saying" of decimal points, decimal fractions, exponents, leading signs, American or English spelling (well, more than spelling, the English have a different system that uses milliards and the such), and many other options. One options, expressing numbers as an ordinal (which I intend to add as a Rosetta Code task soon). The use of ordinal numbers will, in turn, become another new Rosetta Code task (also, to be entered soon). I could've just removed (very very very carefully) all the options that weren't needed, but that seemed like a lot of work (crippling of features), and worse, now there would exist multiple versions of the same function (by name), and that would surely be confusing whenever somebody comes across a version that doesn't work (compared to another version of the same name). The program (subroutine/function) that was deleted was a general-purpose error routine that issued a myriad of error conditions (and does some minor fix-ups like enabling console output), as well as insuring that the error message was actually seen by the end-user (i.e., not suppressing error messages), as well as displaying the error message in red (if the terminal supports color). Other features are to add whitespace to the error text (making the error easier to see), as well as what program is issuing the error message, and then set the return code (R.C. or RC) in REXX (or the host environment).
That deleted (subroutine) entry was pointed to by a number of REXX entries that used that subroutine.
There are numerous other entries that utilize the same mechanism; REXX entries that use a common subroutine, and the subroutine was large enough to move it to it's own page instead of cluttering up multiple REXX examples.
The only one that was broken (as far as I know) was the link to $ERR.REX; all the other links (fortunately) are intact (again, as far as I know) and still work as intended.
I have tried to edit the original (that was deleted), but I received an error message that stated that the entry has been deleted. I hate things that one can't fix.
One problem with moving (and deleting) the REXX subroutine ($ERR.REX) to a page that used it (invoked it) is that you didn't know that other REXX entries that also used the exact same subroutine and also had a link pointing to it, and now those links are now dead (that is, they don't work as they are pointing to an entry that no longer exists.
Could the original file/entry (that was deleted) be restored to enable those links that were made invalid? Either that, you could put in place a re-direct thingy so that the other links would work again. I believe that would be the easiest (and lest work) that would enable the broken links to work.
I never noticed the failing links until someone mentioned to me that one of my comments mentioned the location (via a link) to one of my REXX subroutines, but it is no longer functional.
There are a few handfuls of these types of links, and I no longer know where they all are. I think re-instating the original link (that worked) would be the easiest to make thinks work again, ... the original entry (now broken), and all the others that are currently broken. nbsp; Because of the way it was removed (I think), the what links here thingy doesn't function. -- Gerard Schildberger (talk) 04:07, 6 September 2017 (UTC)
By the way, it isn't an orphan page, as What links here shows that it isn't an orphan. -- Gerard Schildberger (talk) 23:35, 6 September 2017 (UTC)
As a followup, the REXX language doesn't have any trigonometric functions, nor for that matter, even a sqrt (square root) function.
There are two ways to handle this (the lack of some common functions, in particular, sqrt).
- Code (in-line) a sqrt function
- Code an external function named SQRT
(For the external name, the actual file extension name would be operating system dependent; the reasons why it should be in capital letters is in the way REXX was developed many many years ago.)
Now, when one enters a REXX program in Rosetta Code, you can write the code either way, but the 2nd method does not lend itself easily here on Rosetta Code.
Fortunately, the sqrt function (or others of the same ilk, but not-so-much for trig functions and the log functions) can be coded fairly small, but an efficient sqrt function (the kind that I like to write) ain't so small (but it runs fast, and supports the returning of complex results). I choose to just condense (compact) my version of the sqrt function instead of supplying an external version. I also chose to not comment the compacted REXX statements, as explaining how the sqrt function works isn't/wasn't part of the Rosetta Code task(s).
I did the same for other (rather small) REXX functions, and it does add REXX code to the end of the REXX programs and detract from the readability of the REXX entries somewhat. But at that time, I didn't know much about the ways and means of entering common REXX functions/subroutines in/on Rosetta Code examples (and, as far as I know, there still isn't a means). Hells bells, I didn't even know enough to create a new page. -- Gerard Schildberger (talk) 04:54, 6 September 2017 (UTC)
- Hi Gerard. It was a long time ago! I have skimmed your comment and went looking through my past contributions list and:
- Yes, I was moving a REXX entry on that day.
- I have no displayed edit at that time. I jump from edits at 14.49 to 23:00.
- Note that this isn't really a REXX entry per se; it's a stand-alone page that isn't directly a part (an entry/example) of a Rosetta Code task, but it is a common subroutine/function that is referred to by several bona fide REXX entries. -- Gerard Schildberger (talk) 22:02, 6 September 2017 (UTC)
- I also can't see any mention around then of file ERR.REX in my contributions log?
- It's named:
$ERR.REX
- STOP PRESS: A search has found http://rosettacode.org/wiki/$err.rex . Could it be that you forgot the name? --Paddy3118 (talk) 18:43, 6 September 2017 (UTC)
- No, I didn't forget the name. $ERR.REX
- -- Gerard Schildberger (talk) 22:02, 6 September 2017 (UTC)
Did you go to the Rosetta Code $SPELL.REX page [that was mentioned above, it's in the 2nd light-blue box (on my browser)]? ... re-quoting text from above ...
███████████████████████████████████████████████████████
To see this "error", see the Rosetta Code page $SPELL.REX, an altered Rosetta Code name for the actual program (function) which is named $SPELL#.REX.
The sentence (link) that doesn't work is:
The $ERR.REX REXX program is included here ──► $ERR.REX.
The above page can be seen here: http://rosettacode.org/wiki/$SPELL.REX
███████████████████████████████████████████████████████
and once there, try to click on that: The $ERR.REX REXX program is included here ──► $ERR.REX thingy.
I tried to get you to take the grand tour so you can see an actual "failure" instead of one of my own contrivance. -- Gerard Schildberger (talk) 22:02, 6 September 2017 (UTC)
Hi Guys, Sorry to butt in to the conversation but I may be able to help. Paddy3118: That page did get deleted. It shows up in the deletion log and if you try to go to http://rosettacode.org/wiki/$ERR.REX you get the message quoted above. The message says it was moved but I can't find where. $err.rex was added in 2016.
Some questions for Gerard: Is the $err.rex essentially a duplicate of $ERR.REX? Could you just change the links to point to $ERR.REX? If I restore $ERR.REX can we convert $err.rex to a redirect page or does it have different content?
- The page was supposed to be named in capital letters (as that is what the REXX program name is, and the original name was). Renaming the original file isn't helping to clarify the naming problem, or the linking issue). However, I wouldn't be adverse to having it both ways, that is, install a re-direct thingy so it can be found any which way.
- As to changing the links ... I don't know where they all are. Because of the broken link, I can't use a What links here tool. But why does anybody have to change all the links (wherever they may exist) when they were working correctly in the first place? This is just a symptom, and the cure shouldn't be worse than the disease. If a file (or entry, or whatever) gets moved, make sure all the links to it remain in working order, even if a re-direct is needed.
Some of those links were entered far to long ago for me to remember where they all are. -- Gerard Schildberger (talk) 23:35, 6 September 2017 (UTC)
Also, it may be useful to make a category page to attach these REXX files to so this doesn't happen again. How do you refer to these pages(as a collection) REXX libraries? REXX NBIFs? REXX Subroutines? --Thundergnat (talk) 22:51, 6 September 2017 (UTC)
- This won't happen again if they stay put, that is, don't get moved and/or renamed --- if it works, don't fix it. If it does get fixed, then fix everything that refers (links) to it. I know it's easy to "fix" something, and have somebody else take care of the follow-out. But, to answer your question: I don't refer to those pages (as a collection), for the main reason, they aren't a collection --- a loose hodge-podge or assorted REXX functions/subroutines/routines that are individually referred (invoked) by various REXX programs, most of which a user wouldn't care (or even have knowledge of) --- this kind of stuff happens behind the curtain and shouldn't be looked at or be concerned about). The $ERR.REX is just one (internal wolf in an external sheep's clothing?) support (REXX) program that is used by several other REXX programs (Rosetta Code entries/examples), and REXXers don't have a library as such (although they may be stored in something like a library/directory/folder), they are just (REXX) programs that happen to reside in such a place that the REXX interpreter can (and must) locate them when invoked/called. Most REXXers place these support programs (for a lack of a better name) in the same place (directory, folder, or mini-disk) as all their other REXX (mainline) programs. The REXX language doesn't support a DLL library type thingy. This is the closest thing to making those programs appear as if they were a (regular REXX) BIF (built-in function). Also, I don't know what a NBIF is, and a search on the google-net didn't help any. -- Gerard Schildberger (talk) 23:35, 6 September 2017 (UTC)
Just in case it wasn't obvious: REXXers are REXX programmers. -- Gerard Schildberger (talk) 23:42, 6 September 2017 (UTC)
- Ah. So this won't happen again as long as it doesn't happen again. Somehow I don't take much solace in that. BIF - built in function; NBIF non - built in function. No? ok, no. Well whatever you do or don't call them, since you have no opinion I'm going to call them REXX library routines.
- But, but, but, but, they ain't library routines. I realize you can choose to call them anything ya want, but that would be a misnomer, and library carries with it many notions and distinctions. -- Gerard Schildberger (talk) 23:54, 6 September 2017 (UTC)
- I asked for your input and I got "a loose hodge-podge or assorted REXX functions/subroutines/routines that are individually referred (invoked) by various REXX programs" [sic]. Perhaps '[Category:Rexx library routines]' is not as precise, but it isn't as flippant. If it makes you unhappy and you want to change it, feel free. It is a public wiki. Other than undeleting $ERR.REX, there is nothing I did that you couldn't. --Thundergnat (talk) 00:48, 7 September 2017 (UTC)
- Sorry that you misunderstood my reply. I was trying to describe what those thingys were, not name 'em, but in any case, what you choose for a name is OK, as it's just a place-holder name (as I understand it), not necessarily a description. No flippancy was intended. I don't fully understand what a category does, but if it helps "place" and/or "name" the stuff, then it's a good thing, of course. By the way, I'm not unhappy, --- I was trying to think of a more (and/or accurate) name of such an animal, but I couldn't come up with one. If there was any unhappiness, it was my failure to come up with a better name. -- Gerard Schildberger (talk) 01:08, 7 September 2017 (UTC)
- I understand that I could've added a category, (I think), but I didn't even know that was an option, nor did I even think that would solve the problem (with $ERR.REX and others). I tried several things, I thought that merely changing the deleted entry would work, but I apparently didn't have the privileges needed for that to happen. If you told me that merely added a category, would've fixed the problem, I could've done that --- well, with a little (or more than a little) help in setting up the category page. The use of a Template:Category wasn't mentioned, I thought you were looking for descriptive/definitive name for such an animal for some other purpose. -- Gerard Schildberger (talk) 01:40, 7 September 2017 (UTC)
- Just an aside, how does one add a category page? -- Gerard Schildberger (talk) 01:40, 7 September 2017 (UTC)
- Sigh. Let me Google that for you --Thundergnat (talk) 02:17, 7 September 2017 (UTC)
- Because these REXX pages are not "standard" could they have a prominent comment added on their purpose on RC after they are "tidied up" so they will remain good, tidy, RC pages? That comment might also include mention of the consequences of them being moved (or how best to move them if they do need moving). Thanks. --Paddy3118 (talk) 06:17, 7 September 2017 (UTC)
- Actually, nothing was moved. The main fix (that I couldn't perform, I didn't have the authority, and it was a lack of knowledge about that restriction that stymied me in trying to fix the problem) was to "un-delete" the deleted page (either $T.REX or $t.rex --- or something to that effect), and (I think) one re-direct was added (for $T.REX or $t.rex). All the other REXX pages just had a category added. If you could write something that would be acceptable to all the powers-that-be, I'll add it to all those "non-standard" entries that I have entered. All the REXX routines already have a comment stating what the subroutine/function/routine is supposed to be used for and by what (or whom?) it is invoked for. I'll gladly add whatever paragraph would be suitable. However, the text at the top of the category (Category: REXX library routines) that was added has a very good explanation of what's what. -- Gerard Schildberger (talk) 06:57, 7 September 2017 (UTC)
erroneous creation of a Rosetta Code task
Paddy (or any other administrator).
I erroneously created a Rosetta Code task instead of a (new) discussion page for the Rosetta Code task: Eertree.
The erroneous Rosetta Code task name is: Suffix trie.
Note that it is trie.
Somehow, when I thought I had clicked on the Discussion tab in the Eertree task, I had instead, created a new Rosetta Code task.
The text of which was that the Eetree task use a URL that was misspelled or just plain missing (or some other explanation).
See the Discussion page for the Eertree task.
One bad fallout is that the defunct or misspelled URL (or whatever) now points to a valid page on Rosetta Code.
That erroneous Rosetta Code task (Suffix trie) needs to be deleted as soon as it is convenient.
-- Gerard Schildberger (talk) 21:42, 13 October 2017 (UTC)
erroneous modification of the Wikipedia entry for Rosetta Code entry
Paddy (or any other administrator, particularly Michael Mol, if you could contact him, as he entered the original at Wikipedia):
The user "Siskus" has been making erroneous and incorrect updates to the Rosetta Code entry on Wikipedia.
I know this may not be the place for this discussion, but if someone could get hold of Michael Mol and inform him of what is happening on that site regarding the Rosetta Code entry.
In particular, Siskus has incorrectly updated the programming languages to reflect what Siskus called the top 25 computer programming languages, and in addition, has added broken links, or more specifically, non-existent links (to computer programming languages).
I believe the changes could be construed as malicious, but I leave that judgement to others.
The original computer programming list (and somewhat modified/expanded/updated by me to reflect the current state of Rosetta Code as far of the number of tasks, computer programming languages, and the total number of programming entries/solutions) had computer programming languages that were widely known by the general public, and now, some of those names of popular programming languages have been removed.
I have un-did (rolled back) the three erroneous changes made by Siskus, but an edit war is the last thing that Wikipedia needs (concerning Rosetta Code).
I do not know how to raise this issue at Wikepedia about this issue (or even if I should), so I'm relying on Michael Mol (or some other person) to look into this problem and hopefully, find a solution. I am hoping that this isn't the beginning of worse things to come. -- Gerard Schildberger (talk) 17:17, 16 July 2018 (UTC)
I have been in contact with Michael Mol (via regular e-mail), and he has asked me to ask some Rosetta Code admins (and, oh joy, I picked you) and/or heavyweights to help Michael Mol understand what is probably needed to flag (Mol's word) a certain user (and his two or more sock puppets) on Wikipedia). This concerns many massive malicious and damaging changes on the Rosetta Code entry on Wikipedia. The original Rosetta Code entry was created my Michael Mol, ... then, apparently, the original was removed/deleted as not being "noteworthy", and apparently, it was then later re-instated or the deletion was un-done. Since then, I have been updating various Rosetta Code statistics (number of tasks, draft tasks, number of computer programming languages on Rosetta Code, and the number of programming entries/solutions) and such things like creating a (bullet) list of some commonly well-known names of the computer programming languages entered on Rosetta Code. This has, in addition to facts concerning Rosetta Code, makes it known that Rosetta Code is noteworthy and is is indeed active and thriving with almost 60,000 programming entries/solutions. In any case, Siskus (and later, two sock puppets) have been un-doing my un-doing of his un-doing, and the latest un-doing was done by a user named MichMol (another sock puppet). At this point, I e-mailed Michael Mol (the real one) and he asked me to help find out who would know about addressing this issue and what would be needed to try to find or create a solution to this problem(s). Michael will be looking for somebody at Wikipedia that might know how to fix this situation. I'm hoping that the Rosetta Code entry on Wikipedia could be frozen (or locked), and that would mostly solve the problem with the vandalism. I hate to discuss this on this Rosetta Code forum, so I would appreciate some form of communication other than here, unless you'd require this discourse to be here instead of e-mail. Michael Mol has my e-mail address if you need it. I will await for your advice or somebody else to help us with this problem. -- Gerard Schildberger (talk) 09:55, 25 July 2018 (UTC)
- Hi Gerard. I was fighting with the awful wikipedia system to stop them removing the RC entry and trying to get it reinstated. I gave up. I wasn't the only one facing the awful WP moderation of that time - there were others with similar gripes, and I think it also had column inches in national newspapers. I'm done with that stress. I now hardly ever edit anything on WP and had just wished the contributors, such as yourself, luck with WP.
- If you do talk to a WP person and they are looking for someone who can give another view, then you could put my name forward; but I thought WP editors were dicks with power at one time, and I am loath to stoop in again. --Paddy3118 (talk) 07:39, 28 July 2018 (UTC)
- Paddy, I don't see your point. https://en.wikipedia.org/wiki/Rosetta_Code is visible for me. I did not check Gerard's points though. --Walter Pachl 11:04, 28 July 2018 (UTC)
- Walter: The sock puppet for Siskus (the fake userid MichMol) stated that "Bad html makes this page partial invisible in e.g. Opera" (the summery from the history page) was incorrect and was intentionally misleading, and it was just used as a bogus reason to undo the un-doing of the un-doing of the un-doing of the un-doing of the ... -- Gerard Schildberger (talk) 19:22, 28 July 2018 (UTC)
- Paddy: yes, I agree with you that the Wiki moderation is next to awful, and it also seems very capricious. I was reading about one person that they banned, and it took forever. Pages and pages of discussion, and that was a cut-and-dried case of bigotry and hatred speech. Wikipedia does not seem to have an effective way of dealing with abusive and destructive editing. Perhaps a freezing (or locking) of the Rosetta Code entry on Wikipedia would work, but then, there would be no viable recourse for legitimate updates/edits to be made (except by administrators or others of suitable authority). -- Gerard Schildberger (talk) 19:22, 28 July 2018 (UTC)
Calmosoft
Hi Paddy3118, I just deleted 9 tasks that were entered by Calmosoft where a Google search returned a Leetcode task as the top result with essentially identical task descriptions and test values. I've banned him for a week. See User_talk:CalmoSoft under "Copying tasks from other sites". He has been warned before. --Thundergnat (talk) 14:41, 28 July 2018 (UTC)
- If it is that many, then that seems fair.
wording in the preamble of the task Mind boggling card trick
Hi, Donald McCarthy:
I had a few suggestions and concerns, I thought this would be the best place to address them.
Some people get quite attached to their task's prose, and I don't know you well enough on how you'd take to so many (what may appear as trivial or nitpicking) suggestions.
Instead of pack, it could just be called a normal deck of cards.
I think (round) bullets could be used for the four main points, and numbers under those. But I'm pretty soft on this. This would make it easier to read and discuss (or refer to) the numerous points.
1. Create a normal deck of playing cards (half of which are red, half are black).
or better yet:
Create a normal deck of playing cards (half of which are red, half are black) and give it a good shuffle.
Call it a shuffled deck (instead of an assembled pack), and the word piles could be used instead of
the word stacks, as stacks means/suggests something different to computer programmers, and
stack also suggests or implies that cards could be added to the top of the stack, whereas it doesn't
matter how the cards are placed into piles. Also, those stacks are also called piles elsewhere
currently in the text.
2. Deal from the shuffled deck, and place them into one of three piles.
Consistent wording (and alignment)  ' could be used for 2.1.1.1. Also, since the red pile isn't really red, I put double quotes around it to indicated that it's just called "red", and not, in fact, composed of just red cards. Indeed, the colors (colours if you want to use the British spelling) of the unseen playing cards are unknown. Ditto for the "black" pile.
For 2.1.1:
1. 1. if it's a black card, then add the next card (unseen) to the "black" pile. 2. if it's a red card, then add the next card (unseen) to the " red " pile.
For 2.2:
2. Repeat the above for the rest of the shuffled deck.
(instead of assembled pack.)
3.2 It says to choose ... out of each stack. There are, in fact, three stacks.
3.1 Says the number.
3.2 Says that number. So ...
2. Randomly choose that number of cards out of the "red" and "black" piles.
Use nobody instead of we at the end of 3.2 (slightly gooder Englush).
... nobody knows).
If a bullet point has only one entry, then that single entry shouldn't be numbered.
For 4.1: (also, the red pile isn't composed of red cards (ditto for the black pile), so I included double quotes around the pile named red and black (this may not be enforced strictly in the rest of the task's preamble, but I think it should):
Check the mathematician's assertion that: The number of black cards in the black pile equals the number of red cards in the red pile.
(It's hard to guess how or if) the mathematician enunciated/stressed the above annotated red and black). I thought it was a much more clearer when talking about the number of red cards in the red pile ... If there are ten cards in the red pile, then there're ten cards in the red pile, some of which are red (but not read, as they are unseen). Sometimes, written language gets in the way of what's intended to be meant (or understood).
I've already corrected a misspelling and added other whitespace to the (draft) task's preamble.
What do you think? Should I go ahead and implement any of the above?
I could update a copy of the task's preamble and show it to you here, so you see the whole thing and discuss/review the changes here first. -- Gerard Schildberger (talk) 06:27, 26 August 2018 (UTC)
- Hi Gerard.
- Attachment: Yep I'm human; but I need to learn to let go :-)
- Deck vs Pack: Pack seems natural to me. If Matts video says pack then we could leave it that way. (I don't play many card games, but pack came first to me rather than deck).
- He says deck!
- He says pile!
- Double quotes seems right as it is the name he uses but each "pile" can contain either colour.
- Yes, I know, that is why I included the double quotes, to make it clearer. -- Gerard Schildberger (talk) 09:04, 26 August 2018 (UTC)
- Numbering: I would like someone to be able to refer to point x.y.z unambiguously. I wouldn't want a mixture of numbered and plain bullet points to make things worse. I had to experiment with the wiki layout and this is what I could do, but I'm no expert :-).
- I like gooder English :-)
- "If a bullet point has only one entry, then that single entry shouldn't be numbered. " I'll need convincing on that one. See comment on numbering above.
- I would just ask you to be careful of doing any changes that might affect previous solutions; but without critique I can't get better. Thanks again Gerard, --Paddy3118 (talk) 07:47, 26 August 2018 (UTC)
- OK. I take it that you'd prefer that I don't make any changes then. None of the changes that I proposed should no way negate any programming examples. But it does read strangely to my American eyes. As an ancient programmer, I like clear and succinct descriptions and directions (I guess I'm too old to change now). I used to write tons of documentation in a previous life, and I got (me thinks) pretty good at it. It was fun and enjoyable when it was part of what I did so many years ago. Well, it was the last century, and I miss the IBM 3211's with the TN chain. But I do wish that stacks wouldn't also be referred to as piles later in the task's preamble (towards the end of the preamble). -- Gerard Schildberger (talk) 09:04, 26 August 2018 (UTC)
- As far as numbering a single bullet point, I read that somewhere on a (real) book of how to write (gooder) English, and that book had a whole, er ..., chapter on writing outlines and chapter headers and sub-headers, and this one of the rules that I remember clearly. -- Gerard Schildberger (talk) 09:04, 26 August 2018 (UTC)
- I know how it is when someone re-writes (or worse, completely re-writes) a task's preamble. Lucky numbers was one that was butchered almost beyond comprehension. I still think that it is one of the worst descriptions of how to generate lucky numbers (and even lucky numbers). Someone wrote a macro-like er ..., "generating" generic general macro thingy, and it reads just awful. Not a good Rosetta Code task description to read and comprehend/understand if you already have a headache, if not, you'll get one. I also had another task changed to something that contradicted what the task's intent was, and I had to just walk away from "ownership" of those two tasks; ya can't have an editorial fight with people who buy ink by the barrel. (I hope you know the meaning of that (American?) expression). As used here, I mean people with admin authorities. -- Gerard Schildberger (talk) 09:04, 26 August 2018 (UTC)
- Actually, the better way of annotating headers is to use:
1. toothpaste 1.1 toothpaste creams 1.2 toothpaste pastes 1.2.1 commercial pastes 1.2.3 homemade pastes 1.3 other forms of toothpastes 2. toothbrushes 2.1 manual 2.2 mechanical (motorized)
- which solves the problem of not having unique headers. Everything is explicitly numbered (uniquely). ─── But of course, the Wiki that Rosetta Code uses doesn't support those types of chapter headers (automatically) (at least, that I know of). [I had a fleeting thought of using Roman/Greek dildos (types) instead of tooth tools, but humor can only be stretched so far.] -- Gerard Schildberger (talk) 09:04, 26 August 2018 (UTC)
I might as well as tell ya a story, kinda related to my ole days or yore whilst writing a tome on (VM) CMS usage waaaaaay back in the late 70's ...
I was writing a user introduction on how to use the CMS system and take advantage of some of the services; the "users" were experienced programmers, but not quite used to using CMS and VS/1, most came from MVT/TSO backgrounds. It was a labor (for you, labour) of love and showed my passion for technical writing; I did most of it after hours. One of the gals (yeah, I am quite provincial at times) at the documentation group knew Script quite well, and her skills were sorely needed as the others just barely knew the fundamentals of that language, and I was stretching their skills of the Script language). So, she took on the project as she wanted a bit of a challenge on the different indentations and numerous illustrating examples and some other neat things that I was wanting to do. She enjoyed working on the project so much, she would take it home and proofread the hard copies, (as it turned out, most often in bed). The plot thickens. Sometime later, a few weeks as I recall, we had a department party (after hours), and that gal walked up to me and introduced her husband. He (all macho and all of 6' 5" or so) gave me the once-over, and said, "so you're the guy that keeps me up at night, losing sleep and ... whatnot." Yeah, it sounded like he underscored it for a reason. Various and wild swirling thoughts leapt to mind as he could've snapped me like a twig, and he did not sound like a happy camper, no siree, Bob. She explained that when she got to some really funny parts of my tome, she would nudge her husband (who was, of course, sleeping), to wake up and read this great funny pun. As it turned out, he had a very wry sense of humor, which I did not recognize on him at all. Ahhhhhhh, the good ole days. That tome was sure worth the time I spent on it. There were a lot of humorous Easter eggs in the examples. -- Gerard Schildberger (talk) 09:44, 26 August 2018 (UTC)
- No. Please go ahead and make some updates. I have confidence that we can work things out between us and RC to get the task description right. Now we know that we have American and British English to work around as well as connecting with the Video.
- I just re-watched the video and this time, was careful to note which words he said, and he did (more or less consistently) use the word piles instead of stack, and he also used the phrase deck of cards instead of pack. so I was thinking about doing a revision here (on your talk page) before I make the changes, so it wouldn't needed to be changed that much on the real task page (hopefully just once). We can make more transparent changes (to a working version here).
- Thanks for the anecdote. Like you and the Script lady, I too, often take the interesting part of work home with me - I find I understand things better after trying to program some minor detail of an issue. --Paddy3118 (talk) 10:08, 26 August 2018 (UTC)
working copy of the draft task: mind boggling card trick
I didn't quite love the wording concerning the swapping, so I added a step (separating the taking of cards from the two piles ("red" and "black"). Also added was the concept of a "bunch" as the taking of a random number of random cards from two other piles and putting (swapping) those bunches (back) into the "other" pile(s) --- it was getting my mind a bit foggy (after all, this is a trick, and I really want to understand the intention here). I hope it's clearer. As the ole saying goes, it may be muddy, but it covers the ground.
I also thought that telling the dealer to "hold" the top card, and, as the dealer will also be taking another card (to be placed into the "red" or the "black" pile), and then the dealer has to place the card (that's being held) into a third pile (the discard pile) was a bit "heady". --- Hopefully, this is less confusing. As I said in other words, this is a "trick", and readers will be reading quite carefully and be looking for different ways to interpret what is being commanded of them to perform.
I spent some time on aligning a few statements that benefited from an over/under comparison.
One thing I didn't like about the YouTube video is that the dealer put the top card into two discard piles instead of just one pile. Don't do as I say, do as I do type of thingy. Grrrrr.
Also, I had some trepidations, but I Americanized the British words. If you want it back into your "flavor", er ..., I should say, "flavour", no problem, it can be changed back tout suite if you prefer the wording for the east side of the pond: mimicks, colour, randomising, and perhaps some other verbiage like pack of cards instead of deck of cards, ... -- Gerard Schildberger (talk) 16:07, 26 August 2018 (UTC)
- I generally like the re-wording, except for the loss of the Britishisms, after all, both Matt and I are British.
- Crucially, your section 3 describes the Python way of doing things, and one of the existing solutions just swaps X times and so would need to be updated.
- If I am correct on the effect of your changes then why not make them. The task is still draft and it makes for a better task. (But try and leave leave in some of the Britishisms - please :-)
- --Paddy3118 (talk) 16:55, 26 August 2018 (UTC)
- There is no Americanisms of any Britishisms, except for mimicks and Maths. I thought (and also the Rosetta Code wiki) that was a misspelling. I put the British word back. And I thought that Maths was part of a title, so it was left intact. There is no longer any mention of colour, as the words red and black don't need specifying as red colour and/or black colour. As an aside, it seems that most of the Britishisms are treated by Wiki (on my computer) as misspellings. Perhaps because of some wiki setting? Anyways, no big deal. Please let me know if missed any other words that I had Americanized. Two countries, separated by a common language. -- Gerard Schildberger (talk) 17:49, 26 August 2018 (UTC)
- I don't quite follow you on the re-wording of section 3. Since I wrote it, I'm probably blind to the difference. By the way, I don't know a Python "way", as I don't speak Python. Could you elaborate a bit? -- Gerard Schildberger (talk) 17:49, 26 August 2018 (UTC)
- As I understood the swapping, if one of the programming solutions (entry) swaps X times (instead of all at once, so to speak), then the same card (chosen randomly) might be the next random card (also chosen randomly) and put back into the original colored pile. Now, in the global scheme of things, this won't effect the validity of what happens, but it isn't what the video narrator (Matt Parker) said to do. I re-listened and then re-re-listened to the video, and he said to take 5 random cards from each pile and swap them for 5 random cards from the other pile, not to take a random card from each pile and swap a card from the other pile 5 times. -- Gerard Schildberger (talk) 17:49, 26 August 2018 (UTC)
- By the way, I like to see embedded URLs (links) as being underlined, so I showed the YouTube video link as such. My eyes can't tell that much difference between black text and blue text, so the underlining helps make it clear that it's a link. -- Gerard Schildberger (talk) 17:49, 26 August 2018 (UTC)
- Boy, it seems that most of the 820 reviews/comments (for the video) were not kind. For some reason, a number of people fixated on the (awful) die that he rolled (complaining about the props?). -- Gerard Schildberger (talk) 17:49, 26 August 2018 (UTC)
- So, give me the high sign when I should "move" this working copy to the real McCoy, assuming we iron out the remaining kinks first. (Also, I'm a railroad buff, and there is an interesting story about the real McCoy.) -- Gerard Schildberger (talk)
- Does the wording of the (draft) task meet with your approval? -- Gerard Schildberger (talk) 08:38, 28 August 2018 (UTC)
draft task <--- (this is boogied up thingy so not to actually cause a draft task to be created in Rosetta Code land, we certainly don't need two of 'em.)
Matt Parker of the "Stand Up Maths channel" has a YouTube video of a card trick that creates a semblance of order from chaos.
The task is to simulate the trick in a way that mimics the steps shown in the video.
- 1. Cards.
- Create a common deck of cards of 52 cards (which are half red, half black).
- Give the pack a good shuffle.
- 2. Deal from the shuffled deck, you'll be creating three piles.
- Assemble the cards face down.
- Turn up the top card and hold it in your hand.
- if the card is black, then add the next card (unseen) to the "black" pile.
- If the card is red, then add the next card (unseen) to the "red" pile.
- Add the top card that you're holding to the discard pile. (You might optionally show these discarded cards to get an idea of the randomness).
- Turn up the top card and hold it in your hand.
- Repeat the above for the rest of the shuffled deck.
- 3. Choose a random number (call it X) that will be used to swap cards from the "red" and "black" piles.
- Randomly choose X cards from the "red" pile (unseen), let's call this the "red" bunch.
- Randomly choose X cards from the "black" pile (unseen), let's call this the "black" bunch.
- Put the "red" bunch into the "black" pile.
- Put the "black" bunch into the "red" pile.
- (The above two steps complete the swap of X cards of the "red" and "black" piles.
(Without knowing what those cards are --- they could be red or black, nobody knows).
- 4. Order from randomness?
- Verify (or not) the mathematician's assertion that:
The number of black cards in the "black" pile equals the number of red cards in the "red" pile.
(Optionally, run this simulation a number of times, gathering more evidence of the truthfulness of the assertion.)
Show output on this page.
table of contents comes here, followed by, of course, the computer programming languages examples. -----
curious about the number of userids on Rosetta Code
Paddy: I'm a more than a bit curious about all the userids that are being added (apparently each and every day, and almost all of them have no contributions, apparently). Is there a place on Rosetta Code that states how many userids there are, and also, how many of those have any contributions? It would be nice to see how many userids there have been created for each year of Rosetta Code's existence.
There must be a butt-load of 'em by now (a truly scientific term if I ever heard one).
-- Gerard Schildberger (talk) 23:17, 12 August 2019 (UTC)
- Sorry Gerard, but I've never found such a page. I occasionally look up mentions of Rosetta code online, and I know that
- 1. More Coding challenges and Coder training sites are apt to use RC examples.
- 2. There are more Programming language communities mentioning Rosetta Code.
- 3. RC gets mentioned in science papers. Usually by authors wanting a routine, or a corpus of multi-language code.
- I would guess that people join as a statement of support for what RC has and does - but that's my optimistic side :-)
- --Paddy3118 (talk) 16:00, 17 August 2019 (UTC)
- Don't you guys ever check out any of the other links on the site? These are all publicly accessible, don't even need to be logged in. User creation log --- User list --- Active users (in the last 30 days) --- Users that have made edits
- I doubt if there is going to be much of a username <=> locality correlation. The IP addresses of users are not available; (except maybe to Short Circuit), that would be a much more reliable (though still suspect) indicator of a users location. --Thundergnat (talk) 17:26, 17 August 2019 (UTC))
- Where are these links mentioned of Rosetta Code? If (old/experienced/has-been-around-forever) Paddy3118 never found it, how would most people find it? ? Once I found out what the page was called, a search didn't help. I then looked under special pages and I finally located the user list. The first page of the list of users (pointed to above) has users up to "AI..." on the first page, which has around 1,000 users; that gives me a clue (but not a number) of how many users actually exist, as I can only extrapolate the total number based on one letter of the alphabet. All of the A's have about 4,900 userids. Getting the rest of the names would be a chore (doing 1,000 userids at a time). By the way, I wasn't trying to find out where the users are from, but I wanted an inkling where they are being created (added) from. If that user (userid) list was readily downloadable, I was thinking about adding (somewhere) a histogram plot of the growth of users on Rosetta Code (plotted maybe by month and/or by year, and stuff like that there. -- Gerard Schildberger (talk) 19:44, 17 August 2019 (UTC)
- Replies to several inquiries:
Under Special Pages.Where are these links mentioned of Rosetta Code?
- Replies to several inquiries:
Hmm. I'll quote myself.If (old/experienced/has-been-around-forever) Paddy3118 never found it, how would most people find it?
That's how I found them.Don't you guys ever check out any of the other links on the site?
Or a matter of writing a short program that queries the Mediawiki API....that gives me a clue (but not a number) of how many users actually exist,... Getting the rest of the names would be a chore...
If you aren't looking for a geographic location I would suspect the answer would be "the Internet". ¯\_(ツ)_/¯ --Thundergnat (talk) 20:01, 17 August 2019 (UTC)By the way, I wasn't trying to find out where the users are from, but I wanted an inkling where they are being created (added) from.
- I know a guy that fell overboard from a cruise ship (he wasn't harmed). If you would ask, "where?" I could answer, "in the water". ... Not very helpful. -- Gerard Schildberger (talk) 16:16, 28 August 2019 (UTC)
- Ooo!, Here's another link you might find interesting. Special:Statistics Under Special pages -> Admin links-> General-> Statistics. --Thundergnat (talk) 20:10, 17 August 2019 (UTC)
"Functional" versions in py of 99 Bottles of Beer
The previous versions was the first example to how to "personalize" the song. And this was fantastic. It's the unique funny code in that page, apart the Go Typoglycemic version... :-D
I was inspired by these py codes, but, modesty apart, I think my solution is better. It's more simple and more readable.
Do you think we can move the two old functions to "Other solutions" and cite/link them?
- Hm,probably somone will complain. I usually try and keep the first solution as the fist unless there are reasons not to; and only remove code with good reason (and rarely). Not much help, I know... --Paddy3118 (talk) 00:19, 20 January 2020 (UTC)
- Ok, no problem... even if the Haskell version translated in Python is really terrible :-D
- Marco Sulla (talk) 00:49, 20 January 2020 (UTC)
- :-) Your 'Simplified' version will be of more Rosetta value (as defined by the RC landing page - to aid a person with a grounding in one approach to a problem in learning another) next to versions taking a differing approach, than on its own.
- Quality is not an inherent property of code, but a function of how well optimized it is for a particular operational and institutional context. Brevity and speed are seldom good proxies for how well code really works in a given context (reliability will often tend to be a slightly better proxy, but even then, readability will depend as much on local conventions and experience as on general guidelines).
- Definitions of 'functional' composition tend, incidentally, to focus on building blocks that are immutable as well as pure, so you will find that many functional programmers would be a little surprised to see that label attached to the 'Simple' version's for loop, with its mutable variables.
- But no matter – the value of Rosetta code lies not in claims to canonicity, but in insight yielded by comparison. Hout (talk) 01:36, 20 January 2020 (UTC)
- Yes, well... I used the term "functional" because it was already used by the py version of the Haskell translation. Maybe "flexible" is more correct.
- Marco Sulla (talk) 01:56, 20 January 2020 (UTC)
Problems with 99 d****d bottle of beer in Py
Okay, I'm sorry to disturb you for this... but evidently I can't find a compromise with the user Anonymous31415927.
1. He targeted my simple version as copied by http://www.99-bottles-of-beer.net/language-python-573.html . And yes, I first wrote a simple version myself, I saw the www.99-bottles-of-beer.net version and I modified it, clearly inspired. I also explicitly linked the original code. But the code is different. I simply copied the *concept* of not repeating "bottles of beer on the wall", but to use it in a variable.
2. He continue to rename my version. Now is "Python 2, short version". Okay:
- a. "Python 2" is useless and inexact. It's useless because I wrote the target version before the code. It's not exact because it works also for Python 3 (I tested it on Python 3.9 alpha... :-D).
- b. He also changed the target version! I wrote "2.6+" and he removed the plus!
The name I would give to my code is "(Currently) the simplest version". Probably is also the shorter, but who cares. I think it's the simplest because it does not manage special cases of 0 and 1, as allowed in the task. It simply do one string assignment, a loop and a print inside the loop. Stop. More simple than that can only be printing the entire song :-D
Sorry for the disturb, and Happy new Year, with a *little* retard :-D
Marco Sulla (talk) 17:44, 26 January 2020 (UTC)
- Hi Marco.Best to ask him to converse with you and explain his reasoning, politely. Explain what you would want to see, as well as point out factual innaccuracies (such as what Python versions it can run under). Be polite, and ask for similar explanation from the other user. If the other user just indulges in a mute edit war then steps can be taken, but first try and give them a chance to explain themselves, and maybe a compromise will evolve. --Paddy3118 (talk) 19:28, 26 January 2020 (UTC)
- Well, the problem is the user seems to be not very open to a normal discussion... We started a discussion on my talk page, and a certain point he removed all the contents and posted only its reply. I wrote to him "I hope this is done by mistake", I restored the page, added its reply and replied. Well, it cleared the page another time. So I simply restored the page and stopped to talk to him.
- ...Well, anyway, I'll try to reason with him. But I'm not so happy and positive :-|
- Marco Sulla - talk - GitHub 22:54, 26 January 2020 (UTC)
Um. Why exactly did you mark the Perl 6 Fairshare example as incomplete? It already computes the sequence at 11, and did so before you changed the task requirements. What else can I do to make it not incomplete?. Am I just not seeing something? Did you even glance at the code before flagging it? --Thundergnat (talk) 18:30, 1 February 2020 (UTC)
- I needed to change the task to use 11 instead of 7, and although I had at one stage read your Perl 6 example, I also had more than one tab open and might have got confused. I can only apologise if I marked a perfectly good example of yours in error. It wasn't meant, and I hope to do better. "My bad" I think is the phrase that fits. Sorry Thundergnat. --Paddy3118 (talk) 00:07, 2 February 2020 (UTC)
liquify image
Hi Paddy3118 why did you delete my task? dice according
"I don't see how this could be accomplished on RC."
there are many ways to show this in RC for example a link to a video where it shows how to deform the image. Restore the page please
- As you demonstrate, there is no way to show output on RC. Programs are likely to be huge, or trite, (do you have an example we can look at)? It looked as if it were too far from the norm to even be draft.
login
Paddy, Could you please send me the code of login: href="/mw/index.php -> pachl(at)chello.at I forgot how to "sign" entries :-) Walter
- Hi Walter, unfortunately I am not sure of what you are requesting? --Paddy3118 (talk) 05:54, 2 April 2020 (UTC)
- pls send me an email so that I can explain "privately"
order of addition of new talk sections
Is there an accepted protocol (or generally accepted) order of adding new talk/discussion entries (sections)? I always thought that you add new entries at the end of list.
- Yep. 99.9% of the time. An exception is major, like notice of task removal. --Paddy3118 (talk) 20:26, 24 June 2020 (UTC)
- Thanks. I will move a top-posting to the bottom for the discussion of the task: Determine if a string is collapsible. -- Gerard Schildberger (talk) 08:05, 25 June 2020 (UTC)
concerning the raw.githubusercontent, English words dictionary
I'd thought you'd like to know that the dictionary that you used for finding a better (higher) solution for a specific (optimized) word wheel (grid), in particular:
https://raw.githubusercontent.com/dwyl/english-words/master/words.txt
isn't in alphabetic order.
Namely, --- and I haven't looked further then this --- that the Ys are out of order, and also scattered throughout the dictionary (throughout may be too strong a word here).
- Later, I found out that there were a lot (well, a significant number) of Y words mixed in with the I words. I don't know if there is a systemic reason for this. -- Gerard Schildberger (talk) 15:12, 8 July 2020 (UTC)
I just wanted you to know in case you're doing research/searches/whatever, and you're depending/expecting that the dictionary being in an alphabetic order. -- Gerard Schildberger (talk) 21:47, 5 July 2020 (UTC)
By the way, I'm in the process of merging the words from that dictionary with "my" personal ultra-fat dictionary. -- Gerard Schildberger (talk) 21:47, 5 July 2020 (UTC)
- Thanks Gerard for the notice. It seems that there are and should be word lists for different applications; some having easier or more specialised words; swearing, slang,...
- The more I look, the more there is to see ☺️--Paddy3118 (talk) 06:07, 6 July 2020 (UTC)
- I finished up the merging of the words from the (above) mentioned "GitHub user content" (English dictionary), and it added over 32,000 words in "my" dictionary. As the new words were being merged, I noticed a whole she-bang of hyphenated words being added. "My" dictionary now has 947,359 words in it. Maybe "words" isn't the correct word to use, "entries" would be a better fit. Thanks again for informing me of that English dictionary. -- Gerard Schildberger (talk) 15:12, 8 July 2020 (UTC)
natural sorting, less spaced out
I noticed that you stated that your latest edit (for the Sample input) was less spaced out, and that, in part, is true. It was spaced out wider (but didn't require horizontal scrolling), and took advantage of the horizontal real estate, but it was much shorter so that Sample input section would fit on one screen without vertical scrolling.
However, it is now quite a bit longer (vertically). My intent to was to make the Sample input easier to read (on one screen) without vertical scrolling, and not have the reading of the sub-fields interfere with that visual scanning. Also, one could read the three major headers (sections?) without having to visually compete with the secondary title entries, Text strings:, and its tertiary entries, the examples themselves which are for the most part, literals (cluttered with their own sub-fields, necessarily so) which read better when having them in their own column. That section of the task's preamble is now eighteen lines longer and the whole is a lot harder to peruse to my eyes, forcing me to now read all the sub-fields. I was going for a more columnar look rather than a vertical/stacked list for a shorter vertical presentation where the primary and secondary/tertiary fields have their own columnar locations. I'm not arguing that it should be changed once again, but I thought you should be aware what was intended and I was trying for a more Wiki-look approach in presenting multiple fields of information that fitted on one screen instead of forcing the reader to vertically scroll to enable to perusing the presented fields of the Sample input. -- Gerard Schildberger (talk) 08:53, 7 July 2020 (UTC)
For easier comparisons, the older presentation is shown below so viewers can do a side-by-side comparison (using two windows).
(I was also thinking about not using the abbreviation Equiv. (two sections) but I wasn't sure if that was legitimate to use the full uncapitalized word instead.
Also, the m.a.s abbreviation should be replaced with MAS which could further reduce the width of the Sample input section.)
The older presentation below is 44 lines deep, the newer revised view is 62 lines deep.
- Sample input
# Ignoring leading spaces. Text strings: ['ignore leading spaces: 2-2', 'ignore leading spaces: 2-1', 'ignore leading spaces: 2+0', 'ignore leading spaces: 2+1'] # Ignoring multiple adjacent spaces (m.a.s). Text strings: ['ignore m.a.s spaces: 2-2', 'ignore m.a.s spaces: 2-1', 'ignore m.a.s spaces: 2+0', 'ignore m.a.s spaces: 2+1'] # Equivalent whitespace characters. Text strings: ['Equiv. spaces: 3-3', 'Equiv. \rspaces: 3-2', 'Equiv. \x0cspaces: 3-1', 'Equiv. \x0bspaces: 3+0', 'Equiv. \nspaces: 3+1', 'Equiv. \tspaces: 3+2'] # Case Independent sort. Text strings: ['cASE INDEPENDENT: 3-2', 'caSE INDEPENDENT: 3-1', 'casE INDEPENDENT: 3+0', 'case INDEPENDENT: 3+1'] # Numeric fields as numerics. Text strings: ['foo100bar99baz0.txt', 'foo100bar10baz0.txt', 'foo1000bar99baz10.txt', 'foo1000bar99baz9.txt'] # Title sorts. Text strings: ['The Wind in the Willows', 'The 40th step more', 'The 39 steps', 'Wanda'] # Equivalent accented characters (and case). Text strings: [u'Equiv. \xfd accents: 2-2', u'Equiv. \xdd accents: 2-1', u'Equiv. y accents: 2+0', u'Equiv. Y accents: 2+1'] # Separated ligatures. Text strings: [u'\u0132 ligatured ij', 'no ligature'] # Character replacements. Text strings: [u'Start with an \u0292: 2-2', u'Start with an \u017f: 2-1', u'Start with an \xdf: 2+0', u'Start with an s: 2+1']
(Editorial note: the above Sample input has been shortened and elongated, plus other changes made.)
The above chart would be presented better as an HTML table, but that might start an edit war/tiff. -- Gerard Schildberger (talk) 08:53, 7 July 2020 (UTC)
- Hi Gerard. The main cleanup is your edit that I then shortened the line lengths of. Your points are valid.Thanks for pointing out the increase in line lengths. I'll revert my edits with a smile, either are better than what you straightened out :-)
- --Paddy3118 (talk) 09:59, 7 July 2020 (UTC)
- Thanks, you can't possible know how much I appreciate the restoration. It takes a well-centered person (they used to be called a "big man") to see both sides of such a situation. I too am a big man, but it's mostly fat, er, ... I mean table muscle, but still ··· I'll get to work and elide some of the horizontal spacing as well as changing the the abbreviation m.a.s. will forthwith be reduced to MAS. -- Gerard Schildberger (talk) 13:13, 7 July 2020 (UTC)
Paddy: I replaced the hash marks (#) with bullet points, but I'm not 100% sure that it's an improvement. The bullet points look nicer, but they don't have the size. From some reason, Wiki doesn't display the bullet point glyph the correct size, it should be more of the • size instead of the • size. I'm more used to the size bullet that the IBM fonts used for the TN print chain (ya, too long in the tooth). But there ya have it. I also would like world peace and an end to world hunger. -- Gerard Schildberger (talk) 13:50, 7 July 2020 (UTC)
- Hash vs bullet - I agree, it's a hard call. I did see that the opening single quotes for the ligature/no ligature lines are alligned which emphasises the initial u which is only on one of the lines. I like that :-)
--Paddy3118 (talk) 15:34, 11 July 2020 (UTC)
adding a thingy for prime numbers as there is for sorting (algorithms)
Paddy: I was thinking about adding a thingy for prime numbers and factorization, very much like that thingy that Rosetta Code sorting algorithms have at the top right of every Rosetta Code task (the preamble) that does some sort of sorting. It's that box that shows readers what other Rosetta Code tasks deal with sorting (algorithms).
I would include (maybe) these sections:
- "regular" primes
- kinds/types of primes
- factorization of integers
- tasks that make use of primes
- miscellaneous prime stuff ... I don't know what to call this catch-all stuff ... other ?
This addition would be not so much for the casual reader, but for Rosetta Code coders who, once they start programming for various prime tasks and other types of primes, would naturally delve into (integer) factorization and possible some related fields. I've been added adding the category Prime numbers to any Rosetta Code task that deals with primes or (integer) factorization, or tasks that make use of primes. -- Gerard Schildberger (talk) 14:21, 7 July 2020 (UTC)
By the way, I think there should be another category added, Primes that re-directs to Prime numbers, but I'm not sure quite how to enter it, or even if it should be created. -- Gerard Schildberger (talk) 14:21, 7 July 2020 (UTC)
- I agree with you, primes are a natural grouping. On the name for "others" it might be best to see what gets put there and name it afterwards?
--Paddy3118 (talk) 15:39, 11 July 2020 (UTC)
«math» HTML tags not rendering correctly
In a Rosetta Code task (that I entered, namely the task: Leonardo numbers), I tried to use the exact <math> HTML tag that is used on Wikipedia (for Leonardo number), but on Rosetta Code, it produces a big red error message.
Here is the Wikipedia code, as-is (from the Leonardo number entry on Wikipedia):
:<math> L(n) = \begin{cases} 1 & \mbox{if } n = 0 \\ 1 & \mbox{if } n = 1 \\ L(n - 1) + L(n - 2) + 1 & \mbox{if } n > 1 \\ \end{cases} </math>
{I also have the (above) code "inside" the Leonardo numbers Rosetta Code task as an HTML comment.}
The error messages produced are (the original error message is one big long sentence):
Failed to parse (MathML with SVG or PNG fallback (recommended for modern browsers and accessibility tools): Invalid response ("<p>There was a problem during the HTTP request: 503 Service Unavailable </p>") from server "http://mathoid.testme.wmflabs.org":): L(n) = \begin{cases} 1 & \mbox{if } n = 0 \\ 1 & \mbox{if } n = 1 \\ L(n - 1) + L(n - 2) + 1 & \mbox{if } n > 1 \\ \end{cases}
The (above) messages are very similar to the error messages produced when there are leading and/or trailing whitespace in the <math> HTML tags elsewhere on Rosetta Code.
Now, the (failing) text does have leading and trailing blanks, but it does work on Wikipedia, but not on Rosetta Code. You may recall the tiff that ensued when I used leading and trailing blanks on various <math> HTML tags, (it worked for FireFox, but not some other web browsers), and the ensuing stone throwing. Apparently, it's easier to cast stones than address the real problem. I had found/mentioned a fix that I read about after searching in the dark (this was because the error is caused in an "area" of HTML rendering that I newer heard or knew of), but the fix (not a program fix, but some kind of specification) was never implemented as far as I know; the fix is outside of my knowledge of such things.
I have elided the leading, trailing, and embedded superfluous whitespace, but no matter what combination I used, it always produced an error message.
In trying to debug the (above) error, I had taken the <math> HTML tag that is used within the preamble of the Rosetta Code task Bernoulli numbers, and I changed (on the Rosetta Code task Bernoulli numbers) the bold B within the <math> HTML tag text to an S, and that also produced the same error!! Just an attempted single character change. I also tried various other character (letter) substitutions, all produced the same error message. No whitespace was changed. What's going on? A caching problem, perhaps? -- Gerard Schildberger (talk) 19:10, 11 July 2020 (UTC)
Also (and you might want to burn this paragraph after reading, least I propagate vandelous information), I have found that when those particular red bold error messages are produced, and left there (without clearing the display of the error), and then, in another (FireFox or Internet Explorer) window, trying to access the Rosetta Code website (any page), I essentially received a (I think) a 505 (504?) error saying that the Rosetta Code website isn't responding. Now, it could be that only I couldn't access the Rosetta Code site, not others. In essence, I may have stumbled on a method for a denial-of-service. This is one reason that I think this problem should be addressed and fixed. -- Gerard Schildberger (talk) 19:10, 11 July 2020 (UTC)
Response has been posted to your raslbg|talk comment.
.
a Rosetta Code task is scrambled
The Rosetta Code task Spelling of ordinal numbers is messed up
(the text on the task page appears a bit scrambled with another Rosetta Code task).
The task page now has the content of something to do with "twin primes", and
the other part seems to have the content of the original page, namely the
spelling of ordinal numbers.
Also, at the top of the page, something is complaining about:
Template loop detected: Template:Task
(the 1st three words are in red color, the last word (with the colon inside it) is a link, apparently to a task template.
I thought you should know about this problem ASAP so that it can be fixed, undone/undo/retrograded, or
something. -- Gerard Schildberger (talk) 06:08, 26 July 2020 (UTC)
The page looks like:
Template:Twin Prime Conjecture Twin primes are pairs of natural numbers(P1 and P2) that satisfy the following: P1 and P2 are primes P1 + 2 = P2 Write a program that displays the number of twin primes that can be found under a user-inputted number. Examples below: Output: > Search Size: 100 > 8 twin prime pairs. > Search Size: 1000 > 35 twin prime pairs. ............................................... end of the "bad" stuff, and the start of the "good" stuff (original stuff) ... Ordinal numbers (as used in this Rosetta Code task), are numbers that describe the position of something in a list. It is this context that ordinal numbers will be used, using an English-spelled name of an ordinal number. The ordinal numbers are (at least, one form of them): ............................................... the rest looks normal ..............................................
However, when I "edit" the page to view the source, it appears normal, so the errant text seems to be "coming from" a template of some kind. -- Gerard Schildberger (talk) 06:15, 26 July 2020 (UTC)
Never mind, the problem has been fixed (apparently). -- Gerard Schildberger (talk) 09:26, 26 July 2020 (UTC)
Apparently, the template for a task was modified, and then fixed. -- Gerard Schildberger (talk) 22:12, 26 July 2020 (UTC)
super_d numbers Python example
When I run it, the Python code in the Super_d numbers task does not produce the output it shows - the d = 8 line is not actually calculated. --Steenslag (talk) 11:43, 21 August 2020 (UTC)
some general comments of too-quick task deletions and more
I do believe that the deletion of tasks should be discussed first. But ...
I have had a discussion (not fruitful nor pleasant) about the uniqueness of recently entered (draft) tasks and their value (on being on Rosetta Code) and it did not go well for the lone Indian. When challenged, the discourse just got inflammatory, along with strawman arguments, and silly (So?) rebuttals, and the stating of opinions as facts, and the use of capitalized use of supposedly shouting is completely besides the point, whenever I try to make a point which is either disagreed upon or dismissed, and so on and so on and ... Rosetta Code (discussions/talks) has become a pretty unfriendly place, and in my opinion, toxic. Yeah, I know, I know, a strong word. Whenever challenged, the challenger just doubled-down, and went downhill from there. I had entered a solution to the draft task Similar words, and it was summarily deleted, along with the (draft) task. I think that that (draft) task definitely had a uniqueness to it and wasn't just another version of finding an xxx string in a list of words in a dictionary. Far from it. As a matter of fact, the other deleted tasks also had their merits, but there is no sense in me trying to defend those merits, as defending something (lately) just means the defender gets rebuffed with a lot of sarcasm and acidic rhetoric ... and worse. If one can't have a polite discourse on the merits of a task without all that vitriol and ad-holmium attacks, then why bother having "talk" discussions? Something has to be done (or should be done). Not to mention that someone needs to define what "spam" is so that term is used correctly. Not to mention janitorial services. A janitor doesn't throw the furniture out, just the dust and junk on the floor. I think the use of words like "dump" (does it really matter if someone adds draft tasks at a certain speed?) is so condescending and judgemental. ... And the use of words like "vomiting", "low quality", and numerous other words/phrases of that ilk. And the statement of opinions as fact ... hard to argue with a closed mind (or gawd-like). These are some of the reasons (regarding wording and phrasing and "it's true 'cause I say it's true ...) that I call toxic to opening a discussion. It may appear to anyone that the wording is toxic, but it doesn't sink home unless YOU get defamed, then it's a story of a different color). I fear that this sort of rhetoric will quell (or discourage) others from joining it or offering/opening a new discussion. Why have to suffer the slings and arrows from offering one's opinion on a Rosetta Code discussion? I wish I could go on and write about some of the (draft) tasks that were deleted. Each task had (bless their departed souls) their merits and different ways/methods of solving them (not to mention their solutions), and it wasn't just variants of find xyz words in a dictionary. Some were like anagrams, others needed a somewhat different method(s). Every chef, er, ... programmer can bring a new recipe for solutions here at (old) Rosetta Code. For what I've observed, the discussion of deletion of tasks is like asking five wolves and a sheep on what's going to be for supper? (Deleting Voting on tasks isn't a democracy. Ya can't execute delete someone by counting votes. There should be a discussion/debate). There are always people who think word searches are all alike. Well, they ain't. Anyone who thinks otherwise should be banned blocked for a week or more. Boy oh boy!! That'll teach 'em from trying to to participate in the culture at Rosetta Code!! --- By the way, I wish any other dictionary would be used that mimics a true dictionary: duplicate words, capitalization (God and god), word phrases, hyphenated words, etc.). Someone actually said, the xxx word isn't in the unixdict.txt (or whatever it's called) file, so it isn't a word (!!!). OMG! Having ALL words in lowercase defeats the purpose of a dictionary. Searches should be caseless, unless specifically requested that they be not. At this point, I might as well rant a bit (with my tongue firmly and humorously in cheek). Why have all those (vomited?) types of sorts? You've seen one type of sort if you've seen 'em all. Does Rosetta Code really need all those types/categories of sorts? My oh my, the sorts! The sorts!. All those sorts!! And all those kinds of primes. Yikes! And all those types of sequences. To borrow a phrase: Sheesh!! (Use of the that exclamation should prove my point beyond all possibility of any and all rebuttals ... 'cause I said so). And all those types of trivial DO/FOR loops. I wonder what Dr. N. J. A. Sloane thinks or all those thousand and thousands and thousands of integer sequences in OEIS. Oy veh!! The mind boggles on what a janitor with unlimited power (or ego) could do. End of silly rant. Well, at least I feel better. None of the above needs responding, that way I can actually think I made a point or two. -- Gerard Schildberger (talk) 02:51, 9 December 2020 (UTC)
- These discussions, were they deleted too?
- Who did the deletions?
- I read your vent. Text wrangling is an important part of work done on the Unix command line for example, made less visible because, for a large number of users, it is "just what you do" in some script or one-liner to prepare data to or from more expansive/expensive programs.
- Deleting tasks without adequate discussion and/or warning should not be done. --Paddy3118 (talk) 10:26, 9 December 2020 (UTC)
- STOP PRESS!
Gerard, please see this reply from Thundergnat. He explains the task is from a "serial dumper" leading to his actions. If so, then the root problem is that serial dumper. --Paddy3118 (talk) 10:37, 9 December 2020 (UTC)
- Yes, I had already read it, and yet I wrote all this. But, I believe the real root problem is: deleting tasks without adequate discussion and/or warning should not be done. The baby got thrown out with the bathwater. Wait, where have I read that? If everyone agrees (two people, three people?) that it was a case of "serial dumping", then it is what it is. Can't argue with that logic. But, I want to hear anything/something from the other side first. Calling it "dumping" is part of the problem. And, to top it off, it was "serial". Maybe we should call it very sudden stupid and mindless serial dumping unto innocent Rosetta Code victims of nearly identical tasks with nearly exactly the same programming solutions taken from a maze of twisted and twisting passages, all alike. Oh my. Oh well, I sympathize with the guy
bannedblocked (even for a few days). It makes it hard to have a discussion with a guy who can't give his side, and I have a suspicion that English is his second (or third) language, and that he may have a hard time expressing himself adequately, or maybe he doesn't feel it's worth the effort to explain his motives or actions (heaven knows how that can work out, I can attest it does no good). But oncebannedblocked, I doubt that he'll be forth coming. I remember my first foray at Rosetta Code, I knew not of what templates were (that could be used to flag an incorrect programming solution (as I had never seen a flag at that early time at Rosetta Code), nor did I know where people were trying to contact me on my user page, which I really didn't know existed. Thankfully, Michael Mol wrote me an e-mail (very politely and courteously worded, that guy has got class) clued me in where things were. That was a little over a decade ago. Any-a-whose, just a thought as I have no proof either way ya look at it. Just ignore my stuff (above), it's just like a fart in the wind. (Nice movie, made in 1939.) Gone in a few seconds, and nothing is noticed. -- Gerard Schildberger (talk) 12:09, 9 December 2020 (UTC))
- Yes, I had already read it, and yet I wrote all this. But, I believe the real root problem is: deleting tasks without adequate discussion and/or warning should not be done. The baby got thrown out with the bathwater. Wait, where have I read that? If everyone agrees (two people, three people?) that it was a case of "serial dumping", then it is what it is. Can't argue with that logic. But, I want to hear anything/something from the other side first. Calling it "dumping" is part of the problem. And, to top it off, it was "serial". Maybe we should call it very sudden stupid and mindless serial dumping unto innocent Rosetta Code victims of nearly identical tasks with nearly exactly the same programming solutions taken from a maze of twisted and twisting passages, all alike. Oh my. Oh well, I sympathize with the guy
- By the way, the "stress" that you said that I have been enduring is not from the Calmosoft user, but the characterizations (by others) of his actions and the summarily actions taking against that user and some of his draft tasks, especially with the lack of communication to/from that said user. Maybe he has other time or health issues, or whatever. I know I was out-of-pocket more than once (away from Rosetta Code) for various reasons and/or for lengthy time periods. Or maybe some other kind of communication breakdown or difficulty is the culprit. But who knows what's happening "over there" at the other end. I know for certain that -I- don't know. I'm not that quick to judge when there isn't two-way communications. I was on that same side of that fence once myself, so I guess I sympathize more with guy being hanged then most people. This is why I was helping out with those draft tasks and added verbiage to Calmosoft's draft tasks (as well as others, here and there). Once Calmosoft saw how to include URL's and my somewhat more verbose way of asking for task requirements, he was adding the "extra" stuff (wording) on his own. A little bit of help here and there (and there and here) goes a long way instead of beating the poor guy over the head with a large stick. I believe that is (or should be) one of the core beliefs at Rosetta Code. Treat others like you'd like to be treated yourself. Sorry to quote Biblical. But sometimes, ya gotta do what ya gotta do. (Waaaaaaaaaaaaaay back when maybe you were that inexperienced --- I know I certainly was. --- It was Michael Mol who helped me out (there were a lot of arrows stuck in my back at the time, but I didn't know it as "they" were leaving messages on "my" talk page which I never knew that there was such a thing), without Mol's kindness and time spent, I wouldn't go on to enter over a thousand examples). Ha! I hope that that experience won't stop Mol from helping others out. Meanwhile, back at the ranch ... the earth's horizon keeps lowering and I must get some sleep.
So, the beatings shall continue until moral improves! -- Gerard Schildberger (talk) 12:59, 9 December 2020 (UTC)
- By the way, the "stress" that you said that I have been enduring is not from the Calmosoft user, but the characterizations (by others) of his actions and the summarily actions taking against that user and some of his draft tasks, especially with the lack of communication to/from that said user. Maybe he has other time or health issues, or whatever. I know I was out-of-pocket more than once (away from Rosetta Code) for various reasons and/or for lengthy time periods. Or maybe some other kind of communication breakdown or difficulty is the culprit. But who knows what's happening "over there" at the other end. I know for certain that -I- don't know. I'm not that quick to judge when there isn't two-way communications. I was on that same side of that fence once myself, so I guess I sympathize more with guy being hanged then most people. This is why I was helping out with those draft tasks and added verbiage to Calmosoft's draft tasks (as well as others, here and there). Once Calmosoft saw how to include URL's and my somewhat more verbose way of asking for task requirements, he was adding the "extra" stuff (wording) on his own. A little bit of help here and there (and there and here) goes a long way instead of beating the poor guy over the head with a large stick. I believe that is (or should be) one of the core beliefs at Rosetta Code. Treat others like you'd like to be treated yourself. Sorry to quote Biblical. But sometimes, ya gotta do what ya gotta do. (Waaaaaaaaaaaaaay back when maybe you were that inexperienced --- I know I certainly was. --- It was Michael Mol who helped me out (there were a lot of arrows stuck in my back at the time, but I didn't know it as "they" were leaving messages on "my" talk page which I never knew that there was such a thing), without Mol's kindness and time spent, I wouldn't go on to enter over a thousand examples). Ha! I hope that that experience won't stop Mol from helping others out. Meanwhile, back at the ranch ... the earth's horizon keeps lowering and I must get some sleep.
- Gerard, you seem to be ignoring the lack of communication, and repeated posting of problem posts by CalmoSoft over many months. This seems to have culminated in a posting of several problem posts in a very short time, with little to no interaction with people querying them. I think it is reasonable for first authors to stick around and answer queries on draft posts - it seems that that is not forthcoming from CalmoSoft, and his tasks are questioned.
- Check CalmoSofts talk page, people have attempted to converse with him there, and on the tasks he starts, before. The lack of work CalmoSoft puts into them is wearying to others.
- Gerard, you seem to state that CalmoSofts circumstances may not allow him to do better, but surely his ability to start tasks is enough ability to defend or improve them in comments over the years in which that dialogue would have been welcomed?
- --Paddy3118 (talk) 13:31, 9 December 2020 (UTC)
- I agree with you almost 100%. (If I agreed with everyone 100%, there would not be a need for a conversation, and you would never hear of my forays into humorous minutia ... well at least one of us thinks they're humorous.) Any-a-whose, continuing on ... There is a lack of communication, and some (maybe most by some opinions) posting of his Rosetta Code tasks are problematic, some of which muchly favor brevity, which is a one way to put it. And that several postings were, indeed, posted in a short time, even in a very short time, depending upon what one would consider normal for creating/posting Rosetta Code (draft) tasks. --- (I think if I had written/created all the flavors of the various type/kinds of primes tasks that I did eventually create/write/enter, would the same uproar be heard? Most likely, assuredly and probably so, me thinks. Worse, some or most would've been rejected and then deleted, and Rosetta Code would be lessor for it.) And it appears that CalmoSoft has not made many (or any) responses to some (or most) queries about his draft tasks. However, many of his tasks have had programming solutions entered without having the need for further explanation. I would've entered more programming solutions (and addressed each of the draft tasks) if they weren't deleted. I try to create solutions that address the nuances of the best way to approach/solve/meet the requirements and use idiomatic REXX code, and treat the dictionary as if it were a true dictionary, not just an incomplete all lowercase words, especially those words that should be capitalized. Thus the reason I mention that my REXX programs meet the requirements and perform caseless searches/finds, and also present the answers in the case (same manner) that the word is in the dictionary. Not all of those tasks that required the reading of a dictionary needed a common method to assimilate the dictionary words, and I could've used some boilerplate code to do exactly that, but that would've been inelegant. And homey don't do inelegant. Yes, I did state that there may be circumstances that may not allow him to do better, and certainly there may be circumstances that I have not thought of or know of. And yes, it appears that he could put more time into the structure and wording of the draft tasks. I have added (sometimes) quite a bit of verbiage to my own draft tasks, and I still have overlooked or omitted vital details and/or specifications and/or requirements, it usually takes someone helpful to peruse the wording and tell me (or even correct) the obvious stuff that I overlooked, and I'm very thankful and appreciative for that help. Others have gone the other route which made it more difficult to change/alter/fix the wording of the specifications, or make a compromise that didn't invalidate existing programming solutions. Saying that it stinks to high heaven (or other such phrases/words) doesn't facilitate a fruitful conversation or repair. And, yes, of course a dialogue would've been welcomed, no matter how succinct. This is probably always the case, as long as the dialogue is constructive, and that, of course, begs a definition of "constructive"; there's a fine line between helpful and not helpful, depending upon how the "advice" is interpreted, sometimes filtered through social mores and customs (as I eluded to before on my suspicions, possibly even unfounded suspicions). I won't throw stones at him, I still await to hear his side (if he intends to tell it or not), and I do insist that he has one, albeit almost fully unheard so far. So, I hope we agree on these points, even if only 99%. -- Gerard Schildberger (talk) 18:39, 9 December 2020 (UTC)
- Forgot to mention: the Merriam-Webster site defining mores leaves cookies. It seems that most web dictionaries do so. -- Gerard Schildberger (talk) 18:39, 9 December 2020 (UTC)
question on numbers for the hourglass puzzle
I have a question about your flagging of the REXX solution for the hourglass puzzle. Is it your concern that words were used instead of Arabic numerals? The output was almost identical of the Python entry (as noted by the trans tag). Which computer programming entry would be better emulated? Would changing it to exactly match Python's output be OK? (Except for the misspelling error). -- Gerard Schildberger (talk) 18:04, 30 December 2020 (UTC)
- Python is using string interpolation there so an expression such as {t4//4} will be replaced by its actual value (4) when the string is printed. Does REXX have a similar facility? --PureFox (talk) 20:15, 30 December 2020 (UTC)
- Ah, now I see the light. I was thinking that the characters {t4///4} were just that and I didn't realize that they were meant to be substituted. I will correct it ASAP. Thanks for finding my (glaring) omission. -- Gerard Schildberger (talk) 20:27, 30 December 2020 (UTC)
- Naw, my bad. If I had been paying more attention to Python's output, I would have noticed that there was string
interpolation going on. I need better eyes or I need to do less programming when my eyesight begins to get the best of me. -- Gerard Schildberger (talk) 02:31, 31 December 2020 (UTC)
Fibonacci numbers definition for Padovan task
Concerning the Padovan task, the Fibonacci numbers definition for the first two terms may need re-doing, F(0) = 0, F(1) = 1. Of course, this depends where you start the Fibonacci series. But ten terms were listed starting with zero, so then F(0) has to be zero. -- Gerard Schildberger (talk) 10:35, 27 February 2021 (UTC)