»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend! Set by moritz on 22 December 2015. |
|||
00:02
cpage_ left,
cpage_ joined
00:11
huggable left
00:12
grondilu left
00:21
TEttinger joined
|
|||
stevieb | me: sub a($a --> 1){if $a==1 {return Failure}}; a(1).say | 00:25 | |
m: sub a($a --> 1){if $a==1 {return Failure}}; a(1).say | 00:26 | ||
camelia | rakudo-moar 5ca43c: OUTPUT«(Failure)» | ||
stevieb | that's pretty awesome to see in the signature what the default return is on success | ||
m: sub a($a --> 1){if $a==1 {return Failure}}; a(2).say | |||
camelia | rakudo-moar 5ca43c: OUTPUT«1» | ||
timotimo | it'll be even more interesting when we can --> $foo and it'll not only declare $foo for us, but also return it from whereever we leave the routine | 00:28 | |
sortiz | stevieb, beware that those are returning the Failure type, not an instance. | 00:29 | |
stevieb | soritz: thanks. I was just testing while reading the docs. It can return either Nul or Failure, otherwise return has to be empty (or no return at all) | 00:30 | |
ie. an implicit return | |||
sortiz | timotimo, yes. I'm waiting that too. | ||
stevieb | timotimo: that'll be neat | ||
timotimo | i'm just glad nobody's saying "well volunteered!" | 00:31 | |
sortiz | It is spec'd | ||
stevieb | doc.perl6.org/type/Signature is the doc I've been waiting to get to. I've had so many questions, and this doc explains to me the majority of things I've needed to know to start writing some real initial perl6 code | 00:34 | |
00:35
yqt left
|
|||
timotimo | hm, that makes sense | 00:36 | |
signatures are a really important part of perl6 | |||
sortiz | Perl6's Signature is really cool! | ||
stevieb | yeah. For instance, I had no idea what things like `*@' meant. Instead of asking, I knew I'd hit the doc eventually. I've spent the last couple of weeks when I've had time learning about the types and methods and things, now I'll be able to start using them in more than one-liner tests | 00:37 | |
m: my %h= :foo<1>, :bar<2> | 00:48 | ||
camelia | ( no output ) | ||
stevieb | m: my %h= :foo<1>, :bar<2>; say %h | ||
camelia | rakudo-moar 5ca43c: OUTPUT«{bar => 2, foo => 1}» | ||
stevieb | that's a new way to create a hash :) | ||
00:49
abruanese joined
|
|||
BrokenRobot | m: my %h= :1foo, :2bar; say %h | 00:51 | |
camelia | rakudo-moar 5ca43c: OUTPUT«{bar => 2, foo => 1}» | ||
stevieb | now that's interesting! | 00:52 | |
so it separates at the Type...? | |||
m: my %h=:afoo, :bbar; say %h | 00:53 | ||
camelia | rakudo-moar 5ca43c: OUTPUT«{afoo => True, bbar => True}» | ||
BrokenRobot | You can only use positive Ints in that form | ||
stevieb | makes sense | ||
BrokenRobot | m: my %h = :६६६meow; say %h | ||
camelia | rakudo-moar 5ca43c: OUTPUT«{meow => 666}» | ||
BrokenRobot | m: my %h= <foo 1 bar 2>; say %h | 00:54 | |
camelia | rakudo-moar 5ca43c: OUTPUT«{bar => 2, foo => 1}» | ||
b2gills | :1foo was added for s:1st/// s:2nd// etc | 00:55 | |
stevieb | m: sub a(*%h){%h.say}; a(<a 1 b 2>); | 00:57 | |
camelia | rakudo-moar 5ca43c: OUTPUT«Too many positionals passed; expected 0 arguments but got 1 in sub a at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
b2gills | m: sub a(*%h){%h.say}; a |%( <a 1 b 2> ); | 00:58 | |
camelia | rakudo-moar 5ca43c: OUTPUT«{a => 1, b => 2}» | ||
stevieb | that's what I was just testing ;) | ||
haven't seen the pipe used like that in the docs yet though | |||
sortiz | And is cool in: .hyper(:10batch, :3degree) | 00:59 | |
b2gills | It was added in the rush to the Christmas release, so may not be docced | ||
stevieb | if it's not documented, could you please explain what it's doing? | 01:00 | |
sortiz | It is documented in doc.perl6.org/type/Capture | 01:01 | |
stevieb | I could play with it and add it into the docs when I get to the part it belongs in | ||
soritz: thanks | |||
sortiz | The reverse of Signature. | ||
parabolize | alsa doc.perl6.org/language/operators#prefix_| | ||
timotimo | hyper and race are still broken, yeah | ||
parabolize | it flattens things | ||
timotimo | it's pretty much the next thing on jnthn's list | ||
stevieb | been fun all, gotta go. cheers! | 01:02 | |
sortiz | timotimo, semi broken, seems to be working well in JsonC. | ||
timotimo | oh? | ||
sortiz | I'm using at unmarshall so is 2x faster than Json::Fast. | 01:03 | |
timotimo | what, only? | ||
maybe it's suffering from having too many calls to C functions? | 01:04 | ||
sortiz | Yep. | 01:05 | |
The pure parser is 200x | 01:06 | ||
timotimo | ah, yeah, i expected at the very least 100x | ||
of course i'm also hopeful for future improvements to make JSON::Fast competitive. both improvements in moar&friends and in JSON::Fast. | 01:07 | ||
sortiz | Parsing panda's projects.json is 0.005056s vs .3871236s | 01:08 | |
timotimo | some of the decisions i made in JSON::Fast in the past may now be obsolete and some code might want to be changed to perform better again | 01:09 | |
01:10
molaf left
|
|||
ugexe | nine: because its nearly 3 months stale now, and all my offers to rewrite it to get merged have been ignored. i was told to implement it and i did, and then was told it was waiting one change after another. i was willing to do a little extra work to work around new conflicts, but it sure seems it doesnt work the other way around | 01:19 | |
01:22
molaf joined
01:28
adu joined
|
|||
mst | ugexe: would this be better being a toolchain conversation so it doesn't get broken up? | 01:28 | |
01:28
ssotka left
|
|||
adu | what is a toolchain conversation? | 01:32 | |
ugexe | mst: i found there was no point in the toolchain channel. i'd wager the logs are primarily myself bringing up problems/ideas with little to no feedback and certainly no path forward on anything | 01:33 | |
mst | ugexe: I've been reading back every so often and there seems to be discussion | ||
adu | ideas are hard to come by these days | 01:34 | |
mst | ugexe: if you feel like you're being ignored, as I said before, please do raise the issues in there and ping me, given I've done quite a lot of toolchain stuff and can maybe help deconfuse things | ||
ugexe: I offered this when I first helped create the channel and you've never taken that offer up; I don't entirely understand how you can claim there's no point to it when you didn't take up the offer that was part of the point of having it | 01:37 | ||
ugexe | mst: there is on confusion. its in a constant state of waiting on precomp change X, then precomp change Y, things that have little to do with the PR i submitted other than a few conflicts that would need to be fixed | 01:38 | |
is no | |||
dalek | c: fe7627b | util++ | doc/Type/ (2 files): Fix typos. |
||
mst | ugexe: so tag me in in the appropriate venue, and we can discuss that | 01:39 | |
adu | ugexe: I have nothing to do this weekend, you can always talk to me | 01:43 | |
01:45
ilbot3 left
|
|||
ugexe | adu: while id prefer to talk over drinks, what i need is someone with a commit bit | 01:46 | |
adu | hrm | ||
01:46
ocbtec left
|
|||
adu | ugexe: I have a commit bit | 01:47 | |
ugexe: I am andydude on github | |||
01:47
ilbot3 joined
|
|||
ugexe | adu: oh ok. well for context this is the PR github.com/rakudo/rakudo/pull/729 which has multiple blessings as it is | 01:48 | |
adu | ugexe: ok, so let me get this straight, every path is relative to "resources/" except that one, and that's what you're fixing? | 01:53 | |
01:54
vendethiel joined
|
|||
ugexe | adu: while it does fix some path related bugs in the current implementation, its primarily turning Distribution into a role interface so that more specialized implementations can simply be passed in. its based almost entirely on the S22 design doc | 01:55 | |
adu | ugexe: what happened to all the "has"s in src/core/Distribution.pm? | 01:56 | |
01:57
ssotka joined
|
|||
ugexe | adu: they are redundant. the current Distribution.pm is a struct thats essentially the meta6 file | 01:57 | |
adu | ugexe: so you're turning a class into a regular hash, and providing the same features with a role | ||
ugexe | in my implementaiton those are simply accessed directly from `method meta` | ||
it provides the same features for the core, but allows it to be expanded by anyone else. then you could pass in a Distribution::Deb or Distribution::Tar and rakudo would be able to understand how to install them | 01:59 | ||
you can pass in a Distribution that accesses the files in a streaming fashion over a socket | 02:01 | ||
adu | ugexe: I like the sound of that, but how do you guarantee that the hash always contains "depends", and guarantee that it's an array? | ||
ugexe | it doesn't have to contain `depends`. as far as enforcing the type, its broken as it is. its assigned via Distribution.new(|%hash) which will give you ( [1, 2, 3] ) instead of (1, 2, 3) | 02:04 | |
eventually you could create a META6 role to enforce those things | |||
02:06
johnjohn101 is now known as Guest19630
|
|||
adu | ugexe: is that what S22 says? | 02:06 | |
ugexe | but you could also enforce those things inside `method meta`, as the meta data is not accessed by the attribute %!meta/$!meta but through the interface method. the attribute just holds the original data to be interpretted | ||
s22 says depends is optional | 02:07 | ||
adu | oh ok | ||
ugexe | the ([]) vs () format is a side effect of the binding nature of BUILD + |%hash | ||
adu | name, version, provides looks mandatory, does "role Distribution" enforce that? | 02:08 | |
adu is a big fan of coding to the spec | 02:09 | ||
I've been using HAR for about a year now, and I'm still astonished by the fact that the author of the official HAR viewer requires the "pages" attribute when the spec he also wrote says that "pages" is optional | 02:10 | ||
ugexe | not yet. something i brought up in toolchain a few times was that some things need to be broken. version for instance. because currently it looks for `ver` or `version`. or for auth it uses `auth` or `authority` or `author`. its agreed these need to be broken and use a specific thing, but the discussion on what to break never goes far. nevertheless that is a thing that can be added *onto* this | 02:12 | |
a problem right now is we are moving on 1 direction, precomp. we could be moving in 2 directions though, distribution/meta and precomp | |||
adu | can you explain what you mean by "precomp? | 02:13 | |
also, what do you mean by the "distribution/meta" direction? | 02:14 | ||
ugexe | im not sure i even know anymore. originally the pr was held back while changes to precomp were in the works because the work in that fork would conflict with the pr. but those changes have happened as far as i know | 02:15 | |
one half is the distributors portion (how distributions are packaged), one half is the consuming portion (rakudo). you have an interface that rakudo understands, then your distributions can fufill that in any number of ways. this means you can have your standard perl6 style distro, but also have one that can read from a .deb, or one that reads directly from a .tar or github etc | 02:17 | ||
adu | ugexe: I would be happy to commit it if you could guarantee the items listed as "mandatory" in S22 | 02:18 | |
ugexe | adu: i can easily accommodate required fields | 02:19 | |
but there does have to be default values in some cases, like for versions. a Distribution representing a basic path layout without a meta6 file (like perl5, and CompUnit::Repository::FileSystem can do) is version * | 02:22 | ||
02:24
noganex joined
02:27
noganex_ left
|
|||
adu | ugexe: ok, so is there still a debate between $.name as an attribute and $.name() as a method? | 02:30 | |
ugexe | adu: it needs to be called from `method meta`. so $dist.meta<name> (this is how the spec describes accessing meta data). but this also makes it so you can make your own `class Distribution::XXX does Distribution { method meta(...) { ... }; method name { self.meta<name> }; }`. or set an attribute $.name from self.meta<name>. this allows you to pass in the implementation for accesing the meta data itself (for | 02:35 | |
instance, it might use the github API to make a net request to raw meta6 file) | |||
gist.github.com/ugexe/8684abcc89aa...st-pl6-L58 for instance this allows a Distribution from a .tar file without extracting the entire thing to the file system. and it doesn't have to extract anything at all until the actual methods are called | 02:38 | ||
adu | ah ok I see | 02:39 | |
so how do you indent on guaranteeing name, version, description, etc? | |||
ugexe | or via network access gist.github.com/ugexe/1026b2730abe...st-pl6-L39 | 02:40 | |
adu | s/indent/indend/ | ||
ugexe | im thinking a Meta::Strict role where when composed it will die unless self.meta<name> etc | 02:41 | |
adu | yeah, errors are good | 02:43 | |
dalek | c: 4436247 | (Daniel Green)++ | doc/Type/IO/ (2 files): Add documentation for the new IO.mode method This requires Rakudo PR #773, which implements RT #125489 |
||
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=125489 | ||
dalek | c: d857a09 | (Daniel Green)++ | doc/Type/IO/Path.pod: Add some more explanation (labster++) |
||
c: 5762144 | (Daniel Green)++ | doc/Type/IO/Path.pod: Add an example of using the ourput of IO.mode as input to IO.chmod |
|||
c: d838de5 | lizmat++ | doc/Type/IO/ (2 files): Merge pull request #565 from MasterDuke17/RT125489 Add documentation for the new IO.mode method |
|||
02:44
addison left
02:45
skids joined
|
|||
dalek | c: 34b0873 | (Zoffix Znet)++ | doc/Language/testing.pod: Remove custom operators work-around prose for cmp-ok It now fully supports user-defined operators passed as Str |
03:00 | |
03:02
adu left
|
|||
dalek | c: 29c0955 | (Zoffix Znet)++ | doc/Language/testing.pod: Fix typo |
03:04 | |
ugexe | for the record all those demo Distribution::<...> implementations worked for installs at one time. they aren't theoretical | 03:05 | |
03:21
skids left
03:25
wnh_ left
03:32
kid51 left
04:01
kaare_ joined
04:06
Cabanossi left
04:10
Cabanossi joined
04:28
buharin joined
|
|||
buharin | hey, I just thinking about infix& | 04:34 | |
why we call this infix | 04:35 | ||
the examples use has &!callback | |||
it looks more like prefix | |||
however ! is prefix | 04:36 | ||
04:36
khw left
04:42
xinming_ joined
04:45
xinming left
|
|||
geekosaur | buharin, wrong & | 04:57 | |
infix:<&> would be the junction operator, not the code sigil | |||
buharin | oh ok | 04:59 | |
geekosaur | (I should probably say Callable sigil) | 05:02 | |
buharin | geekosaur, do you know what's this proto sub infix:<===>(Any, Any)? | 05:22 | |
is it something probably operator implementation in this case | 05:23 | ||
Woodi | ugexe++ # lots of work | 05:34 | |
05:39
araujo joined,
araujo left
05:40
araujo joined
|
|||
Woodi | ugexe: looks it wasn't just lack of time when jnthn++ was happy to not do Repos code :) and then nine++ started a thing so he is a bit like a designer/manager on that feature so usually it is good to make common plan or something... such things aren't formalized in open source but in some % it works like that. but now I see just two innocent sides blaming other side... and two almoust 100% complete | 05:44 | |
implementations ? | |||
05:57
buharin left
06:10
CIAvash joined
06:12
buharin joined
|
|||
Woodi | m: my @l = <a b c>; @l.map: { .say xx 2 } | 06:16 | |
camelia | rakudo-moar 880f5c: OUTPUT«aabbcc» | ||
Woodi | err, it's not working like that for me... | ||
nine | ugexe: to be clear: the only think keeping PR 729 from getting merged is that it is backwards incompatible with the modules installed before it's merge. I thought you'd fix that (probably using the repo upgrade mechanism that has since been merged) and update the PR. | 06:22 | |
ugexe: I think I've said multiple times how much I'm looking forward to that PR being merged as it cleans up a lot of organically grown code and also makes my work simpler and that I'm glad you've taken it on because you obviously have thought it through very well. | 06:23 | ||
ugexe: Also, you could have requested a commit bit for yourself anytime. All you'd have to do is send in some signed form to the Perl Foundation. | 06:24 | ||
06:28
xinming_ left
06:29
xinming joined
06:31
wamba joined
|
|||
jdv79 | is that still really necessary? | 06:33 | |
06:35
buharin left,
spider-mario joined
06:37
Xliff joined
|
|||
nine | jdv79: I think so | 06:38 | |
06:49
ssotka left
07:03
buharin joined
07:04
RabidGravy joined
07:09
rkr joined
07:11
rkr left
07:13
grondilu joined
07:14
firstdayonthejob joined
07:17
mayuresh joined,
FROGGS joined,
buharin left
|
|||
mayuresh | hello all :) | 07:17 | |
07:18
mayuresh left
|
|||
FROGGS | o/ | 07:19 | |
07:19
jack_rabbit left
07:20
jack_rabbit joined
07:27
rurban_ joined
|
|||
stmuk | www.youtube.com/watch?v=t-hZdeR7oVM <=- talk about using Perl 5 to promote 6 | 07:28 | |
07:28
girafe joined
|
|||
stmuk | also www.youtube.com/watch?v=Fv42f7VZffE "Parallel Crawler in Perl6 and Go" - Jader Dias | 07:29 | |
07:33
sortiz left
07:34
domidumont joined
07:35
timotimo joined
07:39
domidumont left
07:40
domidumont joined
07:43
rindolf joined
07:46
kaare_ left
07:50
lizmat left
07:52
firstdayonthejob left
07:53
lizmat joined
07:55
girafe left
07:57
domidumont left
|
|||
RabidGravy | boom! | 07:57 | |
08:06
jjido joined
08:09
eroux joined
08:10
rindolf left
08:11
huggable joined
08:17
cpage_ left
08:22
jjido left
08:25
buharin joined
08:30
domidumont joined
08:31
mr-foobar joined
08:33
eroux left,
eroux joined
08:35
darutoko joined,
domidumont left
08:40
buharin left,
FROGGS left
08:41
rindolf joined
08:43
bjz joined
08:45
bjz_ left
08:49
eroux left
08:51
aries_liuxueyang left
08:53
aries_liuxueyang joined
09:00
cpage_ joined
09:25
cpage_ left
09:31
Zero_Dogg left
09:32
Zero_Dogg joined
09:37
setty1 joined
09:39
TEttinger left
09:57
buharin joined
10:05
jjido joined
10:07
jjido left,
buharin left
10:12
jack_rabbit left
10:15
araujo left
10:18
araujo joined
10:24
buharin joined
10:27
FROGGS joined
10:29
shibly joined,
shibly left
10:34
buharin left
10:44
bjz left
10:45
bjz joined
10:47
wtw_ is now known as wtw
11:03
kid51 joined
11:17
kurahaupo joined
11:26
jonadab left
11:30
buharin joined
11:33
vibha joined
11:35
kurahaupo_ joined,
jjido joined
11:36
kurahaupo left
11:40
ChoHag left
11:42
ChoHag joined
11:46
kurahaupo_ left
11:48
ChoHag left
11:49
kurahaupo joined
11:50
aries_liuxueyang left
11:51
ocbtec joined
11:55
khw joined
11:56
ChoHag joined,
kurahaupo left
11:57
buharin left,
aries_liuxueyang joined
12:04
_mg_ joined
12:11
huggable left,
kurahaupo joined
12:14
Zoffix joined
|
|||
Zoffix | ab5tract_, ping | 12:14 | |
12:18
kurahaupo left
12:19
kurahaupo joined,
kurahaupo left
|
|||
Zoffix | diakopter, would you like `diakopter` or your real name in Rakudo release credits? | 12:21 | |
ab5tract_, same Q to you. | 12:22 | ||
the CREDITS file has info but the tool picks up nicknames and I'm unsure if that's on purpose :) | |||
12:23
skids joined
12:25
_mg_ left
12:27
jjido left
12:29
yqt joined
12:46
rgrinberg joined
12:50
rgrinberg left
12:51
rgrinberg joined
|
|||
Zoffix | I gotta move forward with what I'm doing, but if you wish to amend the results for future stuff, please modify entries in github.com/rakudo/rakudo/blob/nom/CREDITS | 13:04 | |
13:04
Zoffix left
13:06
kaare_ joined
13:07
tbrowder_ joined
|
|||
tbrowder_ | mornin' p6 people | 13:08 | |
13:08
pierrot left,
pierrot joined
13:09
pierrot is now known as Guest74224,
aries_liuxueyang left
|
|||
tbrowder_ | I have another doc pull request for checking: <github.com/perl6/doc/pull/603>; Zoffix I know is interested, and it isn't trivial | 13:09 | |
skids | man the web is slow (some cdn is having issues I guess) | 13:10 | |
13:12
aries_liuxueyang joined
|
|||
BrokenRobot | I was interested because someone asked for rakudo ENV vars and I couldn't find them on the doc site. | 13:13 | |
Kinda busy today so I won't review :) | |||
.oO( forgiveness > permission ) |
|||
vis-a-vis mergin :P | |||
13:16
domidumont joined
13:18
MasterDuke_ left
13:20
Sgeo left
13:29
sammers joined
|
|||
sammers | hi all | 13:30 | |
is there a simple way to copy a directory and all of its contents to a new directory? | |||
skids wonders what he has to nuke to upgrade months old rakudo | 13:31 | ||
moritz | the install dir | ||
maybe also ~/.perl6/precomp | |||
dogbert17 | hello #perl6 | 13:36 | |
13:36
tbrowder_ left
|
|||
dogbert17 | the Role Baggy contains a method 'default' which simply returns zero. does anyone know why it's there? | 13:37 | |
13:47
mr-fooba_ joined
|
|||
dalek | c: d3dc9f7 | (Jan-Olof Hendig)++ | doc/Type/Baggy.pod: Added docs for Baggy.default |
13:48 | |
13:49
mr-foobar left
|
|||
skids | Yay 4 months and none of my modules got broken :-) | 13:53 | |
13:56
domidumont left
14:03
aries_liuxueyang left
14:04
setty1 left
14:05
aries_liuxueyang joined
|
|||
sammers | does anyone know of a good watch / supply example? | 14:07 | |
ugexe | nine: i mailed that form months ago, and im not sure if they got it or not because there is only 1 person who can give out commit bits and they are not really around anymore | 14:14 | |
nine | ugexe: oh yes, been there :/ Took quite a while for me, too. Coke can possibly help | 14:15 | |
psch | [Coke] or perlpilo1 iirc | 14:19 | |
at least if i'm not misremembering the latter to have been PerlJam | |||
and yeah, took about three or four months for my commit bit | |||
the problem isn't really the commit but, but the paperwork in TPF afaik | 14:20 | ||
14:25
yqt left
14:29
Actualeyes joined
|
|||
awwaiid | sammers: cp -av olddir newdir # copy files | 14:33 | |
dalek | c: 4aee715 | (Jan-Olof Hendig)++ | doc/Type/Baggy.pod: Added docs for Baggy.Set |
||
sammers | thanks awwaiid | ||
awwaiid | sammers: the -a will keep all the permissions and copy sub-directories, the -v will tell you the name of the files it is copying | ||
sammers | ok, is there a way to do this in p6? or just use shell? | 14:34 | |
awwaiid | all things can be done in p6 :) . Guess it depends on what you're doing ... but qx{ cp ... } is an easy way to do it without reading any docs :) | 14:35 | |
sammers | yeah, thanks | 14:36 | |
awwaiid | sammers: looks like doc.perl6.org/routine/copy will at least do one file. Maybe combine that with File::Find. But that sounds like work. | 14:37 | |
14:39
aries_liuxueyang left
|
|||
sammers | yeah, that is all I could find. | 14:40 | |
thanks | |||
14:41
aries_liuxueyang joined
|
|||
nine | Maybe we could speed up the commit bit part. Should be enough if the one handing out the bit has seen the signed paper. No need to wait for TPF to acknowledge receiving it. | 14:46 | |
14:49
skids left
14:56
rgrinberg left
14:58
AlexDaniel joined
|
|||
AlexDaniel | tbrowder: it is non-trivial indeed | 14:59 | |
Woodi | @l = slurp $file; don't create lines by default now ? | 15:04 | |
gfldex | m: my %h; say so %h<foo>; sub f (%h where %h<foo>) { say 'hit' }; f(%h); | ||
camelia | rakudo-moar f19241: OUTPUT«Falsehit» | ||
gfldex | why does it do that? | ||
AlexDaniel | Woodi: what about slurp($file).lines ? | 15:05 | |
gfldex | m: my %h; say so %h<foo>; sub f (%h where { %h<foo>:exists }) { say 'hit' }; f(%h); | ||
camelia | rakudo-moar f19241: OUTPUT«FalseConstraint type check failed for parameter '%h' in sub f at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
AlexDaniel | or lines slurp $file | ||
Woodi | AlexDaniel: that work :) but it is strange change from v5... | 15:06 | |
AlexDaniel | Woodi: perhaps a better way to do it is ‘file’.IO.lines | 15:07 | |
Woodi | maybe | ||
AlexDaniel | Woodi: I don't remember 「slurp」 in perl 5 so I'm not sure what are you talking about ;) | ||
gfldex | m: my %h = foo => True; say so %h<foo>.defined; sub f (%h where so %h<foo>) { say 'hit' }; f(%h); %h = (); f(%h) | 15:08 | |
camelia | rakudo-moar f19241: OUTPUT«TruehitConstraint type check failed for parameter '%h' in sub f at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
Woodi | AlexDaniel++ : .lines works, thanx | ||
15:09
rurban_ left
|
|||
AlexDaniel | . | 15:10 | |
stevieb | AlexDaniel: Woodi may be speaking of File::Slurp | 15:13 | |
AlexDaniel: where you can import the slurp() function which is an alias for read_file(): metacpan.org/pod/File::Slurp | 15:14 | ||
15:15
Actualeyes left
15:16
firstdayonthejob joined
|
|||
Woodi | stevieb: I think in Perl5 $lines = <$fh>; was doing .lines... | 15:16 | |
mst | in perl5 you'd need @lines to get all lines | ||
awwaiid | and chomp | ||
mst | stevieb: nobody should ever use File::Slurp - it's completely broken | 15:17 | |
Woodi | oops, yea, s/\$/@/ :) | ||
mst | stevieb: you wanted File::Slurper or IO::All or Data::Munge or Path::Tiny | ||
stevieb | mst: I know. I'm just thinking that's what he may have been thinking of | ||
mst | Woodi: ^^ | ||
stevieb: notice I highlighted him as well to make sure you both saw the recommendations | |||
Woodi | mst: I wanted <> :) | ||
stevieb | to slurp an entire file in perl5 into a scalar, you need to set $/ | ||
mst | my $data = do { local (@ARGV, $/) = $file; <> }; | 15:18 | |
15:18
lizmat left
|
|||
Woodi | mst: why so complicated ? | 15:19 | |
AlexDaniel | because perl 5 | ||
Woodi | ah, right, $line = <> gives just one line... | ||
stevieb | yes, the first line | 15:20 | |
15:22
ssotka joined
|
|||
Woodi | anyway, @a.pick xx 300; gives me string with ' ...)' ending :) not very *nixy :) | 15:22 | |
psch | Woodi: &say puts the ..., not &infix:<xx> | 15:24 | |
well, or camelia | |||
Woodi | psch: but how to use perl6 script in Unix pipeline ?? | ||
no, sh too | |||
psch | Woodi: don't use &say, but &print? | ||
geekosaur | dpm | 15:25 | |
don't use say for real output | |||
say uses .gist to give a more compact but incomplete view | |||
it's convenient but not correct if you need full output | |||
psch | Woodi: in general, you don't want &say for production code | ||
AlexDaniel | actually, you probably want 「put」 | 15:26 | |
geekosaur | (this is a difference from perl5, where say is just print with newline appended) | ||
psch | Woodi: if you want &print but with appended \n i think that's what &put is for | ||
Woodi | seriously ? never (seriously) heard about it :) | 15:27 | |
15:28
leont joined
|
|||
Woodi | p[rin|u]t @a.pick, "\n" xx 300 gives lots of \n :) | 15:28 | |
psch | Woodi: afaik, every single bit of documentation pertaining to &say mentions it calling .gist on its arguments | 15:29 | |
Woodi: the two args to &print or &put you're giving are (1) @a.pick (2) "\n" xx 300 | |||
Woodi: so, yes, it will print approximately 300 newlines | |||
m: $*OUT.nl-out = "one newline\n"; print "foo\n"; put "foo\n" | 15:30 | ||
camelia | rakudo-moar f19241: OUTPUT«foofooone newline» | ||
psch | m: $*OUT.nl-out = "one newline\n"; put "foo", "\n" xx 10 | 15:31 | |
camelia | rakudo-moar f19241: OUTPUT«foo         one newline» | ||
Woodi | psch: I know about say/print, .gist/.perl difference... just print [email@hidden.address] xx 300 was printing lots of .pick... | ||
geekosaur | need {} to expand an expression instead of just a variable | ||
psch | Woodi: yes, because @ and . don't interpolate in "" | 15:32 | |
m: my @a = ^10; say "@a" | |||
camelia | rakudo-moar f19241: OUTPUT«@a» | ||
geekosaur | scalar variable | ||
psch | m: my $x = "foo"; say "$x.gist" | ||
camelia | rakudo-moar f19241: OUTPUT«foo.gist» | ||
gfldex | m: my @exclude = "404.pod", "homepage.pod"; dd so '../404.pod'.ends-with(any @exclude); | ||
camelia | rakudo-moar f19241: OUTPUT«Bool::True» | ||
gfldex | junctions++ | 15:33 | |
geekosaur | perl5 will expand @ but you need a hack like @{[...]} for anything more complex | ||
psch | we only expand @ with any circumfix:<[ ]> | ||
as in, zen slice, single elem, or range | |||
Woodi | how far ago "{code}" was specced ? | ||
psch | Woodi: probably 10 years or so | ||
geekosaur | fairly early on, yes | 15:34 | |
psch doesn't want to dig through specs history | |||
15:34
Actualeyes joined
|
|||
Woodi | m: my $a = 'a'; say "$a" | 15:34 | |
camelia | rakudo-moar f19241: OUTPUT«a» | ||
psch | m: my @a = ^10; say "@a" | 15:35 | |
camelia | rakudo-moar f19241: OUTPUT«@a» | ||
psch | m: my @a = ^10; say "$@a" | ||
camelia | rakudo-moar f19241: OUTPUT«0 1 2 3 4 5 6 7 8 9» | ||
psch | m: my @a = ^10; say "@a[]" | ||
camelia | rakudo-moar f19241: OUTPUT«0 1 2 3 4 5 6 7 8 9» | ||
Woodi | everyday man lerns something :) | 15:36 | |
15:36
ssotka left
|
|||
psch | Woodi++ | 15:36 | |
Woodi | *learns? :) | ||
psch | yeah :) | ||
Woodi | btw. we have .^remove_method in Perl6 reflection ? | 15:37 | |
psch | how's that supposed to work | ||
i mean | |||
imagine 'BEGIN Any.^remove_method: ".perl"' | 15:38 | ||
gfldex | that would produce a runtime error because methods wont be inlined | ||
psch | (1) what exactly does that mean for children of Any that have their own .perl (2) what happens with code that gets imported and relies on Any.perl | ||
Woodi | psch: I just wanted do some BUM :) /me was reading about object databases :) | 15:39 | |
15:39
vibha left
|
|||
gfldex | children that implement their own .perl would have them called | 15:39 | |
psch | Woodi: what's BUM? | 15:40 | |
Woodi | BOOM in English probably :)\ | ||
psch | ...so "break things for fun and insight"? | ||
gfldex | the behaviour of the program will be come unpredictable (seen from a human standpoint) but if that's what you want ... | ||
psch | like, fsck shut up | ||
Woodi | yea. but just got insight :) | 15:41 | |
psch | right. i mean, you could probably emulate it with reaching into the method cache via something in MROMethodDispatch or so in the MOP | ||
(emulate .^remove_method, that is) | |||
but yeah, as gfldex says, it'll probably turn into a huge mess and no one knows what's happening anymore | 15:42 | ||
Woodi | nah, no .remove_method is ok for sanity :) | ||
15:48
CIAvash left
15:50
CIAvash joined
|
|||
parabolize | pygments has no tests for the Perl6Lexer? | 15:55 | |
I think I found a error in the lexer | 15:56 | ||
gist.github.com/parabolize/5016122...34e47c4d9e | |||
you can see it in the first code example here doc.perl6.org/language/functions#De..._Operators | 15:57 | ||
15:58
AlexDaniel left
|
|||
parabolize | it sees the < ... > pattern and ignores the stuff between | 15:59 | |
dalek | c: 3e2bdbd | (Jan-Olof Hendig)++ | doc/Type/Baggy.pod: Added docs for Baggy.SetHash |
16:02 | |
16:05
leont left
16:11
huggable joined
|
|||
BrokenRobot | "I just wanted do some BUM" sounds so very wrong in English :P | 16:15 | |
16:25
girafe joined,
yqt joined
16:28
domidumont joined
16:31
kurahaupo joined
16:47
zakharyas joined
|
|||
dalek | c: fa97bfb | parabolize++ | doc/Language/functions.pod: fix statement terminator in example |
16:51 | |
17:07
zakharyas left
17:09
[particle] joined
17:14
[particle] left
17:19
yanmc joined
17:20
jjido joined
17:29
Actualeyes left
17:39
girafe left
17:47
setty1 joined
|
|||
dalek | Heuristic branch merge: pushed 18 commits to doc by zoffixznet | 17:49 | |
c: ad40c32 | (Zoffix Znet)++ | doc/HomePage.pod: Reorder item list |
17:50 | ||
c: 8f72afd | (Zoffix Znet)++ | doc/Programs/00-running.pod: Mention \ isn't part of the option |
17:52 | ||
17:53
Zoffix joined
|
|||
Zoffix | tbrowder, this kinda sucks, since 75% of those pages are empty: imgur.com/kU6dCMu | 17:54 | |
I'd also rename the 'Perl 6' item in there to 'Rakudo' or something | |||
By sucks I mean LTA. Maybe the empty files can be tossed for now. Or is there plan to fill them soon? | 17:55 | ||
17:56
buharin joined
17:59
ssotka joined
18:03
yqt left
|
|||
stmuk | there should be debugging docs at least | 18:04 | |
I'll quickly add some unless someone else is? | 18:08 | ||
18:09
buharin left
18:10
rurban_ joined
18:12
buharin joined
|
|||
dalek | c: 6824d88 | (Steve Mynott)++ | doc/Programs/01-debugging.pod: some very basic pointers to rakudo debuggers |
18:20 | |
stmuk | I can't think of anything useful to quickly add to either 02 or 03 there | 18:22 | |
Zoffix: maybe delete the other two for now?? | 18:23 | ||
Zoffix | +1 | ||
dalek | c: 8ca211d | (Steve Mynott)++ | doc/Programs/0 (2 files): delete for now |
18:25 | |
tony-o | i know, he complains about not having a PR to fix XYZ and then you commit it and he does one of two things; he copies and pastes the code into his own commit -or- he ignores the PR long enough for it to be a problem to merge and then just doesn't bother with it | 18:28 | |
Zoffix | ? | 18:29 | |
tony-o | wrong channel | 18:30 | |
18:31
yqt joined
18:37
jojotus joined,
jojotus left
|
|||
yanmc | I'm trying to give p6 a try and am keeping a list of my confusion where applicable; may or may not be useful.. | 18:39 | |
tony-o | feel free to ask questions yanmc | 18:40 | |
yanmc | thanks! I'll give it a college try first | 18:41 | |
timotimo | cool! | ||
that'll surely be a good piece of data points for our documentation team, as well as for improving error messages and such | |||
masak .oO( he's keeping a list; he's checking it twice ) | 18:42 | ||
good Saturday, #perl6 | |||
timotimo | greetings masak | ||
gfldex .oO( Please gist your confusion! ) | 18:43 | ||
tony-o | yanmc: you can run one liners in this channel using: 'm: <code>' | 18:46 | |
m: 'sup yanmc'.say | |||
camelia | rakudo-moar f19241: OUTPUT«sup yanmc» | ||
yanmc | cool :) | 18:47 | |
18:51
jjido left
18:52
jjido joined
|
|||
stevieb | yanmc: I just started as well, and have been compiling a list of the various subtleties as I tredge through the docs reinforcing what I'm learning by typing some of it out: github.com/stevieb9/scripts/blob/m...arning.txt | 18:56 | |
18:57
CIAvash left
18:58
girafe joined
19:03
jack_rabbit joined,
jjido left
|
|||
timotimo | .tell MasterDuke unfortunately the core dump doesn't actually give me any stack traces or anything inside :( | 19:04 | |
yoleaux | timotimo: I'll pass your message to MasterDuke. | ||
gfldex | is the trait `is nodal` a implementation detail? There seam to be no direct test for that trait in roast but it is checked if some operators/methods are marked as such. | 19:06 | |
timotimo | oh, really? no tests? | 19:07 | |
it's a part of how hypers work | |||
19:09
webstrand joined
|
|||
webstrand | I'm getting an error, "Annotation segment overflows end of stream", whenever I try to execute a script containing use Test. A script containing nothing but use Test is sufficient to cause the error. How do I fix this? | 19:10 | |
timotimo | can you give us your exact perl6 --version please? | 19:11 | |
gfldex | it may be that the test was omitted because the trait in itself doesn't really do anything | 19:13 | |
webstrand | timotimo: This is Rakudo version 2016.05 built on MoarVM version 2016.05 implementing Perl 6.c. | 19:14 | |
dalek | c: 6caddd5 | (Wenzel P. P. Peppmeyer)++ | doc/Language/typesystem.pod: add `is nodal` TODO |
19:17 | |
19:17
[particle] joined
|
|||
timotimo | hm, ok, it's the released version ... but that error is strange | 19:18 | |
Zoffix | webstrand, does runnin this cause it too? perl6 -Mtest -e '' | ||
webstrand, does runnin this cause it too? perl6 -MTest -e '' | |||
webstrand | Zoffix: yep | 19:19 | |
Zoffix | :S | ||
webstrand, what OS/achitecture? | 19:20 | ||
timotimo | well, the error comes from loading a .moarvm file | ||
Zoffix | Oh | ||
webstrand | what's another module thats packaged in rakudo (not star) | ||
Zoffix | webstrand, NativeCAll | ||
timotimo | NativeCall | ||
heh. | |||
Zoffix can't spell for shit today | |||
m: use NativeCall; sub fork is native {}; fork; say 42 | |||
camelia | rakudo-moar f19241: OUTPUT«4242» | ||
webstrand | well, -MNativeCall produces another error: Attempt to read past end of string heap when reading string | 19:21 | |
timotimo | "lib" used to be a module, but it's a compiler-builtin pragma nowadays | ||
webstrand | Zoffix: archlinux/x86_64 | ||
timotimo | could it be your files got truncated or corrupted? | ||
webstrand | its possible. I just built the packages though | 19:22 | |
timotimo | can you package up your install/ and send it our way? | ||
dalek | c: b660678 | (Wenzel P. P. Peppmeyer)++ | doc/Type/Any.pod: state that sort returns a new list |
19:23 | |
webstrand | timotimo: That would be /install from rakudo? | 19:24 | |
timotimo | yeah, should be | 19:25 | |
masak .oO( I was gonna call my module NativeCall::Stupid, but I eventually went with NaïveCall ) | 19:28 | ||
dalek | c: 06cd14d | (Wenzel P. P. Peppmeyer)++ | doc/Type/Signature.pod: fix markup mixup |
19:29 | |
19:30
darutoko left
|
|||
dalek | c: 1d028e1 | (Wenzel P. P. Peppmeyer)++ | doc/Language/functions.pod: link from functions to Routine |
19:33 | |
Zoffix | Oh, almost forgot. tbrowder what are all the F<> things in here? Is that some POD tag that's supposed to work and isn't? docs.perl6.org/programs/00-running#..._VARIABLES | 19:36 | |
webstrand | timotimo: I think this is what you're wanting: www.dropbox.com/s/elbq5rc5of5f0qe/...ar.xz?dl=0 | ||
19:39
travis-ci joined
|
|||
travis-ci | Doc build failed. Wenzel P. P. Peppmeyer 'fix markup mixup' | 19:39 | |
travis-ci.org/perl6/doc/builds/138619415 github.com/perl6/doc/compare/b6606...cd14d9b851 | |||
19:39
travis-ci left
|
|||
timotimo | webstrand: thanks, maybe i can find something out | 19:40 | |
it'd be nice if you could grab a rakudo from git and verify if it's still broken? | 19:41 | ||
webstrand | sure | ||
19:42
travis-ci joined
|
|||
travis-ci | Doc build failed. Wenzel P. P. Peppmeyer 'link from functions to Routine' | 19:42 | |
travis-ci.org/perl6/doc/builds/138619787 github.com/perl6/doc/compare/06cd1...028e11fe01 | |||
19:42
travis-ci left
19:43
domidumont left
|
|||
Xliff | What is the best resource for learning nqp? | 19:44 | |
19:45
pmurias joined
|
|||
dalek | c: be9b155 | (Wenzel P. P. Peppmeyer)++ | doc/Type/Signature.pod: return type constraints match undefined values |
19:45 | |
pmurias | Xliff: the language or the QAST etc.? | ||
19:47
leont joined
|
|||
timotimo | webstrand: actually, it'd be interesting if re-building rakudo from the release version would be broken again | 19:48 | |
dalek | c: 01c3684 | (Daniel Green)++ | doc/Language/operators.pod: Add some documentation for the =~=/≅ operator |
19:49 | |
c: f9ebaba | (Daniel Green)++ | doc/Language/operators.pod: Clarify absolute difference explanation, Zoffix++ |
|||
c: 886318f | RabidGravy++ | doc/Language/operators.pod: Merge pull request #604 from MasterDuke17/add_docs_for_≅ Add some documentation for the =~=/≅ operator |
|||
gfldex | Zoffix: F<> does not exist for pod6 | 19:50 | |
webstrand | timotimo: I'd deleted the original package sources, so the build I gave you is a re-build with an existing rakudo installation. | 19:52 | |
timotimo | huh? | ||
webstrand | and that build is also broken | ||
Zoffix | gfldex, I'm not even sure what they're supposed to be :/ | 19:53 | |
19:54
pRiVi joined,
pRiVi left
19:55
travis-ci joined
|
|||
travis-ci | Doc build failed. Wenzel P. P. Peppmeyer 'return type constraints match undefined values' | 19:55 | |
travis-ci.org/perl6/doc/builds/138621154 github.com/perl6/doc/compare/1d028...9b15526922 | |||
19:55
travis-ci left
|
|||
gfldex | Zoffix: it breaks the build. I vote for reverting that commit. | 19:55 | |
webstrand | timotimo: I built rakudo the first time and installed it to my filesystem, noticed the error, then reported it here. When you asked for /install, I rebuilt the package and sent it to you. Neither build is free from the error. | ||
timotimo | oh, ok | 19:56 | |
19:56
pRiVi joined
19:58
grondilu left
|
|||
Zoffix | gfldex, how can it break the build if they are showing up in the docs? | 19:59 | |
And I built that PR before merging | |||
19:59
travis-ci joined
|
|||
travis-ci | Doc build failed. Jonathan Stowe 'Merge pull request #604 from MasterDuke17/add_docs_for_≅ | 19:59 | |
travis-ci.org/perl6/doc/builds/138621595 github.com/perl6/doc/compare/be9b1...6318f619a4 | |||
19:59
travis-ci left
|
|||
stevieb | in perl5, I can dynamically create subs by modifying the symbol table: "$x='blah'; *$x=sub{1;}; blah();'. How can I do this in perl6? | 19:59 | |
timotimo | "symbol tables" are immutable after compile time is finished | 20:00 | |
20:00
michiamodiego joined
|
|||
Zoffix | stevieb, my &blah = sub { ... } | 20:00 | |
pmurias | Xliff: if you already know Perl 6, a good way to see what's supported in nqp would be to look at the test in nqp-repo/t/nqp | ||
moritz | well, lexical scopes are immutable | ||
Zoffix | Well | ||
I guess my answer is useless :P | 20:01 | ||
stevieb, what are you trying to do? | |||
timotimo | you might be interested in sub EXPORT | ||
stevieb | look at the begin block here, where I create subs based on _sub_names(): metacpan.org/source/STEVEB/Logging.../Simple.pm | ||
moritz | also, you can create subs and put them into a hash, for eample | 20:02 | |
stevieb | I'm going to try to port this very simple module to perl6 as my first real attempt, and I'm literally just taking the plunge and going for it | ||
in that module, I have methods such as: $obj->_0(); $obj->_7(); etc | 20:03 | ||
timotimo | oh | 20:04 | |
moritz | oh, methods | ||
timotimo | well, methods are an entirely different matter | ||
moritz | not subs | ||
$class.^add_method($name, method () { do stuff here }) | |||
timotimo | or even register a FALLBACK | ||
moritz | $class.^compose() # at the end | ||
20:05
leont left
|
|||
stevieb | moritz: I'm sorry... terminology is everything lol | 20:05 | |
20:05
michiamodiego left
|
|||
stevieb | moritz: thanks for that... I'm loving perl6 more every day. so simple! | 20:05 | |
moritz | stevieb: well, understandble, because in p5, there is no real difference between subs and methods | 20:06 | |
masak | not much of one in Perl 6 either | 20:07 | |
moritz | well, the difference is that the lookup is done in different data structures | ||
in p5, the lookup for both subs and methods happens in the namespace | |||
(modulo lexical subs in 5.20+) | 20:08 | ||
or was it 5.22? | |||
20:11
huggable left,
huggable joined
|
|||
dalek | c: 5195846 | (Zoffix Znet)++ | doc/Language/operators.pod: Fix build failure |
20:11 | |
timotimo | right, whereas an object has 100% power over how their own methods are looked up | 20:12 | |
20:12
inokenty joined
|
|||
Zoffix | hmm | 20:12 | |
mst | moritz: not entirely true | 20:13 | |
moritz: in perl5, subroutines are looked up by introspecting the stash of the current package at compilation time (unless you &sub), and then the glob is bound into the optree | |||
(hence why namespace::clean can clean things without breaking calls) | |||
methods are looked up by asking ref($self) for its mro (see docs for 'use mro') and then the packages tehreby selected are walked to try and find a method | 20:14 | ||
moritz | mst: yes, but both ultimately look at packages | ||
just at different times, and in the case of methods, also in superclasses | |||
mst | moritz: yes, but 'in the namespace' glosses over the fact that you can basically have two separate namespaces | ||
moritz | which is why injecting methods and injecting subs use the same mechanism | 20:15 | |
which is writing things in packages | |||
mst | so, effectively, it *is* 'done in different data structures' potentially, just unless you're using namespace::clean and/or a custom mro that doesn't normally happen | ||
as a lies-told-to-children description of the difference what you said is fine, but perl5 is actually more sophisticated than it first appears, even if we don't take advantage of that sophistication a lot of the time | 20:16 | ||
moritz | but doesn't perl 5 fall back to runtime package lookup for subs as well? | 20:17 | |
gfldex | m: class Log { method log( $level, $s ){ note "$level: $s" }; method CALL-ME($s){ self.log(4, $s) } }; my sub infix:<-0>(Log:D $l, $s){ $l.log(0, $s) }; my $log = Log.new; $log("ohai"); $log-0 "alert"; | ||
camelia | rakudo-moar f19241: OUTPUT«4: ohai0: alert» | ||
gfldex | stevieb: you can always cheat with user defined operators ^^^ | ||
Zoffix | They slow down the startup quite a bit tho | 20:18 | |
m: class Log { method log( $level, $s ){ note "$level: $s" }; method CALL-ME($s){ self.log(4, $s) } }; my sub infix:<-0>(Log:D $l, $s){ $l.log(0, $s) }; my $log = Log.new; $log("ohai"); $log-0 "alert"; say 4-0 | 20:19 | ||
camelia | rakudo-moar f19241: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Missing required term after infixat <tmp>:1------> 3w; $log("ohai"); $log-0 "alert"; say 4-07⏏5<EOL> expecting any of: prefix term» | ||
gfldex | cheating may break things :) | ||
Zoffix | :) | ||
stevieb | lol | ||
gfldex | i would have guessed that Log:D would prevent this particular problem | 20:21 | |
20:21
travis-ci joined
|
|||
travis-ci | Doc build failed. Zoffix Znet 'Fix build failure' | 20:21 | |
travis-ci.org/perl6/doc/builds/138624415 github.com/perl6/doc/compare/88631...95846461ce | |||
20:21
travis-ci left
|
|||
Zoffix | travis-ci, yes, yes, I know. I suck. | 20:21 | |
Zoffix has the fix. Just waiting for local build | 20:22 | ||
20:26
buharin left
20:27
ssotka left
20:28
mspo joined
|
|||
gfldex | stevieb: «» is not qq, see doc.perl6.org/language/quoting#Word...tion:_qqww | 20:29 | |
stevieb | gfldex: thanks. I'm pretty confident there's a lot wrong in there. They're just notes as when I type stuff out, I remember better. I'll go back over it frequently fixing things the more I pick up | 20:32 | |
dalek | c: 7ccc1ec | (Zoffix Znet)++ | doc/Type/Signature.pod: Fix build failure Seems X<> is not fully supported in =head directives. Mirroring fix found elsewhere in the docs, by listing X<> before the =head |
20:33 | |
c: ff8a09a | (Zoffix Znet)++ | doc/Type/Signature.pod: Improve wording |
20:34 | ||
Zoffix | Why is this section called "Long Names"? docs.perl6.org/type/Signature#Long_Names | 20:35 | |
dalek | c: aa21b02 | (Wenzel P. P. Peppmeyer)++ | doc/Type/Junction.pod: add example to junctions |
20:39 | |
c: 67244e4 | (Wenzel P. P. Peppmeyer)++ | doc/Type/Signature.pod: Merge branch 'master' of github.com/perl6/doc |
|||
Zoffix | git pull --rebase; lets you avoid merge commits | 20:40 | |
20:40
TEttinger joined
20:42
ssotka joined
|
|||
stevieb | LOL my first module! github.com/stevieb9/p6-log-simple/...Simple.pm6 | 20:43 | |
Zoffix doesn't get it | 20:44 | ||
tony-o | enum LEVELS qw<INFO DEBUG WARN ERROR>; | 20:45 | |
20:47
travis-ci joined
|
|||
travis-ci | Doc build passed. Zoffix Znet 'Fix build failure | 20:47 | |
travis-ci.org/perl6/doc/builds/138627012 github.com/perl6/doc/compare/51958...cc1ec8b6ec | |||
20:47
travis-ci left
|
|||
Zoffix | i2.kym-cdn.com/entries/icons/origin.../fyeah.jpg | 20:47 | |
Xliff | pmurias++: Thanks! | 20:49 | |
Zoffix: LOL! | |||
20:49
travis-ci joined
|
|||
travis-ci | Doc build passed. Zoffix Znet 'Improve wording' | 20:49 | |
travis-ci.org/perl6/doc/builds/138627178 github.com/perl6/doc/compare/7ccc1...8a09a2f4c3 | |||
20:49
travis-ci left
|
|||
gfldex | m: { LEAVE say (ENTER $ = now) - now } | 20:50 | |
camelia | rakudo-moar f19241: OUTPUT«===SORRY!===Cannot reference undeclared local 'enter_result__1'» | ||
20:54
travis-ci joined
|
|||
travis-ci | Doc build passed. Wenzel P. P. Peppmeyer 'Merge branch 'master' of github.com/perl6/doc' | 20:54 | |
travis-ci.org/perl6/doc/builds/138627801 github.com/perl6/doc/compare/ff8a0...244e4ea559 | |||
20:54
travis-ci left
20:59
zacts left
21:17
vibha joined
21:20
dwarring joined
|
|||
webstrand | timotimo: I'm unable to build the git version of rakudo: dpaste.de/sg5x I've tried compiling rakudo-2016.05 on the git version of moarvm and nqp, and I still get the error. | 21:21 | |
21:22
kaare_ left
|
|||
Zoffix | How are you running tools/build/install-core-dist.pl ? | 21:23 | |
Just make stuff? | 21:24 | ||
webstrand | Zoffix: make DESTDIR="$pkgdir" install | 21:25 | |
where $pkgdir is the some existing directory path | |||
Zoffix | Have you cleaned that directory first? | 21:26 | |
webstrand | That shouldn't have been an issue, but I'll try it now | ||
Zoffix | 2016.05 probably won't work on git version of moarvm/nqp | 21:27 | |
21:27
cdg joined
|
|||
webstrand | actually, it compiled fine. perl -MTest -e '' still errors out though | 21:28 | |
Zoffix | :( | ||
webstrand, how come 2016.05 of rakudo and not latest? | 21:29 | ||
s/latest/git HEAD/; | |||
21:29
vibha left
|
|||
webstrand | I don't know. I'm using a script to build both 2016.05 and HEAD. The only difference in the script is the rev number built. 2016.05 compiled fine, but HEAD fails with dpaste.de/sg5x | 21:30 | |
I'm still waiting for the clean build of HEAD to finish | 21:31 | ||
Zoffix | :o | ||
21:32
vike joined,
zacts joined,
rurban_ left
|
|||
webstrand | actually, aside from the installation issues, the test suite runs successfully on HEAD. So the original error is fixed in HEAD | 21:32 | |
Zoffix | Hm | 21:33 | |
Zoffix is confused | |||
masak | lol, I blog'd! strangelyconsistent.org/blog/train-tracks | 21:35 | |
webstrand | moarvm-2016.05, nqp-2016.05, rakudo-2016.05: rakudo test suite fails with "Annotation segment overflows end of stream". moarvm-HEAD, nqp-HEAD, rakudo-HEAD: rakudo test suite succeeds, but there's some other bug in installation which means I cant wrap it in a package yet. | 21:36 | |
timotimo | is the bug in installation the "outdated precomp" thing? | 21:37 | |
webstrand | yep | ||
21:37
cur8or joined
|
|||
Zoffix | webstrand, you're making a Linux distro package? | 21:37 | |
timotimo | argh linux | 21:38 | |
webstrand | Zoffix, kind-of. Archlinux has facility to build packages from source, so that the package manager can install/upgrade/remove them at will. I'm using this to make a package of rakudo for myself | 21:40 | |
Zoffix | webstrand, it's just 2016.06 is 1-2 hours away | ||
21:41
Guest74224 is now known as pierrot,
zacts left
|
|||
webstrand | No one else will ever see these packages, there for my use alone | 21:41 | |
Zoffix | aww :( | ||
21:41
pierrot is now known as Guest53339
|
|||
webstrand | Well, anyone else can also build the package from source: aur.archlinux.org/cgit/aur.git/tre...D?h=rakudo is in the AUR, I've just modified it to use git. | 21:44 | |
21:44
Guest53339 is now known as pierrot,
pierrot left,
pierrot joined,
pierrot left,
pierrot joined
|
|||
Zoffix | How come you don't release the packages you're building? | 21:45 | |
Zoffix tries to install Arch | 21:47 | ||
Looks like something that requires a lot of reading and typing :P | |||
webstrand | Well, to a certain extent yes, install takes about an hour typing at a terminal. | 21:49 | |
Zoffix is too old for that stuff | |||
21:50
rindolf left,
lizmat joined
|
|||
webstrand | I like it because I get something like gentoo's srcpkgs, so I can easily wrap whatever random software sparks my interest in a way that the dist's package manager can manage. So things like perl6 don't leave behind anything when I remove or upgrade them. | 21:51 | |
Zoffix | I use rakudobrew for that for Perl 6 github.com/tadzik/rakudobrew | ||
dogbert17 | the code for Baggy.Bool is one line, i.e. nqp::p6bool(nqp::elems(nqp::getattr(%!elems,Map,'$!storage'))) - does this check if the instance contains any elements? | 21:52 | |
21:54
girafe left
|
|||
timotimo | yeah | 21:57 | |
dogbert17 | timotimo: many thanks, nqp is too difficult for me atm | 21:58 | |
webstrand | Any idea when panda is going to get an update? Or is some other tool preferred now? | ||
timotimo | did you have a look at the nqp ops documentation yet? it's quite good | ||
hm, no, not "quite good" | 21:59 | ||
but rather complete, at least | |||
dogbert17 | timotimo: where is it hiding? | 22:01 | |
timotimo | in the nqp repo under docs/ | 22:02 | |
22:02
wamba left
|
|||
Zoffix | webstrand, I prefer zef ( modules.perl6.org/repo/zef ) there's also redpanda ( modules.perl6.org/repo/redpanda ) | 22:02 | |
timotimo | some rakudo-specific ops are also in rakudo/docs/ops.md or something | 22:03 | |
Zoffix | Oh, it's App::redpanda: github.com/tadzik/App-redpanda | ||
autarch | does anyone know off hand of a module that does some sort of meta OO stuff I could look at for an example? | ||
it doesn't need to export this stuff, just do it internally | |||
22:03
jjido joined
|
|||
timotimo | autarch: check out my ADT module | 22:03 | |
22:03
webstrand left
|
|||
autarch | timotimo: thanks | 22:03 | |
22:04
_webstrand joined
|
|||
dalek | c: 48b97ca | (Jan-Olof Hendig)++ | doc/Type/Baggy.pod: Added docs for Baggy.Bool. timotimo++ |
22:04 | |
autarch | timotimo: actually, I was hoping for something that modified how OO works, not just something that uses the metamodel to make classes or attributes | 22:05 | |
_webstrand | The full output of: make --DESTDIR="" install is pastie.org/10882473. Does anyone have an idea of what might be wrong? Or shall I start bisecting? | ||
timotimo | oh | ||
OO::Monitors and OO::Actors comes to mind, but it might not be "enough" for you | |||
22:06
pmurias left,
_webstrand is now known as webstrand
|
|||
autarch | I just need a simple example, so enough is probably enough ;) | 22:06 | |
timotimo | what i mean is it may not fit your description of changing how OO works | ||
autarch | I see | 22:07 | |
what I'd like to show is something like an attribute traits that modifies the generated accessors | |||
22:08
setty1 left
|
|||
masak | 'night, #perl6 | 22:09 | |
Zoffix | webstrand, you could try building this. Though I'm almost certain it won't fix your problem since you say you did try HEAD: temp.perl6.party/rakudo-2016.06.tar.gz | ||
night | 22:10 | ||
timotimo | oh | 22:11 | |
autarch | I think I found something - github.com/perl6/roast/blob/master...s.t#L6-L49 | ||
timotimo | there's some things in core that do things like that | ||
for attributes, you can mix in a role that provides an additional implementation of compose | |||
autarch | yeah, I remember digging way into the core last time I looked into this stuff to figure out how it worked exactly | 22:14 | |
hmm, I suspect this is going to be way too much code for a slide | 22:15 | ||
I'd like a relatively simple example to hint at the power of the metamodel - any suggestions on an example? | |||
timotimo | jnthn already gave a presentation on OO::Monitors and OO::Actors, maybe you can steal a bit from the slides | 22:17 | |
autarch | I just thought of something good enough | 22:18 | |
gist.github.com/autarch/9af544579d...4bf8a358f5 | |||
timotimo | that's quite boring :) | 22:21 | |
webstrand | Zoffix: nope, thanks though. Hopefully a bisect will turn up something | ||
autarch | yeah, but this is for my basic Perl6 OO talk - I want to end with a hint at possibilities, not show 100 lines of incomprehensible gibberish | 22:22 | |
timotimo | how about an example that installs a second method that has the same name but upper case and upper cases the return value? :P | ||
22:23
spider-mario left
22:27
RabidGravy left
|
|||
Hotkeys | can anyone see a good way to shorten this wonderful code golf | 22:27 | |
say sum await map ^9: {start {sleep 7;now -ENTER now}};say now -INIT now | |||
Zoffix | .oO( why is everyone trying to shorten already short code lately.... ) |
22:28 | |
Hotkeys | it's for code golf | 22:29 | |
timotimo | colf | 22:30 | |
22:32
BenGoldberg joined,
jjido left
22:47
zacts joined
|
|||
b2gills | Hotkeys: say sum await map {start {sleep 7;now -ENTER now}},^9;say now -INIT now | 22:49 | |
timotimo | doesn't sleep return how long it slept? | 22:50 | |
m: say sleep 7 | |||
camelia | rakudo-moar f19241: OUTPUT«Nil» | ||
timotimo | huh, apparently not | ||
22:50
zacts left
|
|||
Zoffix | say sum await start {sleep 7;now -ENTER now} xx 9;say now -INIT now | 22:52 | |
nm | 22:53 | ||
Any idea why Inline::Perl5 build says '/usr/bin/ld: cannot find -lperl' | 22:54 | ||
I built Perl 5 with perlbrew :/ I dunno why it'd be missing | |||
forgot perlbrew switch perl-5.24.0 | 22:55 | ||
23:10
cooper left
|
|||
webstrand | Zoffix: I've finished bisecting, the first bad commit is c7cd003251a2425c14e91d34f6c5ed9acc1caf55. | 23:15 | |
everything before that installs correctly | |||
23:16
dj_goku left
|
|||
Zoffix | crap | 23:17 | |
nine, are you around? | |||
webstrand++ thanks for spotting the issue. I can actually replicate it when I specify DESTDIR to make install 😿 | 23:27 | ||
BenGoldberg | m: say sum await map {start {now -ENTER now}},^9; say now -INIT now | ||
camelia | rakudo-moar f19241: OUTPUT«0.07916814400.04475032» | ||
webstrand | zoffix: great, glad to know it's not just my computer :) | 23:29 | |
23:35
BenGoldberg left
23:37
BenGoldberg joined,
cooper joined
|
|||
Hotkeys | b2gills: ty, forgot about using it as a function, went straight for the funky method syntax | 23:40 | |
23:41
firstdayonthejob left
23:52
webstrand left
23:53
zacts joined,
webstrand joined
23:54
AlexDaniel joined
23:55
pmurias joined
|