»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by sorear on 4 February 2011. |
|||
00:09
nif joined,
jaldhar joined
00:12
mspaulding left
00:14
nif left
00:17
replore joined
00:26
pun joined,
spider-mario left
00:37
fgomez joined
00:38
japhb_ joined
|
|||
japhb_ | sorear, pong | 00:38 | |
00:44
fgomez left
00:45
fgomez joined
|
|||
dalek | blets: 862dc2d | (Herbert Breunung)++ | docs/appendix-a-index.txt: add more stuff from s32 Num |
00:46 | |
00:50
jaldhar left
00:51
thelazydeveloper left,
tokuhirom left
00:54
scott_ joined
|
|||
dalek | blets: e4dfb4f | (Herbert Breunung)++ | docs/appendix-a-index.txt: small fixes |
00:54 | |
00:55
scott_ is now known as Guest77779
|
|||
dalek | blets: 07b6a0d | (Herbert Breunung)++ | docs/appendix-a-index.txt: repair old lowercase links |
00:59 | |
blets: ed08b03 | (Herbert Breunung)++ | docs/appendix-a-index.txt: more crosslinks for ops |
01:09 | ||
01:13
Maddingue left
01:14
Maddingue joined
|
|||
japhb_ | sorear, you rang? | 01:15 | |
sorear | japhb_: great timing, just got back | 01:21 | |
japhb_ | :-) | ||
sorear | I'm curious to know more about perl6-bench and if I can use it in my workflow | ||
japhb_ | What's up? | ||
01:21
lichtkind_ joined
|
|||
japhb_ | Ok, what would you like to know about it? | 01:21 | |
01:22
lichtkind left
|
|||
sorear | Dunno, haven't looked too deeply at it | 01:22 | |
01:22
lichtkind_ is now known as lichtkind
|
|||
sorear | oh, hey, it has a README, maybe I should have read that before asking :> | 01:22 | |
01:22
lichtkind left
01:23
aloha joined
|
|||
japhb_ | heh | 01:23 | |
Also, check the TODO for your likely next question(s). ;-) | 01:24 | ||
sorear | mm, only one p6 benchmark? | ||
japhb_ | I was getting the structure set up, before launching into writing more benchmarks. | 01:25 | |
The core concept was the comparison matrix of multiple compilers versus multiple benchmarks, working up from trivial to hard. | |||
Right now, there's several trivial tests, and one medium-difficult (from the compiler implementor perspective) test. More tests to come (and I'm totally happy with code donations, of course). | 01:26 | ||
One interesting bit is that I realized I could compare Rakudo running NQP code versus nqp running NQP code. (Aside from the todo item of incrementing bound variables.) | 01:27 | ||
01:28
fgomez left,
fgomez joined,
fgomez left
01:29
whiteknight left
01:30
fgomez joined
|
|||
japhb_ | sorear, I'm also happy to move the project under the perl6 project umbrella, if people agree on the basic concept. But even if not, I'm likely to keep working on it, as right now performance is my big Perl 6 implementation hot button. | 01:30 | |
So I want to fill out the space of tests enough to give implementors concrete things to work on optimizing. For example, why is Rakudo crazy slow at rc-forest-fire? Is there a particular weakness that could be addressed? Can I write more focused tests that will highlight that weakness and give the Rakudo implementors something concrete to attack? | 01:32 | ||
01:35
raiph left
|
|||
japhb_ | Oh, I was a tad unclear a few minutes ago. I was pointing out I could compare (NQP/nqp) <-> (NQP/Rakudo) <-> (Perl 6/Rakudo) to determine if (Perl 6/Rakudo) was slow because Perl 6 is relatively complex, or because Rakudo has a large slowdown above nqp, even on NQP code. | 01:35 | |
(To a first approximation, of course.) | |||
Anyway, I need to decommute. Any other questions, sorear? | |||
01:38
havenn joined,
havenn left
|
|||
japhb_ | OK, I'll take that as a "No" for now ... decommuting & | 01:38 | |
01:39
japhb_ left
|
|||
japhb | o/ | 01:57 | |
sorear | o/ japhb | ||
dalek | blets: 488b754 | (Herbert Breunung)++ | docs/appendix-a-index.txt: repair formating bits |
02:04 | |
sorear | japhb: the lack of ability to $i++ when $i is bound is not a rakudo bug | 02:05 | |
japhb | sorear, er ... I don't think I said it was. (Did I?) | 02:07 | |
sorear | (Aside from the todo item of incrementing bound variables.) | ||
japhb | see TODO in perl6-bench | 02:08 | |
02:08
pun left
02:11
benabik joined
|
|||
sorear | japhb: the documentation makes it sound like you have more than one bench test | 02:12 | |
japhb blinks | |||
Er, I *do* -- some of them are -e tests, currently embedded in the 'bench' script itself. | 02:13 | ||
sorear | oh | ||
I was only looking at the files | |||
japhb | But as I said, the important part up to this point was to get the structure correct. Handling -e tests, file-based tests, handling compilers that have to have a separate compile and run pass, managing multiple VMs for the same frontend, all that sort of stuff. | 02:14 | |
You might want to get an idea of what happens by just turning off 'enabled' for any compilers you don't currently have installed, and running 'perl bench' to see what happens. You might also want to turn down TEST_COUNT if you let Rakudo run the Perl 6 version of rc-forest-fire. | 02:15 | ||
02:16
oiig_ joined
02:23
jaldhar joined
|
|||
japhb realizes that 'get the structure correct' is perhaps misleading for something that is being developed in a fast-iteration style | 02:26 | ||
It makes it sound like I planned it all out, which I didn't. | 02:27 | ||
02:31
fgomez left
02:32
agentzh joined
02:45
tyatpi joined,
fgomez joined
02:46
betterworld left
02:49
orafu left
02:50
orafu joined
02:54
wolfman2000 joined
02:57
fgomez left,
fgomez joined
03:08
cognominal_ joined
03:10
cognominal left
03:12
tyatpi left
03:27
tyatpi joined
03:35
leprevost joined
03:47
fgomez left
03:58
araujo left
04:23
shachaf left,
shachaf joined
04:32
raiph joined
04:33
fgomez joined
04:35
wolfman2000 left,
spaceships left
04:49
thou joined
04:58
birdwindupbird joined
05:09
wooden left
05:15
leprevost left
05:19
sftp left
05:33
kaleem joined
05:45
machine1 left
05:55
benabik left
05:56
benabik joined
06:08
wtw joined
06:27
machine1 joined
06:31
thou left
06:38
betterworld joined
06:51
ranguard left,
ranguard joined
07:01
mucker joined
07:06
fhelmberger joined
07:10
brrt joined
07:14
araujo joined,
araujo left,
araujo joined
07:19
NamelessTee joined
07:20
fgomez left
07:26
raiph left
07:27
pernatiy left
07:35
pernatiy joined
07:55
fgomez joined
08:00
machine1 left
08:04
machine1 joined
08:08
machine1 left
08:09
fglock joined
08:13
tyatpi left
08:14
daemon left
08:15
daemon joined
08:17
BooK joined,
tadzik1 joined
08:18
_sri joined,
plobsing_ joined,
sunnavy joined
08:19
pjcj_ joined,
Tene_ joined,
Tene_ left,
Tene_ joined,
tadzik left,
tadzik1 is now known as tadzik
08:20
odoacre_ joined,
ivan``_ joined,
plobsing left,
sunnavy_ left,
BooK__ left,
odoacre left,
pjcj left
08:22
ivan``_ is now known as ivan``
08:23
FACEFOX-DOT-COM left
08:24
FACEFOX left
08:25
mattp_ joined
08:27
kresike joined
08:31
groky joined
08:32
FACEFOX joined
|
|||
ab5tract | i was surprised to install rakudo yesterday and find that the binary is called 'perl6; | 08:32 | |
s/;/'/ | |||
moritz | we discuss this every two months in here :/ | 08:34 | |
08:34
FACEFOX-DOT-COM joined
|
|||
ab5tract | moritz, sorry for the redundancy. was just shocked after all the discussion of 'rakudo' being an implementation and perl 6 being a specification | 08:35 | |
moritz | ab5tract: IMHO the right approach would be to name the binary 'rakudo', and symlink it to 'perl6' | ||
ab5tract: but there is other precedence; lots of UNIX tools have multiple implementations, all with the same biniary name | |||
ab5tract | yes, that's true i guess. | 08:36 | |
in general i don't like version numbers on my binaries though ;) | |||
but yes, there is a lot of precedence there | 08:37 | ||
moritz | there are also multiple python implementations, and at least one of them ships with a 'python' binary | ||
08:37
zhutingting joined
|
|||
moritz | but somehow that fails to convince me | 08:37 | |
dalek | ar: a430d66 | moritz++ | skel/ (2 files): there are way too many places where we need to update version numbers |
08:42 | |
08:44
cognominal___ joined
08:46
nwc10 joined
|
|||
nwc10 | moritz: w.r.t. commit a430d66 - perl5.git.perl.org/perl.git/blob/90...rl-version | 08:46 | |
moritz | nwc10: I'd rather have some kind of templating system | 08:47 | |
nwc10: but thanks for the hint anyway | |||
08:47
cognominal_ left
|
|||
nwc10 | well, it was more "yes, that problem sounds familiar" | 08:48 | |
dalek | ar: bd2b55a | moritz++ | skel/docs/announce/2012.04: draft a 2012.04 release announcement |
08:54 | |
ar: b8438c1 | moritz++ | skel/Configure.pl: another forgotton version. Sigh. |
08:56 | ||
moritz | phenny: ask pmichaud to please enable the issues on github for rakudo/star | 09:01 | |
phenny | moritz: I'll pass that on when pmichaud is around. | ||
Woodi | oo, new Star ! :) | 09:02 | |
hi :) | |||
nwc10 | what's the difference between Rakudo 2012.04.1 and Rakudo 2012.04? | ||
moritz: actually, the potentially more useful bit of advice I can give (which is unsolicited, I realise) is: | 09:03 | ||
Woodi | hmm | ||
probably | |||
moritz | nwc10: github.com/rakudo/rakudo/blob/nom/.../2012.04.1 summarizes the difference | ||
tadzik | hello Woodi | ||
Woodi | there is not such thing like Rakudo 2012.04 :) | 09:04 | |
moritz | Woodi: there isn't? | ||
Woodi | if you add 'Star' then it is | ||
nwc10 | before Dave wrote that bump version script, we were doing it by hand. The easiest "technique" was to find the commit that did the previous version bump, edit it, and reverse it, *plus*, look for any subsequent commits within the next "soon" that fixed errors | ||
Woodi | I can be wrong... | ||
nwc10 | and try to get all those fixes into this update commit | ||
moritz | Woodi: there isn't a rakudo star 2012.04 yet. I'm working on that. | ||
Woodi | hi tadzik :) | ||
nwc10 | iterate, repeat | ||
each new version bump - try to get better | |||
moritz | nwc10: sound saneish | 09:05 | |
nwc10 | in other words, to follow that plan, the victim for the next star release should look back for the commits around this time, and try to get them all in one | ||
(until the templating solution is perfected) | |||
moritz: I think it might be useful to qualify in that Star announcement what that difference is | 09:06 | ||
eg provide that URL as a footnote too | |||
moritz | good idea | 09:07 | |
nwc10 | possibly just the most useful sentances I spotted there: | 09:08 | |
Rakudo 2012.04.1 is a point release in addition to the regular, monthly releases. It contains some of the results of the Perl 6 Patterns hackathon in Oslo. | 09:09 | ||
(er, with s/This release/Rakudo 2012.04.1/) | |||
dalek | ar: 3c2430e | moritz++ | skel/docs/announce/2012.04: [announce] link to rakudo 2012.04.1 release announcement |
||
nwc10 | I might be guessing wrong here, but I'd be surprised if I'm the only one going "hey, wait, what's the difference?" | ||
then again, I might. I sometimes spot little details :-) | 09:10 | ||
and obsess about them | |||
09:11
daxim joined
|
|||
moritz | I wonder what the significance is. The star releases bundle some versions of some projects which we (the rakudo devs) recommend to our users, and from which we know that they work together | 09:11 | |
is it really that important to know if the included compiler is 2012.04 or 2012.04.1, and what's up with them? | |||
09:11
eternaleye joined
|
|||
moritz | but then again, our users are all programmers/geeks, and so do care about details | 09:12 | |
nwc10 | it's the first time I've noticed that a Star release wasn't using the "regular" compiler release | 09:13 | |
so I wondered "eh, what's different?" | |||
moritz | it has happened before though | ||
though the last time it was just a single patch that went into the rakudo release, iirc | 09:14 | ||
into the second rakudo release, that is | |||
fglock | how do different perl6 implementations share a PERL6LIB env variable, given there would be some implementation-specific modules? | ||
moritz | that was 2010.08, it seems | 09:15 | |
fglock | such as a (possible) strict.pm module | ||
moritz | fglock: good question. Maybe we need RAKUDOLIB and NIECZALIB and PERLITO6LIB | ||
09:15
eternaleye left
09:16
eternaleye joined
|
|||
tadzik | which default to PERL6LIB if not present, maybe | 09:17 | |
dalek | kudo/nom: 256e1db | moritz++ | src/core/terms.pm: support RAKUDOLIB env variable in addition to PERL6LIB fglock++ asked how sharing of PERL6LIB works between compilers in the presence of compiler-specific modules. I believe this should be part of the answer |
||
moritz | tadzik: there's no reason not to have rakudo respect both | ||
tadzik | sure, that looks good | 09:18 | |
moritz | this patch adds RAKUDOLIB paths before PERL6LIB | ||
fglock | moritz++ # just do it | 09:19 | |
moritz | easy enough in this case :-) | ||
fwiw I'm not yet including MiniDBI in the star release, because I have no idea how it behaves when the C libs aren't present | 09:20 | ||
tadzik | they die, I think | 09:22 | |
"no libmysqlclient present", or so | |||
moritz | I think the test dies | 09:23 | |
but what about the compilation? | |||
I don't think rakudo star's 'make install' runs the tests | |||
tadzik | I think the compilation may die as well | ||
09:23
ocharles left
|
|||
moritz | tadzik: what's the URL of your smoker again? | 09:23 | |
tadzik | or maybe not. It's not on zavolaj level, it comes from Nqp NativeCall | ||
moritz: tjs.azalayah.net/new.html | 09:24 | ||
09:24
ocharles joined
|
|||
tadzik | almost useful :) the tests results are from sunday or so | 09:24 | |
daxim | tadzik, where's the repo for the software generating that page? | ||
moritz | "resolve stage has failed Dependency resolution has failed: stage build failed for NativeCall" | ||
tadzik | I'm currently at $dayjob, will re-run it once I get back home | ||
moritz: that was before the nqp branch merge I think | 09:25 | ||
moritz | probably | ||
tadzik | daxim: github.com/tadzik/panda/blob/maste...n/masstest produces this | ||
09:26
nwc10 left
09:34
cognominal_ joined
|
|||
masak | good practically-noon, #perl6 | 09:35 | |
moritz | \o masak | ||
masak: I have now watched the "Split or Steal" videos. The last one was awesome :-) | |||
and I actually predicted the outcome of that one correctly :-) | 09:36 | ||
masak | japhb++ # perf benchmark ambitions | 09:37 | |
moritz: yeah, it felt like a very rationalist move. | |||
they pointed out in Schneier's comments that in a sense, it doesn't really matter which ball Nick chooses. | |||
09:37
cognominal___ left
|
|||
masak | as long as he makes Ibrahim pick "split", of course. | 09:38 | |
frettled | It wouldn't look half as neat if he'd picked "steal". | ||
moritz | yes, though it would be fine, as long as he actually split afterwards :-) | 09:39 | |
frettled | yup | ||
By choosing "split", he also ensured that his _opponent_ wouldn't lose by his choice, no matter what it was :) | |||
masak | why the heck are people so surprised at finding the rakudo binary called 'perl6'? it's a Perl 6 implementation! | ||
yeah. his strategy is aimed at causing Ibrahim to choose 'split'. | 09:40 | ||
I like how he goes completely against the current and comes out a winner. that makes it look like a very rationalist move. | |||
(remember, rationalists play to win) :) | 09:41 | ||
tadzik | who | ||
who's suprised? | |||
anyway, I should probably look at what this Split or Steal is :) | |||
for again I don't know what are you guys talking about, as before I read HPatMoR ;) | |||
moritz | tadzik: www.schneier.com/blog/archives/201...und_o.html | 09:43 | |
masak | tadzik: irclog.perlgeek.de/perl6/2012-04-25#i_5491849 | ||
arnsholt | moritz: I've got some uncommitted code in NQP I think fixes your sqlite problem | 09:44 | |
frettled | You don't need to see all videos, though, tadzik :) | ||
moritz | arnsholt: \o/ | ||
09:44
mucker left
|
|||
masak | tadzik: ab5tract was surprised in the backlog: irclog.perlgeek.de/perl6/2012-04-26#i_5498702 | 09:44 | |
frettled | ++arnsholt (preemptive arnsholt++) | ||
arnsholt | But I still feel like enough of a guest in jnthn's code that I'd prefer to have a chat with him about it first =) | ||
masak | frettled: though watching all the videos and getting a feel for what's par for the course makes watching the last video all the more surprising. | 09:45 | |
arnsholt | I can put it in a branch if you wanna test it though | ||
tadzik | looks interesting | ||
masak | I must admit I had never grok'd how *unstable* a prisoner's dilemma situation is. | ||
they do a good job at creating a "pure" prisoners-dilemma situation, in my opinion. | 09:46 | ||
frettled | If you're not careful, you'll end up watching "reality TV" shows, masak. | ||
moritz | masak: agreed | ||
masak | i.e. not much chance to get to know the other. not many "consequences" afterwards. | ||
frettled | …those are pretty good examples of complex and dynamic situations. | ||
masak | frettled: perish the thought :) | ||
moritz | masak: so far I had only appreciated the iterated prisoner's dilemma properly | 09:47 | |
masak | I think some part of me would scream in horror and revulsion until I stopped watching reality TV shows again. | ||
frettled | masak: or until you've become a reality TV show vegetable, signing up for the next edition of Survivor Geeks or whatever ;) | ||
masak | ;) | 09:53 | |
ab5tract | masak, i was surprised because the rakudo docs are so explicit about rakudo being an _implementation_, while perl 6 is a specification | 09:55 | |
tadzik | well, renaming it to rakudo was considered | 09:56 | |
ab5tract | which to me implies that i might have multiple perl 6 implementations on my system | ||
tadzik | the symlinking solution sounds fair | ||
ab5tract | in which case an environment variable or a symlink to indicate my preferred implementation would seem more appropriate | ||
tadzik | same how on most system cc -> gcc, awk -> gawk etc | ||
masak | ab5tract: aye. that's probably how it'll end up. | 09:57 | |
09:57
zhutingting left
|
|||
masak | and that's what moritz said, and what tadzik just said. | 09:57 | |
ab5tract | tadzik, indeed. but the env var solution is even better because users can choose | ||
actually, both is probably the best ;) | |||
tadzik | users can choose anyway | ||
masak | well, some might still expect a 'perl6' executable to be in the PATH. I certainly would. | 09:58 | |
tadzik | or the actual perl6 binary can be a script that inspects the env variable and runs the appropriate implemetnatino | ||
ab5tract | masak, yeah well i'm not here trying to push an agenda or anything. you just asked why people were confused so i thought i would explain myself | ||
masak | but I agree that the current situation where Rakudo has a 'perl6' and Niecza doesn't is... odd and a bit unfair. | ||
Pugs doesn't either, I guess. | |||
ab5tract: nod | |||
moritz | well, niecza is generally unfriendly to invoke | ||
brrt | chiming in: niecza could be made friendly to invoke? | 09:59 | |
moritz | 'mono $path/to/niecza/run/Niecza.exe script.pl' is just not as nice as {pugs,perl6} script.pl | ||
brrt: sure | |||
masak | moritz: I always set it up so that I have a script in the PATH which makes niecza friendly to invoke. | 10:00 | |
tadzik | same here :) | ||
10:00
replore left
|
|||
masak | but now that I think about it, that should probably be part of 'make install' in Niecza. | 10:00 | |
ab5tract | moritz, in the case of niecza, making perl6 a helper app to choose a user-specified implementation could ease the invocation, no? | ||
moritz | masak: well, I have that too, but it's just not friendly that you have to do it yourself | ||
ab5tract: only if you want to invoke the currently chose compiler | 10:01 | ||
ab5tract: are you familia with debians 'alternatives' system? | |||
*familiar | |||
that's basically what I'd like every distribution to have, and we could chose to install one or more as 'perl6', and all with their own name too | 10:02 | ||
masak wonders interestedly what the first non-Star rakudo distribution will be | 10:03 | ||
tadzik | pandakudo! | 10:04 | |
moritz | .oO( ActiveKudo ) |
||
Mango Perl, inspired by Strawberry Perl :-) | 10:05 | ||
tadzik | :) | ||
masak .oO( Durian Perl ) o.O | |||
arnsholt | I think an eventual JVM distro should be called Krakatau | 10:06 | |
10:06
ab5tract left
|
|||
arnsholt | So awesome it makes your computer explode =D | 10:06 | |
moritz | masak: smelly perl? :-) | ||
masak | yes, Perl stinks. but it's the magic that counts. | 10:07 | |
moritz | non-smelly software is pretty rare | 10:08 | |
masak | the only alternative I've seen to a bit deep in the core of any bit piece of software that has a comment saying "// this is really ugly, and a hack, and probably wrong, too", is literal programming à la Donald Knuth, where you shine a spotlight at every piece of the code, and make it into an academic exposition. | 10:09 | |
er, s/literal/literate/ | 10:10 | ||
moritz | if you live in a setting where the requirements never change, that's an option | ||
masak | by the way, "literate programming" is about as audacious as "the first postmodern language". "literate programming" implies that all other styles of programming are, in some sense, illiterate ;) | 10:11 | |
moritz: right. that's probably why Knuth doesn't feel a strong affinity towards extreme programming practices, either. | |||
10:12
Guest77779 left
|
|||
arnsholt | TBH, I think Knuth in the same camp as Dijkstra and doesn't like CS students using computers for the first few years =) | 10:17 | |
10:19
ab5tract joined
10:20
joyce joined
|
|||
dalek | p/dyncall-wb: 480d22d | (Arne Skjærholt)++ | src/6model/reprs/CArray.c: [CArray] Refactor bind_pos_boxed/at_pos_boxed. Since we've added child_objs, we can cache the generated String objects as well, and eliminate the need for at/bind_pos_complex. |
10:22 | |
p/dyncall-wb: 3776cef | (Arne Skjærholt)++ | src/ (2 files): Check argument objects for changes after a C language call. Some refactoring of CArray to fit in with the write barriering. |
|||
arnsholt | moritz: Have a look at that branch and see if it fixes sqlite | ||
moritz | arnsholt: will do, thanks | 10:23 | |
arnsholt | If you do make dynext/nqp_group.so and then copy dynext/nqp_dyncall_ops.so to install/lib/parrot/4.3.0-devel/dynext you don't have to do the whole recompile-all-the-things dance | ||
s/so/bundle/ on OS X | 10:24 | ||
10:24
GlitchMr joined
|
|||
moritz | lunch first :-) | 10:28 | |
10:32
mdcw` left
|
|||
moritz | oh, by the way: moritz.faui2k3.org/tmp/rakudo-star-....04.tar.gz rakudo star preview | 10:34 | |
testing very much appreciated | |||
10:36
spider-mario joined
|
|||
bbkr_ | building it right now... | 10:52 | |
10:55
joyce left
11:12
cognominal___ joined
11:14
cognominal_ left
11:16
benabik left
|
|||
masak | today's autopun: apple.slashdot.org/comments.pl?sid=...d=39802647 | 11:19 | |
11:19
renormalist joined
|
|||
masak | (I haven't experienced Apple Newton's voice recognition, so I can't judge exactly how spot-on that is.) | 11:20 | |
11:22
pernatiy left
|
|||
tadzik | is Newton the new Siri or something? | 11:24 | |
masak | no, Newton is the old iPhone. | ||
very old. like 10-15 years ahead of its time. | |||
tadzik | I see | 11:26 | |
masak | en.wikipedia.org/wiki/File:Apple_Ne...iPhone.jpg | ||
11:27
birdwind1pbird joined
|
|||
tadzik | ho, cool thing :) | 11:28 | |
masak | :) | ||
tadzik | . o O ( Steampunk iPhone ) | ||
masak | no, steampunk is more brass and wood and valves and pipes. like this: fabrazz.deviantart.com/art/Steampun...-198831687 | 11:30 | |
bbkr_ | moritz: i've found 2 errors so far in star | 11:31 | |
gist.github.com/5aba31e819afe81a93a1 | |||
tadzik | hehe | 11:32 | |
hmm, those look like module list updated only in one place | |||
moritz | I think I know what's wrong | 11:33 | |
they are checked out as uri.git and jsonrpc.git | 11:34 | ||
bbkr_++ for noticing | |||
bbkr_ | also I've spotted many "Virtual call $.XXX may not be used on partially constructed objects" | ||
dalek | ar: cbc422a | moritz++ | Makefile: correct URI format in Makefile, bbkr++ |
11:35 | |
tadzik | huh, non-nom modules included in Star? | ||
bbkr_ | gist.github.com/cf28c70674629e6391b3 - looks like some modules failed to compile | ||
tadzik | oh, wait. HTTP::Easy is broken in this way, that's why I pulled it into bailador | 11:36 | |
masak | moritz: was the Star release made already or not? | ||
bbkr_ | moritz: my fault, i've pasted .git extension in jsonrpc | ||
tadzik | Config::INI is also broken on nom, and ought to be removed, at least for nwo | ||
ehh, HTTP::Easy actually not commited into bailador, or maybe that lies unpushed on my laptop :/ | 11:37 | ||
I guess I could fork HTTP::Easy, fix it, and we'll then ship the fork | 11:38 | ||
11:39
alvis` joined
|
|||
moritz | masak: not yet released | 11:39 | |
tadzik | moritz did that already: github.com/moritz/perl6-http-easy/ | ||
moritz | oh, right :-) | ||
tadzik | could you put this one instead of the original in star? | 11:40 | |
moritz | sure | ||
tadzik | then Bailador should work fine | ||
also, could you remove Config::INI for now? | |||
dalek | ar: 99e7a0a | moritz++ | Makefile: use my fork of HTTP::Easy advantage: it works :-) |
||
11:41
alvis left
|
|||
dalek | ar: 2474b03 | moritz++ | / (2 files): remove Config::INI for now, it does not work |
11:41 | |
tadzik | bbkr_: are you sure you have no MAKEFLAGS="-j2" set? | ||
that will probably break module precompilation, they need to be compiled in order, and when you do that in pararell it usually doesn't end well | 11:42 | ||
11:42
benabik joined
|
|||
dalek | ar: 4b64d5a | moritz++ | skel/docs/announce/2012.04: mention Bailador in release announcement |
11:42 | |
bbkr_ | i will rebuild with forced -j 1 | ||
tadzik | that should probably be forced in a makefile of some sort | 11:43 | |
when ufo && make is run | 11:44 | ||
moritz | hard to do in a portable way :( | ||
tadzik | indeed | ||
moritz | the proper fix would be for ufo to declare its dependencies | ||
erm, declare the dependencies of the modules | |||
11:46
birdwind1pbird left,
Su-Shee joined
|
|||
Su-Shee | hi all. | 11:46 | |
dalek | osystem: 02fe05c | tadzik++ | META.list: Put a moritz's fork of HTTP::Easy instead of the mainline, which doesn't work on nom |
||
tadzik | hey Su-Shee | ||
oh, my karma^Wnotifications work again | |||
moritz | tadzik: I thought it always worked for the perl6/ repos, just not the rakudo repos? | ||
tadzik | hmm, I don't think so | 11:47 | |
but may be | |||
moritz | arnsholt: \o/ seems to work | 11:49 | |
arnsholt: at least the connection is now a defined value | |||
arnsholt | Awesome! | 11:50 | |
I've been pondering if we'll want to just use a singleton array as a standard pattern for the pointer to pointer pattern (which is fairly standard practice in C AFAIK), or if we want some kind of TransparentPointer | 11:51 | ||
Another thing I'd like to discuss with jnthn | |||
jnthn | Well, you could use the CArray repr but wrap it up in a different class. | 11:53 | |
So it's not either/or. | |||
(Warning: I'm pretty sick today. Don't trust anything I say too much...) | 11:54 | ||
arnsholt | Ooh, that's certainly an idea | ||
moritz | ok, now I get a segfault in sqlite3_prepare_v2 | ||
arnsholt | Then something's wrong O:) | 11:55 | |
moritz | cktrace stopped: previous frame inner to this frame (corrupt stack?) | ||
s/^/Ba/ | |||
arnsholt: might be me doing something wrong | |||
arnsholt | Oh, wow. That's certainly fun =) | ||
moritz: One of us is my guess =) | |||
moritz has an Abba song in his ear now, something like "one of us is dying, one of us segfaulting, waiting for a backtrace" or so | 11:57 | ||
arnsholt | Heh, fun =) | 11:58 | |
benabik | I think it would depend on why it's a ptr-ptr. If it's actually array of ptr, then it should be represented as such to P6. If it's a parameter to be altered, then it should be `is rw`. | ||
masak plays some Abba | |||
moritz | benabik: that would be cute, yes | 11:59 | |
12:00
replore joined
|
|||
arnsholt | benabik: Yeah. In this context it's the output parameter pattern | 12:00 | |
We have arrays of pointers now, so that's how moritz worked around it | |||
benabik | Yeah, it would be 'cute', but also appropriate and obvious to the user why it's that way. :-) | ||
arnsholt | I'm not sure how well it'd generalize though | 12:01 | |
benabik | I wonder if there's an easy way to do it. Eh, I already have projects. | ||
It should generalize fairly well. 'is rw' passes a pointer to the original thing. | 12:02 | ||
tadzik | hmm, Emmentaler should have a layout like perl6.org/compilers/features probably. Then the columns will be builds/tests/something | ||
arnsholt | Sending off pointers to the C storage of things we've created in P6 makes me wary | ||
moritz | tadzik: prereqs/builds/tests | 12:03 | |
arnsholt | I think forcing the user to be explicit about pointerness is probably a good idea | ||
moritz | that would favor the TransparentPointer approach | ||
tadzik | moritz: good point | ||
moritz | though of course 'is rw' is also explicit | ||
benabik | I suppose it could be a problem if it's keeping the pointer around for some reason. Although that would be an issue with any passed pointer, not just double ones. | 12:04 | |
moritz | arnsholt: can I get any debugging info from an OpaquePointer except for .defined? | ||
12:08
pernatiy joined
|
|||
moritz | arnsholt: gist.github.com/2476861 is the new segfaulting test :-) | 12:10 | |
benabik | I think you end up with possible problems whenever you start passing pointers out of the VM. I don't see pointer pointers really being much worse. | ||
moritz | squared problems :-) | ||
cognominal___ | I had just a weird idea. Parrot is Sigourney Weaver, Alien is rakudo and 6model is Alien's DNA. Fear intelligent design. | 12:11 | |
12:12
cognominal___ is now known as cognominal
|
|||
tadzik | did Sigourney Weaver kill herself to stop the DNA from spreading? :) | 12:13 | |
cognominal | I have not seen all the sequels. | ||
tadzik | duh, neither did I, but sorry if I spoiled anything | 12:14 | |
just something I recall hearing | |||
masak | I still haven't seen all of the third movie. | ||
I'm interested but disgusted. I suspect some rainy day I'll finish it. :) | 12:15 | ||
but I think it can safely be considered common knowledge at this point what happens in those movies. | |||
there has to be some deadline even for spoiler warnings. | |||
fglock | Sigourney Weaver kills herself to stop the sequelae | 12:16 | |
moritz | that's the best possible reason :-) | ||
tadzik | ohh, I could think of the few characters which should definitely do that | 12:17 | |
masak | a friend and I discussed the overwhelming public good a World-wide Institute for the Prevention of Sequels could do. | 12:21 | |
cognominal | could it kill SQL databases as well? | ||
tadzik | that's a cool book idea actually | 12:22 | |
moritz | masak: I'm all for it. Except that there's a book to which I really, really want to read the not-yet-written sequel | 12:23 | |
masak | well, they would still exercise good judgment, and not prevent all sequels. | ||
just the ones that are obviously a bad idea to anyone with sense. | 12:24 | ||
tadzik | imagine this. A forest, a swamp, a small hut. A smoke coming out of pistol silencer, Fiona crying over Shrek dead body, and the guy in a mask saying "I'm terribly sorry, my lady, but it had to be done. It will make millions of people feel better" | ||
moritz | tadzik++ | ||
tadzik | that could maybe evolve into a nice set of stories | ||
masak | tadzik: I'm sorry, that's the start of a great sequel. | ||
cognominal | the metaphor has come to me when I have seen how 6model is well decoupled from parrot. Thx to jnthn, rakudo will be soon able to feed into another host. | ||
tadzik | no no no | 12:25 | |
12:25
sjn joined
|
|||
tadzik | no sequels of *this* ;) | 12:25 | |
but I'm _so_ writing this once I get back home | |||
and finish my Go slides | |||
s/finish/start/ | |||
fglock | what would be the second host for rakudo? | 12:27 | |
cognominal | I wish it to be v8. | ||
moritz | fglock: probably JVM | ||
arnsholt: I've just valgrinded the segfaulting script | 12:28 | ||
tadzik | good, I was wondering if it's a secret :) | ||
moritz | ==2363== at 0xCEC8B3E: bind_pos_boxed (in /home/moritz/p6/rakudo/install/lib/ | ||
parrot/4.3.0-devel/dynext/nqp_dyncall_ops.so) | |||
==2363== by 0x8DAFD83: Parrot_repr_bind_pos_obj_p_i_p (in /home/moritz/p6/rakudo/install/lib/parrot/4.3.0-devel/dynext/nqp_ops.so) | |||
tadzik | ww? | ||
cognominal | with v8, it would eventually infect chrome and the whole web. | ||
moritz | tadzik: nothing has been decided yet. It's just a "probably" | ||
tadzik | I know :) | ||
cognominal | even Sigourney Weaver could not stop a chrome mediated infection. | 12:29 | |
moritz | tadzik: sorry, that was meant for arnsholt. I really shouldn't copy&paste noisy stuff here | ||
tadzik | oh, I thought it's meant for #parrot ;) | ||
12:30
sjn left,
sjn joined
12:31
fglock left
12:35
sjn left,
sjn joined
12:39
wooden joined,
wooden left,
wooden joined,
sjn left
12:40
lichtkind joined,
sjn joined
|
|||
lichtkind | wouldnt be even nice if the html build script would be written in perl 6? | 12:40 | |
12:40
pernatiy left
|
|||
moritz | which one? | 12:41 | |
12:42
sjn left
12:43
pernatiy joined
12:45
sjn joined
12:47
sjn left
|
|||
dalek | blets: fd588cc | (Herbert Breunung)++ | docs/appendix-a-index.txt: add uplinks to nav menu inside the punctuation section for better navigation |
12:49 | |
lichtkind | moritz: for tablets which just starts the pandic generator | 12:50 | |
but i have to tets how globbing works in perl 6 | 12:51 | ||
moritz | lichtkind: currently there's also no Perl 6 compiler installed on fether2 | 12:52 | |
lichtkind: so you'd need to run that on a different machine, and then copy the results | 12:53 | ||
arnsholt | moritz: I think you missed the first line there? Is it read of uninitialised bytes somewhere? | ||
moritz | arnsholt: yes, Invalid read of size 8 | ||
arnsholt: moritz.faui2k3.org/tmp/valgrind.log has the full story | 12:54 | ||
12:54
fglock joined
|
|||
arnsholt | Address, 0x10, right | 12:55 | |
lichtkind | moritz: allright | 13:00 | |
13:00
Patterner left
|
|||
arnsholt | moritz: Could be that I need to do a Parrot write barrier there as well, since I've mucked about with the objects | 13:00 | |
Is your NQP and friends compiled with debugging symbols? | 13:01 | ||
jnthn | Reading from 0x10 considered bothersome... | ||
arnsholt | I guess not, since the valgrind log doesn't have line numbers | ||
jnthn | Sounds like an offset calc'd from a NULL pointer somewhere... | ||
arnsholt | Yeah, definitely | ||
moritz | I wonder why my NQP doesn't have debugging symbols | 13:02 | |
arnsholt | There're a couple of 8 byte invalid reads before the fault, so it's probably a weird pointer somewhere | ||
moritz | judging from the valgrind output, parrot has debugging symbols | ||
and NQP usually just reuses parrot's compiler flags | |||
arnsholt | I don't think your parrot has debug flags | 13:03 | |
moritz | hm, ok | ||
arnsholt | There's debug info for your libc, but not Parrot AFAICT | ||
I do --parrot-option='--ccflags=-g' in NQP's Configure.pl | 13:04 | ||
13:05
mdcw` joined,
Psyche^ joined,
Psyche^ is now known as Patterner
13:06
pernatiy left,
bluescreen10 joined,
pernatiy joined
|
|||
moritz | moritz.faui2k3.org/tmp/rakudo-star-....04.tar.gz # release candidate | 13:07 | |
masak | oh, so we haven't released yet. | 13:11 | |
right, that was the compiler release announcement I saw fly by on p6c. | |||
masak grabs and builds moritz.faui2k3.org/tmp/rakudo-star-....04.tar.gz | 13:12 | ||
jnthn | moritz: Just set off a build here on Win64. | ||
13:12
mdcw` left
|
|||
[Coke] cannot download that at work from the command line. (&#$ interactive web page on the proxy | 13:12 | ||
13:13
cognominal left
|
|||
arnsholt | Right. I really want to make OS X Zavolaj look for dylibs as well | 13:13 | |
moritz | how would that work? | 13:14 | |
walk the library paths yourself, and pass the exact file name to dlopen if you find one? | |||
arnsholt | Special case it, probably | ||
If loading with the bare string doesn't work, try redoing it with .dylib appended | |||
But your script doesn't segfault on my laptop, unfortunately =/ | 13:15 | ||
moritz | ok, doesn't sound too hard | ||
bbkr_ tests new candidate | 13:16 | ||
13:16
cognominal joined
|
|||
moritz | arnsholt: fwiw this is not with your nqp branch directly, but with that branch merged into master | 13:16 | |
arnsholt: otherwise it didn't satisfy rakudos' minimal NQP_REVISION | |||
arnsholt | Shouldn't make much of a difference I think | ||
13:16
cognominal left
13:18
mdcw` joined
|
|||
dalek | blets: f696010 | (Herbert Breunung)++ | docs/appendix-d-delta.txt: propagate .perl in perldelta |
13:23 | |
blets: bb46308 | (Herbert Breunung)++ | docs/appendix-a-index.txt: added Rat.nude + Rat method crosslinks |
|||
blets: f352364 | (Herbert Breunung)++ | docs/appendix-a-index.txt: polish .gist and .perl |
|||
13:24
fgomez left
|
|||
masak | lichtkind: isn't the concept of 'delta' steeped in the pre-tuning-fork ideas of Perl 6 being one version up from Perl 5? | 13:26 | |
PerlJam | "pre-tuning-fork"? That's an interesting way to look at it. | 13:27 | |
"This bifurcation *resonates*" :-) | |||
masak | also, the three last items in that file, advertised as "idioms", look to me like new bits of syntax, too small or too simple to be idioms. | ||
moritz | are there also pre-tuning knifes? sledge scalpels? ;-) | 13:28 | |
PerlJam | moritz: all that is certain is .... there is no spoon | ||
masak | PerlJam: the "tuning fork" analogy is from this post: github.com/masak/strangelyconsiste...r.markdown | 13:29 | |
(linking to github as my blog domain seems to be irresponsive at present) | 13:30 | ||
lichtkind | masak: its supposed to do what a delat does , hej man i come from perl 5 what changes i should be aware of, | ||
masak: i mena delta, i optimize for understandibility | 13:31 | ||
moritz | lichtkind: that was a nice autopun | 13:32 | |
bbkr_ | few "Use of uninitialized value in string eq at tools/build/module-install.pl line 106." in last candidate | ||
13:33
tyatpi joined
|
|||
PerlJam | lichtkind: soon it will get to the point where it's easy to say "Everything is different, except these parts that are the same" | 13:33 | |
s/easy/easier/ | |||
moritz | bbkr_: yes, I got those too, but they are harmless | ||
at least I think so :-) | 13:34 | ||
bbkr_ | this one looks bad: Missing block at /Users/bbkr/Developer/Perl6/rakudo/install/lib/parrot/4.3.0/languages/perl6/lib/Panda.pm:88 | ||
moritz | doesn't happen here | 13:35 | |
masak | Perl 6 to me is the experiment of making improvements/changes without being circumscribed by concerns for backwards compatibility like Perl 5. | ||
mikec | bbkr_: when do you see that? | ||
masak | like, the (?:) et al forms of Perl 5 regexes clearly yearn to be something else :) | ||
13:36
agentzh left
|
|||
lichtkind | PerlJam: i thought about that but, the delta is less about details but things that can you cost the fun during your first tries, is should just ease the migration and set your head right so that deeper concepts get later easier in | 13:36 | |
bbkr_ | mikec: during make install after "/Users/bbkr/Developer/Perl6/rakudo/install/bin/perl6 --target=pir --output=/Users/bbkr/Developer/Perl6/rakudo/install/lib/parrot/4.3.0/languages/perl6/lib/Panda.pir /Users/bbkr/Developer/Perl6/rakudo/install/lib/parrot/4.3.0/languages/perl6/lib/Panda.pm" | ||
mikec | ah ok, haven't got that far yet | 13:37 | |
bbkr_ | checking also newest Xcode now (bug above was on 4.2) | ||
moritz | doesn't sound like something a C compiler is responsible for | 13:38 | |
arnsholt: I've recompiled everything with debug symbols, and added the new backtrace to gist.github.com/2476861#file_gdb_session.txt | 13:41 | ||
jnthn | moritz: Looks good here (the Star RC) | 13:42 | |
13:42
JimmyZ joined
|
|||
mikec | hmm, i can't load MiniDBD::Pg | 13:43 | |
13:43
mdcw` left
|
|||
moritz | mikec: what's the error? | 13:43 | |
mikec | 'No STable at index 12' | ||
tadzik | pararell build? | 13:44 | |
moritz | or maybe some precompiled modules in ~/.perl6/lib ? | ||
mikec | i moved ~/.perl6 | ||
tadzik | mikec: echo $MAKEFLAGS? | ||
mikec | this is just in the build dir | ||
tadzik | or do you do make -jx for x > 1? | ||
mikec | tadzik: empty, i just did make | 13:45 | |
moritz | arnsholt: and moritz.faui2k3.org/tmp/valgrind2.log is the new valgrind run with line numbers | ||
frettled | Hold your horses, there's no stable? *G,D&R* | ||
tadzik | :D | 13:46 | |
mikec | haha | ||
just me, i take it? | 13:49 | ||
tadzik | it'd appear so | ||
PerlJam | frettled: we don't have any ponies apparently. | ||
tadzik | maybe the panda database should be called Stable | 13:50 | |
frettled | PerlJam: and it's hard to ride a gnu well | ||
tadzik | as a container for ponies | ||
PerlJam | tadzik: but how does that jibe with kung fu panda? | 13:51 | |
tadzik | no eye deer | 13:52 | |
masak | r: say 100.base(8) | 13:54 | |
p6eval | rakudo 256e1d: OUTPUT«144» | ||
masak | r: say "144".unbase(8) | ||
p6eval | rakudo 256e1d: OUTPUT«Method 'unbase' not found for invocant of class 'Str' in block <anon> at /tmp/8YvYxPVA2y:1» | ||
masak | r: say "144".Int(8) | 13:55 | |
p6eval | rakudo 256e1d: OUTPUT«Too many positional parameters passed; got 2 but expected 1 in method Int at src/gen/CORE.setting:3336 in block <anon> at /tmp/yjz0l37tut:1» | ||
masak | r: say "144".Int(:base(8)) | ||
p6eval | rakudo 256e1d: OUTPUT«144» | ||
masak | heh. | ||
moritz | r: say :8('144') | ||
p6eval | rakudo 256e1d: OUTPUT«100» | ||
masak | right. | ||
but if I don't know statically it's 8? | 13:56 | ||
do I just give up and use &eval? | |||
moritz | r: my $eight = 8; say :$eight(8) | ||
p6eval | rakudo 256e1d: OUTPUT«Method 'postcircumfix:<( )>' not found for invocant of class 'Pair' in <anon> at src/gen/BOOTSTRAP.pm:815 in any <anon> at src/gen/BOOTSTRAP.pm:811 in block <anon> at /tmp/pbpTW6aWQp:1» | ||
masak | right. :$eight is a Pair on its own. | ||
you just went around the corner in the syntax corner case ;) | 13:57 | ||
frettled | Oh, we're still there? | ||
moritz | r: my $eight = 8; my $str = '144'; say eval ":$eight(\$str)" | ||
p6eval | rakudo 256e1d: OUTPUT«Method 'postcircumfix:<( )>' not found for invocant of class 'Int' in <anon> at src/gen/BOOTSTRAP.pm:815 in any <anon> at src/gen/BOOTSTRAP.pm:811 in block <anon> at /tmp/hX4hC3tR12:1» | ||
moritz | r: my $eight = 8; my $str = '144'; say eval ":$eight\(\$str)" | ||
frettled | So, couldn't you create a macro for this? :D | ||
p6eval | rakudo 256e1d: OUTPUT«100» | ||
bbkr_ | after build I get mysterious "No object at index 134" when loading some modules, for example perl6 -e 'use JSON::Tiny;' | ||
moritz | bbkr_: :( | 13:58 | |
masak | wfm | 13:59 | |
bbkr_: did you do 'make install'? | |||
bbkr_ | yes. and this bug is weird as same code works fine on another machine. | ||
14:00
pernatiy_ joined,
pernatiy left
14:01
cognominal joined
14:02
wtw left
|
|||
bbkr_ | after re-running make install it works fine | 14:02 | |
tadzik | duh | 14:03 | |
lichtkind | ist nude unnecesary if we have perl and gist? | 14:04 | |
moritz | .nude is specific to rats | ||
masak | they're the only type with hair to begin with. | 14:05 | |
tadzik | *chuckle* | ||
moritz | moritz@jacq:~/p6/star/rakudo-star-2012.04>./install/bin/perl6 -e 'use JSON::Tiny; say to-json [1, {a => 3}, Any]' | ||
[ 1, { "a" : 3 }, null ] | |||
works fine here | |||
masak | here too. | 14:06 | |
bbkr_ | JSON::RPC works also :) | ||
masak | star: use JSON::Tiny; say to-json [1, {a => 3}, Any] | ||
moritz | should I release? | ||
p6eval | star 2012.02: OUTPUT«[ 1, { "a" : 3 }, null ]» | ||
masak | moritz: +1 | ||
moritz | is there a reason not to tag releases in the star repo? | 14:07 | |
there are no tags so far | |||
PerlJam | moritz: +1 for tagging, +1 for releasing | 14:08 | |
it's a little weird in that the star repo doesn't actually contain the release, but the recipe for building the release. | 14:09 | ||
But all the more reason to tag it IMHO | |||
benabik | tag all the things! | ||
moritz | PerlJam: well, that's why we upload the releases :-) | ||
PerlJam: but I think that was the reason we didn't have any tags so far | 14:10 | ||
PerlJam | I think so too. | ||
moritz | because people would download them, and wondered why they couldn't type 'make | ||
I'll tag locally, and only push the tag if pmichaud++ gives his +1 | |||
masak | sounds good. | 14:11 | |
PerlJam | sound eminently sane | ||
moritz++ | |||
moritz | alright, upload under way | 14:12 | |
14:13
replore left
|
|||
moritz | where do we send the release announcements? p6c and p6a? | 14:15 | |
jnthn | yes, and post it on rakudo.org | ||
dalek | ar: 8e7b450 | moritz++ | skel/docs/announce/2012.04: [announce] fix wording thinko |
||
bbkr_ | star: use JSON::RPC::Client; JSON::RPC::Client.new(url=>"bbkr.org:8080").hi("everybody").perl.say | ||
p6eval | star 2012.02: OUTPUT«===SORRY!===Could not find JSON::RPC::Client in any of: lib, /home/p6eval/.perl6/lib, /home/p6eval/star/lib/parrot/4.1.0/languages/perl6/lib, .» | ||
moritz | bbkr_: that's still the old star | 14:16 | |
bbkr_ waits patiently... | |||
jnthn | moritz: IN the announce | ||
"The tarball for the February 2012" | |||
moritz | I HATE it | ||
jnthn | It mentions February in a couple of places :( | ||
PerlJam | moritz: isn't the list of places to announce in the release guide for R* ? (Is there a release guide?) | 14:17 | |
dalek | ar: c92df22 | moritz++ | skel/docs/announce/2012.04: [announce] s:g/Februar/April/ |
||
14:19
smash joined
|
|||
moritz | rakudo.org/2012/04/26/announce-raku...of-perl-6/ | 14:19 | |
smash | hello everyone | ||
masak | smash! \o/ | ||
moritz | PerlJam: there's no release guide yet for star | 14:20 | |
PerlJam | the R* release announcement makes me wish for a list of the improvements to the modules that R* contains since the last release | 14:23 | |
or a statement about where to find such information | |||
moritz | we don't have such information, because module authors usually neither do releases nor keep a changelog | ||
spider-mario | star 2012.04 fails to compile with my system-wide parrot, I hope it’s just because it’s 4.2. | 14:24 | |
masak decommutes | |||
spider-mario | (I’ve notified parrot’s packager for my distro) | ||
moritz | spider-mario: well yes, it was 4.3 | ||
which is a "stable" release | |||
TimToady wonders what $cat.nude should return | |||
spider-mario | parrot in arch is still 4.2 | 14:25 | |
www.archlinux.org/packages/communit...64/parrot/ | |||
14:25
skids left
|
|||
spider-mario | I’ve “flagged the package as out-of-date” | 14:25 | |
daxim | TimToady, a piece of fur. it's no coincidence that kitten rhymes with mitten. | ||
14:25
raiph joined
|
|||
tadzik | spider-mario: is sirmacik still maintaining star in AUR? | 14:25 | |
spider-mario | tadzik : there’s rakudo-star, appearently not maintained (but not orphaned either), and rakudo, maintained by me | 14:26 | |
TimToady thought the Duke made mittens out of the kittens' insides... | |||
tadzik | I see | ||
spider-mario | (rakudo used to actually be rakudo star and I hope to make it so again with 2012.04) | ||
(but I can’t update it yet because it fails to build with arch’s parrot) | 14:27 | ||
PerlJam | spider-mario++ | 14:28 | |
spider-mario | :) | ||
moritz | spider-mario: fwiw the only reasons to bump the parrot revision were macos build fixes, and then the parrot release | ||
spider-mario | oh | ||
moritz | spider-mario: so if you override the check, it might still work with 4.2 | ||
TimToady was misreading Thurber, he perceives... | |||
14:28
PacoAir joined
|
|||
spider-mario | it actually passes version checks | 14:28 | |
but fails during actual compilation | |||
paste.pocoo.org/show/uLjrc1eKMTXgRHfyGJuZ/ | 14:29 | ||
moritz | it passes version checks? | 14:30 | |
that's scary | |||
spider-mario | nqp is 2012.04.1 | ||
lichtkind | rakudo doesnt support the @a >>++ natation | ||
notation | |||
spider-mario | Verifying installation ... | ||
Using /usr/bin/nqp (version 2012.04.1). | |||
moritz | and nqp 2012.04.1 configures on parrot 4.2.0? | ||
spider-mario | yes | ||
moritz | once it's build, I'm not surprised that rakudo doesn't complain, because rakudo only checks nqp, not parrot | 14:31 | |
14:31
kaare_ joined
|
|||
PerlJam | r: my @a = 3..8; @a>>++; say @a; | 14:32 | |
p6eval | rakudo 256e1d: OUTPUT«4 5 6 7 8 9» | ||
spider-mario | Using /usr/bin/parrot (version 0). | ||
that might be it. | |||
PerlJam | lichtkind: looks like it does to me. | ||
lichtkind | r: say (1..5) >>++; | ||
spider-mario | (that’s when building nqp 2012.04.1 with parrot 4.2.0) | ||
p6eval | rakudo 256e1d: OUTPUT«===SORRY!===Missing << or >>at /tmp/UDoHBSjW4M:1» | ||
moritz | spider-mario: ah, that explains it | ||
lichtkind: whitespace isn't allowed before postfix ops | 14:33 | ||
lichtkind | r: say (1..5)>>++; | ||
p6eval | rakudo 256e1d: OUTPUT«Cannot assign to a non-container in sub postfix:<++> at src/gen/CORE.setting:2636 in sub hyper at src/gen/CORE.setting:10738 in sub METAOP_HYPER_POSTFIX at src/gen/CORE.setting:10697 in block <anon> at /tmp/KBAEzrD6n8:1» | ||
TimToady | "assign"? | ||
moritz | ++ assigns, sure | ||
spider-mario | well, I’ll wait for parrot in arch to be updated then. :) | 14:34 | |
TimToady | only from the viewpoint of the implementor | ||
lichtkind | r: my @a = (1..5)>>++; say @a; | ||
p6eval | rakudo 256e1d: OUTPUT«Cannot assign to a non-container in sub postfix:<++> at src/gen/CORE.setting:2636 in sub hyper at src/gen/CORE.setting:10738 in sub METAOP_HYPER_POSTFIX at src/gen/CORE.setting:10697 in block <anon> at /tmp/wG6aqEk17q:1» | ||
tadzik | lichtkind: Parcels are immutable | ||
14:34
spaceships joined
|
|||
moritz | TimToady: I think it should really dispatch-fail | 14:34 | |
TimToady | error messages are supposed to inform the user | ||
spider-mario | and I’ll enforce parrot>=4.3.0 in makedepends. | ||
hm, in depends, actually. | |||
moritz | because postfix:<++> has an 'is rw' parameter | ||
TimToady | that's the #1 failing of error messages: stating them from the viewpoint of the implementor rather than the user | 14:35 | |
moritz | though currently rakudo allows the dispatch, but then fails to assign inside the routine | ||
Confused! | |||
TimToady | biab & | ||
moritz | n: (1..5)>>++ | ||
p6eval | niecza v16-23-gaa61ed5: ( no output ) | ||
moritz | ah, and niecza doesn't do readonlyness properly | 14:36 | |
lichtkind | tadzik: thanky i have czech that out | 14:44 | |
14:45
kaleem left
|
|||
dalek | blets: 89be407 | (Herbert Breunung)++ | docs/appendix- (3 files): linkfixes |
14:48 | |
14:51
dakkar joined
14:52
bluescreen10 left,
bluescreen10 joined
14:58
bluescreen10 left
15:06
sergot joined
|
|||
sergot | hi o/ | 15:06 | |
o/ :) | |||
tadzik | hi-o | ||
sergot | Don't have enough time to blog.. I'll do this as soon as possible. | 15:07 | |
Hope it's not a problem. :) | |||
15:14
bluescreen10 joined
15:16
tokuhirom joined
|
|||
cognominal | jnthn, you got out of you way to make the type registrar fonction accessible with the name "_REGISTER_REPR". How do you access it from rakudo? | 15:17 | |
masak | sergocie! \o/ | ||
timotimo | so could i implement postfix:<++> to increase the value and return the increased value and implement prefix:<++> to increase the value and return the previous value? | 15:19 | |
and it would work as post- and predecrement? | |||
like it would in c/c++? | |||
tadzik | I don't think that you need to implement that | 15:20 | |
r: my $a = 3; say $a++; say ++$a; say $a | |||
p6eval | rakudo 256e1d: OUTPUT«355» | ||
timotimo | of course it's already there | ||
but the point i'm making is that i can do things myself that work in a similar way | |||
tadzik | oh, you mean swapping those | ||
timotimo | no, that's not what i meant | ||
tadzik | "so could i implement postfix:<++> to increase the value and return the increased value" | ||
timotimo | uh, that was just a brainfart | 15:21 | |
tadzik | well, postfix:<++> is implemented in Perl 6 and you are able to redefine it the way you want it | ||
r: sub postfix:<++>(Int $a) { say "not $a" }; my Int $a = 5; $a++ | 15:22 | ||
p6eval | rakudo 256e1d: OUTPUT«not 5» | ||
colomon | I believe all you need to do is implement YouType.succ and Perl6 will handle the rest for you. | ||
tadzik | I think so | ||
r: class A { method succ { say "succ" } }; my $a = A.new; $a++ | |||
p6eval | rakudo 256e1d: OUTPUT«succ» | ||
tadzik | indeed | ||
k: class A { method succ { say "succ" } }; my $a = A.new; $a++ | |||
timotimo | the point is that perl6 easily lets me implement something like that, wherein in php or something i'd have to hack around in many source files | ||
tadzik | n: class A { method succ { say "succ" } }; my $a = A.new; $a++ | ||
p6eval | niecza v16-23-gaa61ed5: OUTPUT«succ» | ||
colomon | r: class X { has $.x; method succ() { $.x += 2; }; }; # errr, never mind, tadzik is faster | 15:23 | |
p6eval | rakudo 256e1d: ( no output ) | ||
colomon | r: class A { method succ { say "succ" } }; my $a = A.new; ++$a | ||
p6eval | rakudo 256e1d: OUTPUT«succ» | ||
tadzik | :) | ||
masak | r: class A { method succ { "succ" } }; my $a = A.new; say ++$a | 15:24 | |
p6eval | rakudo 256e1d: OUTPUT«succ» | ||
masak | r: class A { method succ { "succ" } }; my $a = A.new; say $a++ | ||
p6eval | rakudo 256e1d: OUTPUT«A.new()» | ||
masak | \o/ | ||
r: class A { method succ { "succ" } }; my $a = A.new; say $a++; say $a | |||
p6eval | rakudo 256e1d: OUTPUT«A.new()succ» | ||
masak | yay | ||
raiph | ideone.com/ is running rakudo 2010.08 | 15:32 | |
moritz | that is, like, ancient | 15:33 | |
raiph | i thought i might ping them to suggest an update to latest star | ||
all they ask is that there's a gentoo package | |||
15:33
bumb joined
15:34
kaleem joined,
bumb left
|
|||
raiph | patrick lauer updated the gentoo rakudo package 5 hours ago to "2012.04.1" | 15:36 | |
sources.gentoo.org/cgi-bin/viewvc.c...iew=markup | |||
15:36
oiig_ left
|
|||
moritz | \o/ | 15:36 | |
raiph | though some things look odd to me | ||
15:36
fglock left
|
|||
raiph | eg PARROT_VERSION="4.1.0" | 15:36 | |
masak | huh! | ||
dalek | blets: 8fa0404 | (Herbert Breunung)++ | docs/appendix-d-delta.txt: links from delta to index |
15:38 | |
blets: 3ab0a03 | (Herbert Breunung)++ | docs/appendix-g-glossary.txt: explaining 4 terms in glossary |
|||
lichtkind | raiph: hai | ||
raiph | but it seems like latest p6 on ideone would be great while try.rakudo.org is offline (and even if it were online) | ||
hi lichtkind | |||
lichtkind | raiph: do you have clues about complex numbers? | 15:40 | |
i mean more than i :) | |||
moritz | but there isn't much more than i to complex numbers :-) | ||
jnthn | .oO( I know 2i if that helps...it's more than i... ) |
||
moritz | r: say 2i > i | 15:41 | |
p6eval | rakudo 256e1d: OUTPUT«Cannot call 'Real'; none of these signatures match::(Mu:U \$v, Mu *%_) in method Real at src/gen/CORE.setting:656 in sub infix:<>> at src/gen/CORE.setting:2393 in sub infix:<>> at src/gen/CORE.setting:2393 in block <anon> at /tmp/sdC6js5xMC:1»… | ||
moritz | can we please have that error message say 'Cannot call *method* 'Real'; ..." ? | ||
raiph | i know the square root of less than nothing about them | ||
15:48
daxim left,
Psyche^ joined
|
|||
moritz | star: say 1 | 15:49 | |
p6eval | star 2012.04: OUTPUT«1» | ||
moritz | star: use JSON::RPC | ||
p6eval | star 2012.04: OUTPUT«===SORRY!===Could not find JSON::RPC in any of: /home/p6eval/.perl6/lib, /home/p6eval/star/lib/parrot/4.3.0/languages/perl6/lib, .» | ||
moritz | star: use JSON::RPC::Client; say 'alive' | 15:50 | |
p6eval | star 2012.04: OUTPUT«alive» | ||
moritz | \o/ | ||
and it seems rather snappy | |||
star: use NativeCall; sub fork() returns Int is native('') {*}; say fork() | 15:52 | ||
p6eval | star 2012.04: OUTPUT«Cannot locate native library '.so' in method postcircumfix:<( )> at /home/p6eval/star/lib/parrot/4.3.0/languages/perl6/lib/NativeCall.pm6:102 in <anon> at src/gen/BOOTSTRAP.pm:815 in any <anon> at src/gen/BOOTSTRAP.pm:811 in block <anon> at /tmp/5NXBCusDCa:1… | ||
moritz | star: use NativeCall; sub fork() returns Int is native('C') {*}; say fork() | ||
p6eval | star 2012.04: OUTPUT«Cannot locate native library 'C.so' in method postcircumfix:<( )> at /home/p6eval/star/lib/parrot/4.3.0/languages/perl6/lib/NativeCall.pm6:102 in <anon> at src/gen/BOOTSTRAP.pm:815 in any <anon> at src/gen/BOOTSTRAP.pm:811 in block <anon> at /tmp/gxKYFXuIQ8:… | ||
15:52
Patterner left,
Psyche^ is now known as Patterner
|
|||
jnthn | star: use NativeCall; sub fork() returns Int is native {*}; say fork() | 15:52 | |
p6eval | star 2012.04: OUTPUT«8502» | ||
moritz | oh, even nicer | ||
locally i get two lines of output, one from the parent, one from the child | 15:53 | ||
and the parent is always faster :-) | 15:54 | ||
lichtkind | why behave ^^ in not bool context differently than xor? | ||
raiph | bonsaikitten: ping | 15:55 | |
bonsaikitten | raiph: yes? | ||
moritz | r: say 'abc' ^^ 0 | ||
p6eval | rakudo 256e1d: OUTPUT«abc» | ||
moritz | r: say 'abc' xor 0 | ||
p6eval | rakudo 256e1d: OUTPUT«abc» | ||
moritz | lichtkind: seems pretty much identical to me | 15:56 | |
lichtkind: or what do you mean? | |||
raiph | bonsaikitten: did u see comments here a few mins ago about gentoo package? | ||
lichtkind | r: say 0 xor 6 | ||
p6eval | rakudo 256e1d: OUTPUT«0» | ||
lichtkind | r: say 0 ^^ 6 | ||
p6eval | rakudo 256e1d: OUTPUT«6» | ||
lichtkind | its a bug? | 15:57 | |
benabik | r: say so 0 | ||
p6eval | rakudo 256e1d: OUTPUT«False» | ||
bonsaikitten | raiph: ... yes, is there anything I can do for you? | ||
lichtkind | raiph: get you private messages? | ||
15:58
thou joined
|
|||
arnsholt | moritz: It looks like the line numbers in nqp_dyncall_ops.c aren't very stable (it's an autogenerated file) | 16:00 | |
bonsaikitten | raiph: ah, let me fix the dependencies a bit :) | 16:01 | |
16:01
brrt left
|
|||
arnsholt | Could you say what's in your file on lines 363, 341 and 345? Should be in dyncall_wb_ca | 16:02 | |
bonsaikitten | raiph: and next time don't be shy, just file a bug (and it'll not be forgotten in the scrollback) | ||
raiph | karma bonsaikitten | ||
aloha | bonsaikitten has karma of -1. | ||
bonsaikitten | tehehe | 16:03 | |
raiph | ++bonsaikitten | ||
karma bonsaikitten | |||
aloha | bonsaikitten has karma of -1. | ||
raiph | bonsaikitten++ | ||
karma bonsaikitten | |||
aloha | bonsaikitten has karma of 0. | ||
benabik | raiph: aloha only recognizes postincrement | ||
16:03
skids joined
|
|||
bonsaikitten | it is done. | 16:03 | |
raiph | right. was checking. | ||
bonsaikitten++ | |||
arnsholt | Ah, right. That's why preincrement is used for preemptive karma ^_^ | 16:04 | |
16:06
pernatiy_ left,
pernatiy joined
16:07
kresike left
|
|||
lichtkind | moritz: is ^^^wrong ? | 16:07 | |
ahh i mean ^^ | |||
bbkr_ | star: use JSON::RPC::Client; JSON::RPC::Client.new(url=>"bbkr.org:8080").hi("everybody").perl.say | 16:08 | |
p6eval | star 2012.04: OUTPUT«"Hi everybody"» | ||
bbkr_ | \o/ | ||
timotimo | oooh that's cute | 16:09 | |
bbkr_ | it even supports named params and multis :) | 16:12 | |
star: use JSON::RPC::Client; JSON::RPC::Client.new(url=>"bbkr.org:8080").hi(name=>"everyb...).perl.say | 16:13 | ||
p6eval | star 2012.04: OUTPUT«"Hello everybody"» | ||
timotimo | does it also give you introspection and such? | ||
16:13
kaleem left
|
|||
arnsholt | moritz: Actually, I've managed to reproduce, so hold on a sec | 16:13 | |
tadzik | huh, this is awesome | 16:15 | |
I wonder if panda could use it to fetch module metadata instead of maintaining one of its own | |||
arnsholt | Durr? Apparently the illegal pointer that's being dereferenced is the repr_data | 16:16 | |
bbkr_ | timotimo: interesting idea! JSON-RPC has some names reserved for internal use which may be used to pass names and signatures. imagine $client.^methods way of checking what is supported by server :) | 16:18 | |
timotimo | that's what i thought | ||
16:18
JimmyZ left
16:19
pernatiy left
|
|||
arnsholt | moritz: I officially have NO idea what's going on | 16:21 | |
Or maybe I do... | |||
16:24
simcop2387 left,
tokuhirom left
|
|||
masak .oO( I officially CAN'T make up my mind. Or maybe I can... ) | 16:24 | ||
tadzik | lol | 16:25 | |
sergot | :) | ||
arnsholt | masak: Yeah, I'm kinda in over my head here | ||
But I may actually be learning to swim ^_^ | 16:26 | ||
moritz: You around? | |||
16:27
simcop2387 joined
|
|||
bbkr_ | timotimo: I've added your idea about introspection to TODO: github.com/bbkr/jsonrpc/blob/master/README.md | 16:28 | |
moritz | arnsholt: yes-ish | 16:29 | |
fwiw I'd to RPC introspection as $client.methods, not $client.^methods, because then you'd have a hard time introspecting the actual client object | 16:30 | ||
arnsholt | moritz: I think part of the problem is that there's a mismatch between the declared function signature and the arguments | 16:31 | |
It's declared (OpaquePointer, Str, Int, CArray[OpaquePointer], CArray[OpaquePointer]), but you call it as (OpaquePointer, Str, Int, CArray, OpaquePointer) | 16:32 | ||
tadzik | masak: is twitter.com/carlmasak/status/195482023132016641 an autopun of yours, or do you really not remember? | ||
arnsholt | And since my code doesn't check the type of the object, just goes with the signature, weird shit happens | ||
moritz | oh | ||
so I should call it as CArray (the type object) as the last argument? | 16:33 | ||
PerlJam | tadzik: besides ... the egg came first. reptiles were laying eggs long before there were chickens. | ||
arnsholt | moritz: Depends on what you want to do | ||
tadzik | PerlJam: that's what I've just replied :) | ||
arnsholt | CArray the type object will be NULL | ||
moritz | arnsholt: pass a NULL Pointer that doesn't cause a segfault | ||
tadzik | except that I said "dinosaurs", because dinosaurs are way more cool | 16:34 | |
arnsholt | Right. Then it should be just the CArray type object I think | ||
tadzik | I used to use fishes as an example, but <see above> | ||
arnsholt | But that segfaults. Right | ||
bbkr_ | moritz: indeed, two client objects connected to two different servers cannot have different set of ^methods. on the other hand i'm not fan of hardcoding method names with special meaning as this is supposed to be multiplatform communication and other languages won't understand p6 gist syntax | ||
arnsholt | But if it makes you feel better, I think I know why it segfaults =) | ||
(And it's my fault) | |||
moritz | ok, it stops segfaulting here when I pass in CArray[OpaquePointer] | 16:35 | |
in the long run, we want to type-check those parameters, I suspect | |||
arnsholt | Yeah, definitely | 16:36 | |
masak | tadzik: I really do not remember. I even suspect different people say different things with equal certainty. it was not meant as an autopun. | 16:37 | |
tadzik | I see | ||
arnsholt | But it's odd that CArray[OpaquePointer] is OK, but CArray with no type parameter doesn't | ||
tadzik | well, I replied to you anyway :) | ||
16:37
Timbus joined
|
|||
tadzik | zavolaj tests failing, yep? | 16:37 | |
moritz | tadzik: on linux you need to set LD_LIBRARY_PATH=. | 16:38 | |
arnsholt | tadzik: That's not good. But are you on 32-bit or 64-bit? | ||
Oh, right. There's that as well | |||
timotimo | www.downforeveryoneorjustme.com/perlcabal.org :( | ||
tadzik | arnsholt: 64 | 16:39 | |
meh | |||
it's hard when we cannot setenv() from Perl 6 | |||
arnsholt | Yeah, it's a bit inconvenient | 16:40 | |
OTOH, if the tests pass after you set it, I'm happy =) | |||
moritz | perlcabal.org back up. | ||
timotimo | thank you | 16:41 | |
tadzik | arnsholt: well, I'm not happy :) and panda is not happy, so users will not be happy | ||
I wonder how hard setenv() can be. I'll look into it on TODO+1 | 16:42 | ||
arnsholt | Oh, right. I'd forgotten about that aspect of it | ||
But if you already have NativeCall installed setenv() is REAL easy O:) | 16:43 | ||
tadzik | heh | ||
timotimo | what was the adress for that list of what every special character could mean in perl6? it was on some wiki type website | 16:45 | |
dalek | p/dyncall-wb: e99865a | (Arne Skjærholt)++ | src/ops/nqp_dyncall.ops: No need to write barrier non-concrete objects. |
16:47 | |
arnsholt | moritz: Pull in that commit, and the segfaults on type-object-argument should go away | 16:48 | |
moritz | ok, now I need to figure out why it segfaults in SQLite.pm6 but not in my reduced test version | ||
timotimo | moritz: wouldn't the client object ideally have exactly the methods the server offers? thus making $client.methods and $client.^methods be the same? | ||
16:48
sivoais left
|
|||
moritz | timotimo: wouldn't the client have .disconnect, and the server not (for example)? | 16:48 | |
timotimo | oh. hm. | 16:49 | |
so maybe it would offer client.^disconnect or something? because disconnect is - to me - one meta level away from the other methods | |||
tadzik | hoho, Null PMC Access | 16:50 | |
didn't see that one for some time | |||
timotimo | at least there should be a difference between methods for the client object and methods "via" the client object | ||
arnsholt | moritz: Keep me posted =) | 16:51 | |
tadzik | r: sprintf ';' | 16:52 | |
p6eval | rakudo 256e1d: ( no output ) | ||
tadzik | hrm | ||
arnsholt | And thanks a bunch for using my code. Very nice to have help with finding bugs | ||
tadzik | r: say sprintf ';', "foo" | ||
p6eval | rakudo 256e1d: OUTPUT«;» | ||
tadzik | r: say sprintf(';', "foo") | ||
p6eval | rakudo 256e1d: OUTPUT«;» | ||
tadzik | -_- | ||
moritz | arnsholt: copying over nqp_dyncall_ops.so should be enough, right? | ||
r: sprintf '%x' | |||
p6eval | rakudo 256e1d: OUTPUT«Null PMC access in get_integer() in sub sprintf at src/gen/CORE.setting:1973 in block <anon> at /tmp/kn6lE7RMIn:1» | ||
tadzik | close enough | ||
moritz | arnsholt: because with that I still get the segfault in SQLite.pm6 :/ | 16:53 | |
tadzik | ll-exceptions tells me "';' is not a valid sprintf format" | ||
16:53
sftp joined
16:55
mspaulding joined
|
|||
arnsholt | moritz: make dynext/nqp_group.so && cp ... yeah | 16:55 | |
16:56
fglock joined
|
|||
benabik | nqp: say pir::sprintf(';'); | 16:57 | |
p6eval | nqp: OUTPUT«Confused at line 1, near "say pir::s"current instr.: 'nqp;HLL;Grammar;panic' pc 22008 (src/stage2/gen/NQPHLL.pir:7047) (src/stage2/gen/NQPHLL.pm:329)» | ||
benabik | nqp: say(pir::sprintf(';')); | ||
p6eval | nqp: OUTPUT«error:imcc:The opcode 'sprintf_p' (sprintf<1>) was not found. Check the type and number of the arguments in file '(file unknown)' line 38» | ||
benabik | nqp: say(pir::sprintf__ss(';')); | ||
p6eval | nqp: OUTPUT«error:imcc:The opcode 'sprintf_s_sc' (sprintf<2>) was not found. Check the type and number of the arguments in file '(file unknown)' line 36» | ||
moritz | arnsholt: oh, probably my fault. The SQL statement isn't defined | ||
benabik | Blah. | ||
16:57
bbkr_ left
|
|||
arnsholt | moritz: Oh, right. Might be a problem, yeah | 16:58 | |
But it'd be interesting to know if it's zavolaj or sqlite that blows up | 16:59 | ||
I'm thinking zavolaj | |||
16:59
Tene_ is now known as Tene
|
|||
moritz | well, it segfaulted from within sqlite | 16:59 | |
ok, now it parses 14 of the first 15 tests before segfaulting \o/ | |||
arnsholt | Yay! | 17:00 | |
benabik | tadzik: What I was trying to show with the nqp lines above is that it's probably complaining about Parrot's sprintf op, not P6's sprintf function | ||
tadzik | yes | 17:01 | |
benabik | That said, I have no idea why ; would be an invalid format. | 17:02 | |
tadzik | I have no idea what happens in my code :) | ||
17:04
dakkar left
|
|||
benabik | Ah. It's complaining about a '%;' | 17:05 | |
tadzik | it is? | ||
17:05
erkan left
|
|||
benabik | Yeah, the 'not a valid sprintf format' message is after it's parsed the % | 17:06 | |
tadzik | interesting | 17:07 | |
17:07
fgomez joined
17:09
birdwindupbird left,
thelazydeveloper joined
|
|||
benabik | I suppose I could make it include the % in the error message, but I don't have enough information to print the entire format there, just the current character. | 17:09 | |
arnsholt | moritz: But if the segfault happens inside sqlite, I blame sqlite =) | ||
tadzik | aaaargh, wtf | 17:10 | |
moritz | well, passing a NULL pointer as the statement text just wasn't smart :-) | ||
arnsholt | Troo, troo | ||
benabik | tadzik: I'll look into improving the message. But my guess is that you have a '%;' in your format string somewhere and it's not getting caught by P6 before it gets to Parrot, which throws an exception. | 17:11 | |
tadzik | gist.github.com/2501044 | ||
I have no idea what's going on here | |||
benabik | Is $tmpl-project changing? | ||
tadzik | no | 17:12 | |
not because of say(sprintf()), I'm sure | |||
benabik | Oh. It said 2nd call and I thought you meant "2nd call to gen-result" | ||
tadzik | nope, it's just one call there | 17:13 | |
gist updated with the template | |||
benabik | Was just about to ask. :-D | ||
raiph | timotimo: tablets.perl6.org/appendix-a-index.html ? | ||
timotimo | that's not the one i meant, but that's still pretty cool | 17:14 | |
moritz | did you mean the periodic table of operators? | 17:15 | |
raiph | tablets.perl6.org is the replacement for the likes of www.perlfoundation.org/perl6/index.cgi?witch | 17:17 | |
tadzik | benabik: ooh, found it :/ | ||
benabik: it was the other call to sprintf, which had another template, which had '70%' in it :/ | |||
so you were right :) | |||
timotimo | ah, witch, that's what i meant | ||
benabik | tadzik: Yeah, that's poor. | ||
moritz | and now the segfault is because I don't pass enough arguments to a C function | 17:18 | |
lichtkind | r: say 0 ^^ 4 | ||
p6eval | rakudo 256e1d: OUTPUT«4» | ||
benabik | tadzik: That said, Rakudo might want to handle the exception from sprintf better. | ||
tadzik | indeed | ||
lichtkind | moritz: is that wrong ? | 17:19 | |
moritz | lichtkind: I don't think so | ||
lichtkind | so why it differs from xor? | ||
moritz | r: say 0 xor 4 | ||
p6eval | rakudo 256e1d: OUTPUT«0» | ||
moritz | r: say (0 xor 4) | 17:20 | |
p6eval | rakudo 256e1d: OUTPUT«4» | ||
moritz | lichtkind: doesn't seem to differ, except in precedence | ||
timotimo | heh, nice catch | ||
how did you find that? | |||
moritz | timotimo: whom did you just ask? | ||
timotimo | moritz, i asked moritz | ||
moritz | timotimo: ah. Eagle-eye method :-) | 17:21 | |
lichtkind | moritz: right :) | ||
moritz | it's not hard to find which function it segfaults in | ||
and then one just has to look careful | |||
lichtkind | r: say (0 xor 4) | 17:22 | |
p6eval | rakudo 256e1d: OUTPUT«4» | ||
lichtkind | r: say (-1 xor 4) | ||
p6eval | rakudo 256e1d: OUTPUT«Nil» | ||
lichtkind | r: say (-1 xor -3) | ||
p6eval | rakudo 256e1d: OUTPUT«Nil» | ||
lichtkind | r: say (-1 xor 0) | ||
p6eval | rakudo 256e1d: OUTPUT«-1» | ||
timotimo | huh? | ||
that one i don't understand | 17:23 | ||
it's not bitwise or something, is it? | |||
moritz | no | ||
lichtkind | no | ||
moritz | it boolifies both args | ||
and -1 is True, 0 is False | |||
so it returns the True | |||
timotimo | oh, if both are true, it returns nil, because what else shoud it do, right? | ||
moritz | yes, it has to return some False value | 17:24 | |
r: say so Nil | |||
p6eval | rakudo 256e1d: OUTPUT«False» | ||
timotimo | r: say (Nil xor True) | 17:25 | |
p6eval | rakudo 256e1d: OUTPUT«True» | ||
timotimo | :p | ||
moritz | "yeah, right" :-) | ||
lichtkind | r: say (0 xor 0) | ||
p6eval | rakudo 256e1d: OUTPUT«0» | ||
17:27
mdcw` joined
|
|||
moritz | now it changed from segfault to "Malformed UTF-8 string" | 17:28 | |
interesting, it succeeds in fetching all columns from the first row | 17:39 | ||
and then complains about the first column in the second row | |||
17:40
sivoais joined
|
|||
masak | lichtkind: even in Perl 5, the word-y boolean ops have looser precedence than infix:<=>, and the symbol-y boolean ops have tighter. | 17:42 | |
that's why we have two sets of them. | |||
timotimo | oh, right, like "or die ..." | 17:44 | |
masak | right. | 17:45 | |
if you do `open my $fh, '<', $file || die ...`, then the infix:<||> glues together $file and die | |||
dalek | blets: 9bbadd3 | (Herbert Breunung)++ | docs/appendix- (2 files): explaining xor better |
||
masak | which could be what you want (if $file can be falsy and you want to die in those cases) -- but it probably isn't. | 17:46 | |
lichtkind: s/none empty/non-empty/ | 17:49 | ||
17:55
Timbus left,
sivoais left
17:57
sivoais joined,
Timbus joined
18:02
Chillance joined
18:05
thou left
18:10
erkan joined,
erkan left,
erkan joined
18:12
sivoais left
|
|||
tadzik | once again I ponder a thought of removing from ecosystem those projects which I don't remember ever running (or building) | 18:13 | |
moritz | tadzik: +1 | 18:14 | |
colomon | +1 | ||
tadzik | and again, after a quick consideration, I say no. | ||
...wait, what? :) | |||
the reason for my mixed feelings is that it'd be me who'll have to decide who to throw away | |||
moritz | there's no value provided to the users in offering modules that don't work | ||
colomon | well, I'd be conservative about what you take out | ||
tadzik | don't we have phasers today? | 18:15 | |
PerlJam | tadzik: annotation is better than removing IMHO. | ||
colomon | but for instance, if a project doesn't work and hasn't been modified since the rakudo alpha days, it probably shouldn't be in the ecosystem | ||
PerlJam | colomon: that sounds rather arbitrary to me. | ||
moritz | tadzik: you mean, "didn't we have #phasers 45 minutes ago"? | ||
tadzik | moritz: possibly :) | ||
PerlJam | I mean, there are bits of code that were created in the days of alpha that do still run today. | 18:16 | |
Su-Shee | hello, user here! ;) as a user, I take less modules working well over having more any time. | ||
colomon | PerlJam: sure, but I explicitly said "doesn't work" | ||
PerlJam | oh, so you did :) | ||
colomon | and it's not like he's talking about destroying the project; just taking it off the list of projects | 18:17 | |
tadzik | okay. I'll start writing up a list, and will reconsider them with you all | ||
PerlJam | colomon: but it's easier to get some love when people can see you when you're broken :-) | 18:19 | |
colomon | yes, but that's sort of my point: it's been pretty obvious these things are broken for YEARS. | 18:20 | |
I'm not sure what else you could do to get the authors to fix things up. | |||
moritz | send patches :-) | ||
PerlJam | okay, maybe it's just my predilection to keep things rather than throw them away that's guiding me now. | ||
colomon | moritz: there is that. :) | ||
PerlJam | I'm a packrat, but I do eventually throw away useless stuff. :) | 18:21 | |
18:21
sivoais joined
|
|||
moritz | PerlJam: we're not throwing away anything. We just don't display the links on the frontpage | 18:21 | |
colomon | PerlJam: look at it from the perspective of a newcomer to Perl 6. "Awesome! There's a library that does exactly what I need! oh, except it doesn't work, and hasn't in years." (Or quite possibly ever.) | ||
I guess some sort of "status" flag could be used to the same effect. | 18:22 | ||
PerlJam | moritz: aye. I'm just thinking out loud about the stuff in my brain :) | ||
[Coke] | If we're going to track /dead/ projects, that's fine, but keep them hidden by default. | ||
tadzik | tjs.azalayah.net/index.html look what I can has | 18:23 | |
PerlJam | What we need is some sort of "autocuration" so that tadzik (or anyone else) doesn't have to *do* anything. | ||
jnthn | tadzik: NICE! :) | ||
tadzik++ | |||
moritz | PerlJam: I think that's overengineering right now | 18:24 | |
tadzik | note to self: sprintf() is not, _not_, *not* a substitute for a templating system | ||
PerlJam | tadzik: sweet. I have one feature suggestion. Make the module name link to the repo | ||
(rather than the link at the end) | |||
tadzik | PerlJam: approved. I'll fix it in a second | ||
jnthn | tadzik: Bailador claims it doesn't prep ok in there, though it does actually work these days, I thought? | ||
Su-Shee | EMMENTHALER? whose idea was that? ;) | 18:25 | |
masak 's | |||
benabik | That makes me think of cheese. | ||
tadzik | jnthn: yeah, it's just that the official repo of HTTP::Easy is still broken | ||
colomon | tadzik: you need it to say "Rakudo" somewhere around there .... after all, the ABC module works fine under Niecza. (And ideally we'll get the NIecza stats up there sometime soon too.) | ||
Su-Shee rolls a full wheel of gouda in front of masak's door. ;) | |||
jnthn | tadzik: ah, k | ||
tadzik | masstest must've used the old db | ||
masak | Su-Shee: it comes from this post: strangelyconsistent.org/blog/cheese-speleology | ||
tadzik | colomon: indeed, will fix it in a second | ||
colomon++ # the good niecza sheriff | 18:26 | ||
masak | colomon++ | 18:27 | |
moritz | and the legend is still out of date | ||
colomon: what's blocking ABC on rakudo? | |||
tadzik | heh, it also says that panda doesn't build | 18:28 | |
it must have something to do with trying to precompile it while running it | |||
colomon | moritz: something is mucked up in Rakudo's module handling | ||
[Coke] | tadzik: that looks familiar. ; | ||
;) | |||
moritz | colomon: hm, ok | ||
tadzik | [Coke]: does it? | 18:29 | |
(I lean towards hardcoding panda to OK-OK-OK :P) | |||
colomon | moritz: symptoms are that ABC::BrokenRhythm uses ABC::Note, but in that file ABC::Note is not correctly recognized as a class name | ||
[Coke] | tadzik: (perl6.org/compilers/features) | ||
tadzik | oh, yes :) | ||
moritz | colomon: I see | ||
tadzik: what a coincidence :-) | |||
jnthn | colomon: Is that when you're compiling the modules? | 18:30 | |
moritz | it is | ||
moritz just tried | |||
jnthn | colomon: I fixed a pre-comp bug just like that at the hackathon. | ||
moritz | jnthn: happens with newest rakudo too | ||
jnthn | shit. | ||
moritz | on the upside, it's easy to reproduce | ||
colomon | jnthn: it may even have started happening at the hackathon, it ran fine on February's Rakudo. | ||
moritz | git clone git://github.com/colomon/ABC.git && cd ABC && ufo && make | 18:31 | |
jnthn | heh | ||
masak | still needs golfin' | ||
jnthn | Not sure ufo actually runs on my platform :) | ||
moritz | I guess the global merging or module isolation or so doesn't quite work | 18:32 | |
masak | ufo was only ever meant as a developer tool. I repeat this sometimes, though I'm not sure it helps :) | ||
jnthn | moritz: Is it a pre-comp only issue? | 18:33 | |
tadzik | colomon: what can you tell me about Vector? | ||
jnthn | moritz: Or a general one? | ||
colomon | jnthn: I think it happens regardless of pre-comp | ||
moritz | jnthn: trying... | ||
jnthn | colomon: OK, if so then it's not the thing I fixed at the hackathon... | 18:34 | |
moritz | the first few test files run OK without precompilation | ||
tadzik | here are my candidates for deletion: gist.github.com/2501759 | 18:35 | |
moritz | jnthn, colomon: seem to (mostly) work without precomp, and doesn't error out while compiling that module | ||
tadzik | I didn't include anything that belongs to one of the active perl6/module developers, so if you feel that you have a module that should not probably be in the ecosystem, please add it to a list | ||
colomon | jnthn: moritz++, he's right | 18:36 | |
so I guess it is pre-comp | |||
tadzik: Vector versus Math::Vector? Or Math::Vector? (I forget whether the older one is in the ecosystem.) | |||
tadzik | colomon: Vector | ||
18:37
birdwindupbird joined
|
|||
colomon | tadzik: it should go, it's completely replaced by Math::Vector | 18:37 | |
tadzik | okay | ||
moritz | wow, that's weird | ||
I've reduced ABC::BrokenRythm to just the class declaration and a sub with the ABC::Note in the signature | 18:38 | ||
and when I remove the 'use ABC::Stem;' line (and that type isn't used anywhere), I get a totally different error | 18:39 | ||
colomon | tadzik: it would be really cool if the Emmentaler index linked to what error produced a given red state. ;) | ||
tadzik | colomon: I'm working on it :) | ||
well, _slowly_ | |||
colomon | tadzik++ | ||
tadzik | colomon: how do you feel about writing a Test::Harness in Perl 6? :) | ||
moritz | tadzik: your module removal list looks quite OK to me | 18:40 | |
colomon | tadzik: hmmm. what would be involved? I thought panda already did that, more or less... | 18:41 | |
masak | moritz: you know this already, but that needs to go into RT somehow. | ||
moritz | masak: I'll try to reduce it a bit more | 18:42 | |
tadzik | colomon: it just runs 'prove', but it's quite hard to tell e.g. how many tests did fail, or which ones | ||
colomon | moritz: I completely rewrite the problem methods to be one method with a case statement, and when I did that, the when blocks failed because the parser treated, say, ABC::Note as a sub name rather than a type. (at least, I think that was the gist of my conversation with sorear, the actual error message was completely obscure.) | 18:43 | |
masak | moritz++ | ||
colomon | tadzik: I don't think I'll have time for a few days, but I'd certainly be interested in taking a look at the problem. :) | 18:44 | |
tadzik | I see :) | ||
maybe I should set a prize for the one who implements it first | |||
and something better than "I'll teach you an optimal way to tie a shoe". That didn't convince anybody last time I tried it | |||
dalek | osystem: 9091395 | tadzik++ | / (2 files): Remove DateTime::Parse, as it's gone from Github |
18:49 | |
osystem: f9e7ef7 | tadzik++ | / (14 files): Remove not working and unmaintained modules. My heart bleeds |
|||
tadzik | that leaves us up to 6 modules in the SHELTER | ||
Digest-sum io-prompt lolsql messagepack-pm6 november SQL-Grammar | |||
18:49
fgomez left
|
|||
jnthn | eek, one of those is mine :) | 18:50 | |
tadzik | I know :) | ||
jnthn suspects it shouldn't be ahrd to fix | 18:51 | ||
And clearly it's a critical part of any langauge's ecosystem ;) | |||
oh, it even has all +s | 18:52 | ||
Just no META.info I guess | |||
masak | heh, is november still around? who maintains that module, I wonder? :P | 18:53 | |
18:54
icwiener joined
|
|||
tadzik | jnthn: all +s because it has no tests, I'm afraid ;P | 18:54 | |
masak: there were commits younger than a year ago, so I decided to keep it | |||
18:55
SIGS3GV joined
|
|||
[Coke] | hey, moritz, jnthn, pmichaud - if parrot stopped shipping an nqp, that wouldn't impact rakudo at all, neh? | 18:56 | |
tadzik | haha. Yapsi spits out, like, ALL THE WARNINGS :) | ||
timotimo | so in theory i should be able to use code from any other language that runs on parrot in rakudo, shouldn't i? does that currently work? | 18:57 | |
masak | Yapsi should have a much better chance at working than November. | ||
tadzik | timotimo: in theory, yes. In practice no, it does not work | 18:58 | |
benabik | timotimo: There's a lot of sharp corners there because Rakudo has a custom object model. | ||
timotimo | i feared that :( | ||
19:00
answer_42 joined
|
|||
Tene | jsil.org/try/ -- CLR->javascript written by an acquaintence of mine | 19:01 | |
masak | Rakudo having a custom object model should be the least of Parrot's problems. | ||
Parrot is *about* language integration. that's why it was built. | 19:02 | ||
even the April Fool's joke was about that. | |||
Tene | You'd think that, if you hadn't tried to get support for working on language interop in parrot. | ||
masak | it worked for a while, thanks to Tene++ | ||
and then it bitrotted. | |||
tadzik | PerlJam: I think source-url in Grammar::Profiler::Simple is broken | ||
timotimo | i remember seeing the ruby/perl gist by tene | 19:03 | |
19:03
raiph_ joined
|
|||
timotimo | that was most probably pre-nom and would have to be ported? | 19:03 | |
PerlJam looks | |||
tadzik | PerlJam: some casing issues, I think | 19:04 | |
Tene | timotimo: rather more than just that. | ||
PerlJam | ah, capitalization | ||
19:04
SIGS3GV left
|
|||
PerlJam | yep, that's it. | 19:04 | |
tadzik | cool. I'll re-run masstest at least once again today, so it should be all pluses :) | ||
Woodi | you earlier mention Alien 3 movie and Ellen Ripley suicide... Yes, she jumped into fluid metal container to prevent alien inside her to run away but we can say that before she touch fluid she was killed by alien going out... | 19:05 | |
19:05
fglock left,
raiph left
|
|||
Woodi | and Alien 4 is worth to see :) | 19:05 | |
PerlJam | fixed | ||
[Coke] | Woodi: i respectfully disagree. ;) | 19:06 | |
tadzik | tjs.azalayah.net/index.html updated | ||
[Coke] | in fact, I'd skip 3 also. | ||
just read the precis. | |||
Woodi | I do not remember exact pictures but in movies ppls die fast when it is needed :) | 19:08 | |
masak | I'll probably watch Alien 3 at some point just to confirm that [Coke] is right. might skip 4, though. | ||
Woodi | however to back to "programming", a lot of "toys" to program in Alien series :) | 19:09 | |
[Coke] is reminded to put A2 back in the to-watch pile. | 19:10 | ||
"Game over, man! GAME OVER!" | |||
19:10
jasonmay joined
|
|||
Woodi | and "toys" is from "Batman" - Joker played by Nicolson says "From where hi have that toys ??" - about Batman tools :) | 19:11 | |
and Predators have toys :) | |||
19:11
answer_42 left
|
|||
tadzik | moritz: could you merge github.com/moritz/perl6-http-easy/pull/1 ? | 19:11 | |
19:12
jasonmay left
|
|||
moritz | I'm very close to forking modules into the perl6 organization, and just give everyone on the p6 team commit access | 19:12 | |
Woodi | but seriously I thinking about file format to describe graph of connected tools/machines, eg for kitchen automation... | ||
tadzik | sounds sane | ||
moritz++ thanks | 19:13 | ||
raiph_ | option to use putty or openssh | ||
i've got putty installed | 19:14 | ||
oops. (meant to be /msgs to lichtkind) | |||
moritz | ok, on bug submitted | 19:20 | |
jnthn | moritz: the ABC one? | ||
moritz | jnthn: one of them, yes :-) | ||
jnthn | moritz: Thanks | 19:21 | |
I'll get to it at some day other than today. | |||
jnthn is sick :( | |||
moritz | :( | ||
jnthn | My concentration level is such that it took me half an hour to find and fix an obvious bug in a 10 line SQL query earlier today :/ | ||
moritz | jnthn: hope you recover soon | ||
jnthn | moritz: Same. | ||
The worst part is that it's runining my sleep...which is what one tends to need to recover from stuff. :/ | 19:22 | ||
moritz | :( | ||
colomon | :( | 19:23 | |
tadzik | hugme: hugme jnthn | ||
hugme | tadzik: | ||
tadzik | hugme: hug jnthn | 19:24 | |
hugme hugs jnthn | |||
tadzik | I hope you get well soon | ||
moritz | second bug report submitted | 19:25 | |
jnthn | Thanks. | 19:26 | |
19:26
fhelmberger left
|
|||
moritz | it's the one that colomon++ observed | 19:26 | |
and maybe the two have the same origin | |||
raiph_ | hugme: hug jnthn++ # for double karma? | 19:28 | |
hugme hugs jnthn++ | |||
masak | hugs... *and* karma? :P | 19:32 | |
moritz | we care about our core developers :-) | 19:33 | |
raiph_ | masak: what nebulous sense my footnote/rehearse/read notion yesterday(?) made to me faded. but now i get macro/quasi :) | ||
tadzik | moritz: I'm wondering if modules.perl6.org and emmentaler should be merged into one thing | 19:34 | |
masak | raiph_: \o/! | 19:35 | |
raiph_: tell me how they work, and I'll implement them right away :P | |||
moritz | tadzik: it's useful for sure to have some cross-linking | ||
raiph_ | masak: lol | 19:36 | |
tadzik | moritz: I'm thinking that modules.perl6.org could have a sort of street lights next to the current badges, green for OK, yellow for tests failing, red for not building, or something like this | ||
19:36
FACEFOX left
|
|||
moritz | tadzik: I'm not sure what the best way is to make it happen, I just know that I don't want the actual smoking to happen on feather2, which hosts modules.perl6.org | 19:36 | |
tadzik | yeah, I remember | ||
moritz | tadzik: yes, that's a good idea | 19:37 | |
but it wouldn't be a problem to do the smoking somewhere else, and rsync the results | |||
tadzik | I'm sure masstest will eventually (tomorrow maybe) produce json instead of HTML, so modules.perl6.org script could just process it | ||
yes | |||
19:39
FACEFOX joined,
FACEFOX left,
FACEFOX joined,
FACEFOX left
19:43
FACEFOX joined,
FACEFOX left
|
|||
colomon | moritz++ # thanks for golfing and reporting | 19:43 | |
19:43
FACEFOX joined,
FACEFOX left
|
|||
masak | moritz++ indeed | 19:44 | |
19:44
cognominal left
19:45
FACEFOX joined,
FACEFOX left,
cognominal joined,
FACEFOX joined,
FACEFOX left
19:46
FACEFOX joined,
FACEFOX left,
kaare_ left
19:48
FACEFOX joined
19:52
xinming left
19:54
xinming joined
|
|||
flussence | .oO( I have more than a little suspicion that one user doing the quit flooding is only here for SEO spamming purposes... ) |
19:58 | |
tadzik | newest test results on tjs.azalayah.net/index.html | 20:00 | |
20:01
GlitchMr left
|
|||
masak | flussence: I had just decided that if he came back, I'd op and kickban him. | 20:02 | |
moritz | tadzik++ | 20:03 | |
we really need to fix the NativeCall tests on linux | 20:04 | ||
tadzik | we need setenv | 20:05 | |
I'll look at it now | |||
moritz | we could use NativeCall to call setenv :-) | ||
tadzik | heh, yes :) | ||
moritz | star: use NativeCall; sub setenv(Str, Str, Int) returns Int is native; setenv('LD_LIBRARY_PATH', '.', 1); say 'alive'; | 20:06 | |
p6eval | star 2012.04: OUTPUT«===SORRY!===Missing blockat /tmp/VTDZMzU3Xo:1» | ||
moritz | star: use NativeCall; sub setenv(Str, Str, Int) returns Int is native {*}; setenv('LD_LIBRARY_PATH', '.', 1); say 'alive'; | ||
p6eval | star 2012.04: OUTPUT«alive» | ||
tadzik | hmm | 20:07 | |
I think it should be possible to make %*ENV a proxy object, which STORE will use setenv() from Parrot (if there is one) | |||
moritz | of course it kinda defeats the point of t/01-argless.t if you have to do a call with several arguments first to be able to do an argless call :-) | 20:08 | |
yes, there's the env pmc | |||
I wonder if we can simply substitute the $!storage of a Hash with the Env PMC | 20:10 | ||
20:11
icwiener left
|
|||
jnthn | No because containers. | 20:11 | |
(e.g. you'd only be able to bind to it) | 20:12 | ||
well, to change existing elements anyway. | |||
Needs doing with Proxy OR just leave it as is and do what pmichaud++ suggested | |||
(which is that things like run first call an UPDATE_ENV that goes through current %*ENV and diddles the contents of the Parrot Env PMC before we call the outside world) | 20:13 | ||
moritz | thing is, we need to ensure an updated environment for every dyncall too | 20:14 | |
tadzik | Proxy may be wrong after all | ||
moritz | and I wouldn't particularly mind %*ENV to be special-ish | 20:15 | |
tadzik | imagine the following: { my %*ENV; %*ENV<foo> = 5; } say %*ENV<foo> | ||
moritz | like being Str-typed | ||
tadzik | it would probably print 5, and shouldn't | ||
raiph_ | r: macro f { quasi { state $a = 0; if $a++ { quasi { say 1 } } else { quasi { say 2; say f } } } }; f # dihwidt | ||
p6eval | rakudo 256e1d: OUTPUT«(signal SEGV)» | ||
moritz | well, there can only be one environment per process | ||
timotimo | whoops, heh | 20:16 | |
moritz | tadzik: no, 'my %*ENV' would declare a bog-standard hash with no special features whatsoever | ||
raiph_ | masak: golfing... | ||
tadzik | hm, true | ||
then where's the dynamicness of %*ENV? | |||
20:17
PacoAir_ joined,
PacoAir left,
PacoAir_ is now known as PacoAir,
FACEFOX left
|
|||
moritz | well, it's an ordinary dynamic var | 20:17 | |
but only the setting-provided instance would be bound to the program's env variables | 20:18 | ||
tadzik | mhm | ||
moritz | you simply cannot have multiple dynamic vars bound to the same global, have them all distinct all DWIM | 20:19 | |
*and all DWIM | |||
masak | raiph_: I think calling a macro from inside a quasi isn't going to do what you want yet. | ||
20:19
FACEFOX joined
20:20
imarcusthis left
20:25
raiph_ left,
imarcusthis joined
20:27
raiph joined
|
|||
tadzik | r: gist.github.com/2502814 | 20:29 | |
p6eval | rakudo 256e1d: OUTPUT«Method 'set_string_keyed' not found for invocant of class 'Env' in block <anon> at /tmp/cgaWePZijI:2» | ||
tadzik | docs.parrot.org/parrot/latest/html/...v.pmc.html states otherwise | ||
am I doing something wrong Perl6-wise? | |||
moritz | yes | ||
set_string_keyed is a VTABLE, not a normal method | |||
tadzik | oh | ||
moritz | use nqp::bindkey_s instead | 20:30 | |
erm, no _s I think | |||
tadzik | will do, thanks | ||
moritz -> sleep | |||
tadzik | yay, works | 20:31 | |
g'night moritz | |||
sergot | good night moritz | 20:32 | |
masak | dream of a dwindling RT queue, moritz. | ||
20:38
birdwindupbird left
|
|||
tadzik | > print %*ENV<HOME>, " "; %*ENV<HOME> = "/not/home/tadzik"; say %*ENV<HOME> | 20:49 | |
/home/tadzik /not/home/tadzik | |||
\o/ | |||
spectesting | |||
masak | \o/ | 20:51 | |
dalek | p/toqast: 53d95cc | masak++ | t/qast/qast.t: [t/qast/qast.t] added a test for a unary op |
||
tadzik | meh, apparently that doesn't help zavolaj at all | 21:00 | |
21:00
raiph left
|
|||
tadzik | see gist.github.com/2503199 | 21:01 | |
arnsholt: ping | |||
and apparently that works in Perl 5, so it may be a parrotbug | 21:04 | ||
japhb | tadzik, re: irclog.perlgeek.de/perl6/2012-04-26#i_5501834 , if you go with colored circles for status, as the token color-blind person here, I must say I would MUCH prefer a circular version of the capsule indicators used on perl6.org/compilers/features and tjs.azalayah.net/index.html to blank circles or street lights. The combination of good color choices (a little tweaking of either the red or green would push it to | 21:08 | |
really excellent) and visually distinctive symbols makes it *much* easier to see what's going on. | |||
tadzik | japhb: thanks, I'll keep that in mind | ||
does t/spec/S16-filehandles/filestat.t fail for anyone else? | 21:10 | ||
21:10
skids left
|
|||
masak | japhb++ # token color-blind person here | 21:10 | |
japhb | :-) | ||
21:11
oiig_ joined
|
|||
dalek | kudo/setenv: 7845b8d | tadzik++ | src/core/terms.pm: Implement setting env variables by modifying %*ENV |
21:11 | |
tadzik | yay, notifications work again | ||
benabik | Shouldn't that be %ENV does role? | 21:12 | |
I thought but returned a new object. | |||
tadzik | I think does does | 21:13 | |
well, uh, you know | |||
r: my $a = 5; $a but role { method foo { say "foo | |||
p6eval | rakudo 256e1d: OUTPUT«===SORRY!===Unable to parse blockoid, couldn't find final '}' at line 2» | ||
tadzik | r: my $a = 5; $a but role { method foo { say "foo" } }; $a.foo | ||
p6eval | rakudo 256e1d: OUTPUT«Method 'foo' not found for invocant of class 'Int' in block <anon> at /tmp/Agmd_m_UbL:1» | 21:14 | |
tadzik | hm | ||
r: my $a = 5; $a does role { method foo { say "foo" } }; $a.foo | |||
p6eval | rakudo 256e1d: OUTPUT«foo» | ||
tadzik | then I don't know how this works :) | ||
oh, maybe that's the point. It doesn't | 21:15 | ||
*facedesk* | |||
sergot | tadzik++ | 21:16 | |
masak | right. 'but' is a clone plus a 'does'. | 21:17 | |
tadzik | too late for me, I guess | ||
right | |||
tadzik recompiles | |||
masak | so if you're not assigning the result, you're just throwing it away. | ||
definitely merits a sink-context warning, methinks. :) | |||
21:18
PacoAir left,
PacoAir joined
|
|||
tadzik | it's funny how I implemented a no-op and then was quite convinced that it's working as it should | 21:18 | |
colomon | n: my $a = 5; $a but role { method foo { say "foo" } }; $a.foo | 21:19 | |
p6eval | niecza v16-23-gaa61ed5: OUTPUT«Unhandled exception: Unable to resolve method foo in class Int at /tmp/GUAuekIAbd line 1 (mainline @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 3840 (ANON @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 3841 (module-CORE @ 65)  at /home/p6… | ||
colomon | n: my $a = 5; $a does role { method foo { say "foo" } }; $a.foo | ||
p6eval | niecza v16-23-gaa61ed5: OUTPUT«Unhandled exception: Cannot use 'does' operator with an immutable object at /home/p6eval/niecza/lib/CORE.setting line 1364 (die @ 3)  at /home/p6eval/niecza/lib/CORE.setting line 1303 (infix:<does> @ 6)  at /tmp/_ZBHAK4u1o line 1 (mainline @ 2)  at… | ||
dalek | kudo/setenv: 616b622 | tadzik++ | src/core/terms.pm: Fix a braino. benabik++ for noticing |
21:22 | |
benabik | tadzik: Does your example work now? | 21:23 | |
tadzik | which one? :) | ||
everything seems to work now | |||
> %*ENV<FOOBAR>="dupa"; shell 'echo $FOOBAR' | 21:24 | ||
dupa | |||
but I still don't know how to fix zavolaj | |||
21:26
tokuhirom joined
|
|||
tadzik | when I set LD_LIBRARY_PATH before running make test, it works. When I set it in NativeCall.pm, it doesn't | 21:26 | |
jnthn | Setting it in LD_LIBRARY_PAT | 21:27 | |
ffs | |||
Setting it in NativeCall.pm is probably not right | |||
It probably wants setting in the test file itself. | |||
tadzik | that doesn't help either | ||
masak | phenny: pl en "dupa"? | ||
phenny | masak: "ass" (pl to en, translate.google.com) | ||
jnthn | phenny! How rude! | ||
phenny | jnthn! | ||
tadzik | yes, it's the "d" word again, sorry | ||
masak | phenny: pl ru "dupa"? | ||
phenny | masak: "задница" (pl to ru, translate.google.com) | 21:28 | |
tadzik | is that pronounced "żopa"? | ||
jnthn | No, but żopa is Russian for "ass", iirc :) | ||
tadzik | ;) | ||
masak thought it was жопа | |||
right. | |||
tadzik | phenny: "задница"? | ||
phenny | tadzik: "ass" (ru to en, translate.google.com) | ||
benabik | I wonder if it has to be set before the program is loaded. :-/ | ||
dyld is picky | |||
jnthn | benabik: I was wondering that. | ||
tadzik | the error comes from NQP's NativeCall | ||
it's nqp::buildnativecall() that dies | 21:29 | ||
jnthn | tadzik: Right, that's when it goes off to the OS to ask it for the symbol. | ||
tadzik | right | ||
benabik | Based on prior experience with dyld, I would not be surprised if it caches the value of DYLD_LIBRARY_PATH during program start. | ||
Prior experience mostly being "dyld does whatever is least convenient" | 21:30 | ||
I believe it's considered a safety feature so rogue plugins can't alter the search path for the entire program. | |||
jnthn | stackoverflow.com/questions/856116/...for-ctypes | 21:31 | |
That's one answer that seems to say "no, this won't cut it" | |||
benabik | Bonus! It's not just dyld. | ||
tadzik | well, shit | ||
jnthn | ooc | 21:32 | |
Does | |||
is native('./thelib') not cut it? | |||
tadzik | it does | 21:33 | |
tadzik wordless | |||
jnthn | Wonder what happens on Windows... | ||
tadzik | well, it least we have a better %*ENV now | ||
that could be specialcased probably | 21:34 | ||
but does it break on windows? Maybe there'll be no problem | |||
benabik | Dead ends that add useful features aren't dead ends? | ||
tadzik | sure | 21:35 | |
jnthn | sub Argless() is native('./01-argless') { * } | ||
Worked :) | |||
tadzik | okay :) | ||
I even have a zavolaj commit bit | |||
jnthn | I'll leave you to it...I'm drugging myself up and hoping for at least some sleep tonight. | 21:36 | |
tadzik | sure thing | 21:37 | |
dalek | blets: 5a098ab | (Herbert Breunung)++ | docs/appendix-a-index.txt: describing signature notation in index |
21:38 | |
tadzik | still, 05-arrays.t fails for me | ||
oh, ok, there's been commits | |||
Juerd | Which synopsis describes "is native"? Looks very interesting. | 21:39 | |
Or some other document perhaps | |||
tadzik | I think the answer is "none" :) | ||
masak | Juerd: it's not Perl 6, it's zavolaj. | 21:40 | |
github.com/jnthn/zavolaj | |||
benabik | Which even comes with a README | ||
Juerd | Impressive | 21:42 | |
github.com/mberends/MiniDBI/blob/m.../mysql.pm6 # wowowow. | 21:52 | ||
github.com/mberends/MiniDBI/blob/m...SQLite.pm6 # Whoaaa | 21:54 | ||
tadzik | :) | 21:55 | |
masak | ain't it great? | ||
tadzik | ==> Succesfully installed NativeCall :) | 21:56 | |
Juerd | So... should I build MiniDBIx::Simple, or is a sane interface part of the actual plan? | 21:57 | |
tadzik | the slot for Bailador::Plugin::Database is still free :) | ||
Juerd | That's a bit too bailador specific for my taste :) | 21:58 | |
masak .oO( shoulda called the Dancer clone Syrio::Forel instead... ) | 21:59 | ||
tadzik | oh, well, I'd comment that but that'd be a spoiler :) | ||
masak | heh. | 22:01 | |
dalek | blets: 6f48f3e | (Herbert Breunung)++ | docs/appendix- (2 files): linking all logical ops |
22:02 | |
sergot | Good night o/ | 22:07 | |
22:07
sergot left
22:10
thou joined
|
|||
masak | 'night, #perl6 | 22:13 | |
dalek | rl6-bench: c81d1d3 | (Geoffrey Broadwell)++ | / (2 files): For NQP tests, change $i++ to $i := $i + 1 . The difference in a small loop is well within measurement error, so might as well get closer to Rakudo compatibility |
22:18 | |
rl6-bench: 79afd70 | (Geoffrey Broadwell)++ | nqp/rc-forest-fire: Change method new into method init in nqp/rc-forest-fire to paper over difficulty writing a method new that works under both nqp and Rakudo |
|||
rl6-bench: bd1524b | (Geoffrey Broadwell)++ | nqp/rc-forest-fire: Work around NQP/Perl 6 incompatibility in MAIN args: NQP includes the script name at the front, but Perl 6 does not |
|||
rl6-bench: fb0e794 | (Geoffrey Broadwell)++ | TODO: NQP-on-Rakudo TODO items down |
|||
tadzik | good night, internet | 22:19 | |
22:20
oiig_ left
22:25
benabik left
22:27
bluescreen10 left
|
|||
dalek | rl6-bench: de83393 | (Geoffrey Broadwell)++ | TODO: Add two more TODO items; fix list bullet characters |
22:32 | |
rl6-bench: 123cb68 | (Geoffrey Broadwell)++ | bench: Add 1e6 version of empty_loop test, to see performance of simple loop when startup time is (mostly) taken away |
|||
22:36
Chillance left
22:38
skids joined
|
|||
dalek | blets: 871de1a | (Herbert Breunung)++ | docs/appendix- (2 files): better explained: and or ... (seq op) |
22:42 | |
22:46
thelazydeveloper left
|
|||
dalek | blets: 488393a | (Herbert Breunung)++ | docs/appendix- (2 files): polish for logical ops |
23:00 | |
23:05
whiteknight joined
|
|||
lichtkind | karma lichtkind | 23:07 | |
aloha | lichtkind has karma of 11. | ||
lichtkind | karma Herbert Breunung | 23:08 | |
aloha | Herbert Breunung has karma of 296. | ||
23:17
NamelessTee left
23:29
vlixes joined
|
|||
spider-mario | parrot 4.3 is in arch’s [community-testing] repo. :) | 23:29 | |
when it hits [community], I’ll be able to upgrade nqp and rakudo in the AUR. | |||
(unless it happens before monday. it’ll then have to wait until monday.) | 23:30 | ||
23:41
spider-mario left
|
|||
whiteknight | Is there anybody around who is familiar with NQP's regexes? | 23:44 | |
23:48
benabik joined
23:51
mikemol left
23:54
ab5tract left
|