»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend! Set by sorear on 25 June 2013. |
|||
00:00
Alina-malina left
|
|||
jercos | netstar: are you doing %hash<$scalar>? | 00:02 | |
netstar | yessir | ||
00:03
bronco_creek left
|
|||
jercos | try %hash{$scalar} | 00:03 | |
;) | |||
netstar | lol | ||
this IS a steep learning curve | |||
worked! | |||
raydiak | huh...feather broken? perlcabal.org was down and now shows the pugscode content, while pugscode.org shows feather.perl6.nl's content | 00:05 | |
jercos | little early for april fools' day | ||
raydiak: they look fine over here. | 00:06 | ||
raydiak | ah, thanks...flushing my dns cache will probably fix whatever momentary hiccup I picked up, then | ||
netstar | okay night all! | ||
raydiak | g'night netstar | 00:07 | |
netstar | thanks for help | ||
00:20
chenryn joined,
vendethiel left
00:27
vendethiel joined,
Alina-malina joined
00:34
adu joined
00:36
chenryn left
00:44
regreg left,
treehug88 left
00:45
treehug88 joined,
cognominal left
00:47
bjz_ left
00:50
bjz joined
00:51
vendethiel left
00:55
bjz left
00:58
vendethiel joined
|
|||
ugexe | is there a script for creating .deb of a rakudo build? | 01:12 | |
01:14
adu left
01:17
adu joined
|
|||
japhb wonders if apt-get source from unstable would do what you need | 01:18 | ||
apt-get source rakudo, that is | 01:19 | ||
japhb doesn't have unstable on this box to check | |||
eww, old: packages.debian.org/sid/rakudo | 01:20 | ||
01:22
kst` is now known as kst
01:26
raiph joined
01:27
treehug88 left,
cognominal joined
01:38
kurahaupo left
01:39
zakharyas joined
01:41
vendethiel left
01:55
adu left
01:56
raiph left
01:58
raiph joined
02:03
vendethiel joined
02:05
adu joined
02:10
Alina-malina left
02:24
Alina-malina joined
02:25
vendethiel left
02:38
chenryn joined
02:50
vendethiel joined,
jimmy_ joined,
jimmy_ is now known as JimmyZ
02:59
regreg joined
03:04
BenGoldberg left
03:09
Mso150 joined
03:32
vendethiel left
03:35
vendethiel joined
03:40
kurahaupo joined
03:49
Mso150 left
03:56
gtodd left
03:57
gtodd joined
04:03
Exodist left
04:08
rmgk left
04:09
rmgk joined
04:17
raiph left
04:24
tinyblak joined
04:44
vendethiel left
04:48
vendethiel joined
04:54
rurban joined
05:09
vendethiel left
05:12
chenryn left
05:15
vendethiel joined
05:16
tinyblak_ joined
05:20
tinyblak left
05:32
tinyblak_ left
05:33
tinyblak joined
05:34
tinyblak left,
chenryn joined
05:35
tinyblak joined
|
|||
adu | grr I keep getting a string | 05:35 | |
I have a sub sub build-struct-declarator(%obj) { ... } | |||
which needs an associative | |||
and I'm passing it an associative | |||
but it's receiving a string | 05:36 | ||
why? | |||
05:38
vendethiel left
05:39
tinyblak left
05:41
vendethiel joined
|
|||
cognominal | g'morning vendethiel | 05:42 | |
TimToady | adu: how are you calling it? | 05:44 | |
adu | pastie.org/9731507 | 05:45 | |
and | |||
pastie.org/9731508 | |||
TimToady | well, then $<declarator>.ast isn't returning a hash; what does the make look like in declarator? | 05:47 | |
adu | pastie.org/9731508 | ||
TimToady | that looks like it's making a hash; what's the error message? | 05:51 | |
and are you sure that's the multi declarator that is really matching? | 05:52 | ||
other than that, you might pull out the ast before doing the make and looking at it with .perl or so | 05:54 | ||
05:54
firefish5000 joined
|
|||
adu | pastie.org/9731545 | 05:56 | |
I suppose I could | 05:57 | ||
TimToady | those can't be from the binding operation | ||
it says in numeric context | |||
more I can't tell because I don't have your line numbers | 05:58 | ||
adu | binding? | ||
TimToady | the signature to the function, associating the ast with %obj | ||
adu | ah, 886 is line 10 in pastie.org/9731551#10 | ||
TimToady | that's not a numeric context, so the binding seems to be happening just fine, but something is happening later in the function | ||
06:00
anaeem1_ joined
|
|||
TimToady | that's really strange, there are no numeric contexts there | 06:01 | |
but I'd suspect the 'rest' component is not correct, maybe | |||
adu | I'm confused | ||
TimToady | well, say $stuff.perl is your friend | 06:02 | |
unless, of course, you're using stdout for data | |||
the note works better than say | 06:03 | ||
*then | |||
06:04
DrEeevil is now known as xiaomiao
|
|||
TimToady wanders away for a bit | 06:04 | ||
06:08
kaare_ joined
|
|||
moritz | good morning | 06:10 | |
JimmyZ | good morning | 06:11 | |
06:13
tinyblak joined
|
|||
cognominal | good morning everyone | 06:15 | |
06:17
firefish5000 left
|
|||
JimmyZ | good morning everytwo | 06:20 | |
06:24
vendethiel left
|
|||
cognominal | every* even | 06:25 | |
06:27
vendethiel joined
06:33
kurahaupo left
06:38
kjs_ joined
06:44
kaleem joined
07:01
yoleaux left
07:12
gtodd left,
kaare_ left,
gtodd joined
07:15
kaare_ joined,
bjz joined
07:24
darutoko joined
07:32
kjs_ left
07:33
anaeem1_ left,
vendethiel left,
anaeem1_ joined
07:36
smls joined
|
|||
smls | morning | 07:36 | |
raydiak | \o | 07:37 | |
07:39
zakharyas left
07:45
FROGGS joined
|
|||
lizmat | good morning, #perl6! | 07:48 | |
PSA: in about 4 hours I will start the work on the 2014.11 release | |||
07:52
smls left
07:53
smls joined
|
|||
moritz | \o | 07:56 | |
it took me a while to understand that "PSA" wasn't "Phase-Sensitive Amplifier" here :-) | 07:57 | ||
07:58
zakharyas joined
|
|||
lizmat | :-) | 07:59 | |
moritz o/ | |||
07:59
stux|RC-only left
08:01
stux|RC-only joined,
Hor|zon_ left,
Hor|zon joined
08:03
jluis left,
vendethiel joined
08:05
jfredett left
08:17
sqirrel_ joined,
BooK joined
|
|||
FROGGS | morning | 08:21 | |
08:31
ghostlines joined
08:33
pdcawley joined
08:45
adu left
08:51
regreg left,
sqirrel_ left
08:54
virtualsue joined
08:59
telex left
09:00
telex joined
|
|||
lizmat | FROGGS o/ | 09:06 | |
FROGGS | hi lizmat :o) | ||
09:13
bjz_ joined,
bjz left
09:21
ptc_p6 joined
09:26
ptc_p6 left,
ptc_p6 joined
09:28
vendethiel left
09:31
fhelmberger joined
|
|||
lizmat just committed github.com/rakudo/rakudo/commit/df...f28b17185f | 09:35 | ||
afk& | |||
09:46
bjz_ left
09:48
vendethiel joined
09:53
dakkar joined
09:54
rindolf joined
09:57
kurahaupo joined
09:58
zakharyas left
10:02
tinyblak left
10:03
tinyblak joined
10:04
espadrine_ joined
10:05
regreg joined
10:08
yoleaux joined,
ChanServ sets mode: +v yoleaux
10:10
vendethiel left
|
|||
arnsholt | What's up with dalek these days? | 10:13 | |
timotimo | fell down some stairs, can't get back up | 10:14 | |
arnsholt | Awww | ||
10:15
dalek joined,
ChanServ sets mode: +v dalek
10:19
JimmyZ left
|
|||
FROGGS | dalek: /o/ | 10:22 | |
nwc10 | feather3+- # having a ssh banner on IPv6 that tells me where dalek is running | 10:26 | |
feather3+- # no AAAA record (this might be deliberate) | |||
(and no reverse DNS) | |||
yes, I would like a pony too | |||
moritz | I hope to have proper IPv6 for the feather successor | 10:29 | |
nwc10 | there's clearly enough IPv6 working to connect to it, and for it to get to freenode | ||
so the hard bits appear to have been done | |||
perl6.org has no AAAA record | 10:30 | ||
:-( | |||
insufficiently six-like | 10:31 | ||
ENOT6 | |||
timotimo | such nonsix | 10:32 | |
moritz | yesterday I ordered the new hardware for the feather successor, but haven't received an order confirmation yet | 10:35 | |
we need a name | 10:36 | ||
timotimo | .o( plume ) | ||
masak .oO( leather ) | 10:37 | ||
masak .oO( ticklish ) | 10:38 | ||
moritz acquires a domain name, and then thinks about the host name(s) | 10:40 | ||
"www" for the host with the websites and "unsafe" for the evalbot(s) | |||
masak .oO( quill ) | 10:41 | ||
moritz | how to the call the main community server, on which people run their IRC sessions and build rakudo etc? | ||
masak | 'main'? | ||
10:41
exixt is now known as exixt_
|
|||
masak | or 'community'? | 10:41 | |
moritz | boring | ||
masak: community will appear in the domain name, in one form or another | |||
10:41
TuxCM left
|
|||
masak | ok. | 10:42 | |
moritz | 'scratch'? | ||
or '42' maybe | |||
masak | 'tuit'? | 10:43 | |
moritz | that's nice too | ||
but is it round? :-) | |||
masak | 'diffy'? | 10:45 | |
'karma'? | 10:46 | ||
jnthn | 'hack' | ||
...though outsiders may take it as a challenge :P | 10:47 | ||
nwc10 | 'hack' is probably a bad idea, given Facebook | ||
jnthn | ? | ||
nwc10 | and PHP-!7 | ||
masak | 'phaser'? | ||
moritz | 'dev' # but boring | ||
nwc10 | s/probably/possibly/ | ||
masak | 'pointy'? | ||
jnthn | nwc10: I...don't think that's going to be most people's association :P | 10:48 | |
moritz | dev-but-boring.thedomain.org :-) | ||
masak | in appreciation of au++, either 'trust' or 'anarchy' | ||
nwc10 | in whcih case, yes, "hack", but I wonder what the clueless will dow with reverse DNS | ||
anarchy - I like that | |||
that's by far the most fun suggestion so far | 10:49 | ||
masak | 'anarki' is easier to spell, and Swedish. | ||
jnthn | Is '-Ofun' a valid name? :) | 10:50 | |
But yeah, I like anarchy too :) | |||
moritz | jnthn: I fear not, but ofun is | ||
masak | 'thunk' | ||
jnthn | .oO( I use this server ofun... ) |
||
moritz | but people will be surprised when told to be civil on the anarchy server :-) | ||
smls | 'promenade' | 10:52 | |
10:55
chenryn left
10:59
TuxCM joined
11:01
vendethiel joined
|
|||
FROGGS | jnthn: you already did the reupload? :o) | 11:05 | |
11:06
espadrine_ left
11:09
jack_rabbit left
11:10
espadrine_ joined
|
|||
timotimo | developersdevelopersdevelopersdeve...munity.org | 11:16 | |
11:16
jack_rabbit joined
|
|||
lizmat | 'thisisyour' (boring) | 11:18 | |
11:18
jpve joined
|
|||
timotimo | this-is-your-boring | 11:20 | |
11:20
bjz joined
|
|||
jpve | Hi all, I would like to add two modules to the ecosystem. | 11:22 | |
Is it really as simple as adding the URLs to the META.list file of the github.com/perl6/ecosystem repo? | |||
tadzik | yes | 11:23 | |
jpve | Or do I need to do some other things as well? | ||
tadzik | no | ||
:) | |||
jpve | Ok, thanks tadzik! | ||
11:26
kaare_ left
11:27
jack_rabbit left
|
|||
timotimo | well, your repository does need to have the META.info, but i'm suspecting you already have that in place :) | 11:29 | |
and it's good style to have a test suite that has some chance of failing at all when stuff goes wrong | 11:30 | ||
11:34
kurahaupo_ joined
|
|||
jpve | @timotime: I added both, but thanks for the reminder :) | 11:37 | |
11:37
kurahaupo left
|
|||
moritz | jpve: what's your github ID? | 11:38 | |
jpve | jpve :D | ||
moritz | jpve: you have an invitation to the 'perl6' team in the 'perl6' org, which will give you direct push access to the ecosystem repo | 11:39 | |
jpve: (and a few other useful repos) | |||
jpve | Ok, thanks! | 11:40 | |
timotimo | thank you for contributing :) | ||
11:41
exixt_ is now known as exixt
11:43
jluis joined
11:44
vendethiel left
11:54
bjz left
11:56
chenryn joined
11:58
vendethiel joined
12:00
chenryn left
|
|||
dalek | osystem: 5552882 | (Jorn van Engelen)++ | META.list: Add Net::Packet |
12:09 | |
osystem: 2237b4c | (Jorn van Engelen)++ | META.list: Add Net::Pcap |
|||
osystem: 9d6fc35 | jimmy++ | META.list: Merge pull request #36 from jpve/master META.list: Add Net::Packet and Net::Pcap |
|||
timotimo | FROGGS: what's the status WRT :auth<github:timo> and stuff for modules and classes and stuff? | ||
oooh, dalek is back | |||
12:10
wtw left
12:11
bjz joined
|
|||
jpve | Want to check if my META.info's are correct by doing a build-project-list.pl in modules.perl6.org | 12:12 | |
But github just won't check public_repos on my API token ... | |||
Which is apperently needed to build the list | |||
FROGGS | timotimo: can we talk about that this evening? | 12:13 | |
tadzik | jpve: you can ask panda to try to install it from a local directory | 12:15 | |
it'll read and verify meta.info | |||
jpve | Ah ok, thanks for the pointer, thats much simpler indeed :) | ||
timotimo | sure | 12:18 | |
timotimo will be driving the car around for a big chunk of $day | |||
FROGGS | timotimo: or in short: panda does not work yet with CUR::Installation, its PERL6LIB is wrong IIRC | ||
timotimo | that's good enough for me :) | 12:19 | |
12:19
vendethiel left
12:22
vendethiel joined
|
|||
dalek | kudo/nom: 553e633 | (Elizabeth Mattijsen)++ | docs/announce/2014.11.md: Initial version 2014.11 release announcement |
12:25 | |
12:33
kaare_ joined
12:40
smls left
12:41
Ven joined
|
|||
Ven | lizmat++ | 12:41 | |
"Force calling method for <.foo> even if sub foo exists" not sure I get that? | |||
m: sub foo($a:){0}; class A{method foo {1}}; say A.new.foo | 12:42 | ||
camelia | rakudo-moar dfa0d2: OUTPUT«1» | ||
lizmat | Ven: github.com/rakudo/rakudo/commit/7b...63ad10cb26 | 12:43 | |
Ven | ooh! thanks :) | ||
Ven has been mostly working on a monolithic rails app lately, not much toying with perl6 at $work | |||
Ven not only wants his computer to commit suicide, but would appreciate some commits on his suicide as well :P | 12:45 | ||
lizmat | :-) | 12:46 | |
FROGGS | lizmat: when do you think you'll finally cut the release? | 12:51 | |
we probably still have to fix panda on windows (path issues) | |||
brb | 12:52 | ||
Ven should try to compile rakudo on windows at some point... | 12:53 | ||
Oh wait, I don't have to anymore :-) | |||
12:53
sqirrel_ joined
|
|||
lizmat | FROGGS: is this about leaking some of the work that is now in the newio branch into nom? | 12:54 | |
or is this something else | |||
anyway, I'm now starting testing on moar=master, nqp=master | 12:55 | ||
Ven | (though if I can help without having to install visual studio,I'll gladly do so) | ||
FROGGS | lizmat: I am not sure what the cause is... on windows it helped for panda (file::find) to canonicalize the paths in chdir and friends, but this produces spectest fails on linux | 12:59 | |
lizmat: you can test with the moar revision that's specified in nqp, since that already points to 2014.11 | 13:00 | ||
lizmat | do you have a paste with Win32 errors? | ||
ah, so NQP is already at release level ? | |||
FROGGS | (not that moar HEAD makes any difference, but still :o) | ||
yes, I bumped moar revision and parrot revision to current releases | 13:01 | ||
13:01
jfredett joined,
anaeem1_ left
|
|||
lizmat | FROGGS++ :-) | 13:01 | |
FROGGS | lizmat: irclog.perlgeek.de/perl6/2014-11-15#i_9667282 | 13:02 | |
lizmat: I'll be quite busy for the next five or six hours... but then I will have time for panda@win32, if that's not too late | 13:03 | ||
dalek | kudo/nom: a50bb2e | (Elizabeth Mattijsen)++ | docs/announce/2014.11.md: Add paragraph about problems on OS X in release |
13:04 | |
lizmat | FROGGS: that would be excellent and not too late at all :-) | ||
FROGGS | what a relief :o) | 13:05 | |
13:07
vendethiel left
13:14
vendethiel joined
|
|||
Ven | what's going on here, vendethiel ? | 13:15 | |
rurban | isnt' the moar os x problem a wrong free? | ||
lizmat | rurban: sometimes during building, you may get that, yes | 13:16 | |
actually, at a rakudo install party, one of the guys had that problem with the released version | |||
the only difference was that he was not on the latest Mavericks | 13:17 | ||
rurban | I'm a bit too busy now, but hope to look into it later | ||
lizmat | well, maybe you can help anyway: | ||
does this ring a bell? note: passing argument to parameter 'buffer' here | 13:18 | ||
rurban | I found parrot gc problems also, with non-standard gc's, which are faster, but broken | ||
13:19
guru joined,
guru is now known as ajr_
|
|||
lizmat | ok, this is weird | 13:37 | |
if I just compile MoarVM from its own repo, I don't get any warnings *at all* | |||
oops, mambm | 13:38 | ||
FROGGS | mambm? | ||
lizmat | (I didn't look back far enough :-( | ||
me and my big mouth | |||
FROGGS | ahh :o) | ||
hehe | |||
Ven | ETOOMUCHACRONYMS :) | 13:39 | |
dalek | kudo/nom: bcdf988 | (Elizabeth Mattijsen)++ | docs/announce/2014.11.md: s/Octover/November/ woolfy++ |
13:40 | |
FROGGS | Ven: ETMA? | 13:42 | |
Ven | *g* | ||
masak | ooh, a release is brewing? | 13:53 | |
amazing that Helsinki wasn't taken. lizmat++ | 13:54 | ||
Ven | yep :-) | ||
woolfy | Helsinki offered us a nice hackathon (where 7 people installed MoarVM/NQP/MoarVM during a session with lizmat++ and pnu++), Finnish & Swedish whisky, an alt-party on a boat, lots of cd-shops and much more fun. | 13:56 | |
Therefore Helsinki. :-) | |||
Ven | woolfy: I guess you liked the whisky the best :P | ||
13:56
brrt joined
|
|||
woolfy | (I didn't mention the Danish whisky that we bought in the tax-free shop in Copenhagen, which was excellent) | 13:57 | |
Ven: the Finnish whisky was very nice, the Swedish whisky is more something for cocktails... | 13:58 | ||
dalek | kudo/nom: 61f3d44 | (Lucas Buchala)++ | Configure.pl: Align Configure.pl options in help text |
14:01 | |
kudo/nom: b8246f1 | lizmat++ | Configure.pl: Merge pull request #331 from lucasbuchala/configure-help Align Configure.pl options in help text |
|||
14:08
wtw joined
14:13
perltricks joined
|
|||
perltricks | hey everyone in case you missed it, I've just published an introduction to Perl 6 one liners on perltricks.com: perltricks.com/article/136/2014/11/...one-liners | 14:15 | |
14:16
ClarusCogitatio joined
|
|||
perltricks | And if you feel like helping promote it, I'm @perltricks on twitter. thanks | 14:16 | |
moritz | perltricks++ | ||
perltricks | one other thing that might be of interest: Sinan's article on compiling Perl 6 with Visual Studio perltricks.com/article/135/2014/11/...tudio-2013 | ||
masak | ooh | 14:17 | |
perltricks++ | |||
perltricks | moritz: thanks. Planning to ramp up the Rakudo | ||
! | |||
masak | perltricks: `for (lines) { say $_ }` doesn't look idiomatic to me. I'd prefer it as `for lines() { say $_ }` | 14:18 | |
14:18
Possum left
|
|||
masak | perltricks: I think it creates more confusion that it saves to put the parens around `lines` a la Perl 5. | 14:18 | |
perltricks | masak: noted, good point thanks | ||
also, just want to say thanks to everyone who contributed to the open source book: github.com/sillymoose/Perl6-One-Liners the book will stay on FreeBSD license, so if it can be re-purposed into a 'official' docs or whatever | |||
I'm still polishing it, and now working on WWW one liners. | 14:19 | ||
masak | perltricks++ # again | ||
[Coke] | I like how the "build perl 6 with visual studio" didn't really have anything specific to use visual studio, just the standard config line. | ||
(actually like, not sarcastic like. :) | |||
perltricks | if you're listed as a contributor and want to change your name / handle and or include a link on your name, just let me know | 14:20 | |
FROGGS | perltricks++ | ||
lizmat | perltricks++ :-) | ||
perltricks | perl6 community++ | ||
14:21
ClarusCogitatio left,
anaeem1 joined
|
|||
perltricks | [Coke]: yeah kind of great that it "just works" | 14:21 | |
[Coke] | I blame jnthn :) | 14:23 | |
14:25
ClarusCogitatio joined
14:26
hoelzro left
14:27
hoelzro joined,
Possum joined,
TuxCM left
14:28
TuxCM joined
|
|||
Ven | "PL expressiveness is in what it lets you forbid as well as what it allows to do." | 14:29 | |
14:31
ClarusCogitatio left
14:32
cognominal left
|
|||
masak | Ven: do you have an example? or is it just a general statement, which may or may not be inhabited? | 14:32 | |
PerlJam | perltricks++ because you can never have too much karma :) | ||
14:32
ptc_p6 left
|
|||
Ven | masak: very simple example | 14:32 | |
masak enjoys the very simple | 14:33 | ||
Ven | m: sub f(::T $a --> Array[T]) { $a, 1, 2, 3 }; f("a"); | ||
camelia | rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Array[T]' but got 'Parcel' in any return_error at src/vm/moar/Perl6/Ops.nqp:649 in sub f at /tmp/4AnlWK2XBI:1 in block <unit> at /tmp/4AnlWK2XBI:1» | ||
Ven | the example still stands. | ||
can I forbid it to have elements with a different type than the collection's? (while still retaining the ability to have hetero-collections if I need to) | 14:34 | ||
14:34
JimmyZ joined
|
|||
Ven | masak: you can also take jnthn's thingie that used macros to forbid invalid states | 14:35 | |
(which usually means you need ADTs to model the different states your state machine has) | |||
masak | I don't think Perl 6's typing is static enough to forbid things such as the above. that is, Perl 6 doesn't really do any type inference that has more than one step in it. | ||
Ven | this one doesn't have any inference in | 14:36 | |
masak | sure it does. you have to infer things between "a", Str, ::T, $a, and Array[T] | 14:37 | |
Ven | I don't see any inference here. You might argue there's type "computation", but certainly no inference | 14:38 | |
PerlJam | m: sub f(Str $a --> Array[Str]) { Array[Str].new($a, $a, $a) }; f("hi"); | ||
camelia | rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Array[Str]' but got 'Array[Str]' in any return_error at src/vm/moar/Perl6/Ops.nqp:649 in block <unit> at /tmp/ZtdoCDycoB:1» | ||
Ven | that's a pretty well-known bug | 14:39 | |
masak | Ven: whatever *name* you choose to give to it, I don't think Perl 6 does it. | ||
Ven | I certainly hope perl6 will be able to hold those invariants in 2/3 years:) | ||
PerlJam | yeah, it just makes me a little giddy that it tells me that it got what it expected, but failed anyway | ||
Ven | masak: I'm not the one naming things. It's like saying java has type inference because "a.b().c()" works. That's like C#'s var. | 14:40 | |
masak | Ven: in particular, I've never ever seen any plans to have a list of stuff without a declared type be inferred/computed as a particular nominal type. | ||
Ven: it's not in the spec. it doesn't have a champion. I'm not sure it *can* work. | |||
Ven | masak: not sure what you mean. I don't know of a language with generics that doesn't allow me to `List<T> fn(T elem)` to typecheck | ||
PerlJam | or, put another way ... even C++ does that ;) | 14:41 | |
Ven | but, yeah, I guess you can argue it's not an "array". maybe that should be "List" | ||
might also be problem because of the way typed lists are implemented. | |||
masak | no, you're misunderstanding the fundamental missing piece here. but nevermind. | 14:42 | |
Ven | PerlJam: C++ has... somewhat of a type inference, I guess. It doesn't just look at the return type | ||
masak: No, I understand that I'm returning "a list" | |||
masak | m: sub foo(--> Array[Int]) { [1, 2, 3] }; say foo | ||
camelia | rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Array[Int]' but got 'Array' in any return_error at src/vm/moar/Perl6/Ops.nqp:649 in sub foo at /tmp/ySXALfdFvZ:1 in block <unit> at /tmp/ySXALfdFvZ:1» | ||
masak | Ven: does that help? | ||
Ven | I consider that to be an implementation detail :-) | ||
14:43
sqirrel_ left
|
|||
masak | then we fundamentally disagree, I think. | 14:43 | |
moritz | Ven: the difference between C++ and Perl 6 is that in C++, the compile-time known type must satisfy a type constraint; in Perl 6, it suffices that the runtime-type satisfies a constraint | ||
masak | it's... not spec, exactly. but it's not gonna change either. | ||
moritz | so in Perl 6 it's totally valid to write sub f($x) returns Int { 2 * $x } | ||
masak | Ven: what moritz++ said. | ||
Ven | moritz: it's not even the problem here. it doesn't fail at runtime either | ||
moritz | Ven: then we're talking about a different "here" | 14:44 | |
Ven: I've seen lots of examples scroll by that do bail out at run time | |||
Ven | moritz: I'm talking about the ::T -> List[T] (or Array[T]) | ||
colomon | m: sub f($x) returns Int { 2 * $x }; f(24.2) | ||
camelia | rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Int' but got 'Rat' in any return_error at src/vm/moar/Perl6/Ops.nqp:649 in sub f at /tmp/rL5w8D5jGh:1 in block <unit> at /tmp/rL5w8D5jGh:1» | ||
moritz | Ven: and which example didn't fail at runtime? | 14:45 | |
Ven | moritz: all those that exposed a bug in rakudo (i.e. PerlJam's) | ||
masak | Ven: I think I may see what you're saying -- you're talking specifically about generic types "scoped" under a type capture? | ||
14:45
kaleem_ joined
|
|||
masak | Ven: all of which could in theory be statically checked? | 14:46 | |
Ven | masak: basically, yes. | ||
masak | got it. | ||
that's... an interesting idea, yes. | |||
sounds like an extra opportunity to do cool inferences at compile time. | |||
moritz still doesn't see any example that Ven refers to | |||
masak | hadn't thought of that before. | ||
Ven | nice :-) | 14:47 | |
moritz: look at PerlJam's example | |||
moritz | Ven: which one? | ||
Ven | moritz: the one that failed with identical types, for example | ||
moritz | Ven: can you please repeat it? or link to a line in the logs? | ||
Ven | m: sub f(Str $a --> Array[Str]) { Array[Str].new($a, $a, $a) }; f("hi"); # moritz | ||
camelia | rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Array[Str]' but got 'Array[Str]' in any return_error at src/vm/moar/Perl6/Ops.nqp:649 in block <unit> at /tmp/1NHO_YRK7q:1» | ||
moritz | Ven: but that does fail at run time | ||
14:48
tinyblak left
|
|||
Ven | moritz: I definitely consider that a bug | 14:48 | |
14:48
kaleem left,
tinyblak joined,
raiph joined
|
|||
moritz | Ven: irclog.perlgeek.de/perl6/2014-11-20#i_9693534 that's what confused me | 14:48 | |
Ven: you were talking about something that doesn't fail at runtime | |||
Ven: now I'm looking for an example that doesn't fail at runtime, and you give me one that incorrectly fails at run time | 14:49 | ||
moritz thinks that he and Ven are on incompatible wave lengths today | |||
Ven | moritz: I mean – incorrectly OR doesn't fail at runtime here :) my bad | ||
14:50
Zheglov joined
14:51
tinyblak_ joined
14:52
tinyblak left
14:53
tinyblak_ left
14:54
KCL_ joined,
kjs_ joined
|
|||
Ven | masak: do you think this could *possibly* be done? | 14:56 | |
14:57
kjs_ left
|
|||
masak | I won't say "yes" to that until I see some kind of RFC that follows through on all the details. | 14:59 | |
14:59
nanis joined
|
|||
masak | but since it's basically improving the error reporting by bumping some errors from runtime to compile time, I'm kind of optimistic. | 15:00 | |
I don't see any immediate stoppers, save SMOP. | |||
Zheglov | perl6: sub infix:«MYPLUS»(*@a) is assoc('list') { [+] @a ; } ; sub prefix:«MYMINUS»($a) is looser(&infix:<MYPLUS>) { -$a ; } ; say (MYMINUS 1 MYPLUS 2 MYPLUS 3) ; | 15:01 | |
camelia | rakudo-moar b8246f: OUTPUT«===SORRY!===MVMArray: Can't pop from an empty array» | ||
..rakudo-parrot b8246f: OUTPUT«===SORRY!===QRPA: Can't pop from an empty array!» | |||
nanis | Hello everyone. New here. Over at Reddit, raiph suggested I might be able to help with Unicode and/or Turkish issues. I am *very* unfamiliar with the codebase. Is there a specific place I should look? | ||
moritz | nanis: is it a Perl 6 code base? | 15:02 | |
masak | nanis: first off, welcome. | ||
15:02
pecastro joined
15:03
nanis left
|
|||
masak | Zheglov: I think something is simply NYI with `is assoc('list')` | 15:03 | |
15:06
kaleem_ left
|
|||
raiph | nanis++ # for "Building Perl 6 with Visual Studio 2013" (perltricks.com/article/135/2014/11/...udio-2013) | 15:07 | |
15:07
exixt is now known as exixt_
|
|||
Ven | masak: Right. It's a bit of a... tyoe "promotion"? | 15:07 | |
It's a bit like scala (ugh) does (allows to infer List[Any] or List[Int]) | |||
Zheglov | perl6: sub prefix:«MYMINUS»($a) { -$a ; } ; sub infix:«MYPLUS»(*@a) is assoc('list') is tighter(&prefix:<MYMINUS>) { [+] @a ; } ; say (MYMINUS 1 MYPLUS 2 MYPLUS 3) ; | 15:08 | |
camelia | rakudo-{parrot,moar} b8246f: OUTPUT«-6» | ||
Zheglov | This equivalent one works if you swap around | ||
raiph | I left a couple comments for nanis (Sinar Unur) starting at www.reddit.com/r/perl/comments/2mnv...13/cm6h23u # for moritz, masak, others | 15:10 | |
PerlJam | "radical grapheme-by-default approach"? Is it really that radical? | 15:12 | |
moritz | PerlJam: it is, in the sense that it's a pretty deep change, and to the best of my knowledge, nobody has done it before (not even we :-) | 15:13 | |
nwc10 | I'm not aware of anyone else doing it, but I've not been looking | ||
it's significant, because it's O(n) if you don't do something clever (and your internal encoding is fixed width) | 15:14 | ||
and O(n**2) if your internal encoding is UTF-8 | 15:15 | ||
masak | higher powers are better, right? :P | ||
moritz | masak: for 0 < n < 1, yes :-) | 15:16 | |
PerlJam | maybe it's just that my expectations are a bit off by being here so much, but it seems to me that that's a "natural evolution" of programming languages (especially those designed by a linguist :-) | 15:17 | |
masak | moritz: heh. | ||
15:17
haroldwu left,
haroldwu joined
|
|||
masak | PerlJam: I have something of the same feeling -- given how sane NFG is, it's kinda weird that other languages aren't already doing it. | 15:17 | |
PerlJam | masak: exactly. | 15:18 | |
moritz | masak: we don't actually know how sane it is until we've tried it | ||
PerlJam | masak: The difference is probably that very few other language designers are looking at the long now. | ||
15:19
ajr_ left
15:20
guru joined
15:21
guru is now known as Guest98174,
Guest98174 is now known as ajr_
|
|||
masak | *nod* | 15:22 | |
moritz | one thing I'm asking myself from time to time is how bad it'll be that Buf -> Str -> Buf won't round-trip anymore for non-NFC UTF-8 | ||
I'm thinking of non-ASCII file names on OS X, for example | |||
15:23
nanis joined
|
|||
colomon | …. is Str expected to automatically normalize or something? | 15:23 | |
jnthn | The N in NFG stands for "normal" | 15:24 | |
PerlJam | Is today release day?!? The month went by far too quickly. | ||
jnthn | PerlJam: I know. :( I don't even know if I got a patch in this lst month... | ||
[Coke] | odd. just saw this ona bamboo build server that I'm running a work job on: | ||
E:\tools\Perl64 (in the path) | |||
nanis | Apologies, my network connection disappeared all of a sudden. Way to make an entrance. Catching up with what happened while I could not communicate. | ||
lizmat | PerlJam: yes, today is release day | ||
nanis | BTW, thank you raiph. | ||
colomon | jnthn: the idea that certain filenames might not be representable using Str any more is somewhat worrisome (if I'm understanding moritz correctly) | 15:25 | |
15:25
zakharyas joined
|
|||
masak | 'night, #perl6 | 15:26 | |
PerlJam | masak: sleep well! | ||
15:26
Ven left
|
|||
FROGGS | colomon: everything will be representable as Str, also with NFG | 15:27 | |
it is just when you convert it back to a Buf, you cannot be sure about the ordering of the things of a grapheme cluster | 15:28 | ||
except, we make it keep an order | |||
moritz: that does also apply to NFC, no? | 15:29 | ||
moritz | FROGGS: nope | ||
15:29
ajr_ left
|
|||
moritz | FROGGS: every normalization loses the original form | 15:30 | |
nanis | I know a tiny amount of Perl6, but I am OK with Perl5 and C and some Java. The easiest way from me to get my feet wet might be to look at some tests. | ||
moritz | FROGGS: and on file systems, which operate on the byte level, the conversion back to Buf doesn't necessarily reproduce the same bytes | 15:31 | |
PerlJam | lizmat: I'm looking at the announcement ... the one about <.foo> is regarding grammars, right? | ||
moritz | nanis: that's how I started too | ||
15:31
ajr joined
|
|||
nanis | Are there any specific parts that would benefit from a look? | 15:31 | |
lizmat | PerlJam: github.com/rakudo/rakudo/commit/7b...63ad10cb26 | ||
15:31
ajr is now known as Guest39984
|
|||
FROGGS | nanis: tests in RT that are tagged testneeded | 15:31 | |
moritz | FROGGS: so even with one base character + one modifier, NFG and NFC will produce a composed form (if exists), and conversion back to Buf will not round-trip | ||
nanis | FROGGS: Thank you. | ||
I am going to take a look. | 15:32 | ||
PerlJam | right, got it. | ||
FROGGS | moritz: we could keep lists of the parts of a grapheme cluster though, Justin Case | ||
PerlJam | lizmat++ thanks | ||
FROGGS | might not be the fasted what we can do though | 15:33 | |
15:33
TuxCM left,
|Tux| joined
|
|||
PerlJam | moritz: do they *need* to round-trip? | 15:33 | |
15:34
Guest39984 left,
virtualsue left
|
|||
moritz | PerlJam: if a file name is in a decomposed form, and the not-quite-round-trip produces the composed form, you'll get an ENOENT | 15:35 | |
15:35
ajr_ joined,
ajr_ left
|
|||
moritz | PerlJam: ... with a file name that looks *exactly* like the one that 'ls' shows you | 15:35 | |
15:36
ajr_ joined,
ajr_ left
15:38
ajr_ joined
|
|||
FROGGS | yeah, I also think that this can steal you a buttox | 15:38 | |
though, if you are in such a weird situation you might just work with Bufs only | |||
moritz | and curse the stupid P6 developer that all of the IO::Path operations are Str-based, and you have to reinvent them | 15:39 | |
FROGGS | exactly :o) | 15:40 | |
15:41
khisanth_ joined
15:42
zakharyas left
15:44
Khisanth left
|
|||
arnsholt | moritz: That's a very good point regarding file names | 15:51 | |
It'll work fine on OS X (or rather, HFS+) though. It's *nix FSes that'll have trouble I think | |||
Since HFS+ (and NTFS I think) do their own normalisation of filenames | 15:52 | ||
raiph | nanis: fyi, rt shortcuts rakudo.de/needstest and rakudo.de/hastest # moritz++ | 15:53 | |
15:53
regreg left,
smls joined
|
|||
nanis | raiph: Yup, I am there, browsing through right now. Thanks. | 15:54 | |
15:56
JimmyZ left
|
|||
Ulti | so when I use tr/// I get a StrDistance back, the before and after are populated but I get a Method distance not found when I try and get at that? is this just a NYI? | 15:57 | |
oh its private | 15:58 | ||
smls | m: $_ = "foo"; say +tr/o/u/ | 15:59 | |
camelia | rakudo-moar b8246f: OUTPUT«2» | ||
15:59
anaeem1 left
|
|||
Ulti | ahh so its just Int that gets it for you | 15:59 | |
nice | |||
16:00
anaeem1_ joined,
anaeem1_ left
16:01
anaeem1 joined
|
|||
raiph | nanis: S99:LTA in case you were wondering :) | 16:01 | |
synopsebot | Link: perlcabal.org/syn/S99.html#LTA_in_c...ndering_:) | 16:02 | |
raiph | er, S99:LTA | ||
synopsebot | Link: perlcabal.org/syn/S99.html#LTA | ||
16:03
brrt left
|
|||
nanis | raiph: ;-) | 16:04 | |
Ulti | smls++ for that :P I assume one day someone is going to benchmark the ++ | 16:05 | |
carlin | m: my $x = 18 / 0; say $x > 42000000 | 16:07 | |
camelia | rakudo-moar b8246f: OUTPUT«True» | ||
ugexe | 42000000 mannn | ||
PerlJam | m: my $x = 18 / 0; say $x | 16:08 | |
camelia | rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Int' but got 'Failure' in any return_error at src/vm/moar/Perl6/Ops.nqp:649 in method floor at src/gen/m-CORE.setting:11254 in method Str at src/gen/m-CORE.setting:11275 in method gist at src/ge…» | ||
PerlJam | huh | 16:09 | |
16:09
ajr_ left
|
|||
FROGGS | Int-eresting | 16:09 | |
16:09
ajr__ joined
|
|||
nanis | Need to go right now, but thanks for the guidance. Will be back with questions. | 16:10 | |
Ulti | its because you get a Rat rather than doing the division at that point | ||
FROGGS | ahh, delayed calculation, aye | 16:11 | |
Ulti | once you do anything with it you get the exception | ||
apart from say | |||
*shrug* | |||
PerlJam | Ulti: not *anything* and evidenced by carlin's original code | ||
16:11
nanis left
|
|||
Ulti | aye | 16:11 | |
FROGGS | m: my $x = 18 / 0; say $x < 42000000 | 16:12 | |
camelia | rakudo-moar b8246f: OUTPUT«False» | ||
FROGGS | m: my $x = 18 / 0; say $x + 1 | ||
camelia | rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Int' but got 'Failure' in any return_error at src/vm/moar/Perl6/Ops.nqp:649 in method floor at src/gen/m-CORE.setting:11254 in method Str at src/gen/m-CORE.setting:11275 in method gist at src/ge…» | ||
Ulti | hmmm thats odd | ||
FROGGS | m: say Failure > 42000000 | ||
camelia | rakudo-moar b8246f: OUTPUT«use of uninitialized value of type Failure in numeric context in block <unit> at /tmp/U2YHqDLyHj:1False» | ||
Ulti | if you do say after getting the exception you get the full stack trace and stuff | ||
PerlJam | It's looks like it's just the comparators that have problems. | ||
FROGGS | that does not make too much sense | ||
Ulti | so the say cant be doing the calculation | ||
TimToady | it's just really odd that < isn't forcing the calculation | 16:13 | |
carlin | m: my $x = 18 / 0; say $x > 9e999999999999999999999999999 | ||
camelia | rakudo-moar b8246f: OUTPUT«True» | ||
carlin | m: my $x = 18 / 0; say $x > 9e9999999999999999999999999999 | ||
16:13
FROGGS left
|
|||
camelia | rakudo-moar b8246f: OUTPUT«False» | 16:13 | |
moritz | m: say (18/0).bridge | ||
camelia | rakudo-moar b8246f: OUTPUT«No such method 'bridge' for invocant of type 'Rat' in block <unit> at /tmp/QpLDCPOYFS:1» | ||
Ulti | lol | ||
moritz | m: say (18/0).Bridge | ||
camelia | rakudo-moar b8246f: OUTPUT«Inf» | ||
moritz | m: say (18/0).Num | ||
camelia | rakudo-moar b8246f: OUTPUT«Inf» | ||
PerlJam | ah | ||
moritz | m: say (18/0).Real | ||
camelia | rakudo-moar b8246f: OUTPUT«Type check failed for return value; expected 'Int' but got 'Failure' in any return_error at src/vm/moar/Perl6/Ops.nqp:649 in method floor at src/gen/m-CORE.setting:11254 in method Str at src/gen/m-CORE.setting:11275 in method gist at src/ge…» | ||
Ulti | now you know the interval where / 0 exists then | ||
moritz | .Real/.Num vs .Bridge | 16:14 | |
16:14
ajr__ left
|
|||
TimToady | m: say (-18/0) < 0 | 16:14 | |
camelia | rakudo-moar b8246f: OUTPUT«True» | ||
TimToady | that's kind of assuming we approached 0 from the north side | 16:15 | |
PerlJam | looks like we've got a Bridge too far | ||
;) | 16:16 | ||
16:16
ajr_ joined
16:17
FROGGS[mobile] joined
16:21
abraxxa joined
16:26
vendethiel left,
fhelmberger left
16:27
fhelmberger joined
16:29
ghostlines left,
treehug88 joined
16:31
fhelmberger left
|
|||
Zheglov | perl6: sub infix:«+»(*@a) is assoc('list') { say @a ; 1 ; } ; 1 + 2 + 3 | 16:33 | |
camelia | rakudo-{parrot,moar} b8246f: OUTPUT«1 21 3» | ||
Zheglov | perl6: sub infix:«X»(*@a) is assoc('list') { say @a ; 1 ; } ; 1 X 2 X 3 | 16:34 | |
camelia | rakudo-{parrot,moar} b8246f: OUTPUT«1 2 3» | ||
Zheglov | why are they different? | 16:35 | |
16:36
vendethiel joined
|
|||
TimToady | perhaps because + is already defined as left assoc, while X is already defined as list assoc | 16:36 | |
try using operators that don't exist already | 16:37 | ||
16:37
ptc_p6 joined
16:38
abraxxa left
|
|||
TimToady | but it does look a bit like a bug that you can't override that for a local operator | 16:38 | |
16:38
KCL_ left
|
|||
FROGGS[mobile] | "calling an operator" makes me think I have to watch The Matrix again | 16:40 | |
Zheglov | TimToady: any pointers where to look (I'm very new to Perl)? | 16:41 | |
TimToady | this might not be easy...since addition is so primitive, it might be defined in the bootstrap | 16:42 | |
why do you wish to redefine + ? | 16:43 | ||
16:43
Ugator joined
|
|||
TimToady | it's also possible that the optimizer is assuming nobody has redefined + | 16:44 | |
Zheglov | trying to make the primitive operators for my class be `assoc('list')` | 16:45 | |
16:47
FROGGS joined
|
|||
TimToady | operators don't really belong to classes in p6; they belong to the current lexical scope | 16:49 | |
so even if you could do that in your scope, you couldn't force someone else's operators to behave that way without them helping | 16:50 | ||
also, we don't force you to overload existing operators like C++ does; we encourage people to define new operators instead, and leave the old ones with consistent semantics | 16:51 | ||
PerlJam | Zheglov: What is your class? Is it some sort of numeric-ish thing, or something else? | 16:52 | |
TimToady | also, I find your semicolon style rather difficult to read, but that's just an unrelated comment :) | ||
awwaiid | TimToady: I thought you could also do an infix method? I'm probably just not remembering correctly | 16:53 | |
TimToady | and to add to PerlJam's question, what benefit do you see in making + into a list associative operator? | 16:55 | |
colomon | (and note that if you do that, you will probably break normal uses of + ) | 16:56 | |
osfameron | but only within that lexical scope, so it's ok (if a bit weird) surely? | 16:57 | |
Zheglov | PerlJam: Just playing around with p6 | ||
colomon | osfameron: only within that scope, sure. | ||
dalek | rl6-roast-data: caacf44 | coke++ | / (5 files): today (automated commit) |
||
Zheglov | TimToady: how to write it better? | 17:00 | |
[Coke] | OSX daily runs: parrot still the only clean build. moar getting worse. | 17:01 | |
PerlJam | Zheglov: give more information about what you're doing and why you're doing it :) | ||
17:01
telex left
17:02
telex joined
|
|||
TimToady | I'd probably write it like this, to make clear that I'm trying to override the built-in: | 17:02 | |
m: only sub infix:<+>(*@a) is assoc('list') { say @a; 1; }; 1 + 2 + 3 | |||
camelia | rakudo-moar b8246f: OUTPUT«1 21 3» | ||
TimToady | but it still runs into the fact that it ignores the assoc trait | ||
m: only sub infix:<plus>(*@a) is assoc('list') { say @a; 1; }; 1 plus 2 plus 3 | 17:03 | ||
camelia | rakudo-moar b8246f: OUTPUT«1 2 3» | ||
Zheglov | TimToady: I see, thought you mean semicolon as in `;` | 17:05 | |
17:06
ptc_p6 left
|
|||
PerlJam | Zheglov: I'm pretty sure he did. Putting spaces on both sides of the semicolon is a little weird. It kind of loses its meaning as "punctuation" and becomes more "wordy" (at least for me) | 17:06 | |
Zheglov | PerlJam: OK, got it. | 17:09 | |
PerlJam: I'm playing with symbolic math expressions where there are many `+` operations | 17:12 | ||
In that case it would be more useful (for me) to get an operator and list of arguments | 17:13 | ||
PerlJam | but why overload + for it? Seems like a recipe for strange behavior when you mix it with the normal math ops | 17:15 | |
(and if you're never going to mix it with the normal math ops, why not give it a unique or special-purpose name anyway?) | |||
Zheglov | I suppose so. What about using multiple dispatch, so that this behaviour is only apply to certain objects? | 17:19 | |
in conjunction with `is assoc('list')` | |||
raydiak | g'morning #perl6 | 17:21 | |
TimToady | multiple dispatch is a run-time activity, and cannot change the parse retroactively | 17:22 | |
at best, we know the candidate list at compile time, but if the candidates demand different kinds of parsing, we're hosed | |||
raydiak | when a project grows to a certain size and starts running in to difficult-to-diagnose rakudo failures like heisenbugs and precomp errors, is there anything that can be done to file a useful bug report without hours or days of golfing? | 17:27 | |
colomon wants to hear the answer to raydiak's question | 17:28 | ||
lizmat too | |||
TimToady | I dunno, the traditional response is to shoot the messenger, but that seems...suboptimal... | 17:29 | |
colomon does not want to be shot | 17:30 | ||
raydiak | I feel like I'm not contributing, having stuff like "print ''; # TODO reduce & report" scattered all over my project, but I'm really not up to trying to golf that kind of mystery right now, when it just spontaneously springs forth after doing nothing out of the ordinary | ||
raydiak does not want his laptop shot :) | |||
lizmat | is raydiak on OS X by any chance ? | ||
PerlJam | raydiak: convince one or more of the denizens of #perl6 to help? | ||
raydiak | lizmat: nope, 64-bit linux | 17:31 | |
PerlJam: heh are you volunteering to golf my multi-thousand-line mess? | |||
lizmat | hmmm... intriguing | 17:32 | |
PerlJam | raydiak: not really right now, but if you could write a little bit about where your code is located, what the problem is, and how I can reproduce it, I might be inclined to look at it later | ||
lizmat | raydiak: I assume spectest is clean on your laptop ? | 17:33 | |
raydiak | PerlJam: remove all the "print '';" from Math::Symbolic and watch it explode :) | ||
lizmat: does rakudobrew run that automatically? | |||
lizmat | I actually have no idea, but I would guess not | 17:34 | |
colomon | lizmat: ABC has precomp problems on 64-bit linux too. haven't even tried it on OS X, because I need ABC to work on at least one of my machines. (ie I'm not upgrading Rakudo there until this bug is fixed) | ||
rakudobrew does not run spectest automatically | |||
that would be slow. | |||
lizmat | indeed, that's what I thought | ||
raydiak | also there is a precomp bug (same module), which causes routines to vanish or something, gives a null something or another error | 17:35 | |
raydiak will spectest, but has updated rakudo several times over the last few weeks with the same results | |||
PerlJam | raydiak: does removing any one of the "print '' | ||
lizmat | hmmm.... that was supposed to have been fixed | ||
PerlJam | cause it to explode? | ||
lizmat | (at the expense of a much slower startup, I might add) | ||
colomon | lizmat: what was supposed to be fixed? | 17:36 | |
raydiak | PerlJam: hard to say, it's a heisenbug...I assume so? they were all needed where they are at one point or another, but it seems like they interact | ||
lizmat | the precomp bug with vanishing subs | ||
raydiak | so having addeed ones later on, some of the earlier ones might not be needed any more | ||
PerlJam: it'll give something like "Internal error: zeroed target thread ID in work pass" or so | 17:37 | ||
colomon | lizmat: if you mean hoelzro's Moar patch from about two weeks ago, that's actually what made the ABC precomp bug *start* happening | ||
lizmat | yes, *and* make rakudo siginificantly slower at startup | ||
raydiak wonders if the arduously-golfed Math::ThreeD precomp bug ever went away | |||
colomon | which (since his patch was very simple) I can only assume means something fairly fundamental is broken, and we're just twiddling what particular precomp errors show up | 17:38 | |
PerlJam | raydiak: will it explode when running the tests? | ||
lizmat | I'm going to revert that commit and test | ||
raydiak | PerlJam: after removing the prints? I believe so | ||
PerlJam | raydiak: and does it explode every time (just in unpredictable ways)? | ||
raydiak | PerlJam: the precomp bug doesn't manifest during testing, I wanted the module to be installable | 17:39 | |
PerlJam: when the appropriate print isn't there, I *think* it only explodes when that branch runs | |||
colomon | lizmat: just to be clear, we're both talking about 05b25a6359c7bcf5ab03357b0d0093f77d28ead6 ? | ||
lizmat | yup | ||
raydiak | PerlJam: but yes when it fails, it is repeatable | 17:40 | |
colomon 's precomp bug is 100% repeatable | |||
PerlJam | raydiak: can you give me a one-liner that I can cut-n-paste to make it explode? | ||
raydiak | PerlJam: if I could golf it to a one-liner I would have filed a bug instead of complaining here about my lack of long-term golfing tuits :) | 17:41 | |
PerlJam: oh, you mean a math::symbolic one-liner? | |||
PerlJam | raydiak: aye | ||
I cloned the repo, uncommented the prints, and ran the tests with no explosion | 17:42 | ||
raydiak | PerlJam: one sec lemme dig in my bash history | ||
PerlJam | (I'm just trying to make it explode once before I stop procrastinating on $work so that I can look at it later) | 17:43 | |
raydiak | PerlJam: try "symbolic --x='Vx*t+Px' --y='Vy*t+Py' --z='Vz*t+Pz' 't²=x²+y²+z²' t"...that one failed iirc | ||
PerlJam | gist.github.com/perlpilot/3777ffd262f82be0ba9e | 17:44 | |
raydiak is trying too | |||
just like a heisenbug, all of asudden I can't show you :P | 17:45 | ||
PerlJam | er, s/uncommented/commented/ above | ||
raydiak | yeah I assumed :) | 17:46 | |
PerlJam | maybe it fixed itself! ;) | ||
raydiak | not what you were asking, but for the precomp bug, "2²" is enough to trigger it | ||
PerlJam: heh I keep hoping if I just wait another week or two the rakudo elves will make it all go away | 17:47 | ||
lizmat has been doing that for over a month now :-( | 17:48 | ||
raydiak | for precomp, all the eval routines defined in Math::Symbolic::Language fail, just not the ones where it points at an external routine like &infix:<+> | ||
colomon extended rakudobrew to make it easier to track down exactly what rakudo/nqp/moar commit broke ABC, but that hasn't seemed to help actually get things fixed. | 17:49 | ||
dalek | osystem: f21bcbf | (Jorn van Engelen)++ | META.list: META.list: Added Pod::Strip. |
||
colomon | seems like maybe we need proper tools for looking at precomp issues? | ||
raydiak | yeah the print thing is weird, I can't trigger it again now, but I'll just be hacking along and all of a sudden with no obvious cause it just happens, until I try to debug w/say, then it goes away, so I just leave a print '' there | ||
17:49
Zheglov left
|
|||
PerlJam | raydiak: you've only been developing on a single machine? OR has the heisenbug shown up on multiple machines? | 17:51 | |
17:51
FROGGS_ joined
|
|||
raydiak | PerlJam: only working on the single machine lately | 17:52 | |
17:54
FROGGS left
17:55
Sqirrel left
|
|||
raydiak | starting spectest...vague question, but how long does this take on an average machine? | 17:56 | |
PerlJam | a long time | 17:57 | |
longer if you're using parrot or jvm | |||
raydiak: did you start it with TEST_JOBS=4 (or some other number) ? | 17:59 | ||
if not, it'll take *much* longer still | |||
raydiak | PerlJam: no, I don't really know much about running the test suite...it that for multicore? | ||
lizmat | colomon: just built Moar without 05b25a6359c7bcf5ab03357b0d0093f77d28ead6 and I still see flakyness | 18:00 | |
:-( | 18:01 | ||
colomon | lizmat: like I tried to say before, I don't think there's something fundamentally wrong with 05b25a6359c7bcf5ab03357b0d0093f77d28ead6, I think it just redistributes the flakiness. | ||
lizmat | ah, ok | ||
PerlJam | raydiak: aye, for running the tests in a parallel fashion | ||
colomon | lizmat: though it redistributed the flakiness on top of me, which I don't like. ;) | 18:02 | |
raydiak | PerlJam: thanks, restarted with both my cores being used :) | ||
lizmat | colomon: ;-( | ||
dinner& | |||
raydiak | PerlJam: I am also still trying to trigger that bug again, I'll let you know if I succeed | ||
18:03
cognominal joined,
dakkar left
|
|||
timotimo | o/ | 18:07 | |
18:07
Sqirrel joined
|
|||
raydiak | do I get to sue someone if my almost-literally-boiling cpu dies from the test suite? :) | 18:07 | |
\o timotimo | |||
colomon | raydiak: warning: do not hold laptop on lap during spectest. ;) | 18:09 | |
raydiak | colomon: heh good call, I was just shifting it sideways to get the cpu area off of my leg | 18:10 | |
timotimo | i collected a bit of a headache on the way home :\ | 18:11 | |
maybe i'll take a quick nap | |||
18:13
jluis left
18:14
jluis joined
|
|||
raydiak | a wet, white, slippery headache accumulated on the ground here today, to go along with our alaskan cold front or whatever's going on | 18:15 | |
18:17
guru joined,
guru is now known as Guest28117,
ajr_ left,
Guest28117 is now known as ajr_
|
|||
raydiak | I has spectest failures | 18:20 | |
18:21
gfldex joined
|
|||
raydiak | in S02-lists array, baghash, and lists | 18:22 | |
I think this is like yesterday's rakudo, or maybe the day before...should I rebuild and retest? | |||
erm, S02-types, that is | 18:23 | ||
TimToady | yes, rebuild from HEAD, which the tests are reflecting | 18:24 | |
(though they are benign failures) | 18:25 | ||
raydiak | thanks, doing so now | 18:26 | |
TimToady | it's the checking of @array[-1] at compile time instead of run time | ||
raydiak | oh right, from yesterday | 18:27 | |
PerlJam: still no luck with the heisenbug, guess I'll just have to put it in a git branch when I see it again; thank you for trying to help | 18:30 | ||
TimToady wonders if we should try supplying our own malloc with its own diagnostics | 18:31 | ||
[Coke] | TimToady: OSX has tons of malloc diagnostics. | ||
TimToady | might trap the freeing something not malloced thing on osx | ||
18:32
jpve left
|
|||
TimToady | but it doesn't give us a stacktrace, does it? | 18:32 | |
[Coke] | .... which are hard to use here, because adding "FROB=1" before the invocation causes the bug to go away. :| | ||
TimToady | would be nice to know *which* free is being called | ||
[Coke] | TimToady: "If set, malloc remembers the function call stack at the time of each allocation." | ||
TimToady: my moar ticket answered that. | |||
I got a reproducable thing I could run under lldb. | 18:33 | ||
TimToady | okay, am not omniscient :) | ||
[Coke] | gdb[OSX]=lldb, or close enough. | ||
TimToady: that's not what you said before! ;) | |||
TimToady | I know. :) | ||
[Coke] | mmhehehe | ||
TimToady | errands & | 18:34 | |
18:39
espadrine_ left
18:43
vendethiel left
18:44
rurban left
18:46
FROGGS_ is now known as FROGGS
18:47
vendethiel joined
|
|||
FROGGS | lizmat: will now have time to care about panda@windows | 18:48 | |
18:53
ajr_ left
|
|||
[Coke] | m: my $a = "this\tthat"; say $a.split(' ').perl; | 18:58 | |
camelia | rakudo-moar b8246f: OUTPUT«("this\tthat",).list» | ||
[Coke] | so, that's words or comb now; no easy way to get p5's "split ' ', 2" ? | 18:59 | |
lizmat | FROGGS: I'm back | ||
what would you want me to do | |||
FROGGS | lizmat: just be patient :o) | 19:00 | |
[Coke] | m: my $a = "this\tthat"; say $a.words(2).perl; | ||
camelia | rakudo-moar b8246f: OUTPUT«("this", "that")» | ||
[Coke] | ah, that easy way. :) | ||
lizmat | you doctor, me patient | ||
FROGGS | :P | ||
raydiak | spectest was clean...so when I do have these impractical-to-golf bugs, is there anything useful I can do with like strace or valgrind or something, to put in a bug report? or is it impossible to know what other information would be useful without talking to a rakudo dev about the specific error? | 19:01 | |
lizmat | valgrind would be helpful, afaik | ||
[Coke] | m: my $a = "this\tthat #icu"; say $a.words(2).perl; | 19:02 | |
camelia | rakudo-moar b8246f: OUTPUT«("this", "that")» | ||
[Coke] | ... ah. not that easy. the limit isn't doing what the limit in p5's split does. | 19:03 | |
Note: limit is used in the sig, but not defined in perlcabal.org/syn/S32/Str.html 's comb. | |||
raydiak | thanks lizmat, that at least gives me something I can say about "mysterious error" to report these things in rt when I don't know what else to do | 19:04 | |
hoelzro | lizmat, colomon: I think there's just something wrong deeper in precomp code, but I can't figure out what it is | 19:07 | |
my diamond test case triggers it with lazily deserialization, and ABC triggers it without | |||
colomon | hoelzro: right, I'm sure the overall problem is not the fault of that patch of yours. | 19:08 | |
lizmat: hints on running with valgrind? if moarvm works with it, that's certainly something I can do here. | |||
hoelzro | I would love to help fix it; I just don't even know where to start | ||
colomon | hoelzro: like I said earlier, my notion is that step one may be figuring out how to get meaningful debugging data on precomp names. finding out when the names are disappearing would be huge, I reckon. | 19:09 | |
that said, I've got no idea how to go about doing that in the code, I'm not familiar with the moar codebase in the least. | |||
hoelzro | agreed | ||
my stumbling block when figuring out the diamond thing was iterating over a given stash and printing out debugging info in the MoarVM codebase seemed impossible | 19:10 | ||
lizmat | colomon: no hints, I'm afraid | 19:14 | |
19:14
rindolf left
|
|||
colomon | afk # errands | 19:15 | |
lizmat | hoelzro: looking at MoarVM code near your patch | 19:17 | |
hoelzro | I'm thinking the real problem is in NQP or Rakudo, since my diamond bug is still present on the JVM | 19:18 | |
lizmat | the sha1 function declares a char output[80], but a few lines down a 40 is specified | ||
that looks fragile | |||
hoelzro: then perhaps we *should* revert your patch, to get easier to debug breakage ? | 19:19 | ||
hoelzro | hmm | 19:20 | |
that's a good point | |||
I'm not really doing anything with Perl 6 lately, so it doesn't really hurt me | |||
btw, when looking at ABC, I noticed that omitting 'use Test;' fixed the disappearing keys | 19:21 | ||
I wanted to try and golf it down to something I could file a ticket with, but time has not been on my side lately =/ | |||
lizmat | just for the sake of the argument, could you remove the Test.pm.moarvm file and see if it still happens if you add back the 'use Test' ? | 19:22 | |
hoelzro | hmm | ||
I don't konw | |||
that's a good question | |||
19:23
xinming_ left
|
|||
hoelzro | nope, the same result | 19:24 | |
lizmat | ah? then it *isn't* precomp related, I would say | ||
raydiak | idk how related this is, but #121319 is an old precomp bug I first had under jvm and just confirmed still exists under modern moar | ||
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=121319 | ||
lizmat tries to run spectest with a Test.pm from source | |||
19:24
xinming joined
|
|||
hoelzro | lizmat: but when ABC isn't precomp'd, it works | 19:25 | |
19:28
Ugator left
|
|||
hoelzro | lizmat: reducing Test.pm to just variables "fixes" the problem | 19:30 | |
lizmat | ?? what do you mean by that ? | ||
just variables? | |||
hoelzro | however, if the variables have an initial value (my $var = '' rather than just my $var;), it breaks again | ||
lizmat: I stripped out all of the actual test code and am just doing .say for ABC::.keys | 19:31 | ||
lizmat | aahhhh | ||
hoelzro | when I say "break", I mean that the keys listing is incomplete | ||
sorry, didn't mean to freak you out =) | |||
lizmat | now, *that* rings a bell with the various problems I've seen with making @*INC initialization lazy | ||
FROGGS | lizmat: okay, so dir() needs to return forward slashes, or, "C:\\foo\\bar" ~~ 'C:/foo/bar'.path should be true | 19:32 | |
lizmat checks on the current state of dir() | 19:33 | ||
FROGGS | I'd favour the latter fwiw | ||
lizmat | oooh wow: ===( 24142;135 8/11 8/17 5/17 0/? 0/? 1/5 0/? 0/? )========Can't use an undefined value as an ARRAY reference at /usr/local/lib/perl5/5.20.0/TAP/Parser/Multiplexer.pm line 138. | ||
sorry, squirrel | 19:34 | ||
lizmat tries something | 19:36 | ||
19:36
virtualsue joined
|
|||
FROGGS | leont patched that TAP::Parser just recently, right? | 19:36 | |
I am testing that now btw: | 19:37 | ||
multi method ACCEPTS(IO::Path:D: Mu \that) { | |||
- nqp::p6bool(nqp::iseq_s($!path,nqp::unbox_s(IO::Path.new(|that).path))); | |||
+ nqp::p6bool(nqp::iseq_s($!path.abspath,nqp::unbox_s(IO::Path.new(|that).path.abspath))); | |||
} | |||
ohh, that's not quite right | |||
19:37
KCL_ joined
|
|||
lizmat | nqp::p6bool(nqp::iseq_s($!path.abspath,nqp::unbox_s(IO::Path.new(|that).abspath))); | 19:41 | |
eh.... | |||
FROGGS | nqp::p6bool(nqp::iseq_s($.abspath,nqp::unbox_s(IO::Path.new(|that).abspath))); | ||
lizmat: that seems to make panda work: gist.github.com/FROGGS/3f7f5444d867055e946a | 19:44 | ||
lizmat doublechecks | 19:45 | ||
FROGGS | yeah, need to spectest it on linux and windows before comitting that :o) | 19:46 | |
19:46
guru joined
|
|||
FROGGS | though the approach might not be too bad | 19:46 | |
lizmat | Linux is a bit of pb for me, OS X I *can* test | ||
19:46
guru is now known as ajr_
|
|||
FROGGS | I can test linux luckily | 19:46 | |
19:47
raiph left
|
|||
jdv79 | now, with an action class attached, my p6 version of a p5 parser for a simple lang is now taking 100ms vs p5's 300ns. somehow the actions are 66% of the runtime. | 19:47 | |
smls | Someone started working on Perl 6 syntax highlighting for Kate, right? What became of that? | ||
FROGGS | jdv79: compiletime* | ||
jdv79 | sure | 19:48 | |
lizmat | FROGGS: panda installs ok with that patch | ||
still running spectest | |||
FROGGS | nice | ||
19:48
raiph joined
19:49
virtualsue left
|
|||
TimToady | at some point we should figure out how to attach action routines directly to the corresponding parse routine so we don't do a second method dispatch | 19:49 | |
at least, not more than once | |||
19:50
darutoko left
|
|||
moritz | jdv79: do the action methods do any list iteration, by chance? | 19:50 | |
lizmat | FROGGS: checking flappers | ||
FROGGS | TimToady: true, I guess we do the .^can several times | ||
TimToady | just have to make sure you recalculate when you derive a new language | 19:51 | |
FROGGS | we already have another cache that gets invalidated when you mix into a class | ||
so, infrastructure is in place | |||
TimToady | but our whole compile process does a lot more hash lookups than is healthy | ||
FROGGS | I just forgat what the other cache was about | ||
TimToady | a hash cache is still a hash | 19:52 | |
moritz | FROGGS: method cache? | ||
FROGGS | moritz: I dunno... I just know I fixed the invalidation like two years ago | ||
TimToady | but that's not something to work on today... | ||
FROGGS | :o) | 19:53 | |
at least not in nom | |||
lizmat | ok, all spectests seem ok (except the diamond one, need to revert my MoarVM change) | ||
timotimo | i tried to get the cat to cuddle with me during my nap by accumulating a bit of strangury, but it didn't work, because someone was cooking dinner in the kitchen | ||
FROGGS | lizmat: you're using 2014.11 for moarvm anyway | ||
TimToady is still trying to get longlits right on alternations, though they seem to work right on protoregexes | 19:54 | ||
FROGGS | lizmat: so you don't need to revert something for the rakudo release | ||
timotimo | is strangury a word people would use in a normal conversation? | ||
lizmat | true, but I do need to revert it locally :-) | ||
raydiak | timotimo: I have no idea what it means :) | ||
lizmat | .oO( Confuse A Cat Ltd. ) |
||
timotimo | raydiak: my dictionary suggests it's a shorter version of "desire to urinate" | ||
raydiak | timotimo: heh I see | 19:55 | |
TimToady has never seen that word | |||
timotimo | okay :) | ||
dalek | kudo/nom: 8af3ebe | (Elizabeth Mattijsen)++ | src/core/IO/Path.pm: Fix for Panda breakage on Win32, FROGGS++ |
19:56 | |
timotimo | i know that cats can sense when someone needs to go to the toilet soon and they then get on that person's lap or something | ||
TimToady | the weird thing is that it seems like alternations are building the NFA twice, according to my debug output | ||
jdv79 | moritz: of course | ||
TimToady | so maybe there are some cheap cycles to cut out there | 19:57 | |
timotimo | do we actually spend a noticable time building NFAs? that only happens during compilation and the NFAs then get serialized, right? | 19:58 | |
20:00
Mso150 joined
|
|||
TimToady | presumably | 20:01 | |
moritz | jdv79: list iteration is very slow right now :( | 20:02 | |
20:02
kaleem joined
|
|||
lizmat | unless somebody has a very urgent issue, I will start the actual release process in about 15 mins | 20:05 | |
FROGGS | lizmat: +1 | 20:06 | |
20:10
beastd joined
|
|||
FROGGS | TimToady: that was the commit I was talking about: github.com/rakudo/rakudo/commit/90...0994823ff3 | 20:11 | |
20:13
Mso150 left,
ptc_p6 joined,
anaeem1 left
|
|||
timotimo | lizmat: looking forward to it :) | 20:14 | |
thanks for taking the time | |||
dalek | kudo/nom: 294d5ab | (Elizabeth Mattijsen)++ | docs/release_guide.pod: Move release into place in release_guide |
20:16 | |
20:17
rurban joined
|
|||
dalek | p: f36a441 | (Elizabeth Mattijsen)++ | VERSION: bump VERSION to 2014.11 |
20:20 | |
jdv79 | it not complete but here's what i'm talking about: nopaste.info/80d1ca6277.html | 20:23 | |
vendethiel | .tell hoelzro github.com/github/linguist/issues/1680 | 20:24 | |
yoleaux | vendethiel: I'll pass your message to hoelzro. | ||
hoelzro | vendethiel: great =/ | 20:25 | |
yoleaux | 20:24Z <vendethiel> hoelzro: github.com/github/linguist/issues/1680 | ||
hoelzro | thanks for letting me know | ||
I knew they were switching, but I didn't expect it to be so quick | |||
vendethiel | hoelzro: github is doing a shit job at this linguist thing. | ||
hoelzro | vendethiel: what would you say is shitty about it? | 20:26 | |
vendethiel | hoelzro: the people around it. | ||
hoelzro | I have my own opinions, but I would like to hear yours first =) | ||
vendethiel | It literally required somebody to blog about this damn mess so that they could get the >1 year old PR out of the way | ||
lizmat | grr.... can't build nqp on parrot :-( | ||
hoelzro | vendethiel: there was a blog entry? | ||
vendethiel | yea, somebody complained about github doing utter shit about linguist, so they fixed it | 20:27 | |
lizmat | Undefined symbols for architecture x86_64: | ||
"_Parrot_longopt_get", referenced from: | |||
_main in main.o | |||
ld: symbol(s) not found for architecture x86_64 | |||
does that ring a bell with anybody? | |||
vendethiel | but before, they were more than 100 pull requests opened, and nobody answering them. > 1 year "queue time" | ||
hoelzro | vendethiel: oh, *that* one | ||
I remember nodding my head so much when reading it | |||
vendethiel | well, there were 2 follow ups (by other people) around that | ||
hoelzro | but I don't think they fixed anything after that | 20:28 | |
vendethiel | well, it's processing faster now. | ||
hoelzro | my PR for Perl 6 fixes has been sitting there for 10 months | ||
just saying "hey, these files are also valid Perl 6" | |||
vendethiel | It took me like 6 months to get my PR into pygments accepted | ||
hoelzro | pygments, or pygments.rb? | ||
vendethiel | pygments. | ||
hoelzro | really? | ||
they were super fast for me | |||
vendethiel | it's on bitbucket and the maintainer does NOTHING about this project | ||
hoelzro | like a few days | ||
including review | 20:29 | ||
and fixes on my part | |||
vendethiel | then 8 months to get it into github | ||
complete mess | |||
hoelzro | yeah, pygments.rb + linguist are a mess | ||
vendethiel | maybe it was pygments.rb, can't remember | ||
hoelzro | but someone files a PR for Swift? merged in 15 minutes | ||
vendethiel | but think it was python | ||
hoelzro | pygments.rb is almost completely ignored by its "maintainers" | ||
I found pygments to be quite active | |||
timotimo | devassistant.org/ - seems kinda cute | 20:30 | |
i shall have a look at building a perl6 script for that | |||
vendethiel | maybe it was .rb then :) whichever github used | ||
so might be .rb | |||
hoelzro | probably | ||
20:31
ptc_p6 left,
rurban left
20:33
pdcawley left
|
|||
FROGGS | lizmat: about nqp-p@osx... I had similar issues on linux and win32, and rurban fixed it just in time... | 20:33 | |
lizmat: no luck for osx user I'd say | 20:34 | ||
lizmat | well, could be that building 3 backends at the same time gives the problem | ||
now building seperate backends | |||
FROGGS | lizmat: I'd thought about declaring parrot experimental on windows in case it would have been broken on win32 for the release | 20:35 | |
lizmat: no, don't think that will help | |||
lizmat | well, then maybe revert to an earlier parrot version ? | ||
moritz | is star-m still considered experimental? | ||
FROGGS | he's just a one man army without a group of testers | ||
moritz: no, it is our flagship | |||
[Coke] | lizmat: on OSX, I always build separate backends, if that helps. | 20:37 | |
20:37
kaleem left
|
|||
FROGGS | lizmat: that will break other stuff | 20:39 | |
lizmat | FROGGS: building separately will break other stuff ?? | 20:41 | |
FROGGS | lizmat: no, reverting to 2014.08 | ||
lizmat | ah, ok | ||
well, separate build for parrot built ok and tested ok | |||
FROGGS | O.o | ||
that is really weird | 20:42 | ||
20:42
kaleem joined
|
|||
lizmat | I'm getting used to weird :-( | 20:43 | |
FROGGS | yeah, sadly | ||
moritz | lizmat: when you have separate builds on different backends, could you please do a 'git clean -xdn' (the -n tells it not to remove anything) in each build, and record the output for me? | ||
maybe there are some files overlapping due to platform-specific stuff | |||
20:43
spider-mario joined,
kaleem left
|
|||
lizmat | moritz: will do later, for now I'm buidling in 3 different clones, one for each backend | 20:44 | |
precisely to prevent any interaction :-) | |||
moritz | lizmat: ok, no hurry | ||
(it's a shot in the dark, really) | 20:45 | ||
FROGGS | you can run his command in these clones later, no? | ||
moritz | lizmat: oh, and please do it in nqp too | ||
yes | |||
dalek | p: 4230e03 | (Elizabeth Mattijsen)++ | docs/release_guide.pod: Mention building separately for different backends |
20:46 | |
arnsholt | What's the lexotic op in NQP for, apart from returning stuff? | 20:47 | |
moritz notices that the rakudo-m build on linux produces a dynext/container.o and a dynext/perl6-ops.o, both of which don't have any 'moar' or 'm-' in the name | |||
20:48
kaare_ left
|
|||
moritz | arnsholt: seems to be about lexically restricted exception handlers | 20:49 | |
arnsholt: does that make any sense to you? :-) | |||
lizmat | $ make release VERSION-2014.11 | 20:54 | |
make: *** No rule to make target `release'. Stop. | |||
huh? | |||
FROGGS | s/-/=/ | 20:55 | |
lizmat | $ make release VERSION=2014.11 | ||
make: *** No rule to make target `release'. Stop. | |||
FROGGS | grep release Makefile ? | ||
lizmat | nothing :-( | 20:56 | |
FROGGS | yeah, on my box too | ||
lizmat: it is only in the Makefile-Parrot.in :o) | 20:57 | ||
lizmat | aha! | ||
testing nqp tarball noq | 20:59 | ||
now | |||
I don't think I can upload it though | |||
FROGGS | I can | ||
lizmat | kewl | 21:00 | |
dalek | p: bef19e0 | (Elizabeth Mattijsen)++ | docs/release_guide.pod: Mention FROGGS++ as one of the people to upload |
21:01 | |
PerlJam | lizmat: are you liz@LizyPro? | 21:03 | |
vendethiel | Lizy Pro (TM) | ||
PerlJam | from the authorized_keys file, it looks like Coke, timotimo, and sergot (and lizmat if that's her) can also upload | ||
timotimo | o/ | 21:04 | |
maybe | |||
is that timo@schmetterling? also, what host is that? | |||
PerlJam | timotimo: aye. rakudo.org | ||
tony-o | snap | 21:05 | |
timotimo | let me see | ||
lizmat | PerlJam: for some reason I'm at LizyPro-2 | ||
timotimo | ah, yes indeed | ||
tony-o | PerlJam: check this out for sql :: github.com/tony-o/perl6-slang-sql/...01_basic.t | ||
PerlJam | tony-o: whoa! That's nice. | 21:06 | |
tony-o: now all you have to do is get rid of the placeholders by making variable interpolation Do The Right Thing ;) | |||
tony-o | get rid of which placeholders ? | 21:07 | |
PerlJam | all of them! | ||
make "exec select * from stuff where id > $blah" Just Work | |||
arnsholt | moritz: More or less. Thanks! | 21:08 | |
PerlJam | (I don't have a clue how hard that would be, but I can dream a little bit, I think) | ||
tony-o | PerlJam: ahh, yea that might be iteration 2, that is probably not that hard - find variables pop them onto an array and replace with '?' | ||
dalek | p: 14905e2 | (Elizabeth Mattijsen)++ | docs/release_guide.pod: Mention 'make release' only for parrot Makefile |
21:09 | |
PerlJam | tony-o: Where did you come up with the "exec ... with" syntax from? (I would guess one of the embedded SQL flavors) | 21:11 | |
tony-o | i'm sure it exists somewhere but it seemed more natural than what i started with | ||
i originally had perform (vars) <sql> <block> | 21:12 | ||
the only language i've used with inline sql is ABAP and that starts off with just your sql | 21:14 | ||
21:15
smls left
|
|||
moritz | abap? isn't that the SAP thingy? | 21:16 | |
tony-o | yea, i think it exists outside of SAP but i use it related to SAP and data warehouse | 21:17 | |
PerlJam: did you have suggestions? | 21:18 | ||
PerlJam | tony-o: um ... keep up the good work? :-) | 21:19 | |
tony-o++ | |||
tony-o | i meant for syntax :/ | ||
:p | |||
PerlJam | no, not right off. What you have looks nice as a first cut. | 21:20 | |
timotimo upgrades to fedora 21 beta | |||
yays | |||
21:20
KCL_ left
21:21
perltricks left
|
|||
PerlJam | tony-o: that it's also familiar-ish because of its resemblance to embedded SQL dialects is a plus too. | 21:21 | |
21:29
spider-mario left
|
|||
PerlJam | tony-o: actually, after thinking about it a little more, you /might/ want to s/exec/SQL/ to make it super clear about which universe is impinging upon the Perl 6 code. Or at least something other than "exec" as that's kind of generic as far as terms go. | 21:30 | |
raydiak was thinking about 'sql' instead of 'exec' too | 21:32 | ||
dalek | kudo/nom: fd96de9 | (Elizabeth Mattijsen)++ | tools/build/NQP_REVISION: [2014.11] bump NQP revision |
21:38 | |
tony-o | PerlJam: raydiak: i'll change it so it's clear when reading | 21:39 | |
dalek | kudo/nom: f195135 | (Elizabeth Mattijsen)++ | VERSION: [2014.11] bump VERSION |
21:40 | |
PerlJam | tony-o: do you have to export the perform sub in order for it to be called? That seems like an implementation detail that shouldn't necessarily be part of the interface. | 21:41 | |
tony-o | PerlJam: i'm trying to figure that part out before i release it | ||
i don't like having the sub floating around either | 21:42 | ||
ugexe | tony-o: i dont think you can use placeholders everywhere in a sql query | ||
PerlJam | ugexe: yeah, usually you can't use it for the table name for instance. | 21:43 | |
ugexe: though that | 21:45 | ||
ugexe: though that's one thing tony-o could abstract away from the user such that it magically Just Works and the user doesn't need to know *how* | 21:46 | ||
tony-o | yea it would take some fiddle | ||
ugexe | yeah, i was just pointing out it wouldnt be just s/// | ||
21:46
FROGGS[mobile] left
|
|||
raydiak | is there a way to replace a method on a built-in type from user code? I'd like to hack on Mu.perl without recompiling rakudo over and over; or is there some other common approach to doing this? | 21:47 | |
tony-o | once i figure out the sub thing though, i'm going to unleash this thing | ||
PerlJam | raydiak: use MONKEY_TYPING; augment class Mu { ... } | 21:48 | |
raydiak: it might be MONKEY_PATCHING instead ... I haven't done this in a while. | |||
nope, looks like I was right the first time. | 21:49 | ||
raydiak | PerlJam: thanks! is there a way to replace the method instead of adding a multi? | 21:50 | |
Ulti | tony-o that's really cool can't you just have the select|insert|drop|create replace the 'exec' though? | ||
PerlJam | Ulti: I bet he could, with a little work, but I think it's "friendlier" to give the programmer a heads-up about what just happened to the syntax. | 21:52 | |
Ulti | I dunno I like the magic >:3 perhaps enforce uppercase to make it more obvious? | 21:53 | |
jdv79 | is there anyone working on fixing "pretty printing" | 21:54 | |
i imagine that would be a gist/perl type option, right? | 21:55 | ||
tony-o | Ulti: i was thinking about that, i was concerned that i might run into a scenario that wasn't covered by one of those ^ though I couldn't think of one | 21:57 | |
PerlJam | Ulti: maybe. | ||
jdv79: I seem to recall that there was once a .pretty just like .gist (only prettier :), but that was long ago (or I imagined it ;) | 21:59 | ||
Ulti | tony-o well MySQL has LOAD and it ends up being specific to each version of SQL I guess | ||
21:59
itz joined
|
|||
tony-o | Ulti: i guess i could just cover basic CRUD statements that apply to *most* SQLs and then just sql as the backup | 21:59 | |
22:00
kurahaupo_ left
22:02
itz_ left
|
|||
Ulti | yeah it wouldnt be impossible to just get all the primary statements for the things DBIsh covers either... MySQL at least provide a grammar of their implementation | 22:04 | |
jdv79 | the docs for gist seems to describe output that is pretty by default to me | ||
or does .gist vary that much from .perl that its not well suited | 22:05 | ||
22:06
grep0r joined
22:13
kjs_ joined
22:14
kurahaupo joined
22:16
Alina-malina left
|
|||
dalek | kudo/nom: 7191e49 | (Elizabeth Mattijsen)++ | docs/release_guide.pod: Mention FROGGS++ as one of the uploaders |
22:22 | |
raydiak | my main complaint with .gist is that it's often not pretty enough for output to users, and not detailed enough for debug output for developers, so it's good for...what? | ||
lizmat | to give you a gist ? | ||
raydiak | if it at least preserved brackets and list separators, I'd get a gist...as it is, I often don't get the gist from .gist | 22:23 | |
lizmat | "the substance or general meaning of a speech or text" | ||
FROGGS | raydiak: can you report unhelpful gists when you hit them? | 22:24 | |
lizmat | then it would be more like .perl | ||
raydiak | ish | ||
FROGGS: I think it's more of an opinion thing than a bug | |||
lizmat | well, the other day .gist lost the difference between @() and [] somewhere, which was confusing | ||
PerlJam | raydiak: you want .perl, but way prettier, right? (i.e. complete information, presented in an easy-for-humans-to-read manner) | 22:25 | |
lizmat | forget what it was exactly | ||
.oO( the old braincells are fading :-) |
|||
jdv79 | that's what i want - a readable dump | ||
22:25
gfldex left
|
|||
jdv79 | with no loss of structure | 22:25 | |
22:25
rurban joined
|
|||
raydiak | PerlJam: not from .gist, but yeah I want something like that in core | 22:26 | |
lizmat | wrt to the 2014.11 release process: tarball ok for Moar, testing parrot and JVM now | ||
(this takes a little longer) | |||
PerlJam | aye, sounds like you, jdv79 and me all want that thing (Whatever it is) | ||
raydiak | thinking .gist would be a ton better just with linebreaks and indentation, even sans brackets, comma, and so forth | ||
PerlJam | raydiak: except that .gist will sometimes give you things like ( 1, 2, ... ) instead of all the numbers | 22:27 | |
lizmat | 100 elements, it is even specced | ||
well, as a guideline | |||
jdv79 | .pretty - whatever. but basically it would just be .perl methods that take an indent at its simplest, right? | 22:28 | |
raydiak | PerlJam: yep, that'd be fine too, I just want something in between ".gist tells me nearly nothing about structure" and "can't read .perl's puntuation-laden single-line verbosity" | 22:29 | |
oh, doc appt, better go or I'll be stuck in the snow...back in a little bit o/ | |||
PerlJam | All we have to do is convince garu that he needs to make a P6 version of Data::Printer ;) | ||
22:31
kjs_ left
|
|||
FROGGS | well, the internal to-json can be of interest then | 22:32 | |
m: say to-json [[^3],4] | 22:33 | ||
camelia | rakudo-moar f19513: OUTPUT«===SORRY!=== Error while compiling /tmp/WCyzMyiSlyUnable to parse expression in bracketed infix; couldn't find final ']' at /tmp/WCyzMyiSly:1------> say to-json [[^⏏3],4]» | ||
FROGGS | m: say to-json [[ ^3 ],4] | ||
camelia | rakudo-moar f19513: OUTPUT«[ [ 0, 1, 2 ], 4]» | ||
FROGGS | m: say (to-json [[ ^3 ],4]).subst(' ', '.') | ||
camelia | rakudo-moar f19513: OUTPUT«[. [ 0, 1, 2 ], 4]» | ||
FROGGS | m: say (to-json [[ ^3 ],4]).subst(' ', '.', :g) | ||
camelia | rakudo-moar f19513: OUTPUT«[..[....0,....1,....2..],..4]» | ||
tony-o | FROGGS: do you know of a way to make the following sub callable (from line 61) without the 'export' bit? github.com/tony-o/perl6-slang-sql/...SQL.pm6#L3 | 22:40 | |
FROGGS | tony: you could call it as &Slang::SQL::sql here: github.com/tony-o/perl6-slang-sql/...QL.pm6#L63 | 22:41 | |
tony-o | ahh, duh | 22:42 | |
FROGGS | at least I think it should work | ||
might need to our scope the sub though | 22:43 | ||
PerlJam | tony-o: you'd have to add a "module Slang::SQL;" to the top of that file and say "our sub perform ... " | ||
FROGGS | EXPORT needs to stay in UNIT though AFAIK | 22:44 | |
so, the module declaration needs to happen after the EXPORT sub | |||
tony-o | i used curlies on it | ||
now i get a weird error | |||
if i do module declaration at the end then i get 'too late for semicolon form of module definition', if i curly the module then i get 'cannot find method 'orig'' | 22:47 | ||
hold on, i'll push | |||
github.com/tony-o/perl6-slang-sql/...SQL.pm6#L3 | 22:48 | ||
22:48
espadrine_ joined
|
|||
PerlJam | tony-o: the "too late for semicolon form" error is because module declarations of that form have to be the first thing in the file. | 22:49 | |
tony-o | PerlJam: yea that's why i curlied it, i don't understand the Cannot find method 'orig' error tho | 22:54 | |
PerlJam | you could eliminate all of this by writing the sql sub as QAST :) | 22:55 | |
tony-o | haha | ||
true | 22:56 | ||
22:58
mtk joined,
mtk left
|
|||
lizmat | tarball checked out ok for parrot, doing jvm now | 22:59 | |
23:00
kjs_ joined
|
|||
lizmat | hmmm.... | 23:00 | |
t/spec/S11-modules/export.rakudo.jvm (Wstat: 0 Tests: 36 Failed: 22) | |||
Failed tests: 3-20, 22-25 | |||
[Coke]: does that look familiar ? | 23:01 | ||
23:02
lucas_ joined
|
|||
lucas_ | Hi there! | 23:05 | |
I know nothing about the release process. The tarball already is on rakudo.org, but there is no git tag for rakudo? | |||
Ulti | tony-o perhaps you can include a connect string in the SQL keyword and keep a hash of those handles and open one if it doesnt exist | ||
23:05
FROGGS left
|
|||
lizmat | lucas_: shhhh | 23:05 | |
lucas_ | lizmat: oh, sorry. lizmat++ | 23:06 | |
lizmat | only need to test the tarball for jvm... | 23:07 | |
Ulti | tony-o so like SQL<SQLite:database.sql> | ||
lizmat | that will take ~1 hour, no need for FROGGS to stay up for that :-) | ||
23:08
kjs_ left
|
|||
Ulti is excited about a SQL slang, would make a lot of my research code look a lot slicker | 23:08 | ||
23:08
kjs_ joined,
treehug88 left
|
|||
ugexe | is there an easy way of getting a script's getopt commands, or do i need to inspect all the MAIN method captures? For instance: like how 'git' will suggest what you might have meant with a misspelt argument | 23:08 | |
23:13
jack_rabbit joined
|
|||
lizmat | ugexe: this is a dirty hack that's used in the settings: | 23:16 | |
$ 6 '.say for nqp::atkey(%*COMPILING, "%?OPTIONS")' | |||
"encoding" => "utf8" | |||
"transcode" => "ascii iso-8859-1" | |||
"e" => ".say for nqp::atkey(\%*COMPILING, \"\%?OPTIONS\")" | |||
note the "e" | |||
m: .say for nqp::atkey(%*COMPILING, "%?OPTIONS") | |||
camelia | rakudo-moar f19513: OUTPUT«"encoding" => "utf8""transcode" => "ascii iso-8859-1""setting" => "RESTRICTED"» | ||
ugexe | lizmat: perfect | 23:17 | |
lizmat | we probably need a better interface for this somehow | 23:18 | |
ugexe: forget it | 23:19 | ||
it only has the parameters that Perl6 itself understands :-( | 23:20 | ||
23:22
kurahaupo1 joined
23:23
prime joined
|
|||
prime | moritz: I'm interested in implementing ilbot, but HINRIK/Bot-BasicBot-0.81.tar.gz seems outdated as 0.82 is all that backpan.perl.org seems to offer. Is there a reason you used that version? | 23:24 | |
dalek | ast: cc95f52 | (Elizabeth Mattijsen)++ | S11-modules/export.t: Fix failing export tests for JVM backend I'm not sure whether the tests are bogus or not, but an exported sub in the EXPORT::ALL namespace has a different .WHICH from the original on the JVM. The exports themselves appear to be working as expected, from cursory testing. |
23:27 | |
23:27
vendethiel left
23:33
vendethiel joined,
telex left
23:34
telex joined
|
|||
lizmat | Helsinki has been released! | 23:40 | |
woolfy | lizmat++ | ||
Woohoooo!!! | |||
(so now we can finally go to sleep?) | 23:41 | ||
lizmat | yes | ||
good night, #perl6! | |||
dalek | Heuristic branch merge: pushed 32 commits to rakudo/newio by lizmat | 23:42 | |
lucas_ | Thanks for the release. Helsinki is a nice name. | 23:44 | |
23:47
lucas_ left
23:52
rurban left
23:59
[particle]1 left,
beastd left
|