01:23 arkiuat left 01:30 arkiuat joined
ab5tract antononcube: what do you mean by "use outer product"? 05:42
07:50 dakkar joined 08:03 arkiuat left 08:04 librasteve_ joined 08:33 arkiuat joined 08:37 arkiuat left 08:51 arkiuat joined 09:04 arkiuat left 09:16 arkiuat joined 09:21 arkiuat left 09:34 arkiuat joined 09:42 arkiuat left 10:01 arkiuat joined 10:08 arkiuat left 10:21 arkiuat joined 10:26 arkiuat left 10:45 arkiuat joined 11:00 arkiuat left 11:15 arkiuat joined 11:19 arkiuat left 11:38 arkiuat joined 11:43 arkiuat left 12:02 arkiuat joined 12:06 arkiuat left 12:20 arkiuat joined 12:25 arkiuat left 12:38 arkiuat joined 12:42 arkiuat left
disbot8 <antononcube> @abstract Using Cartesian product over signatures. "Outer product" can be seen as a generalization of Cartesian product. (And "outer product" contrasts well with "closed sum.") 12:56
13:03 arkiuat joined 13:08 arkiuat left 13:37 arkiuat joined 13:42 arkiuat left 14:06 arkiuat joined 14:11 arkiuat left
disbot8 <simon_sibl> I would be very happy if the Guix package definition would work for the lastest Rakudo version I really need to learn more about packaging But also about Rakudo, there are compilations and tests error I am unable to understand 14:23
<simon_sibl> actually I got it to compile, but the file isnt amazing and zef doesnt work xD 14:26
<librasteve> raku.land/zef:lizmat/SBOM::Raku may shed some light on BOM matters (plus see lizmat posts in recent weeklies) 14:27
<librasteve> I use App::Mi6 to curate modules
<antononcube> @librasteve Can you expand on that? 14:29
<antononcube> On "I use App::Mi6 to curate modules"... 14:30
<librasteve> on the BOM side of things - I have not much of a clue
<librasteve> oh - well yes ... App::Mi6 automates setting up new modules with a consistent dir structure, settings for README from rakudoc generation (I always disable that in the dist.ini), change management, release to fez 14:32
14:38 arkiuat joined
disbot8 <antononcube> I didn't know about the release feature. I think I used all the others before, but the whole thing seemed too complicated at some point. But I want to re-learn, re-evaluate those workflows. (Of "App::Mi6".) 14:45
lizmat my life maintaining 245 modules + ~200 community modules, would be a *lot* harder without App::Mi6 14:47
disbot8 <simon_sibl> codeberg.org/guix/guix/pulls/2423 15:12
<simon_sibl> I created a basic pr, feel free to help xD
<simon_sibl> That seems like a lot.. how is it even possible ? 15:18
<simon_sibl> Is it your job or free contribution ?
arkiuat lizmat is extremely generous 15:49
I for one am very grateful 15:51
disbot8 <librasteve> amen 16:02
lizmat it keeps me off the street :-) 16:06
arkiuat lizmat++ 16:21
16:36 dakkar left
librasteve_ rakudoweekly.blog/2025/09/01/2025-...tive-data/ 18:26
disbot8 <jubilatious1_98524> @abstract I think @antononcube means web.mit.edu/~r/current/lib/R/libra...outer.html 18:38
<antononcube> @jubilatious1_98524 Seriously!! How come you think that?! 18:40
<antononcube> @jubilatious1_98524 Of course, I was referring to : reference.wolfram.com/language/ref/Outer.html 18:41
<antononcube> I think, in R I have not used outer and expand.grid for years. 18:43
<jubilatious1_98524> @antononcube I took a wild guess---apparently incorrect! I will read your Wolfram reference and be edified. Sincerely. 18:49
<antononcube> Mathematica's Outer and R's outer are very similar. 18:50
<antononcube> Raku's X is not exactly the same. But I think cross is close. 18:53
<jubilatious1_98524> R's outer shows lots of examples with * multiplication cross-products, however FUN cannot call c() to get sublists. R's Vectorize() function seems closer. 19:01
<jubilatious1_98524> > f <- function(x = 1:3, y) c(x, y) > vf <- Vectorize(f, SIMPLIFY = FALSE) > f(1:3, 1:3) [1] 1 2 3 1 2 3 > vf(1:3, 1:3) [[1]] [1] 1 1 [[2]] [1] 2 2 [[3]] [1] 3 3
<antononcube> Hm... that is just a zip, right? 19:04
<jubilatious1_98524> So I was correct when I referred to R's outer() as being the Wolfram equivalent? 19:06
<antononcube> Very close, but the there some difference. WL's Outer has arguments for separtion depth of the arguments. Also, works on non-lists. 19:08
<antononcube> For example: Outer[F, h[a, b], h[x, y, z]] # h[h[F[a, x], F[a, y], F[a, z]], h[F[b, x], F[b, y], F[b, z]]] 19:09
<jubilatious1_98524> > x <- 1:9; names(x) <- paste(x,":", sep = "") > y <- 1:9; names(y) <- paste(y,":", sep = "") > outer(y, x, "*") 1: 2: 3: 4: 5: 6: 7: 8: 9: 1: 1 2 3 4 5 6 7 8 9 2: 2 4 6 8 10 12 14 16 18 3: 3 6 9 12 15 18 21 24 27 4: 4 8 12 16 20 24 28 32 36 5: 5 10 15 20 25 30 35 40 45 6: 6 12 18 24 30 36 42 48 54 7: 7 14 21 28 35 42 49 56 63 8: 8 16 24 32 40 48 56 64 72 9: 9 18 27 36 45 54 63 72 81 19:11
>
<jubilatious1_98524> Oh, that's smart. In R you have to build up your paste or c() arguments first. I'll have to play with WL's outer. However I do like R's default 2-d display (see multiplication table above). 19:14
19:19 greenfork_ joined, librasteve__ joined 19:20 librasteve_ left, camelia left 19:21 SEric left, greenfork left, swaggboi left, librasteve__ is now known as librasteve_, greenfork_ is now known as greenfork 19:22 camelia joined, SEric joined, swaggboi joined
disbot8 <jubilatious1_98524> Here's R's expand.grid() function for comparison: 19:23
<jubilatious1_98524> > x <- seq(0, 5, length.out = 5) > y <- seq(-1, 1, length.out = 3) > d1 <- expand.grid(x = x, y = y) > d1 x y 1 0.00 -1 2 1.25 -1 3 2.50 -1 4 3.75 -1 5 5.00 -1 6 0.00 0 7 1.25 0 8 2.50 0 9 3.75 0 10 5.00 0 11 0.00 1 12 1.25 1 13 2.50 1 14 3.75 1 15 5.00 1 > 19:24
19:30 crnlskn joined
disbot8 <antononcube> This kind of table is not that easy to produce in Raku. 19:38
19:59 arkiuat left 20:28 arkiuat joined
disbot8 <rcmlz> m: my @x = 1.25, 2.5 ... 5; my @y = -1, 0, 1; .say for @x X @y 21:35
<Raku eval> (1.25 -1) (1.25 0) (1.25 1) (2.5 -1) (2.5 0) (2.5 1) (3.75 -1) (3.75 0) (3.75 1) (5 -1) (5 0) (5 1)
<rcmlz> you mean the sorting and line numbering? 21:36
<antononcube> @rcmlz and @jubilatious1_98524 I am talking about these kind of tables: 21:39
<antononcube> cdn.discordapp.com/attachments/768...12607&
<antononcube> The code in image uses "Data::Reshapers" (to-pretty-table) and "Math::SparseMatrix". 21:40
<rcmlz> Ah, ok. Was just wondering what you were talking about.
<antononcube> Without using packages showing tabular forms like those is not that straightforward. 21:41
<jubilatious1_98524> Good discussion, thanks. 21:42
<rcmlz> Yes, you are right. I am also not aware of any build-in sugar regarding table-printing 21:43
<jubilatious1_98524> I used to use Stargazer in R: libguides.princeton.edu/R-stargazer 21:44
<antononcube> For printing tables? 21:48
<jubilatious1_98524> Yes. The name stargazer comes from the ability to easily handle p-value "star" notation, within statistical summaries. One-stop shopping in R (to html, latex, etc). 21:50
<antononcube> That is very R-ish, but otherwise a bad package design. 21:51
<antononcube> I prefer packages to do "one thing", thematically speaking.
<jubilatious1_98524> CRAN.R-project.org/package=stargazer 21:52
<antononcube> The corresponding Raku package is "Data::Translators" -- translates different Raku data structures (say, datasets) to HTML, Python, R, and WL.
<antononcube> I have not considered translating to LaTeX, yet. I might add it soon. 21:53
<jubilatious1_98524> Yeah, R has a lot of this: good packages that do too many things. But part-time programmers like it because they only have one (or a few) tool to remember. 21:54
22:48 crnlskn left 22:53 crnlskn joined