| antononcube | I vaguly remember doing some illustrations abot that event. (I think I posted them here, in this channel.) | 00:17 | |
|
01:11
bdju left
01:17
bdju joined
01:21
wayland joined
01:22
wayland76 left
02:11
benchable6 joined,
wayland76 joined
02:13
mc3 joined,
mc3 left,
mc3 joined
02:14
gugod_ joined
02:17
wayland left,
Sgeo left,
benchable6__ left,
mc2 left,
gugod left,
mtj left
02:35
kylese left,
hulk joined
02:58
mtj joined
03:15
hulk left,
kylese joined
03:42
simcop2387 left
03:54
simcop2387 joined
03:58
Aedil left
04:08
Aedil joined
05:13
arkiuat left
05:25
arkiuat joined
05:57
Sgeo joined
06:29
arkiuat left
06:42
arkiuat joined
06:46
arkiuat left
06:54
arkiuat joined
06:59
arkiuat left
07:24
abraxxa-home joined
07:27
arkiuat joined
07:31
arkiuat left
07:47
melezhik joined
07:54
arkiuat joined
07:59
arkiuat left
08:27
arkiuat joined
08:36
arkiuat left
08:37
arkiuat joined
08:42
arkiuat left
09:09
arkiuat joined
09:14
arkiuat left
09:15
oodani left,
oodani joined
09:24
habere-et-disper joined
09:26
Aedil left
09:44
arkiuat joined
09:48
arkiuat left
09:57
melezhik left
09:58
habere-et-disper left
10:18
arkiuat joined
10:23
arkiuat left
10:25
abraxxa-home left
10:48
arkiuat joined
10:53
arkiuat left
11:00
Sgeo left
|
|||
| librasteve | the coffee cup is a very good meme for many things btw - topology, entropy and complexity, robotics - so raku is in good company | 11:04 | |
|
11:05
librasteve_ joined
|
|||
| SmokeMachine: can you maybe make a blue and yellow variant so that I can use for the weekly header? | 11:16 | ||
| www.etsy.com/uk/market/raku_coffee | 11:17 | ||
| coffee also features in PL world ... Java(Script), CoffeeScript ;-) | 11:18 | ||
|
11:22
arkiuat joined
11:27
arkiuat left
11:32
arkiuat joined
11:36
arkiuat left
11:59
arkiuat joined
12:05
arkiuat left
12:20
arkiuat joined
12:24
arkiuat left
|
|||
| tbrowder | thnx all, now i remember the event (at least the report of the event). | 12:39 | |
|
12:45
melezhik joined
12:49
arkiuat joined
12:53
arkiuat left
12:55
arkiuat joined
13:02
arkiuat left
13:05
arkiuat joined
13:06
Guest5038 joined
13:12
camelia left,
camelia joined
13:24
arkiuat left
13:31
arkiuat joined
13:40
arkiuat left
13:42
arkiuat joined
13:49
MoC joined
13:58
arkiuat left
14:06
arkiuat joined
14:15
arkiuat left
14:17
arkiuat joined
14:22
arkiuat left
14:34
arkiuat joined
14:41
nahita joined
14:42
arkiuat left
|
|||
| nahita3882 | weekly: candidate for Raku tricks: generate N standard Normals and "visualize" their distribution in 2 + 3 lines of pure Raku: paste.debian.net/1405350/ | 14:46 | |
| notable6 | nahita3882, Noted! (weekly) | ||
| antononcube | Is "call as method" the proper name for using .& syntax? As in my &f = {$_ + 2}; 4.&f . | 14:47 | |
| Is “ampersand call syntax” another correct name, by any chance? | |||
| librasteve | Nahita: awesome! thanks... | ||
|
14:52
nahita left
|
|||
| timo | is the `-3` for the first bin misaligned because of a copy-pasting accident, or is there something not quite right with the code? | 14:52 | |
|
14:55
arkiuat joined,
melezhik left
|
|||
| timo | ah, you're putting an array, so you get a space between elements, but not before the first of course, so the first line is a bit too far to the left | 14:58 | |
| @nahita3882 you may want something like `put (-3, *+$bin-width … +3).map({ .fmt: "%4.1f {"-" x +%binned{$_}}" }).join("\n");'` for the final line there | 14:59 | ||
| personally, i like `.say for ...` if i want lines from an array or sequence | 15:00 | ||
| tbrowder | folks ought to prep your in-work showy stuff for soon-upcoming Raku-Advent article | 15:16 | |
| timo | antononcube, look for "uniform function call syntax" for something that is at least related | 15:23 | |
| librasteve | tbrowder ++ | 15:24 | |
| @antononcube -- I (also) looked in the docs but nothing seems to be standard ... in the new periodic table, we went with method-like call | 15:26 | ||
|
15:37
apac left
16:07
Aedil joined
|
|||
| antononcube | Thank you! Searching "call as method" I landed (again) here: news.ycombinator.com/item?id=41886647 | 16:08 | |
| Voldenet | Is × the same as *? | 16:14 | |
| I just looked at the paste and was wondering what would be the use case of it | |||
| even worse, it looks almost exactly like x in my terminal ;\ | 16:15 | ||
|
16:20
Aedil left
16:40
apac joined
16:45
Guest5038 left,
Guest5038 joined
16:50
Aedil joined
|
|||
| librasteve | @antononcube - yeah, since hopefully there will be some take up of the periodic table posters, i would lean to method-like call otherwise we will end up with two options | 16:51 | |
| arkiuat | w | 16:52 | |
| Raku::Elements doesn't seem to single out that usage for naming | 16:55 | ||
| it just falls generically under Methodic as one of several different ways of making a Methodic | 16:56 | ||
| librasteve | @antononcube - I just reread that HN page ... bit wierd since (i) it was generally quite positive on Raku and (ii) tbh I had forgotten about it, but I think that this is the nudge that set me to start with Air development... | 16:58 | |
|
16:58
derpydoo joined
|
|||
| m: say (3 × 4) | 17:01 | ||
| evalable6 | 12 | ||
| librasteve | m: say (12 ÷ 3) | ||
| evalable6 | 4 | ||
| Voldenet | wow ÷ is even more arcane symbol | ||
| though it's very legible compared to x | |||
| which… looks like x | |||
| librasteve | Voldenet: I would say the use case is "do math like a regular human and not like a nerd" | 17:02 | |
| Voldenet | regular humans in europe use dot (e.g. 2 • 3 or 2 · 3) | ||
| librasteve | yeah these chars are quite hard to make out at my resolution ... anyway seems like if anyone wanted to build a command line calculator could have keys for these symbols | 17:03 | |
| Voldenet | none of these work in raku though | ||
| BUT | |||
| in my opinion * and / are perfectly legible and probably better for one line of text | 17:04 | ||
| mostly because font creators work hard to make them legible | 17:05 | ||
| librasteve | well, yeah and they appear in qwerty keyboard and so became quite popular in computing ;-) | ||
| timo | true mathematicians will use the invisible multiplication sign unicode character | ||
| librasteve | huuh? | ||
| timo | u: U+2062 | 17:06 | |
| unicodable6 | timo, U+2062 INVISIBLE TIMES [Cf] (control character) | ||
|
17:06
apac left
|
|||
| timo | m: say "5 \u2062 9 == 45" | 17:06 | |
| camelia | ===SORRY!=== Error while compiling <tmp> Unrecognized backslash sequence: '\u' at <tmp>:1 ------> say "5 \<HERE>u2062 9 == 45" expecting any of: argument list double quotes term |
||
| timo | m: say "5 \x2062 9 == 45" | ||
| camelia | 5 9 == 45 | ||
| timo | beautiful, isn't it? | ||
| Voldenet | amazing | ||
| timo | unicode never ceases to amaze | 17:07 | |
| librasteve | m: multi infix:<\x2062>($a, $b) { $a * $b }; say 6 \x2062 7; | 17:09 | |
| evalable6 | 42 | ||
| timo | now that's just silly :D :D :D | 17:10 | |
| librasteve | falls off chair | ||
| timo | m: multi infix:<<\x2062>>($a, $b) { $a * $b }; say 6 9 | 17:11 | |
| camelia | ===SORRY!=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> ix:<<\x2062>>($a, $b) { $a * $b }; say 6<HERE> 9 expecting any of: infix infix stopper postfix statement end … |
||
| timo | m: multi infix:<<\x2062>>($a, $b) { $a * $b }; use MONKEY; say EVAL "5 \x2062 9" | 17:12 | |
| camelia | 45 | ||
| librasteve_ | m: multi infix:<\<\x2062\>>($a, $b) { $a * $b }; say 5 \x2062 9 | 17:13 | |
| camelia | ===SORRY!=== Error while compiling <tmp> Confused at <tmp>:1 ------> :<\<\x2062\>>($a, $b) { $a * $b }; say 5<HERE> \x2062 9 expecting any of: infix infix stopper postfix statement end stat… |
||
| librasteve_ | oh | ||
| Voldenet | though I really love characters I can simply type instead of copying from google | 17:15 | |
| timo | if you use < rather than << i think it will not interpret the backslash sequence | ||
| Voldenet | well nowadays you can simply ask llm `type seahorse emoji` and it'll give you the proper sequence ;) | ||
| librasteve | got it ... so the only problem with our code is that it is easier to type 6 * 7 than 6 \x2062 7 ... surely a Slang beckons? | 17:16 | |
| arkiuat | I wonder if klibertp ever figured out the compile-time type-checking capabilities | 17:17 | |
| timo | who's that? | 17:18 | |
| oh from that old hackernews thread? | |||
|
17:18
abraxxa-home joined
|
|||
| librasteve | arkuiat: I get that compile time type checking is a neat technology ... and for a systems language (Rust being the archetype) this is important to save every cycle & byte going ... but I'm not really convinced that computationally that is really a good ROI for an expedience language such as Raku... most CPUs spend most of their time IO bound and in some cases (array bound check) you are stuck with runtime checks anyway | 17:21 | |
| Voldenet | hmm, it really depends on whether it's possible at some point to pre-compile the code | 17:22 | |
| if it is, then even expensive type checking makes total sense | |||
| librasteve | I understand (?) that one of the goals of RakuAST is to provide greater semantic introspection for the MOAR jit so hopefully that will help us to optimise the cr*p out of all the standard runtime type checks anyway | ||
| Voldenet | detailed compile time checking actually allows you to optimize the code before it's being executed | 17:24 | |
| for example you can skip type checking or inline without ever running the code, in some cases you can even deduce the result before running the code | 17:25 | ||
| timo | we do have a lot of things that make compile-time analysis hairy | ||
| method calls on our objects are completely unconstrained for example | 17:26 | ||
|
17:26
Guest5038 left
|
|||
| timo | even when we have a type on a variable that points at one class, subclasses and the same class but with mixins are also allowed | 17:26 | |
| languages like C++ have strict rules for how a derived class may overload a virtual method | 17:27 | ||
| for us, a derived class or a mixin can have a completely different signature, including return type annotation | |||
| and then there's the possibility of calling .wrap on the code object | |||
| librasteve | please forgive me if I sound like I know what I am talking about ;-) ... but I get the feeling that Raku syntax was not defined with this in mind | ||
| timo | i think it's less about the syntax and more about the semantics | 17:28 | |
| we have things like traits we can attach to a wide variety of things | |||
| librasteve | well -yes | ||
| timo | so we're not necessarily held back by the lack of a syntactic hook to place some kind of restriction on that the user wishes to establish | 17:29 | |
| arkiuat | sure, but it's not as if Raku can't do any compile-time type checking at all, which is what it sounded like klibertp was thinking | 17:30 | |
| timo | what we can have is custom metaclasses that enforce certain restrictions on methods that a class of that metaclass can have, and then a slang could hook into the compiler at the right spot and do its type checking work only on types of that metaclass | ||
| an example of custom metaclasses is "monitor" from OO::Monitors, which i assume a couple of you have seen | 17:31 | ||
| librasteve | I was thinking that formal techniques (such as Hindley–Milner) are very interdependent with the language design (and for me its nicer to have a type system I can employ "on demand" rather than spend my coding brainpower on serving a too-strict model) ... I see that using meta inspection and attaching optimisers at various points is more the Raku way - thanks for explaining! | 17:39 | |
| timo | it's mostly an opinion of mine, take it with a grain of salt :) | 17:54 | |
|
17:58
derpydoo left
18:01
apac joined
18:17
Sgeo joined
18:25
apac left
|
|||
| Voldenet | I'd lean towards the HM type system as well | 18:26 | |
| to me types and constraints are optimization hints | |||
| not some validation steps | |||