I've been hanging out on SO for the last few years and I think it's safe to say that provided askers make sure to include a raku tag, and to not include any other language tag, the anti-noob crowd generally leave us alone.
(They've occasionally come in and attempted to close questions that we reopen but that hasn't happened in a year or two. Perhaps they've gotten used to our attitude which I'd summarise as -Ofun, forgiveness > permission, and "be helpful".)
I see you've posted on codereview and will follow up there too...
Thanks! I appreciate the help. I threw a more realistic chunk of html at it. It did not match anything, though.
Very cool tool there. I'll use that.
I edited my original. You can see it in action here.
The %% is an alternation. Basically, we say that you can alternate between junk and stuff we want (e.g. junk, stuff, junk, stuff, junk, stuff). The %% allows us to finish on stuff, whereas % would require us to end on junk (which, I suppose, being zero width ends up the same, actually)
No, unfortunately not. Though the query may not be ideal -- in fact everything displays fine when run through Terminus, it's only when the dedicated executables (cmd.exe
, powershell.exe
, and even the latest PowerShell 7 pwsh.exe
) are used that there is an issue.
It seems that there is a different behavior between how Terminus embeds it's "shells" versus how IntelliJ IDEA does.
That said, the bold works beautifully in Windows Terminal. That, however, unfortunately does not embed in Comma/IntelliJ.
I'm going to give up on it for now and see how things evolve.
> I would use git to store both the disassembly and your code to modify it.
Yep, it's in a git repo.
Since I'm working backwards from a known-good binary, my Makefile has a hash value stored in it as constant. Every time I re-build, my Makfile automatically checks the hash. If the hash fails to match, I know that something went wrong.
I've been using xxd and awk to get byte dumps for comparison with Meld. Normally, I don't like GUI-based tools for development, but I would never have gotten this far just plain diff. I've come to like Meld.
I haven't quite gotten around to setting up my Makefile to auto-generate .xxd dumps of the bad build and the known-good binary for comparison, but I'll be doing so soon. Right now I just do it manually.
> Note that Rakudo currently has no built-in feature to do inplace editing like an -i command line switch.
Nuts. Ah, well. No biggie.
As far as I know Padre has not seen any development for the past 4 years at least, and a lot has happened in Perl 6 / Raku land since then. So I don't think it will understand the supply
, react
, whenever
keywords, to name but a few. So I can't take it seriously for Raku. Now, for Perl, maybe. So a better statement would have been: "Raku has an IDE that is up-to-date with the latest developments in Raku".
https://raku.org -> Download
brings you to a page with a frame which says :
> More Download Options
> Source archives, pre-compiled packages, ...
and has a button rakudo.org/downloads
which takes to https://rakudo.org/downloads
Then one select the tab Sources
(the monochrome flat design really doesn't help here).
And there... well there is the source, but the Github link appears only in the page footer (and you have to be familiar with Github brand logo), not in a better place than on any other page. There really ought to be a section in the text titled Development repository
with a proper link to the repository (and mirrors if any). And we shouldn't have to care if it hoisted at the Github company or anywhere else, BTW.
So I'd say :
This seems like something a bit difficult to solve in a nice way. You could put some kind of section explaining in just a bit more detail the difference between the specification and the implementation on the main raku.org website, and then link to the Rakudo source.
But I worry all that technical speak on the front page would be a little alienating to beginners. Raku is, as far as I can tell, a wonderful beginner language and I don't think the language front page should mix warmth and welcome with anything that makes a novice feel nervous because they're not Ada Lovelace or Alan Turing.
The Raku website FAQ linked at the top of the raku.org main page does have a link to the source code in it as part of an answer to "As an advanced user I want to track Rakudo development."
I'm sorry you had a problem finding what you wanted. I'll discuss making a pull request to the website documentation to make it easier.
Weird. I consider it an important aspect of Raku. I've used the same approach many times before. A cut/paste to tio.run works. And in my more recent local Rakudo too. Are you using the repl? What version are you using? What happens if you try True andthen (False; True; )
?
Huh. What version of raku are you using? What do you get if you use
With ugexe's fix of your code in place, on tio.run using a 2018.12 Rakudo, your code works reliably -- and does so regardless of whether $foo
is declared with atomicint
, int
, or int64
.
All of which currently makes sense to me. I think my summary is:
atomicint
type ensures that a variable is a native integer of the right size for atomic operations on a given CPU. One may get away with using int
instead of atomicint
, so it isn't technically needed if all one wants is code that will work on some CPUs, but the phrasing "is needed" is still appropriate inasmuch as having portability is needed for credibly claiming to have an adequate implementation of atomic operations in the general case (performance aside).(It's presumably because I'm using an old Rakudo, but I'm getting unreliable results, even with a version of your code that declares my atomicint $foo
and skips the multi. I'm sometimes getting 100000 but mostly incorrect values instead.)