»ö« 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.
dalek rl6-roast-data: 5d9f418 | coke++ | bin/rakudo. (4 files):
remove useless . in PERL6LIB
01:23
rl6-roast-data: 3a6f7d8 | coke++ | / (5 files):
today (automated commit)
TimToady now in Woodward, OK 03:31
5 03:33
terrible internet lag though...
yeahnoob more than my 0.6s lag in china's GFW? 03:38
TimToady my last sentence took about 2 minutes 03:40
yeahnoob Why the book face of "Around the world in 80 Day" suddenly appeared in my mind...:) 03:49
firefish5000 :m say "I'm the evalbot!"; 06:07
.seen camelia 06:08
yoleaux I saw camelia 24 Sep 2014 19:51Z in #perl6: <camelia> rakudo-parrot 5d8eeb: OUTPUT«(timeout)»
moritz firefish5000: camelia is currently broken 06:09
firefish5000 Alright, I hope she gets better soon! 06:11
firefish5000 recognizes camelia as a female butterfly
moritz m: 1 06:17
camelia ( no output ) 06:18
moritz 06:26
moritz m: 1 06:27
camelia rakudo-moar 5d8eeb: OUTPUT«_auto_execute 2 at lib/EvalbotExecuter.pm line 178.␤_auto_execute 3 at lib/EvalbotExecuter.pm line 198.␤_auto_execute 4 at lib/EvalbotExecuter.pm line 207.␤» 06:28
moritz eeks :-) 06:29
moritz m: say 42 06:29
curiously, the debug output shows that execution happens pretty much immediately 06:30
moritz so the delay is somewhere between execution and reporting to the channel 06:30
camelia rakudo-moar 5d8eeb: OUTPUT«42␤» 06:31
moritz m: say 42
camelia rakudo-moar 5d8eeb: OUTPUT«42␤»
nine moritz: will you be at the APW? 06:34
moritz nine: I don't know yet :( 06:37
FROGGS_ moritz: would be nice to meet you :o) 06:38
moritz FROGGS_: same here :-) 06:44
brrt \o 06:51
nine Good morning brrt! 07:14
brrt hi nine :-) 07:15
how is Inline::Perl5 doing
or rather
how are the boundaries holding up?
nine They are on a fast retreat ;) 07:15
FROGGS jnthn: I finally found the bad commit that broke NativeCall on JVM: gist.github.com/FROGGS/0d4b5c771c7d9eb4f5b6 07:17
brrt nice 07:21
nine Instead of technical challanges I'm more and more faced with issues of good API design for the sugar. 07:22
brrt tbh, relevance(good api design) < relevance(working code) 07:26
:-)
nine But it would be a shame to have such a nicely designed language and butt ugly interop ;) 07:27
In any case I'm currently on the other side, trying to use Inline::Perl5 to get a better feeling for the use cases and also to get some demonstration material for my talk at the APW. 07:28
brrt current western culture is not so certain about the ugliness of butts 07:32
in fact they have come into a re-appreciation of sorts
FROGGS jnthn: it is surprising, but that indeed helps:
@@ -2531,1 +2531,1 @@ class Perl6::Actions is HLL::Actions does STDActions {
- my $clone := !($outer =:= $*UNIT);
+ my $clone := 1; #!($outer =:= $*UNIT);
lizmat good *, #perl6! 07:55
FROGGS hi lizmat 08:03
lizmat FROGGS o/
sergot hi lizmat o/ 08:17
hi #perl6 o/
FROGGS hi sergot
sergot o/ FROGGS
lizmat afk for a few hours& 08:31
dalek ast: 5e95e5d | usev6++ | S0 (2 files):
Moving test for RT #77158 to S06-signature/types.t

test was added with github.com/perl6/roast/commit/b4fc...8740d07c7c
09:43
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=77158
dalek ast: 6a8904c | usev6++ | S02- (2 files):
Moved test for RT #76608 to S02-literals/misc-interpolation.t

test was added with github.com/perl6/roast/commit/b4fc...8740d07c7c
10:21
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=76608
lizmat I know not many people use perl 6 in production, but maybe it would be an idea to not "take" environment variables into %*ENV of which the value starts with "() {" ? 10:48
see e.g. lcamtuf.blogspot.nl/2014/09/quick-n...mpact.html
moritz lizmat: that's the entirely wrong level to fix that
lizmat why? 10:49
if somebody is using HTTP::Async::Server ?
moritz lizmat: then they should upgrade their bash, not their rakudo, to fix the security hole 10:50
jnthn lizmat: In the time they could spend updating their Rakudo to band-aid the problem, they could probably have updated their bash... :) 10:51
yoleaux 24 Sep 2014 17:00Z <lizmat> jnthn: this fixes the build breakage for me: github.com/rakudo/rakudo/commit/5d8eebfdc7
lizmat the way I understand it, is that the bash fix isn't 100% safe yet
moritz lizmat: we don't want to provide them with a false sense of security, and have them forget about other paths that invoke bash
lizmat: there will be a better fix Very Soon[tm], I'm sure
lizmat ok, just wanted to make sure we're doing everything we can in that respect 10:52
nine Sounds more like a really good argument for taint mode
lizmat true
nine Just to make sure: Perl 6 doesn't have a taint mode, doesn't it? 10:53
lizmat nope 10:54
jnthn FROGGS: Hm, that surprised me too... 10:55
lizmat jnthn: did you see my fix for yesterday's build crash on OS X 10:56
jnthn dinner & 10:59
dalek ast: 06d044d | usev6++ | S03-operators/misc.t:
added RT (122849) ticket number for fudged test
11:19
moritz m: say 42 11:22
camelia rakudo-moar 5d8eeb: OUTPUT«42␤» 11:22
moritz it seems the slowness in executing the first statement is in Bot::BasicBot somewhere
tadzik yes, I have the same thing with dinnerbot at work 11:24
the first query to it is sloow
moritz tadzik: oh, that's interesting 11:25
tadzik (that bot is in perl 5) 11:26
(still)
moritz tadzik: and makes me confident enough to report a bug against Bot::BasicBot 11:28
but first I'm trying to reproduce it with a minimal example 11:33
tadzik: does your dinnerbot join multiple channels?
tadzik moritz: no
lizmat does this ring a bell with anybody: "eof requires an object with REPR MVMOSHandle" ??
FROGGS lizmat: no 11:34
moritz lizmat: might be a read-after-close or so
lizmat hmmm.... 11:35
laziness.... gather ... hmmmm...
moritz tadzik: I can't reproduce it in a simplistic example :( 11:38
tadzik hm :/
moritz tadzik: does your bot execute any shell commands? 11:39
tadzik moritz: no 11:41
lizmat ok, interesting problem: 11:42
tadzik it does some sqlite
lizmat I have a gather / take loop while reading from a file
and I want to close the handle to the file when the gather/take loop is done
how do I do that?
moritz gather { loop { ... }; $fh.close }; 11:43
lizmat ah, but if the gather is the return value of a method ?
aka: IO::Path:D:.lines 11:44
moritz that doesn't matter, afaict
you can still do it inside the gather
the return value from gather is the list of take()s, not the last statement
lizmat ah, hhmmm... ok
good point :-) 11:45
moritz++ moritz++ (yes, twice in a row)
moritz tadzik: rt.cpan.org/Ticket/Display.html?id=99133 I've also CC'ed you on the bug report 11:52
TimToady yes, the inside of a gather is technically a sink 11:58
lizmat good morning, TimToady 12:05
moritz m: gather { (class { method sink { say 'sunk' } }).new } 12:08
camelia rakudo-moar 5d8eeb: OUTPUT«sunk␤»
moritz not just technically :-)
dalek ast: bc10238 | (Elizabeth Mattijsen)++ | S03-operators/misc.t:
Fix unquoted fudge message
12:12
lizmat open() shouldn't work on directories at all, right ? 12:19
Ven is panda known to be borked? 12:34
o/, #perl6 12:35
my rakudo is from Mon Sep 22 11:57:21 2014
Ven Compiling lib/Shell/Command.pm to mbc ===SORRY!=== When pre-compiling a module, its dependencies must be pre-compiled first. Please pre-compile /Users/raphaelkarpinski/os/rakudo/install/languages/perl6/site/lib/File/Find.pm 12:38
well, guess the jig's up
moritz tries
masak Ven: right now and for the remainder of September, trying to have a synchronous conversation with me is basically very difficult. I will make an honest attempt to answer asynchronously, though. 12:39
Ven masak: fair enough :). IRL is hard! 12:40
moritz Ven: panda just bootstrapped fine for me, on a rakudo from yesterday 12:41
Ven uh-oh.
Ven cleans and retries... 12:42
moritz: will you be at APW?
moritz Ven: ENOIDEAYET 12:44
Ven EFAIRENOUGH
(btw, works now with panda) 12:46
lizmat EWIPEISGOOD
TimToady -> Bella Vista, AR & 12:55
lizmat safe travels, TimToady!
jnthn
.oO( a mother in AR )
12:59
lizmat: Yes, saw the fix, though...not sure why it helped... 13:00
lizmat: And have a feeling it just changed enough to hid the heisenbug...
lizmat suggestions for me to try and get more info? 13:02
jnthn lizmat: I think it may have been related to the long-standing inlining bug...
lizmat: You could try reverting it and doing a build with ASAN if you use clang to compile 13:03
lizmat at nqp level?
jnthn MoarVM doesn't care if the code is NQP of Perl 6 when it goes inlining :)
*or
lizmat do we have a how-to with ASAN somewhere ?
jnthn It's a configure flag to Moar
lizmat ah, ok, will look 13:04
jnthn I...thought so anyway
moritz perl Configure.pl --asan
not documented though
jnthn It's not menitoned in Configure.pl --help :(
moritz docpatche 13:05
s
jnthn oh...me too ;) 13:06
Go for yours :)
moritz gone :-) 13:08
jnthn moritz++ 13:09
moritz also, there's --instrument 13:13
which seems to do roughly the same
lizmat adding --moar-option=--asan should be enough, right ? 13:17
moritz lizmat: I don't think that will force a moar rebuild
lizmat after I nuke install, it will :-)
clang: error: unsupported argument 'address' to option 'fsanitize=' 13:18
jnthn Aww...Copenhagen - Salzburg is too long to be conveniently trainable.
lizmat Munich - Salzburg is
flying to Munich shouldn't be too much of a pb
flying to Salzburg may be more problematic ? 13:19
nwc10 Jost Krieger's opinion is that Munich Airport is only accessible by air.
nwc10 He has a point. 13:19
it's faffy
OK, it's all rail-based transport. But it's still annoying.
they wisely decided not to build the monorail 13:20
jnthn lizmat: Well, it's a change of plane to Salzburg. There are sane options
But was fishing around for alternatives :)
Yeah, may consider Munich
lizmat Munich -> Salzburg is about 1 hour by car
jnthn yeah, train looks not long :) 13:21
nwc10 airport to Salburg is probably more like 2 by public transport
jnthn *nod*
nwc10 airport is on the wrong side of town
FROGGS I'm training all the way down from Berlin :o)
jnthn bbiab :)
nwc10 IIRC it's S1 or S8 to hbf, then 1 hour to Salzburg
lizmat am I missing something in my clang??? "clang: error: unsupported argument 'address' to option 'fsanitize=': 13:27
moritz lizmat: what's your clang version? 13:29
lizmat Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn)
Target: x86_64-apple-darwin13.3.0
Thread model: posix
pmichaud good morning, #perl6 13:31
moritz \o pmichaud
lizmat good morning, pmichaud 13:31
pmichaud I'm still trying to work out details for coming to salzburg. I have a meeting conflict on Oct 11 that I'm trying to work out. 13:32
lizmat cool!
(that you're trying to work it out, I mean :-)
pmichaud where are people staying ... what hotel should I reserve?
moritz lizmat, nine, FROGGS: turns out I'm not coming to APW :(. But if any of you want to make a stop in the Nürnberg area on your travels to or from Salzburg, I'd be happy to arrange a meeting 13:33
also nwc10 ^^
FROGGS :o( 13:35
moritz: it's unlike that I jump out the the ICE near Nuremberg though :/ 13:36
of*
grondilu m: class Foo {...}; constant foo = Foo.new; class Foo {} 13:45
camelia rakudo-moar 5d8eeb: OUTPUT«===SORRY!===␤No such method 'new' for invocant of type 'Foo'␤»
grondilu n: class Foo {...}; constant foo = Foo.new; class Foo {}
camelia niecza : OUTPUT«Cannot open assembly './run/Niecza.exe': No such file or directory.␤»
grondilu r-j: class Foo {...}; constant foo = Foo.new; class Foo {}
camelia rakudo-jvm 5d8eeb: OUTPUT«Can't call method "syswrite" on an undefined value at /home/p6eval/jvm-rakudo/eval-client.pl line 32.␤»
moritz grondilu: this can't ever work 13:46
grondilu why not?
lizmat constant is compiile time?
moritz grondilu: the constant expression is evaluated at compile time; at that point, Foo is only stubbed, the class definition hasn't been parsed yet 13:47
grondilu: so Foo doesn't even have a method new inherited from Mu yet
grondilu it works with functions, doesn't it?
m: constant foo = f(); sub f() { pi }; say foo 13:48
camelia rakudo-moar 5d8eeb: OUTPUT«===SORRY!===␤Cannot invoke null object␤»
grondilu thought that would work
m: sub f {...}; constant foo = f(); sub f() { pi }; say foo 13:49
camelia rakudo-moar 5d8eeb: OUTPUT«===SORRY!=== Error while compiling /tmp/4FTeIi6JkW␤Redeclaration of routine f␤at /tmp/4FTeIi6JkW:1␤------> .}; constant foo = f(); sub f() { pi }⏏; say foo␤ expecting any of:␤ postfix␤ s…»
grondilu :/ 13:50
grondilu Foo is stubbed but it still inherits from Any, doesn't it? So it should have the default new candidate, shouldn't it? 13:51
grondilu there has to be a way to define a constant instance, right? I would have sweared I already done something like that. 13:53
moritz it only starts to inherit from any once the } of the actual class definition is parsed
(that is, at class composition time)
grondilu so no constant instance is possible at all?? 13:54
moritz it is, after the actual declaration
grondilu :/ 13:55
not great
moritz sadly, Perl 6 doesn't have support for time travelling.
bartolin I've got a question about t/spec/S03-smartmatch/hash-hash.t
the file was recently removed from t/spectest.data (IIRC since it didn't pass)
also, the spec changed recently (github.com/perl6/specs/commit/b99e...f91fad489) and it looks like the new semantics are NYI.
so, should the old tests be replaced (and fudged 'NYI')?
moritz (you can solve NP problems in P by time travelling, so that would be really nice feature)
bartolin does it make sense to write a ticket about this or how are spec changes like this handled?
moritz bartolin: the best approach is to just adapt the tests to what the specs now 13:56
bartolin: so yes, replace tests
bartolin: and then ask somebody (or issue a pull request) to add it to t/spectest.data again in rakudo
bartolin moritz: thanks! 13:57
grondilu m: say time-travel; sub time-travel { "no, that's not time travel" }
camelia rakudo-moar 5d8eeb: OUTPUT«no, that's not time travel␤»
moritz not quite :-) 13:58
grondilu I guess that works because there is no such thing as a "function compilation phase"
bartolin moritz: Currently parrot and jvm throw exceptions when smart-matching hashes. but there are new tests, the file could probably bei added with '# moar' to t/spectest.data
grondilu it's a bit annoying that I can't place my constant declarations wherever I want.
bartolin *when there are new tests 13:59
grondilu would like to put them at the beginning of the module, where they are well visible.
dalek kudo-star-daily: 6182413 | coke++ | log/ (14 files):
today (automated commit)
14:00
moritz grondilu: then you should put the class declaration in a separate file, and 'use' it before doing the constant declaration
grondilu hum... that's a good point actually 14:01
colomon has no idea why Inline::Perl5 keeps on failing. 14:02
(in smoke, works fine when I install it manually)
grondilu though my class is actually using the constant in one of its methods :/ 14:05
[Coke] running in cron? different path, missng env vars...
moritz is there a perlbrew involved?
colomon moritz: perlbrew, yes. cron, yes. 14:06
colomon Trying to isolate for mini-smoke 14:07
moritz colomon: does the cron thingy source the perlbrew bashrc?
[Coke] colomon: try running a cron job that just does "env" to show the environment you're using (saving the output somewhere) then you can try to limit your normal runtime to that until things break.
... but moritz++ probably just found the issue. :) 14:08
colomon fails even outside of a cron. ;) 14:10
but the perlbrew thing may indeed be the issue here.
moritz colomon: what's the error message?
colomon ux/CORE/libperl.a(op.o): relocation R_X86_64_32S against `PL_sv_yes' can not be used when making a shared object; recompile with -fPIC
[Coke] Any reason not to make JIT the default and get rid of --enable-jit ? 14:12
(or make it warn with "of course, silly!")
moritz colomon: you need a perlbrew with -Duseshrplib
colomon trying to install 5.18.1 with -Duseshrplib now 14:14
moritz also there's 5.20.1 now 14:20
colomon moritz: 5.18.1 is what I have Inline;:Perl5 working on on my other account. :) 14:22
panda needs a "fetch and test but don't install" mode. 14:24
FROGGS true 14:26
moritz colomon: did you see my private message? 14:29
nine Wow....some guy sent me - out of the blue - some pull requests to make Inline::Python compatible with Python 3. (Free Software)++ 14:42
moritz nine: that's way cool 14:55
lizmat
.oO( inter-operating Python 2 and Python 3 through Perl 5 in Perl 6 )
14:56
what is not to like :-) 14:57
nwc10 can we have both Python 2 *and* Python 3 inlined into the same process yet? (by some amount of trickery, if essential) 14:58
nine If we could have that, the Python guys could as well 14:59
nine Apparently Python 2 and 3 are so closely related, that just two #defines suffice to make Inline::Python compatible with both even at C level without any #if whatsoever. 15:00
nine What would still be possible is running both in different processes. That's the solution they have obviously not found yet :) 15:01
nwc10 that was what I was sort of intimating by "Trickeryy"
moritz py2-over-ip-over-py3 :-) 15:02
nine py2-over-ip-over-avian-carriers-over-py3 15:03
gtodd nine: cool py2+3 in perl5+6 ! ... but do you still have to do all the careful indents and stuff ? ;-) 15:14
dalek kudo/nom: 17a13c7 | (Elizabeth Mattijsen)++ | src/core/ (4 files):
First part of making IO up to spec

with S16 | S32/IO synopsis updates.
This set of changes makes the .IO coercer return an IO::Path, rather than an
  (unopened) IO::Handle. Minor roast changes were necessary, but just because
the spec changed. Hope that any problems in the ecosystem, will become clear quickly: I don't expect many issues, though, apart from some features now actually working :-)
15:21
ast: 114dd17 | (Elizabeth Mattijsen)++ | S (3 files):
Minor IO related tweaks
15:22
moritz m: sub native(Sub $x) { }; native sub foo() { say 42 }; foo 15:23
camelia rakudo-moar 5d8eeb: OUTPUT«===SORRY!=== Error while compiling /tmp/0MlIyWykQV␤Unable to parse native definition␤at /tmp/0MlIyWykQV:1␤------> sub native(Sub $x) { }; native sub ⏏foo() { say 42 }; foo␤ expecting any of:␤ state…»
moritz why doesn't that work?
m: sub n(Sub $x) { }; n sub foo() { say 42 }; foo
camelia rakudo-moar 5d8eeb: OUTPUT«42␤»
jnthn moritz: Because native is a package declarator
moritz oh, is 'native' reserv... ah.
moritz :( 15:23
lizmat so far, nobody has objected to my work on S16 & S32/IO, so I'm steaming ahead with the implementation :-) 15:26
colomon moritz++ 15:28
moritz public service announcement: smoke results are now at host08.perl6.com:8080/report (used to be host07
moritz I'll try to come up with a redirect for the transition period 15:28
[Coke] moritz: is the smoker now running on host08 as well, or is it just the reports being posted there? 15:29
moritz [Coke]: the latter, afaict. colomon++ does that part 15:30
lizmat cycling& 15:31
[Coke] someone pointed out we're getting some test failures now that "." is no longer in PERL6LIB. 15:32
should it be? Or should roast tests that require modifications to the library path modify it themselves?
also, not all backends failed that test, which makes me think that we need another test that insures we don't auto-include . in the path.
Christian Bartolomäus, it was. 15:33
moritz [Coke]: it's fine to require 'use lib ".";' in tests 15:34
leont lizmat: looks sensible to me 15:35
[Coke] moritz: ok. Then any recent failures on the dailies might need fixups in roast.
japhb timotimo: Are you skipping the p6weekly this week? 15:37
timotimo i think i am
japhb
.oO( I think I can, I think I can! )
15:39
[Coke] aooogh. host08 has moved on to the jvm build/test for the day 15:40
[Coke] lizmat: what's curupdir? 15:43
oh, nevermind.
gtodd timotimo: if you skip this week then next week will be even better :) 15:44
jnthn "The future will be better tomorrow!" 15:48
bartolin regarding the PERL6LIB question: If you are running t/spec/test_summary, you have to include '.' in PERL6LIB -- in addition to 'lib' 15:48
bartolin Otherwise a few tests fail -- e.g. S11-modules/import-tag.t which has a "use t::spec::packages::S11-modules::Foo" 15:49
bartolin that's found in '.' 15:49
moritz then test_summary should include the . in PERL6LIB
or the tests should be fixed, even better
jnthn iirc, t/harness does include it 15:50
moritz though I'd be happy to get rid of it 15:50
it's way too confusing if you have an A.pm or a Foo.pm in your rakudo dir for testing some stuff
moritz and the test run preferes that over the ones in t/spec/packages 15:51
bartolin well there was some trouble with moar segfaulting, wenn setting PERL6LIB to "$(pwd)/lib:." (via environmental variable) before calling t/test_summary:
see: RT #122842
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122842
bartolin but "export PERL6LIB=$(pwd)/lib:$(pwd) works 15:52
(works in the sense of "no segfault and all tests run")
bartolin probably we should have both: tests relying on "." in PERL6LIB should be fixed and adding "." to PERL6LIB shouldn't segfault? 15:57
moritz bartolin: agreed 15:59
bartolin I'll try to take care of the first thing ;-)
moritz m: say Nil.elems 16:00
camelia rakudo-moar 5d8eeb: OUTPUT«0␤»
dalek kudo/nom: 7469aad | moritz++ | lib/Test.pm:
[Test.pm] avoid a warning in throws_like
16:01
PerlJam bartolin++ 16:02
bartolin moritz++ (I looked at that, but didn't know how to fix it.)
PerlJam and it's not adding . to PERL6LIB that causes the segfault is it? I mean, there are examples that do not segfault and do have . in PERL6LIB 16:03
bartolin Yes, it only segfaults in one very specific case.
(see ticket) 16:04
dalek ast: e9469ac | moritz++ | S1 (5 files):
add "use lib '.';" to tests that need it
moritz ok, I hope I didn't mess up anything
bartolin oh, that was quick. moritz++ 16:05
gtodd If I "strings" some random library and then use NativeCall I can see that it is finding the library ........... eg: 16:09
perl6 -MNativeCall -e ' sub H5get_libversion is native("libhdf5") { * }; say H5get_libversion '
blah gives meaningless rsult :-)
but
gtodd with iInline::Perl5 I get Unhandled exception: Cannot locate native library '/home/gtodd/perl6/languages/perl6/site/lib/Inline/p5helper.so' 16:10
is that telling me it can not find libperl.so?
moritz gtodd: nope
gtodd: p5helper.so is a helper library that's shipped with Inline::Perl5 16:11
gtodd yeah but it is there
gtodd and it did work in an earlier iteration .... I must have built it with one of my p5 brew environments turned on ... 16:25
raiph #perl6: Is the P6 use of the term "gradual typing" consistent with en.wikipedia.org/wiki/Gradual_typing ? 16:29
yoleaux 22 Sep 2014 09:27Z <lizmat> raiph: please read up on S11:01 and S22:01: basically each CompUnitRepo is responsible for its own installation management
synopsebot Link: perlcabal.org/syn/S11.html#line_01
yoleaux 22 Sep 2014 09:27Z <lizmat> raiph: in Perl 6, there is no global distribution management
22 Sep 2014 09:28Z <lizmat> raiph: anybody can write their own distribution manager (CompUnitRepo) as long as it adheres to the specced API
rurban raiph: "gradual typing" mostly, but not strictly. default dynamically typed variables, with optional static compile-time checks and opts. Same as in Common LISP, they were the first, just didnt call it this way. Gradual would call Any dynamic, our Any can be Static. 16:47
yoleaux 19 Sep 2014 12:02Z <bartolin> rurban: I was able to build parrot and perl6-p an OpenBSD 5.5. On NetBSD 6.1.4 I had two problems with dyncall. I just created a pull request which should fix these issues.
19 Sep 2014 12:04Z <bartolin> rurban: (The pull request is for nqp: github.com/perl6/nqp/pull/183)
20 Sep 2014 20:37Z <raiph> rurban: Does it make sense to remove github.com/perl6/nqp-rx ?
jdv79_ where is the planet site now? or at least the weekly updates site. 16:48
rurban raiph: yes, you can remove perl6/nqp-rx. parrot has it's own copy, and perl6 uses its better nqp
rurban but it's need to be decided by the list 16:48
moritz actually parrot's copy of nqp is the iteration before nqp-rx (iirc) 16:49
moritz I guess nqp-rx can stay on github as a historical document, as long as the README is sufficently clear 16:50
rurban so parrot should update it's nqp-rx to this?
PerlJam parrot should use the same nqp that rakudo uses IMHO
rurban Last time I checked I backported changes from parrot to this one
rurban PerlJam: That's an entirely different task TODO. I started with it, but got stuck 16:51
PerlJam aye, I imagine it's some work.
rurban parrot should use no nqp-rx at all imho. one is enough. but we have some bootstrapping tools relying on it. 16:52
esp. the ops2c compiler and the profiler. only opsc2 is important
but not really needed in parrot core. only needed for bootstrapping so we could get rid if it. no big deal. 16:53
moritz rurban: IMHO it doesn't matter much if parrot uses nqp-rx or not; the rakudo folks neither maintain it, nor do they maintain the one that aprrot uses now
rurban yes, exactly.
it might be useful to have a better and the standard nqp used within parrot though. 16:54
PerlJam no need to worry about upgrades if it never changes ;)
raiph rurban, moritz: thx, added link to your comments to "Remove unneeded repos from github/perl6" questhub.io/realm/perl/quest/53457...d24e00006d 16:55
rurban I wanted to enhance ops2c to add line number info, but never got through. so I rather thinking of removing nqp-rx at all, and use the old perl5 compiler which supported the old jit and runcores. but this is a long-term project. 16:55
raiph pl6anet.org 16:56
rurban raiph, please don't delete yet. I want to backcheck if it's really better than our.
raiph rurban: sure, thx for addressing this 16:57
dalek p-rx: 46f8df2 | moritz++ | README (2 files):
move README to README.pod

that way, github will render it
16:58
p-rx: 1a676dc | moritz++ | README.pod:
add deprecation notice to README
raiph jdv79: planet --> pl6anet.org
PerlJam raiph: did you ask pmichaud about nqpbook via email? That's probably the better way to get in touch with him. 16:59
rurban moritz: looks good, thanks
raiph jdv79: prolly no p6weekly this week but would be at p6weekly.wordpress.com
rurban moritz: I see, yes. parrot's nqp-rx is older. we need to update to get rid of this version 17:02
rurban so please keep it. I started with that Dec 2012 I see. 17:04
moritz rurban: I'm in no hurry to remove old stuff, as long as there's no chance to mix them up 17:06
vendethiel-
.oO( the Cool #perl6 - re CL gradual typing )
17:10
jdv79 thanks
vendethiel- (altho most CL implementations have a typing inference algorithm)
[Coke] (nqp-rx) there was a goal at one point to replace nqp-rx scripts in parrot build with the other language. I would recommend that approach, still 17:37
dalek p-rx: 788d2e5 | coke++ | README.pod:
fix typo
17:38
PerlJam [Coke]: winxed? 17:39
rurban [Coke]: => #parrot 17:40
[Coke] rurban: I was just following up the convo that already happened here. 17:42
raiph vendethiel-: Am I right that typed racket is not gradually typed, by either the P6 or wikipedia definitions? "In general, variables in Typed Racket must be annotated with their type." 17:44
vendethiel- raiph: right, it's not, but you can "cross boundaries"
moritz [Coke]: winxed isn't maintained either :-) 17:46
[Coke] moritz: no, but I stand by my thought that it's better to rely on one(winxed,nqp-rx) than all() 17:47
moritz [Coke]: or simply acknoledge that moarvm is the better road forward 17:48
but I guess that's an entirely different topic 17:49
dalek ast: b1b8887 | usev6++ | S (4 files):
add "use lib '.';" to some more tests that need it
17:55
raiph vendethiel-: Aiui "gradual typing" is a P6 strength which we'll want to start talking about a lot in, say, 2016. But unfortunately there's confusion in the noosphere about what "gradual typing" is. Forex, would it be reasonable to challenge typed racket's inclusion on the wikipedia "gradual typing" page or does its ability to "cross boundaries" jus 17:56
tify its inclusion? Should P6 be added to the list?
vendethiel- I strongly disagree, tbh.
Every language and its dog is adding gradual typing. guido to python, facebook to php, etc. 17:57
raiph vendethiel-: er, OK. :) To what?
vendethiel- ?
raiph vendethiel-: But aren't there huge variations on what exactly "gradual typing" gets you? 17:58
vendethiel- not sure what you mean. The type systems might be very different (handling of structural typing, high-order types, etc), but it still can be gradual 17:59
[Coke] moritz: yes, that's an entirely different topic which has nothing to do with the way to maintain parrot. 18:00
raiph vendethiel-: let's stick to TR for a moment. The doc says if you use it you *have* to annotate most/all of your variables. How is that "gradual"?
vendethiel- raiph: I *think* you can use lang/racket's functions from typed-racket 18:01
which means you can use untyped ones, etc.
also, racket has first class contracts
(which are late ensured)
raiph vendethiel-: "Jeremy invented the gradual typing approach" homes.soic.indiana.edu/jsiek/ Really? 18:34
vendethiel- I don't know :o) 18:35
nine I think he uses a slightly different definition 18:39
He even mentions Perl 6
vendethiel- where? 18:40
nine wphomes.soic.indiana.edu/jsiek/what...al-typing/
vendethiel- oh, alright 18:44
FROGGS use of uninitialized value %ANON_VAR__2 of type Any in string context in block at tools/build/panda-state.p6:7 18:49
O.o
rurban he basically requires a dynamic type for subtyping, for the Any problem
FROGGS %ANON_VAR__2 seems to be a leaking internal
dalek ast: d48582d | usev6++ | S03-smartmatch/hash-hash.t:
adaptation to spec changes

  (cmp. github.com/perl6/specs/commit/b99e...f91fad489)
This file is currently not in t/spectest.data. Since rakudo on parrot/jvm currently can't run the tests, it should only be added for moar (if at all). And please have a close look at the new tests before adding them to t/spectest.data
18:51
dalek rl6-roast-data: 519bdab | coke++ | / (5 files):
today (automated commit)
19:00
[Coke] commit messages shouldn't include todo items 19:01
add a comment to the PR or open a ticket. IMO.
bartolin okay, I'will do that in the future 19:03
dalek ar: 54b69eb | (Tobias Leich)++ | tools/ (2 files):
add script that creates panda state file

So after installing star panda will know what modules are installed. When someone then will install a module that depends on a shipped module, the shipped (and known working) dependency will be used by default.
19:41
FROGGS rakudo-star-2014.09$ install/bin/panda --installed list 19:52
Bailador [installed]
DBIish [installed]
...
I like it :o)
PerlJam FROGGS++ 19:53
gtodd wants to learn how to write test that can close a PR
jnth seemingly fixed the issue rt.perl.org/Ticket/Display.html?id=122810 19:54
dalek ar: f14ee0f | (Tobias Leich)++ | tools/ (2 files):
update versions to 2014.09
19:55
ar: 25a687b | (Tobias Leich)++ | modules/ (8 files):
update submodule revisions
19:56
grondilu deeply rewrote github.com/grondilu/clifford with a Class structure that hopefully makes more sense.
moritz gtodd: the first step would be to build an older rakudo, where the problem is still there
gtodd but now I'm not sure what the bug is or the test should be :-) should it test for bag() and mix() operators being able to handle massive numbers of slurped in args ...? 19:57
moritz gtodd: and then reproduce the problem
vendethiel- github.com/grondilu/clifford/commi...53fded1R20 could use ==>
moritz gtodd: and once you have it reproduced, you can start to remove things, until you know where the problem was actually triggered
gtodd moritz: I'm halfway there :-) I seem only able to reproduce with large files ... but since there's a bag and slurp involved I guess I could create a giant array and stuff it in a bag with the old flattening behaviour and see it that breaks I a similar way 19:59
moritz gtodd: aye; creating a giant array is usually an easy my @a = 'abc' xx 20000; # or so 20:01
colomon moritz: just ran a manual full smoke test, and host08 was correctly updated.
moritz: … though it looks like Nonongram failed this time around?
gtodd moritz: ok good the file seemed to provoke things ( when Bag flattening occurred ) at given size ... cheers 20:02
gtodd yippee I can try my mad git skillz 20:03
moritz msg colomon Nonogram fails too for me: "Heap corruption detected: pointer 0x7fc9fa2067f0 to past fromspace" (with JIT) 20:04
vendethiel- msg moritz noted :p 20:05
moritz argl, I'm too old to remember the various message bots we had over time, and which one is the current
FROGGS .tell something 20:07
yoleaux FROGGS: I don't know what you want me to say to something.
nwc10 .tell ilmari lunch
yoleaux nwc10: I'll pass your message to ilmari.
moritz .tell colomon the Nonogram failure you see seems to be a genuine MoarVM spesh+inlining bug 20:09
yoleaux moritz: I'll pass your message to colomon.
FROGGS damn, Template-Mojo and 'doc' fails on perl6-p star additionally to json-rp :/ 20:14
gtodd in RT# 122810 the error comes from .say for (bag slurp.words).pairs.sort(*.value).reverse[^10] 20:22
reading from a file .... not sure how to make a funny Array to mimic that ... 20:23
FROGGS p: my &foo = EVAL 'sub foo($a) { }'; &foo() 20:24
camelia rakudo-parrot 7469aa: OUTPUT«Not enough positional parameters passed; got 0 but expected 1␤ in sub foo at EVAL_0:1␤ in block <unit> at /tmp/PrnTlSB43c:1␤␤»
FROGGS since when do we pass parameters?
moritz gtodd: maybe use ('aaa' ... 'zzz') or something similar? 20:25
lizmat m: say :foo".IO.WHAT 20:25
camelia rakudo-moar 7469aa: OUTPUT«===SORRY!=== Error while compiling /tmp/pQFq3uYNIp␤Two terms in a row␤at /tmp/pQFq3uYNIp:1␤------> say :foo⏏".IO.WHAT␤ expecting any of:␤ pair value␤ postfix␤ infix stopper␤ …»
lizmat m: say "foo".IO.WHAT
camelia rakudo-moar 7469aa: OUTPUT«(IO::Path)␤»
lizmat m: say "foo".IO.open.WHAT 20:26
camelia rakudo-moar 7469aa: OUTPUT«Failed to open file: no such file or directory␤ in method open at src/gen/m-CORE.setting:14786␤ in method open at src/gen/m-CORE.setting:15335␤ in block <unit> at /tmp/Gpx07Zu7Bi:1␤␤»
gtodd moritz: I did my @a3 = 'abc' xx 100000, 'def' xx 50000; etc etc but it won't fail :-)
moritz gtodd: maybe not enough different entries
gtodd: also, when you leave out the for loop, does it still fail? 20:31
gtodd hmm yes
moritz gtodd: also if you remove the .reverse? 20:32
and so on 20:34
gtodd yeah :-)
I'm pretty sure it was the number of args that caused it to fall over
FROGGS damn, modules/doc fails exactly like modules/json-rpc :o(
moritz but number of args of what routine?
gtodd it seemd to be a moar only thing
the bag bit 20:35
moritz FROGGS: on the upside, you have a commit bit for doc :-)
gtodd at least jnthn's fix to bag and mix straightened it out ...but then ... why did parrot and jvm not fail hmm
moritz gtodd: so just bag slurp.words on its own fails? 20:36
gtodd oh well this is just a learning process for me at this point ...
FROGGS moritz: it is something in the innards of rakudo/nqp/parrot
gtodd yes with a large enough file
moritz m: say ('a'...*)[^1000].elems
camelia rakudo-moar 7469aa: OUTPUT«1000␤»
FROGGS tadzik: if you please :o) github.com/tadzik/Template-Mojo/pull/10 20:37
moritz gtodd: ^^ that's a recipe for getting an arbitrarily-sized list of distinct values. Maybe that helps.
gtodd thanks
vendethiel- wow, SBCL (steel bank's common lisp) is *really* fast. 20:38
same order of magnitude as C++
gtodd vendethiel-: :-) 20:39
moritz vendethiel-: iirc fglock once wrote a CL backend for kp6, the precursor to perlito 20:40
vendethiel- oh, did he?
moritz vendethiel-: though kp6-emitted code was slow due to design issues 20:41
vendethiel- well, I don't think rakudo-js will be very fast either :-)
dalek kudo/nom: 9a57a36 | (Tobias Leich)++ | tools/build/NQP_REVISION:
bump nqp rev for C global support on parrot/jvm
20:53
lizmat hmm... seems that a XCode upgrade gave me a new clang: Apple LLVM version 6.0 (clang-600.0.51) (based on LLVM 3.5svn) 20:54
dalek kudo/nom: 85c4c02 | (Elizabeth Mattijsen)++ | src/core/IO/Spec.pm:
Temporary unlazy introduction of $*SPEC
20:55
lizmat alas, apparently still no asan support: clang: error: unsupported argument 'address' to option 'fsanitize=' 20:56
brrt afk 20:59
timotimo er, wasn't asan developed by the clang people in the first place? 21:02
vendethiel- yea;
lizmat yup, but apparently it's not available on OS X like that
timotimo huh.
maybe it needs the -dev package to use that?
timotimo i mean, a package that has "the asan stuff" 21:03
maybe the version is too old?
an osx-savvy friend suggests using homebrew to build the latest clang version 21:05
or your xcode is too old, as that apparently doesn't get updated with the OS itself 21:06
lizmat I just updated to 6.0.1 21:08
timotimo before trying that command with -fsanitize=address? 21:09
lizmat stackoverflow has several 1-2 year old recipes... 21:14
timotimo :\
lizmat they all feel all too dangerous to my normal work environment
timotimo >_< 21:15
dalek ast: 0da8543 | usev6++ | S03-sequence/nonnumeric.t:
replace two fudged bogus tests with working tests
lizmat since jnthn feels it was just a heisenbug, I don't feel like risking not being able to work for a significant amount of time 21:16
tadzik FROGGS: I feel pleased :D 21:26
lizmat argh: Stage mbc : At Frame 5526, Instruction 75, op 'decont', operand 1, MAST::Local of wrong type (7) specified; expected 8 21:51
cognome lizmat++, I am trying to keep pace with your changes. In S32/IO.pod, should not the @text be slurpy? 21:55
dalek ecs: 2dcaf6d | (Elizabeth Mattijsen)++ | S32-setting-library/IO.pod:
@text should be slurpy, cognome++
21:57
lizmat m: sub a { say %_.perl }; my %h = a => 42; a( |%h, :a<foo> ) # expecting a => 'foo', is that a wrong thought ? 22:04
camelia rakudo-moar 85c4c0: OUTPUT«("a" => 42).hash␤»
lizmat m: sub a { say %_.perl }; a( :a<foo>, :a<bar> ) # here the later overwrites the earlier 22:08
camelia rakudo-moar 85c4c0: OUTPUT«("a" => "bar").hash␤»
lizmat feels like a rakudobug? 22:11
std: sub a { say %_.perl }; a( :a<foo>, :a<bar> )
camelia std fc92e1e: OUTPUT«ok 00:01 146m␤»
lizmat p: sub a { say %_.perl }; a( :a<foo>, :a<bar> )
camelia rakudo-parrot 85c4c0: OUTPUT«("a" => "bar").hash␤»
lizmat p: sub a { say %_.perl }; my %h = a => 42; a( |%h, :a<foo> )
camelia rakudo-parrot 85c4c0: OUTPUT«duplicate named argument in call␤ in block <unit> at /tmp/033oQCXowt:1␤␤»
lizmat is tired 22:12
and sleeps on it&
firefish5000 Though not P6 related, everyone may wish to update their bash implementation(lookup bash ShellShock). I'm currently writing bash grammar, so.. you know. 22:51
geekosaur only too aware... 23:01