This channel is intended for people just starting with the Raku Programming Language (raku.org). Logs are available at irclogs.raku.org/raku-beginner/live.html Set by lizmat on 8 June 2022. |
|||
01:11
razetime joined
|
|||
thowe | I was looking for a -Ofun shirt the other day, and I was surprised I couldn't find one... Did I dream those were a thing? | 01:37 | |
02:00
ab5tract left
|
|||
antononcube | @nemokosch One could have guessed that @wamba is just a senior lecturer -- if a professor then the user name would have been "hakimu". | 02:18 | |
Here is a derivation: | 02:21 | ||
cdn.discordapp.com/attachments/768...hakimu.png | |||
03:12
guifa joined
03:15
guifa__ left
03:24
MasterDuke left
|
|||
_elcaro_ | This is ⍸⍷ in APL, or I.@E. in J, so, just for fun [0] > use Inline::J; my \j = Inline::J.new Inline::J.new [1] > j.verb('I.@E.')([1,3,5],[1,8,9,0,1,3,5,6]) 4 | 03:36 | |
04:19
razetime left
05:03
razetime joined
05:30
razetime left
|
|||
librasteve | www.ozonehouse.com/mark/periodic/ | 08:12 | |
^^ may need to adjust the name to raku | |||
@Marcel249 ^^ maybe this is good wallpaper? | 08:14 | ||
08:15
tea3po joined
08:18
teatwo left
08:28
tea3po left,
tea3po joined
|
|||
lizmat | that table is wildly out of date... it's not just adjusting the name :-( | 09:08 | |
kawaii.pl | Sadly the links to purchase high quality prints of it seem broken too else I'd gladly get something like this for my home office wall | 09:13 | |
antononcube | Is it useful, that periodic table of operations? Is it up to date? | 09:15 | |
nemokosch | > that table is wildly out of date | 09:16 | |
antononcube | Ok. Otherwise, I could have tried to make it into high-resolution with a few tricks… | 09:19 | |
rcmlz | Wallpapers, periodic tables and oher stuff would belong here: marketing.raku.org/ - I guess. | 09:54 | |
librasteve | good news is that it’s creative commons so we could clone and evolve | 09:55 | |
rcmlz | looking at it - s/Perl6/Raku/g is needed ;-) | ||
librasteve | bad news is that there’s only an image so probably needs to be rebuilt from scratch | ||
what is a good foss tool / format for that? | 09:56 | ||
nemokosch | it wasn't a bad idea at all at the time... probably went to graveyard with the departure of Zoffix | 09:57 | |
not a big designer myself but there is GIMP as the "poor man's Photoshop" or Krita which is more tryhard from what I heard | |||
for simple vector graphics business there is Inkscape | |||
(one can even create a font in Inkscape actually, cool stuff) | 09:58 | ||
librasteve | but gimp is an image tool … this needs something like illustrator or maybe figma | ||
antononcube | Of course, consider making the new version with/via Raku. | 09:59 | |
nemokosch | isn't Figma a prototyping tool? | ||
why not just generate it with LLM? 😼 | |||
antononcube | Yeah, I was thinking which parts can be made with LLM. | 10:00 | |
Someone recently proclaimed working on making Raku a scripting language for GIMP. | 10:01 | ||
nemokosch | I wonder how that works | 10:02 | |
where did that happen? | |||
antononcube | At “raku-irc” | 10:04 | |
nemokosch | yeah, probably Xliff | ||
antononcube | Yeah, Xliff, just confirmed it. | 10:05 | |
rcmlz | He worked with Indesign - e.g. this one I like: marketing.raku.org/id/1524053519/any Source: github.com/Raku/marketing/blob/mas...53519.indd | 10:06 | |
antononcube | ChatGPT: > Creating a periodic table of Raku operators could be an interesting way to categorize and visualize the various operators in the language. You could arrange them based on their functionality and similarities, similar to how elements are organized in the periodic table. However, due to the complexity of Raku's operators, it might require some careful consideration and design to create an | ||
effective representation. | |||
nemokosch | I'm not a great fan of that table, to be honest. It came up on the last Raku Study meeting as well. | 10:10 | |
I mean, it is funny | |||
but it's kind of self-ironic as well | |||
it's rather a kind of jokeful self-mocking than anything practical | 10:11 | ||
From what I heard, Zoffix quite literally worked in the marketing field some way | 10:12 | ||
not sure we can rival that toolset even with our best intentions lol | |||
librasteve | imo it's a funny, beautiful and thoughtful reflection of (one of) the unique strengths of raku in the richness of its operator set | 10:13 | |
and yes - other languages have less stuff in them! | |||
nemokosch | Yeah but you know, for half of the people it's just frightening, "an example why stay away", and I find it hard to blame them for it | 10:14 | |
Raku is really a bad fit for categorizing things, it's much more like when you tell a (natural!) language learner that "it will come with practice" | 10:15 | ||
"don't try to learn it by heart, you will pick up the patterns" | |||
by the way, for those of you who are interested in the practical part | |||
github.com/Raku/doc/discussions/4337 | 10:16 | ||
librasteve | that's true - I suppose a better representation would unpack the concepts according to the level of experience ... for example if you think about comparison you might go crawl ( ~~ ), walk (cmp, leg, <=>, eq, ==, ne, != ), sprint (<,>,lt, gt), run (===, =:=, =~=) | 10:26 | |
nemokosch | oh right 😄 | 10:27 | |
I forgot =~= even existed | |||
anyway, I do try to sort of lure people in to give me feedback, or their own ideas, on that doc discussion page | 10:28 | ||
"I have no clue what you are trying to say" also qualifies as feedback, lol | 10:29 | ||
rcmlz | From what I heard Zoffix quite literally | 11:15 | |
Out of curiosity I tried what Zoffix put on this poster marketing.raku.org/id/1524053519/any, but it is not correct (anymore). Whithout tuning the batch size, parallel execution is slower than single thread - and for the originally used 10_001st prime number my 2015 MacBook Air takes in any case less than 1 second. Good news, so apparently Raku is 100 times faster, as I can find the 1Mio prime number | 11:25 | ||
is the same time these days - using similar hardware that he used 5 years ago. my UInt $number-of-prime = 1_000_001; my $start; say "searching for $number-of-prime st prime number"; say "1 thread"; $start = now; say (^Inf).grep(.is-prime)[$number-of-prime - 1]; say (now - $start).Int; say "4 threads, batch size 64 (defaults)"; $start = now; say (^Inf).hyper(batch => 64, degree => | |||
4).grep(.is-prime)[$number-of-prime - 1]; say (now - $start).Int; say "4 threads, batch size 100_000"; $start = now; say (^Inf).hyper(batch => 100_000, degree => 4).grep(*.is-prime)[$number-of-prime - 1]; say (now - $start).Int; | |||
lizmat | yeah, not a lot has changed in that area | 11:26 | |
rcmlz | Not a lot? | ||
Old hardware, 100 times faster that 2017? | |||
lizmat | ah I thought you meant *since* it got 100x faster | 11:27 | |
nemokosch | yeah I also don't know what you are comparing | 11:28 | |
rcmlz | Maybe the manual tuning of batch size comes as a surprise to people who want to utilize parallelism | ||
lizmat | yeah, automatic tuning has been long on the wish list | ||
unfortunately that will need a bit of re-design / refactoring as there's currently no way to tell the "hypervisor" how each thread was doing and act on that information | 11:29 | ||
rcmlz | Zoffix apparently could find the 10'000st prime number in 7 seconds - back in the times when he created the poster. Using his code from "back then" is not working, as now booth approaches take less than a second. Increasing from 10'000 prime to 1'000'000 prime takes again about 10 seconds on recent Raku but makes hyper.grep slower than pure grep - but when tuning the batch size, hyper.grep is faster again - | 11:32 | |
again around 7 seconds. | |||
lizmat | yeah, the default of 64 is *way* too low for something as quick as determining a prime | 11:33 | |
at least for the first 1000 ones or so... later on, it gets more appropriate | |||
nemokosch | gotcha | ||
rcmlz | @lizmat that seem correct, as increasing batch size makes it slower again. | 11:34 | |
lizmat | for example, if it takes .1 second to handle the result of a batch, and the batch runs for .1 second, then you have 100% overhead | 11:35 | |
if you have a batch running for a whole second, than it's only 10% overhead | 11:36 | ||
*then | |||
11:47
ab5tract joined
12:13
ab5tract left
12:19
ab5tract joined
12:25
ab5tract left
20:15
teatwo joined
20:18
tea3po left
20:24
teatwo left
20:25
teatwo joined
21:34
teatwo left
|