Hey SolitudeSF thanks for the tip. 

Hey Miran, this is `Open Source Software` so you can modify it as much as you 
want. I think all you have to do is comment out the line that puts out the 
enter number message to get what you want.

But as I said in the initial post, people should feel free to beat on it, kick 
it, and modify it to their hearts content, especially if it `improves` it. Want 
a GUI frontend, go for it. Want to print output to a file, same thing.

Here's one little `improvement` I've been thinking about that someone can pick 
up. It's fairly simple to conceptualize and easy to code, and would be a good 
task for someone to do to give them a reason to learn a little more Nim.

`primesieve` displays a percentage indicator to give you a sense of how far 
along it's into the process. This is kinda nice to have, especially as number 
get larger. This is a nice, short task, of redeeming value, someone can take 
on. Here's one simple way to do it.

Add to Global Var parameters a boolean array `threadsdone: seq[bool]` and 
initialize at end of `selectPG` as `threasdone = newSeq[bool](rescntp div 2)`. 
Then at the bottom of `twins_sieve` put `threadsdone[indx] = true`, to indicate 
the thread had finished. Now in the main routine, just monitor to see|calculate 
the percentage of the `(rescntp div 2)` threads are done in `threadsdone`. 
Voila, piece of cake.  Just figure out how to display the output to give you 
what you want.

Now that I'm able to compile the code for P17, I'm looking at the optimum PG 
profiles for inputs >= 1e13. 1e13 takes on the order of 900 secs (15 mins) and 
5e13 is on order of 90 mins. Since I only have one laptop, and need it to do 
real work (this stuff is just for fun, fame, and fortune?) I tend to only run 
tests now either early when I wake up, or late going to bed.

But the key point I hope this `real application` shows, is that Nim can do 
`real parallel processing` right now! And if Nim would publicize successes like 
this it could make headway into the numerical processing community (attracting 
more users|developers), and take mindshare away from Python, Julica, et al. 
People can start doing FFTs, Walsh Transforms, Video|Audio codecs. How nice it 
would be to have an Opus Audio codec in Nim to showcase Nim's processing 
prowess.

[https://opus-codec.org](https://opus-codec.org)/

[https://en.wikipedia.org/wiki/Opus_(audio_format](https://en.wikipedia.org/wiki/Opus_\(audio_format))

The single most reason `Ruby` took off is `Rails`, which made people have to 
learn|develop Ruby. Python is now billing itself as THE numerical analysis 
language (and Julia in written in Python). Nim needs it niche applications to 
standout in the software language farmer's market. When people go looking for 
nice, fresh, juicy tomatoes to put in their salad, your offering must be able 
to stand out for some reason.

Reply via email to