»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend! 🦋
Set by Zoffix on 25 July 2018.
00:04 vike1 left 00:06 dalek left 00:07 vike1 joined 00:08 p6bannerbot sets mode: +v vike1 00:10 pecastro left 00:14 jeek joined 00:15 p6bannerbot sets mode: +v jeek 00:29 rindolf left 00:30 cydf left, w_richard_w joined, p6bannerbot sets mode: +v w_richard_w 00:38 w_richard_w left
SmokeMachine timotimo: im sorry for boring you with it, but now Red (on a specific branch) creates CASE/WHEN selects :) www.irccloud.com/pastebin/I1tlJXWM/ 00:43
01:30 warriors joined, p6bannerbot sets mode: +v warriors 01:38 leont joined 01:39 p6bannerbot sets mode: +v leont 01:40 Kaiepi left
timotimo bore? no way, that shit is cool :) 01:45
i just don't have a good use case for it yet
01:59 MasterDuke joined, p6bannerbot sets mode: +v MasterDuke, MasterDuke left, MasterDuke joined, herbert.freenode.net sets mode: +v MasterDuke, p6bannerbot sets mode: +v MasterDuke 02:18 ryn1x joined 02:19 p6bannerbot sets mode: +v ryn1x
SmokeMachine timotimo: github.com/FCO/Red/wiki/Case-When 02:26
timotimo freaky. 02:28
will there be a trait on classes (models, really) that makes every column "not null" unless specified individually? or will that all be with :D constraints on the attributes? 02:30
SmokeMachine timotimo: you can use `:D` or `is column{ :!nullable }` 02:31
timotimo mhm
SmokeMachine timotimo: I'm not sure, but I was thinking that `is required` should do it too... 02:32
timotimo ah, yes
SmokeMachine but it's not done yet... 02:34
timotimo that's fine 02:36
SmokeMachine have to continue writing his advent calendar post... 02:37
timotimo i have to come up with a topic 02:39
holyghost .
mst for a database system, if it doesn't default to not null, it's wrong. 02:40
timotimo i do believe you can put "is required" on a class itself, too
02:41 ryn1x left
mst I said 'default' for a reason 02:41
timotimo yes, indeed
it's better than putting it on every column individually
but default would indeed be better
mst note also that doesn't mean that the object needs to be
because having a partially constructed object, setting field values, then inserting it, can be useful 02:42
timotimo that the object needs to be what?
that's also true
mst but the database tables -must- be not-null-unless-asked-for
otherwise you're rapidly into InactiveRipcord territory
(aka the rails "ORM")
warriors mst finally converted to Perl6 :) 02:44
mst nah
I'm just here to reduce the odds of you re-making mistakes I/we did 02:45
hence e.g. my advocating for the creation of TWEAK because it seemed wrong to me that there were things that were 5x as much typing in perl6 OO as Moo 02:46
warriors :) thank you for help Perl6 being better
mst I'm still seriously considering writing hybrid apps 02:47
but it's getting very hard to get support on the perl5 side for that due to lizmat's continued attacks on the perl5 community 02:48
warriors liz is the best
02:48 molaf left
warriors continue liz .. ATTTAAACK 02:48
:) 02:49
mst giving a lightning talk called "perl5 is the new perl4", then publishing a perl.com article that says "perl5 should stop all feature development to port to moarvm" (which I reckon put back the chances of perl5 on MoarVM by five years, which I'm sad about)
and her causing massive drama over the sister language narrative, when it's ten years old and acked by everybody and basically just makes her sound like the old perl5 assholes attacking perl6 except in reverse because now *she* can't accept a ten year old decision 02:50
makes it hugely difficult for me to get perl5 people to agree with me that a perl5/perl6 hybrid approach is the right thing for the project
I'm still trying to explore how I thread that needle community wise in spite of her overt and public hostility 02:51
I mean, I still want to write perl5/perl6 hybrid apps because I love unix and perl5 lives in unix way more than perl6, but I also love perl6 grammars, is totally going to happen 02:52
I just wish visible perl6 contributors would stop being a colossal asshole to perl5 in a way that makes it incredibly hard for me to get any perl5 people on board with the idea 02:53
I love her dearly as a human being but she's seriously damaging a bunch of co-operative principles between the two communities I've spent ten years of my life fostering, and I'm frustrated 02:54
SmokeMachine I forgot, how can I say that the default for the attributes is :D? 02:55
mst lizmat: ^^ I've been trying to not be publically grumpy about this but since I just have been I'm pinging you so hopefully you first realise just how annoyed and am from me. Seems only fair. 02:56
warriors: note twitter.com/shadowcat_mst/status/1...1921607682 applies to me as well as everybody else 02:58
03:00 w_richard_w joined 03:01 molaf joined, p6bannerbot sets mode: +v w_richard_w, p6bannerbot sets mode: +v molaf 03:02 w_richard_w left
SmokeMachine now (using `use attributes :D`) it defaults to NOT NULL... www.irccloud.com/pastebin/ofzplAXR/ 03:04
timotimo SmokeMachine: can you do something about having only the columns "not null" and the attributes be undefined?
so that you can build up objects before the constraint is enforced?
SmokeMachine timotimo: not yet... 03:05
timotimo use Red :nulldefault
vs the default of just "use Red" which would make "not null" the default
SmokeMachine timotimo: sorry, that's not true... `is column{ :!nullable }` do not implies anything to the object...
timotimo: that makes sense... 03:06
Ill do that tomorrow!
timotimo cool :)
SmokeMachine good night!
timotimo mst is a good source of wisdom here
having made an orm that i hear is kind of popular or something :P 03:07
mst and also having a vast list of mistakes, mostly ones I made myself, to share and help other people avoid
03:09 ryn1x joined 03:10 p6bannerbot sets mode: +v ryn1x, ufobat___ joined 03:11 p6bannerbot sets mode: +v ufobat___ 03:14 ufobat_ left
SmokeMachine mst: id love to have more of your help with Red! 03:15
mst SmokeMachine: feel free to ask me questions, I'm happy to tell you what I did, what worked, what didn't, and why I hate the decisions that turned out to be a problem 03:16
I'm currently working on a new perl5 SQL metaprogramming thing
SmokeMachine Really?! Is it published anywhere? 03:17
timotimo what will it do? what kind of meta does it provide?
SmokeMachine mst: had you taken a look at Red? 03:18
mst I haven't, yet, it depends on a refactored SQL::Abstract and I've been experimenting
but
it looks something like sherlock.scsys.co.uk/~matthewt/test3 03:19
03:20 w_richard_w joined
mst note that during the DBIC drama ribasushi attempted to blackmail shadowcat to get me to stop publically disagreeing with him technically, so I've been a little careful about releasing stuff until it's fully baked 03:20
timotimo is a Dwarn kind of like a Dwarf?
SmokeMachine mst: would you mind if I ask you what you think about Red? (github.com/FCO/Red) any critical problem you see? 03:21
03:21 p6bannerbot sets mode: +v w_richard_w
mst though also the new SQLA dataformat is likely portable (or ideas therefrom stealable which also rocks) 03:21
timotimo sql alchemy?
mst SQL::Abstract
timotimo ah
mst main perl5 SQL generation library
SmokeMachine: ok, so, it's 03:21 here *but* if you catch me and remind me earlier in a day if I'm not in the middle of anything, sure, I'll happily tell you if I spot anything that I did that seemed like a mistake in hindsight and why :) 03:22
timotimo how do you do "silly" joins like >= instead of =?
mst in DBIC, you don't yet 03:23
SmokeMachine mst: sure! Sorry! I’ll call you tomorrow! Thanks! 03:24
mst in Quark, you do ->on('left.thing' => { '>=', 'right.thing' })
timotimo is there an escape hatch?
oh, huh, i'm using == in some places and = in others for the "on" clause in joins 03:25
but it seems like both work the same way?
mst no, => so if the RHS of a pair is a scalar, for a where clause it gets interpreted as '= ?' and for an on clause '= <ident>' 03:26
I have some ideas about operator overloading and extending the grammar lexically but those are strictly optional so I'm trying to get the baseline to work first 03:27
timotimo that's fair
Red exports a whole bunch of operators, then runs the code you pass to the map method and it inspects what is done to the column objects
but defining custom operators in perl6 is basically "extending the grammar lexically" :) 03:28
mst well that's kinda what I can do with Babble - guess what I was inspired by :)
timotimo looking at the name it's probably babel :) 03:29
mst well, babel, but also perl6 in general 03:30
timotimo will you also have a Sibble or a Tribble?
mst like I'm aiming for babel *and* lexical grammer modifications
a Tribble? it's 2018, Trump and Boris Johnson are enough tribbles for me 03:31
timotimo i wouldn't call them tribbles. tribbles are adorable, fluffy, and the sounds they emit soothe the mind and soul
03:36 ryn1x left 04:23 animcogn16 joined 04:24 p6bannerbot sets mode: +v animcogn16 04:28 animcogn16 left 04:29 holyghost left 04:37 lizmat left 05:18 Sgeo_ left, Sgeo joined 05:19 leont left, p6bannerbot sets mode: +v Sgeo 05:20 lizmat joined, p6bannerbot sets mode: +v lizmat 05:41 kerframil joined, p6bannerbot sets mode: +v kerframil 05:46 bdodd15 joined 05:47 bdodd15 left 06:32 robertle joined, ChrisMorrisOrg15 joined, p6bannerbot sets mode: +v robertle 06:33 ChrisMorrisOrg15 left 06:41 w_richard_w left, sauvin joined, p6bannerbot sets mode: +v sauvin 06:45 Bucciarati left, Bucciarati joined 06:46 p6bannerbot sets mode: +v Bucciarati 06:55 jmerelo joined 06:56 p6bannerbot sets mode: +v jmerelo 07:28 ufobat___ left 07:30 Bucciarati left 07:33 hami joined, p6bannerbot sets mode: +v hami 07:42 robertle left 07:46 Bucciarati joined 07:47 p6bannerbot sets mode: +v Bucciarati 07:49 hami left 07:52 thundergnat left 08:05 andrzejku_ joined, parv joined 08:06 andrzejku left, andrzejku_ is now known as andrzejku, p6bannerbot sets mode: +v andrzejku, p6bannerbot sets mode: +v parv
El_Che your metaphore is broken, but I get the sentiment 08:24
08:27 Marcool joined 08:28 p6bannerbot sets mode: +v Marcool
Marcool Hi all, I'm trying to install Cro::HTTP::Client on a mac os high sierra laptop, and getting a test failure: framabin.org/p/?20b9220c5e854640#V...iT/3fqJOU= 08:29
yoleaux 18 Jun 2018 13:23Z <MasterDuke> Marcool: if you edit the AUR package for MoarVM to add the `--debug=3` flag to Configure.pl, then perl6-gdb-m and perl6-valgrind-m will give you some useful info when trying to run your script
Marcool It's OpenSSL that's failing, basically with this error as reported on the github issue tracker for that package: github.com/sergot/openssl/issues/63 08:30
Any clues how to resolve this? Should I just force install without tests? Is this possibly a version mismatch issue between openssl? openssl version shows: "LibreSSL 2.6.4" 08:32
08:39 haukex joined, p6bannerbot sets mode: +v haukex 08:44 haukex left 08:47 ExtraCrispy joined, p6bannerbot sets mode: +v ExtraCrispy 08:55 L0j1k20 joined 08:56 L0j1k20 left, cydf joined, p6bannerbot sets mode: +v cydf 09:05 AlexDaniel left 09:08 rindolf joined 09:09 p6bannerbot sets mode: +v rindolf 09:19 warriors left 09:35 domidumont joined, p6bannerbot sets mode: +v domidumont 09:36 kerframil left 09:50 thundergnat joined, p6bannerbot sets mode: +v thundergnat 09:56 Geth left 09:57 delon left 10:02 sena_kun joined, p6bannerbot sets mode: +v sena_kun 10:19 Marcool left 10:40 kudzo_ left 10:53 pmurias joined, p6bannerbot sets mode: +v pmurias 11:53 squashable6 left, releasable6 left, statisfiable6 left, reportable6 left, bisectable6 left, unicodable6 left, bloatable6 left, undersightable6 left, shareable6 left, greppable6 left, nativecallable6 left, evalable6 left, committable6 left, notable6 left, quotable6 left, benchable6 left, coverable6 left, nativecallable6 joined, ChanServ sets mode: +v nativecallable6, quotable6 joined, notable6 joined, greppable6 joined, ChanServ sets mode: +v notable6, ChanServ sets mode: +v greppable6, committable6 joined, evalable6 joined, coverable6 joined, bloatable6 joined, ChanServ sets mode: +v coverable6, ChanServ sets mode: +v bloatable6, bisectable6 joined, benchable6 joined, benchable6 left, bisectable6 left, committable6 left, evalable6 left, quotable6 left, releasable6 joined, reportable6 joined, unicodable6 joined, ChanServ sets mode: +v releasable6, ChanServ sets mode: +v reportable6, ChanServ sets mode: +v unicodable6, releasable6 left, reportable6 left, unicodable6 left, coverable6 left, bloatable6 left, notable6 left, greppable6 left, nativecallable6 left 11:54 p6bannerbot left, p6bannerbot joined, ChanServ sets mode: +o p6bannerbot 12:07 poohman joined, p6bannerbot sets mode: +v poohman
poohman m: say "Hello" 12:07
camelia Hello
poohman hello all, 12:08
is there a way to use nativecall for .net libraries?
trying to use Microsoft.Office.Interop.Excel 12:09
12:09 rurban joined
poohman right now am writing the logic bits in perl6 and then using c# only for the excel interop 12:09
12:10 rurban left
El_Che poohman: I think NativeCall is a C interop 12:10
sena_kun poohman, I doubt so. .net uses CLR and isn't tied to C libs. Or if it is, you may use those dlls.
El_Che poohman: I think that even C++ does not work
poohman i thought it had a dll
let me check
oh ok 12:11
12:16 pecastro joined, p6bannerbot sets mode: +v pecastro 12:29 pecastro left 12:31 pecastro joined, p6bannerbot sets mode: +v pecastro 12:40 Kaiepi joined 12:41 p6bannerbot sets mode: +v Kaiepi 12:49 andrzejku_ joined, p6bannerbot sets mode: +v andrzejku_ 12:51 andrzejku left, andrzejku_ is now known as andrzejku 12:59 lichtkind joined, p6bannerbot sets mode: +v lichtkind 13:23 dogbert2_ left 13:25 leont joined, p6bannerbot sets mode: +v leont
lichtkind is there a way to check how many args an anon block expects? 13:37
sena_kun m: my &a = { $^a + $^b }; say &a(2, 3); say &a.arity; 13:39
camelia 5
2
sena_kun lichtkind, ^
lichtkind sena_kun, thank you vary much 13:52
very :)
sena_kun you are welcome. :)
Summertime bless test suites 13:55
SmokeMachine mst: are you busy?
Summertime not for the fact they test things, but the fact that they make amazing documentation replacements
but I'm also seeing that the sub MAIN documentation is pretty bare compared to what it can do :< 13:56
14:00 kurahaupo left, kurahaupo joined 14:01 p6bannerbot sets mode: +v kurahaupo 14:16 parv left 14:23 dogbert2_ joined 14:24 p6bannerbot sets mode: +v dogbert2_ 14:43 koto joined 14:44 p6bannerbot sets mode: +v koto 14:45 sena_kun left 14:54 uzl joined 14:55 p6bannerbot sets mode: +v uzl
uzl m: my @gifts = <book bicycle perl6>; (sub (@gifts) { .say for @gifts })(@gifts); (sub (*@gifts) { .say for @gifts })(@gifts) 14:56
camelia book
bicycle
perl6
book
bicycle
perl6
uzl If all I'm passing is an array to do something with its items, what's the different between using '@array' and '*@array' in the sub signature? 14:58
koto m: sub a(*@a) { say @a; }; say a(<1 2 3>); say a(<1 2 3>, <1 2 3>, 3, 12); sub b(@a) { say @a }; say b(<1 2 3>); say b(<1 2 3>, <1 2 3>); 15:01
camelia [1 2 3]
Too many positionals passed; expected 1 argument but got 2
in sub b at <tmp> line 1
in block <unit> at <tmp> line 1

True
[1 2 3 1 2 3 3 12]
True
(1 2 3)
True
jnthn @array will bind the original array, *@array will copy the elements into a new one
uzl m: my @a = 1, 2; my @b = 1, 2; sub change-original(@a) { $_++ for @a }; sub change-copy(*@a) { $_++ for @a }; change-original(@a); change-copy(@b); say @a, @b; 15:07
camelia [2 3][1 2]
15:10 robertle joined 15:11 p6bannerbot sets mode: +v robertle
uzl Oh I see. But why isn't the 'is rw' trait necessary to make array container writable here? 15:12
15:13 leah2 left
lizmat mst: re "giving a lightning talk called "perl5 is the new perl4", then publishing a perl.com article that says "perl5 should stop all feature development to port to moarvm" 15:15
you forgot to mention that there's about 6 years between those two events
mst: re "I just wish visible perl6 contributors would stop being a colossal asshole to perl5" Does that include my Perl 5 to Perl 6 articles on opensource.com ? 15:16
also: asshole may be in the eye of the beholder 15:18
now /me is grumpy 15:19
15:19 lucasb joined, p6bannerbot sets mode: +v lucasb 15:20 marmor joined 15:21 p6bannerbot sets mode: +v marmor 15:28 leah2 joined 15:29 p6bannerbot sets mode: +v leah2 15:32 Sound joined, p6bannerbot sets mode: +v Sound 15:36 uzl left
pmurias lizmat: re Perl 5 to Perl 6 articles it doesn't seem so to me 15:38
15:41 rfold joined 15:42 p6bannerbot sets mode: +v rfold
pmurias lizmat: some of the othe 15:46
sorry
lizmat ? 15:47
pmurias lizmat: accidently pressed enter before I decided what I want to write ;)
lizmat no pb....
pmurias lizmat: for the more "controversial" blog post I feel some of them contained stuff that tangetially related to the main point but potentially offensive to some Perl 5 people if interpreted a particular way 15:50
like "stopping new Perl 5 features" being connected to "porting Perl 5 to a cooler VM would be a good idea" 15:51
lizmat well, the thing is that I'm not the only one who thinks that p5p is endangering the single remaining Unique Selling Point of Perl 5 (as implemented by p5p) 15:52
backward compatibiity
some of them are very vocal about it (such as Reini Urban) 15:53
but i've heard this from people at non-perl open source conferences a *lot*
and some of that on Perl conferences
also: I've never said anything about stopping development on Perl modules 15:55
(Perl 5)
xinming What is the best way to "return" from the block?
yoleaux 31 Oct 2018 01:25Z <MasterDuke> xinming: what code were you running to create the heap snapshot that caused the unbox error?
timotimo xinming: replace it with an anonymous sub :)
since "leave" is not yet implemented (or is it?)
lizmat in fact, I recently voted in favour of a Perl 5 module grant for developing more async options in Perl 5
xinming So, leave is not implemented? 15:56
Let me try
pmurias lizmat: I fully agree that backward compatiblity is crucial for Perl 5 (I wasn't offended by the blog post myself)
xinming 'leave is not implemented' sorry 15:57
Now, We can't do return, and have no leave..
I'll wrap a sub { }() around the codes 15:58
It's amazing that perl6 supports something like sub { ... }() :-) 15:59
in js, it'll at least be (sub { })()
pmurias lizmat: I even feel that the people who are a lot of the time the most offended are more reacting to unintended similiarites to things they heard before like "migrate your Perl 5 code to Python" etc. then to the technical points 16:00
lizmat In a way I'm flattered that there are people who think that I'm the reason for all the marketing problems of Perl 5 16:02
and it's really ironic considering there aren't a lot of people who do booths at open source conferences to promote Perl 5 *and* 6 16:03
and I have been one of those few people
pmurias lizmat: I'm not sure if anybody thinks that tho ;)
lizmat well, according to mst, I'm the reason people who are used to working with Perl 5 don't want to work with Perl 6 16:04
it's also ironic that my mentioning "A should be done" puts back "A" by at least 5 years 16:05
*doing A
pmurias lizmat: not trying to attack/offend you just pointing what I think annoys some people
lizmat yeah, you're right, I shouldn't be on IRC when grumpy
:-) 16:07
16:08 ryn1x joined 16:09 p6bannerbot sets mode: +v ryn1x
mst lizmat: it's not "ironic", it's an inevitable consequence of your ham fisted and hostile delivery of the idea. 16:10
it's bloody unfortunate, certainly, but ironic it isn't.
on the upside, given basically you're trashing in-community collaboration because you won't accept a decade old naming decision 16:11
you really have turned perl6 into the new perl5, just in terms of dysfunction rather than technology
16:13 kdr22 joined
mst and, no, what you did was linked "A should be done" to *killing perl5* in the minds of all the perl5 people who *should* have been in favour of A, and quite possibly won't be now 16:13
16:14 p6bannerbot sets mode: +v kdr22
mst you're 100% not responsible for 'all the marketing problems of perl5' though, that's just silly and hyperbolic 16:14
16:16 kdr21 left
mst lizmat: I think exactly one person complained about the opensource.com articles to me, and I told them in no uncertain terms that if they didn't like that they should offer to write some perl5 focused articles and otherwise quit whining 16:17
lizmat indeed... they welcome *anybody* writing for them... How do you think they've accepted me ? :-) 16:18
16:19 zakharyas joined 16:20 p6bannerbot sets mode: +v zakharyas
pmurias a perl 6 to perl 5 guide going the other direction could be potentially interesting ;) 16:20
mst I could publish a blog post that just has <h1>Abandon Hope</h1> repeated 100 times? :)
lizmat
.oO( just read my articles backward :-)
mst lizmat: not really, the perl5 in them is terrible :P 16:21
I actually got asked by somebody if you were intentionally making the perl5 code ugly
16:21 zakharyas left 16:22 zakharyas joined
mst note: I didn't mention this previous because for the articles' pedagogical goals it's more than close enough 16:22
lizmat I tried to be as simple / non linenoisy as possible
which BTW, also goes for the Perl 6 code
mst I don't believe I'm qualified to have an opinion on the perl6 code 16:23
16:23 p6bannerbot sets mode: +v zakharyas
lizmat In any case, if someone has comments about my Perl 5 code, please post them as comments on the site 16:24
I know some people have done that, and I have answered them
mst honestly, by "terrible :P" I mean that you kept to the bare minimum of perl5 features etc. in a way that doesn't seem to me to be wrong given the purpose of the article
but obviously wasn't how we'd teach idiomatic perl5 16:25
lizmat TIMTOWTDI :-) 16:26
mst yeah, but yours is wrong :-)
lizmat TINP (This Is Not Python)
mst seriously though I had a think about it, concluded for the purposes of the article it was fine, and convinced the person asking that that was the case, otherwise I'd've already /msg'ed you with suggestions 16:27
what perl5 people are currently actually upset about in terms of articles is that perl.com has an article on "how to use CGI.pm" which in 2018 is just *augh* 16:28
but given dnmfarrell (sp) supported Brian "nazis are left wing" Foy driving off /r/perl's one german moderator for banning an alt-right troll 16:30
I somehow don't expect him to listen to reason about anything else
lizmat well, it took me some convincing but dnmfarrell finally caved in and published the CGI article to get the heat off of me 16:32
mst hahahahahahaha
16:32 aindilis left
mst honestly though my thoughts on the CGI.pm article is "clearly I need to make people submit better things" 16:33
16:41 marmor left 16:44 AlexDaniel joined, p6bannerbot sets mode: +v AlexDaniel 16:45 aindilis joined 16:46 p6bannerbot sets mode: +v aindilis
bonsaikitten ooh, I missed some 'false left-right dichotomy' drama 16:49
mst I'm mostly just impressed at the balls to brain cells ratio required to lecture a german about the nazis 16:52
AlexDaniel mst: hmmm bots seem to be banned? 16:53
huf remember kids, when the state does stuff, that's socialism. and the more stuff the state does, the more socialist it is. 16:54
mst AlexDaniel: eh? 16:55
huf: use more 'orange';
AlexDaniel mst: committable6test You are banned from this server- Please do not … 16:56
mst augh 16:57
AlexDaniel: will look shortly, still half awake, sorry 16:59
AlexDaniel: hm. you did a restart about five hours ago? 17:31
17:34 zakharyas left
AlexDaniel mst: maybe they did reconnect by themselves for some reason, I don't know 17:40
17:40 Sgeo_ joined 17:41 p6bannerbot sets mode: +v Sgeo_
AlexDaniel yeah, bots were killed because of watchdog timeout 17:42
17:42 Sgeo left
mst right, and now I've had the connection limits increased for you 17:42
it became slightly obvious that you don't have join throttling built in
AlexDaniel should I have it? 17:43
I can probably implement it if it's needed
mst yes. joining 10+ nicks at once from a single IP address got you k-lined 17:44
AlexDaniel :)
mst I confess I do wonder why you have so many bots instead of one that can take commands 17:45
17:46 virtualsue joined
timotimo maybe more fine-grained failure states %) 17:46
AlexDaniel it's quite common for people to talk to the bot directly, without trying to remember the right command. I do agree though that some of them can be merged 17:47
17:47 p6bannerbot sets mode: +v virtualsue, virtualsue left 17:50 bisectable6 joined, ChanServ sets mode: +v bisectable6 17:51 p6bannerbot sets mode: +v bisectable6, committable6 joined, ChanServ sets mode: +v committable6
mst AlexDaniel: ok. k-line lifted but be careful. 17:51
17:51 evalable6 joined, ChanServ sets mode: +v evalable6, lucasb left
AlexDaniel mst: thank you 17:51
17:51 p6bannerbot sets mode: +v committable6
mst AlexDaniel: basically, if they all rejoin at once again, expect sigyn to eat them again currently 17:52
17:52 p6bannerbot sets mode: +v evalable6
AlexDaniel mst: OK, I see 17:52
mst I can arrange for a bit more protection
AlexDaniel I'll try to fix it, though likely after the release…
mst but, really, you shouldn't be joining 10 bots in 10 seconds
17:52 notable6 joined, ChanServ sets mode: +v notable6 17:53 reportable6 joined, ChanServ sets mode: +v reportable6
timotimo you can just flock a little file or something 17:53
17:53 p6bannerbot sets mode: +v notable6
timotimo have a little server that does nothing but accepts connections and close a connection 10s after the previous connection was closed 17:53
17:53 p6bannerbot sets mode: +v reportable6
timotimo and then the bots can try to connect to it, if it responds they wait for the connection to be closed, if not ... i guess sleep for a random amount of time? 17:53
17:53 unicodable6 joined, ChanServ sets mode: +v unicodable6
timotimo sleep for a random amount of time might be good enough anyway 17:54
17:54 releasable6 joined
AlexDaniel timotimo: another dumb solution is to just sleep for a random amount of time when starting :) 17:54
17:54 p6bannerbot sets mode: +v unicodable6, p6bannerbot sets mode: +v releasable6
timotimo that's what i meant by that last one 17:55
AlexDaniel ok just did that 17:56
17:56 ExtraCrispy left
Summertime the chance that a bunch wake up within a certain time range would be a somewhat notable chance? 17:57
El_Che On other news, there is a new pugs ticket: github.com/perl6/Pugs.hs/issues/32
AlexDaniel Summertime: yeah, we can start a party if that happens 17:58
with free klines
timotimo yeah, if you use the "wrong" probability distribution... :)
17:58 quotable6 joined, ChanServ sets mode: +v quotable6
timotimo but something like atomic decay isn't useful either, since that means the last bot may start only in like a year or two 17:58
Summertime even more fun, place bets on how many re-connect cycles it'll be before it happens 17:59
17:59 p6bannerbot sets mode: +v quotable6 18:00 xinming left 18:02 benchable6 joined, ChanServ sets mode: +v benchable6
AlexDaniel mst: I added a dumb `rand × 300` delay, hope it's good enough until I do something better 18:02
mst AlexDaniel: hopefully.
18:02 p6bannerbot sets mode: +v benchable6
timotimo hm, is that what we want, though? then the mid range of time will be most common 18:02
AlexDaniel m: .say for (rand × 300) xx 17 18:05
camelia 156.83966459995548
72.45519603056583
17.452177274343896
244.76447171712095
294.3915364432218
152.68554170150327
169.3105060114897
49.9147474009394
131.43213413352294
88.16712524686614
79.58401734941873
91.68746622576803
256.286…
AlexDaniel m: .say for ((rand × 300) xx 17).sort
camelia 78.37266103910257
94.14225398166617
99.02118344680324
108.59663474467013
115.97512491047108
122.07800998295998
130.9925127752341
132.29476172009495
186.30474524820647
189.907101893607
199.57648427497762
235.506901899008
245.616…
timotimo mhh, it's far enough apart i suppose
m: .round(0.1).say for ((rand × 300) xx 17).sort 18:06
camelia 3.6
3.7
4.1
50.9
72.6
79.6
96.2
97.7
107.2
128.1
175
192.1
258.2
258.2
262.3
289
289.9
AlexDaniel hah, well… could be better I guess
mst note, if necessary I can just boot sigyn back out, but I like the fact that she's k-lining spammers
timotimo m: .round(0.1).say for ((300.rand) xx 17).sort
camelia 3.1
28.2
42.7
56.2
70.1
79
104.7
147.1
161.7
165.7
172
196.7
249.5
250.3
262.7
275.3
292.1
AlexDaniel we can also hash the nickname of the bot so that the delay is not random!
timotimo that's a little bit more evenly distributed 18:07
18:07 kurahaupo left 18:09 kurahaupo joined
Summertime hash and take the lowest byte unsigned? all bots will be in by 255 seconds 18:10
18:10 p6bannerbot sets mode: +v kurahaupo 18:14 bloatable6 joined, ChanServ sets mode: +v bloatable6
mst I was wondering about something hashing based 18:14
18:15 p6bannerbot sets mode: +v bloatable6 18:16 coverable6 joined, ChanServ sets mode: +v coverable6 18:17 p6bannerbot sets mode: +v coverable6 18:18 greppable6 joined 18:19 p6bannerbot sets mode: +v greppable6 18:20 zakharyas joined, squashable6 joined, p6bannerbot sets mode: +v zakharyas 18:21 p6bannerbot sets mode: +v squashable6, shareable6 joined 18:22 p6bannerbot sets mode: +v shareable6 18:24 Kaiepi left, zakharyas left 18:25 Kaiepi joined 18:26 p6bannerbot sets mode: +v Kaiepi 18:27 zakharyas joined
buggable New CPAN upload: PDF-Class-0.3.0.tar.gz by WARRINGD modules.perl6.org/dist/PDF::Class:cpan:WARRINGD 18:27
18:28 p6bannerbot sets mode: +v zakharyas 18:33 statisfiable6 joined, ChanServ sets mode: +v statisfiable6 18:34 p6bannerbot sets mode: +v statisfiable6 18:37 nativecallable6 joined 18:38 p6bannerbot sets mode: +v nativecallable6 18:48 lucasb joined 18:49 p6bannerbot sets mode: +v lucasb 18:50 undersightable6 joined, ChanServ sets mode: +v undersightable6 18:51 p6bannerbot sets mode: +v undersightable6, natrys joined 18:52 p6bannerbot sets mode: +v natrys
lucasb m: my \a = 10; a := 20 # any reason to not be able to rebind a sigil-less var? 19:00
camelia 5===SORRY!5=== Error while compiling <tmp>
Cannot use bind operator with this left-hand side
at <tmp>:1
------> 3 not be able to rebind a sigil-less var?7⏏5<EOL>
lizmat lucasb: afaik, it's a syntax thing 19:02
m: use nqp; my \a = 10; nqp::bind(a,20); say a
camelia 20
lucasb ah, thanks lizmat 19:03
19:06 Sound left 19:11 leah2 left
El_Che AlexDaniel: I find figuring out which bot to use as confusing as knowing which cmd to run. 19:17
19:22 warriors joined, p6bannerbot sets mode: +v warriors, leah2 joined 19:23 p6bannerbot sets mode: +v leah2 19:25 lucasb left
moritz masak: I'm sure you remember the November wiki, right? I subscribed to the november mailing list back in the days, and created a rule in gmail to automatically label and move mails with "[november]" in the subject... 19:30
masak: now it seems that gmail has started to ignore the brackets, and moves everything with November in the subject in that old, old folder for the mailing list :-) 19:31
isn't it funny how remnants of such old projects rise from the dead? 19:32
19:34 zakharyas left 19:35 MasterDuke left
El_Che Maybe this is applicable? help.github.com/articles/archiving...epository/ 19:39
in case some want to hack on it, they just need to fork it
19:39 molaf left 19:41 domidumont left
AlexDaniel El_Che: what about github.com/perl6/whateverable/wiki ? 19:46
I've added some short descriptions 19:47
maybe we need a flowchart? :P
El_Che AlexDaniel: that's not my point
AlexDaniel yeah I get it
El_Che AlexDaniel: my point is that different bots is not clearer that subcommands :)
it may be clearer if you have around 2 or something :)
AlexDaniel we had two! 19:48
and then they multiplied
a few times
El_Che yeah, you feed them after midnight 19:49
19:55 andrzejku_ joined, p6bannerbot sets mode: +v andrzejku_ 19:57 andrzejku left, andrzejku_ is now known as andrzejku 20:03 jmerelo left 20:08 rfold left 20:11 lizmat left 20:13 lizmat joined, p6bannerbot sets mode: +v lizmat 20:16 mattp_ left 20:25 mattp_ joined 20:26 p6bannerbot sets mode: +v mattp_ 21:02 TreyHarris left 21:03 domidumont joined, TreyHarris joined, p6bannerbot sets mode: +v TreyHarris, p6bannerbot sets mode: +v domidumont
masak moritz: :) 21:13
moritz: it is, indeed.
also, software rot is a very real thing. that rule was fine until the underlying engine chose to interpret it differently. 21:14
21:16 nige left
pmurias mst: re "A should be done", do you think it's likely even likely that Perl 5 the language will be ported to other VMs? 21:18
El_Che pmurias: I don't think that's what mst is referring 21:19
21:20 domidumont left
mst pmurias: I think if we hit a point where MoarVM is running rakudo fast enough to beat the perl5 VM in benchmarks people might seriously consider it 21:24
(I know that there's the odd case where that's already true, but not a compelling number yet)
honestly though I'm happy to let that decision shake out on a technical basis, and if people associate it with killing the language that's going to interfere with any discussion of the technical merits 21:25
21:31 kensanata joined, p6bannerbot sets mode: +v kensanata 21:54 xinming joined, p6bannerbot sets mode: +v xinming 22:07 koto left 22:12 natrys left 22:17 sena_kun joined, p6bannerbot sets mode: +v sena_kun
pmurias mst: graalvm seems a more promising/exiting target to me 22:19
pmurias should look how Perlito5 java backend is doing and if it can be influenced in that direction ;) 22:20
mst pmurias: I'm not really competent to follow its progress
El_Che pmurias: their webpage reads like "we're parrot" 22:22
pmurias I haven't looked at it in a long time
El_Che: you mean grallvm?
El_Che yes, polyglot vm
pmurias El_Che: it's a parrot vm that doesn't suck
El_Che: also Oracles attempt to take over everything 22:24
El_Che Oracle has a worst reputation problem than Perl :) 22:25
pmurias dunno, evil beats dead everyday ;) 22:26
22:27 koto joined
El_Che pmurias: www.graalvm.org/docs/faq/ <-- their license info is fishy 22:27
22:28 p6bannerbot sets mode: +v koto
leont Parrot was so dumb that this had got to be better 22:28
El_Che github.com/oracle/graal/blob/master/LICENSE, seems gpl2 + classpath exception
leont: handsigh 20/20? 22:29
leont No
Whomever was dumb enough to write a VM in the 21st century that wasn't thread-safe from the ground up, should not be in the business of writing a VM.
22:29 sena_kun left
pmurias leont: wasn't the design heavily oriented to run the traditional sort of scripting languages? 22:30
which traditionally aren't very thready 22:31
leont For p5 it is a hhindsight issue. In the early 90s we didn't understand how important threads would be.
But in the early 2000s we very much did. 22:32
El_Che leont: I think python is in that boat today, despite its popularity
leont perl6 RFC1 was "Implementation of Threads in Perl" 22:33
El_Che I saw this recently, by ESR, a huge python fan: esr.ibiblio.org/?p=8161
leont It's abstract: "Perl 6 should be built around threads from the beginning"
*Its
El_Che plugs a "now you have 2 problems" joke 22:34
pmurias El_Che: re licence they have an open source version and a closed source version which contains some extra stuff , I'm not sure as it seems they don't want to talk about it
El_Che pmurias: yeah, you need to go to github to get an answer
22:35 Kaiepi left, Kaiepi joined 22:36 p6bannerbot sets mode: +v Kaiepi
pmurias El_Che: where on github are the differences between the community and enterprise editions? 22:36
leont This is the #1 lesson from the JVM. Whatever else you may think of it or Java, it got threads right, and it makes working with them far more sensible than anything popular that preceded it.
El_Che pmurias: no, the difference was on the site, on github you find the license for the free version 22:37
leont (or at least right enough, it took Java 1.5 to actually get the low-level semantics right)
pmurias El_Che: some things are also UPL licensed (the parts the nqp truffle backend interacts) 22:38
El_Che leont: java got a lot of things right early on
leont GC is the other one
El_Che threading, GCC, deployment
also, simple OO
GC (not gcc :) )
leont GC comes from early LISP, they managed to make it the standard 22:39
22:40 patrickb joined
El_Che leont: really? I didn't know that 22:40
22:40 p6bannerbot sets mode: +v patrickb, koto left
leont 1959 22:41
pmurias leont: from a language implementer stand point the biggest thing that graalvm/truffle gets right, is that it's basically a JIT writing toolkit (you write an annotated interpreter) instead of a supplied hardcoded JIT 22:43
leont That sounds remarkably helpful, yes
22:43 kensanata left
pmurias leont: so you don't run into the problem that because your language feature doesn't exactly match the provided VM feature you have to pay a horrible performance price (or do some super crazy analyses to workaround it) 22:46
22:47 movl left, khisanth_ left
pmurias leont: what is a big pain point when compiling Perl 6 to JS is that I can't tweak the V8 magic or tailor it for stuff that isn't needed for regular JS 22:56
leont Can imagine that. That's not what JS/V8 were intended for 22:57
pmurias OTOH on parrot the cool VM magic was NYI ;) 22:58
Woodi pmurias: what was that ? threads ? 22:59
23:00 khisanth_ joined, p6bannerbot sets mode: +v khisanth_
pmurias Woodi: all the JIT compiler things, like polymorphic inline caching 23:01
Woodi aha
pmurias maybe polymorphic inline caching was there at some time (I would have to check) 23:02
23:02 patrickb left
Woodi Java got GUI from the start, C# too. that's rare for new languages and gives lots of users 23:03
pmurias sleep&
23:04 pmurias left 23:08 rindolf left 23:30 Sgeo_ left, Sgeo_ joined 23:31 p6bannerbot sets mode: +v Sgeo_ 23:44 bolangi joined 23:45 p6bannerbot sets mode: +v bolangi