»ö« 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:01 Reini joined
masak 'night, #perl6 00:11
00:15 Reini left 00:27 rindolf left, fgomez joined 00:46 Reini joined 00:57 ifim left 00:59 bowtie left 01:16 quester left 01:19 noggle left 01:35 fgomez left 01:37 leont left 01:47 fgomez joined 01:59 noggle joined 02:02 integral joined, integral left, integral joined 02:06 Reini left 02:07 integral left 02:08 integral joined, integral left, integral joined 02:20 pecastro left 02:21 whiteknight left 02:23 FROGGS__ joined 02:26 FROGGS_ left 02:31 Reini joined 02:42 Reini left 03:20 erkan left, erkan joined 03:22 erkan left, erkan joined, erkan left, erkan joined 03:24 armitage81 left 03:32 noggle_ joined 03:35 noggle left 03:37 ServerSage joined 03:39 Reini joined 03:46 Reini left 04:07 kcwu left 04:13 Reini joined 04:25 jaldhar_ joined 04:34 Bruce___ joined 04:36 Psyche^ joined 04:40 Patterner left, Psyche^ is now known as Patterner 04:49 Reini left 05:13 xinming left, xinming joined 05:16 rummik joined 05:19 Reini joined 05:28 Reini left 05:46 telex left 05:51 quester joined 05:53 telex joined 06:20 Reini joined 06:27 Reini left 06:29 benabik left 06:35 benabik joined 06:50 rindolf joined 06:56 Bruce___ left 07:08 PacoAir joined 07:14 SamuraiJack joined 07:20 Reini joined 07:26 Reini left 07:29 pecastro joined 07:30 daniel-s_ joined 07:34 kcwu joined 07:39 quester left 07:56 pecastro left 07:57 Chillance joined 08:07 kaare_ joined 08:08 gootle joined 08:21 Reini joined 08:22 wamba joined 08:30 SamuraiJack left, Reini left 09:21 Reini joined 09:26 rindolf left 09:30 GlitchMr joined 09:34 Reini left 09:44 Liz joined 09:45 Liz is now known as Guest12141 09:46 Guest12141 is now known as lizmat 09:49 cognominal joined
lizmat doesn't see cognominal in person and wonders why 10:01
10:02 tokuhiro_ joined
sorear is there a meeting going on? 10:05
(hi lizmat)
lizmat hi sorear, yes, quack and hack europe 2012
in paris 10:06
sorear where does one find out about such things? 10:07
lizmat good question… dijkmat was drafted as sponsor… that's how we found out about it :-)
tadzik sorear: getty was talking about it on the YAPC, it was also mentioned in perl weekly iirc 10:08
lizmat also: wendy keeps a list of Perl events and posts them on some of the more local pm lists 10:09
hi tadzik!
10:09 cognominal left
tadzik hello lizmat! \o/ 10:09
sorear so I need to follow perl weekly, huh? 10:10
by "local pm lists" do you mean .nl or near the actual event?
lizmat local geographically, like nl.pm, vlaanderen.pm, groningen.pm, niederrhein.pm lists 10:11
sorear I'm worried that maybe I've missed some random event in *my* area... 10:12
lizmat well, keep following perl weekly, I would guess…
10:17 araujo joined 10:22 Reini joined 10:29 Reini left
lizmat just found out that you cannot build rakudo star from a directory called 'rakudo*' 10:48
especially if you have a directory "rakudo" next to "rakudo*"
:-)
moritz there hasn't been an advent calendar post today 10:49
does anybody want to chime in? 10:50
lizmat sorry, I have been offline for 2 months or so.. what do you expect from an advent calendar post? 10:52
BTW, has anybody been reading "Uniqueness and Reference Immutability for Safe Parallelism", as mentioned on slashdot some time ago? 10:53
10:54 tokuhiro_ left
lizmat I wonder how the line "our core language and prototype do not allow mutable global variables" throws a spanner in the works if applying to Perl 6 10:55
jnthn morning o/
lizmat morning jnthn! 10:56
jnthn lizmat! \o/ 11:02
11:05 Su-Shee_ joined 11:09 Su-Shee left
moritz lizmat: basically a Perl 6 related blog post 11:11
though I guess there are others here that could do it too :-)
tadzik I wonder if I could write a Module::Build plugin-ish thing, to teach cpanm and friends how to install perl 6 modules 11:12
(and where)
11:13 spider-mario joined
felher tadzik: a gernal 'how to install Perl6-Modules' Post would be awesome. There was one 2010, but I don't know how accurate that one still is. :) 11:16
*general
moritz felher: GlitchMr already planned a post on panda this year 11:17
felher moritz: ah, okay. Thnx :)
tadzik: never mind then :)
11:18 cognominal joined
GlitchMr Huh... where is day 8 article? 11:18
moritz GlitchMr: not there yet
which is why I asked if anybody wants to chime in 11:19
GlitchMr 8 is-prime -- duff
huh?
It's perlpilot on GitHub, right? 11:21
moritz right
and PerlJam here
11:22 Reini joined 11:28 wamba left 11:31 Su-Shee_ is now known as Su-Shee, Reini left 11:36 wamba joined 11:42 leont joined
lizmat moritz: sorry, don't expect anything from me this year 11:45
GlitchMr Uhmmm... 11:55
I could put my panda article if PerlJam won't insert his article.
But, then we would have problem on 12th. 11:56
The panda article is already 100% done, all I've to do is convert it to WordPress syntax.
(and I need permission to publish articles on WordPress, my nick is glitchmr). 11:57
11:59 leont left 12:07 Chillance left 12:12 TheAthlete joined 12:13 TheAthlete left 12:19 Chillance joined 12:23 Reini joined 12:27 birdwindupbird joined 12:30 Reini left 12:32 wamba left 12:36 fgomez left
moritz GlitchMr: then please publish it 12:38
GlitchMr: invitation sent 12:39
as for the 12th, maybe PerlJam wants to take that slot instead, or I'll write something about exceptions
GlitchMr well, ok then 12:41
'Congrats! You have been added to this blog.' 12:42
Thanks
I will add it now
moritz GlitchMr++ 12:44
GlitchMr "This post is super-awesome" 12:47
What?
timotimo sounds like some sort of test post
GlitchMr It's option in "Publish" 12:48
ok, now I can publish it, I guess.
perl6advent.wordpress.com/ 12:49
But that <pre> is on menu...
Perhaps I could fix it...
moritz just remove a bit of indention 12:50
GlitchMr perl6advent.wordpress.com/ 12:51
Well, it's published now
timotimo for me, the pre is in scroll areas
12:52 MayDaniel joined
GlitchMr Yeah, I didn't knew what to do 12:52
timotimo Let’s say you would want to parse INI file. - an INI file or INI files 12:53
using search command - using the search command
When module was installed - when a module 12:54
other than that, it's nice
will there be an article on how to publish your own perl6 modules? maybe a bit of "best practices", directory organisation for projects etc etc? 12:55
GlitchMr heh, masak hasn't found those issues when I've asked him to proofread :-). But I still think he has proofread it nicely.
Now to move things around in mu
timotimo :)
dalek : cf7effd | GlitchMr++ | misc/perl6advent-2012/schedule:
Move day 8 to day 12.
12:57
GlitchMr And update the ToC that hasn't been updated since day 5 12:58
12:59 rindolf joined
rindolf Hi all. Happy Hanukkah. 12:59
GlitchMr perl6advent.wordpress.com/2012/12/0...-contents/ 13:00
Day 8 added
felher GlitchMr++ # advent calendar post 'bout Panda :) 13:07
GlitchMr I wanted to put in on 12th, but it looks that post for 8th day is already late. 13:08
I initially wanted to claim day 4, but gerdr was faster ;-). 13:09
13:23 Reini joined, tokuhiro_ joined 13:30 zby_home_ joined
cognominal struggling with liz to get a work rakudo on her humongous 17'' inch macbook 13:30
* a working rakudo 13:31
13:34 Reini left 13:39 sftp joined
lizmat stumped :-( 13:57
src/Perl6/Actions.pm
make: *** [blib/Perl6/Actions.pbc] Segmentation fault: 11
from a fresh rakudo checkout
jnthn Haven't seen/heard about that happening before. 13:58
moritz neither 14:00
lizmat on osx mountain lion with latest xcode 14:01
seeing a lot of warnings like "bind.c:662:77: warning: unused parameter 'lexpad' [-Wunused-parameter] 14:02
...Rakudo_Parameter *param, PMC *lexpad) {
" but cognominal tells me this is normal on gcc-clang
cognominal jnthn, I am working with liz to get highligting from a parse tree. We will have questions to ask you. 14:03
jnthn Well, plus unused parameters aren't likely to cause segfaults.
lizmat $ gcc
i686-apple-darwin11-llvm-gcc-4.2: no input files
cognominal in nqpm how to test if a value is a string? is a sub?
in github.com/cognominal/p6hilite/ I use ugly hacks to get around 14:04
jnthn If you're looking at the parse tree, then you would be going off the names of the rules, I guess?
lizmat $ /Users/liz/rakudo/install/bin/nqp --version
This is nqp version 2012.11.1-10-g785d2fa built on parrot 4.10.0 revision RELEASE_4_10_0
cognominal lizmat, yes we have the same comoiler
right now, I work from a match to get an straight dump, a json dump and a html file 14:05
I need to get lexcical highlingting
jnthn "lexical highlighting"? 14:06
cognominal I have a %rule2docco to match a rule name to a hmtml attribute class name
the value can be either a string or a sub that gives the string 14:07
right now I cheat using arrays. Depending on the type of the array, I will get to the string and the sub
that's top ugly
I would like to test if the value is a sub or a string. 14:08
lizmat basically Perl5's reftype is what I think cognominal wants
14:08 pharoah joined
cognominal jntnh: what I call lexical highlighting is what people call syntax hightlighting. 14:09
jnthn I think there's some isinvokable thing that'll tell you if what you have is something that can be called. 14:10
cognominal I make the distinction because I am able to do dynamic syntax hightlighting on perl6 generated parse tree. Too bad that perl6 code is nqp generated parse trees
jnthn Well, yeah, they have different types of match object.
pharoah I'm new to looking through the perl6 source. Can anyone tell me if uniq is defined in the source for perl6 or if it is taken from perl5 and where I might be able to find it? 14:11
cognominal so I have written code to get the equivalent of a Perl6 .chunks in a nqp match :)
jnthn pharoah: github.com/rakudo/rakudo/blob/nom/...st.pm#L315 is where Rakudo implements it 14:12
pharoah jnthn: great. thank you!!
14:13 cedrvint_ joined
cedrvint_ Hello #perl6! 14:13
jnthn o/ cedrvint_ 14:14
cedrvint_ \o jnthn
lizmat jnthn: is_invokable seems to be it
cedrvint_ G+ has now a specific support for "communauty": here's the one for Perl 6, it's not mine, it's yours! ;) 14:15
plus.google.com/u/0/communities/11...0315404210
do what ever you wish with it
moritz r: try die "foo"; say $!.perl 14:23
p6eval rakudo 53daef: OUTPUT«X::AdHoc.new(payload => "foo")␤»
14:24 Reini joined
hoelzro hi Perl 6 folk 14:26
timotimo i see two perl6 communities on google+ 14:27
one is yours with 1 member and the other one is this one: plus.google.com/u/0/communities/10...5752445991 with 31 members
14:30 Reini1 joined, Reini left
cognominal jnthn, is_invokable is not mapped from pir to nqp ! 14:33
I suppose I must add the mapping in nqp/src/QAST/Operations.pm 14:34
14:34 SamuraiJack joined
cedrvint_ timotimo: I thought communauty names were exclusive, that's I reserved "Perl 6" 14:34
*that's why
it seems it was useless, so just discard mine :) 14:35
jnthn cognominal: Yeah, that tends to mean nobody decided if it should really exist... :) 14:36
timotimo don't worry about it :)
cedrvint_ it's deleted now, never mind then :) 14:37
14:43 pharoah left 14:52 wamba joined 14:53 mikemol left 14:55 mikemol joined
cognominal jnthn, adding QAST::Operations.add_core_pirop_mapping('is_invokable', 'is_invokable', 'iP', :inlinable(1)); in Operation.nqp would do it? 14:56
jnthn No 14:57
We *never* put the underscores in nqp op names
And the return type is always a register so it must be IP
cognominal ok, will try it
jnthn (exception for underscore rule is to indicate a type, like add_i vs add_n. But never in the middle.)
cognominal don't know where to add it in the file
jnthn Near islist and ishash maybe
cognominal ok, be back. listning the quack talks of the hackandquack 14:58
moritz I've written an advent post on exceptions, and stored it as a draft 15:03
so if we come into the situation again where we don't have a post ready, we can use it instead as a backup
jnthn moritz++ 15:04
colomon moritz++ 15:05
lizmat moritz++ (catching up on the other advent articles now) 15:15
cognominal moritz++ 15:16
15:31 Reini1 left 15:44 kcwu left 15:50 hash_table joined 15:56 rindolf left 16:16 kcwu joined
cognominal jnthn, I added nqp::isinvokable, added two tests, I did a pull request. Need it for my p6hilite. 16:16
16:16 hash_table left 16:24 bowtie joined
grondilu Say I have a string made of a bunch of parenthesis, like this: "))(()))". How could I get rid of matching pairs? In the "))(()))", example, how could I extract ")) )"? 16:24
moritz r: $_ = '))(()))'; s/'()'//g while /'()'/; .say 16:26
p6eval rakudo 53daef: OUTPUT«===SORRY!===␤Confused␤at /tmp/1dGC701fjj:1␤------> $_ = '))(()))'; s/'()'//⏏g while /'()'/; .say␤»
moritz r: $_ = '))(()))'; s:g/'()'// while /'()'/; .say
p6eval rakudo 53daef: OUTPUT«)))␤»
grondilu yeah that's smart. That should do indeed. 16:27
moritz though if you need the positions in the original string, you need to resort to something more resourceful 16:28
grondilu no it should be fine as such
moritz tries anyway, just for fun 16:29
r: $_ = '))(()))'; s:g/'(' (\s*) ')'/$0/ while /\(\s*\)/; .say 16:30
p6eval rakudo 53daef: OUTPUT«)))␤»
moritz hrmpf
r: $_ = '))(()))'; s:g/'(' (\s*) ')'/ $0 / while /\(\s*\)/; .say 16:32
p6eval rakudo 53daef: OUTPUT«)) )␤»
lizmat could it be that rakudo and rakudo-star are interfering with each other ? 16:38
moritz lizmat: they shouldn't, but occasionally it happens anyway
lizmat I guess I will nuke rakudo star and try from scratch then
no change :-( 16:42
src/Perl6/Actions.pm
make: *** [blib/Perl6/Actions.pbc] Segmentation fault: 11
are we sure that nqp / rakudo are currently heatlhy?
jnthn Apparently not on your box :/ 16:45
As I said, nobody else has reported any issues
lizmat: Did you have the same issue with building the last R* release?
lizmat nope 16:46
which leads me to think it was a more recent change in rakudo / nqp that is messing things up for me
I'm going to nuke rakudo from my box now, and start with a fresh rakudo-star just to be sure 16:47
felher lizmat: how many jobs do you run in parallel when compiling?
jnthn lizmat: In your NQP repo, please try reverting 0c08da36 locally and then installing the resulting NQP.
(git checkout master; git revert 0c08da36; make install) 16:48
Then try building Rakudo again.
er, wait
moritz huh, that was just a parrot revision bumpt
lizmat is waiting
jnthn moritz: Yes.
Sorry, I want you to try it with the older Parrot
So we know if the Parrot revision bump is to blame or not. 16:49
lizmat so: assuming a clean machine, what would you like me to do?
16:50 tokuhiro_ left
lizmat get a fresh rakudo checkout, build perl Configure.pl --gen-parrot --gen-nqp 16:50
then revert a commit in nqp subdir? 16:51
jnthn Not quite that
lizmat then make?
jnthn Because it will have built the newer Parrot
moritz let me try to write up the instructions
lizmat moritz++
jnthn yeah, thanks
I as just looking at Configre.pl --help
If you manually clone nqp inside your Rakudo directory after checking it out, then cd nqp and do the git revert I sussgested... 16:52
Then back in Rakudo directory do perl Configure.pl --gen-nqp=master
That may do it 16:53
(then it should build the older Parrot)
moritz lizmat: gist.github.com/4240982
jnthn moritz: The thing that makes me suspect this a bit is that there's hardly any changes in NQP, and none that touch C code.
lizmat a "make distclean" would be enough to start from scratch ?
or shall I clone rakudo fresh from github
moritz lizmat: use git clean -xdf inside the rakudo repo # deletes all files NOT under version control 16:54
then omit the cloning step
dalek p: 585db6c | (Stéphane Payrard)++ | / (2 files):
add support an test for nqp::invokable()
p: 35c4b05 | jonathan++ | / (2 files):
Merge pull request #68 from cognominal/master

Add nqp::isinvokable.
cognominal thx jnthn++ 17:00
17:02 colomon left 17:15 birdwindupbird left, colomon joined
lizmat fwiw, that revert in nqp seems to have fixed the problem 17:20
we're being kicked out now… more tomorrow!
jnthn Urgh :(
lizmat++
17:21 lizmat left 17:22 cognominal left 17:23 kivutar joined 17:24 kivutar left 17:25 kivutar joined 17:35 wooden left 18:10 benabik left 18:15 benabik joined 18:27 benabik left 18:28 wooden joined, wooden left, wooden joined, benabik joined
grondilu another problemm that was way too slow with perl6: rosalind.info/problems/dbru/ I had to use perl5. 18:28
it was like more than five minutes or so against two seconds :/ 18:29
(actually it was 0.07 seconds with perl5) 18:31
(with pretty much the same algorithm)
(here is the p5 code if you're interested: gist.github.com/4241253) 18:34
18:41 fgomez joined
grondilu r: my $then = now; "TAGTTACTCATCCGTTAGTAACATCCACTGGGTCGGGTTGGCAATGGGTA".flip.trans: 'ACGT' => 'TCGA'; say now - $then 18:46
p6eval rakudo 53daef: OUTPUT«0.2790360␤»
grondilu r: my $then = now; say $then - now
p6eval rakudo 53daef: OUTPUT«-0.051206␤»
grondilu r: my $then = now; "TAGTTACTCATCCGTTAGTAACATCCACTGGGTCGGGTTGGCAATGGGTA".flip; say now - $then 18:47
p6eval rakudo 53daef: OUTPUT«0.03180639␤»
grondilu r: my $then = now; "TAGTTACTCATCCGTTAGTAACATCCACTGGGTCGGGTTGGCAATGGGTA".trans: 'ACGT' => 'TCGA'; say now - $then
p6eval rakudo 53daef: OUTPUT«0.2556101␤»
grondilu I think .trans is too slow
r: my $then = now; "TAGTTACTCATCCGTTAGTAACATCCACTGGGTCGGGTTGGCAATGGGTA".subs(|<A T>).subs(|<C G>).subs(|<G C>).subs(|<T A>); say now - $then 18:51
p6eval rakudo 53daef: OUTPUT«No such method 'subs' for invocant of type 'Str'␤ in block at /tmp/22jqGCZccq:1␤␤»
18:55 kivutar left 18:57 kivutar joined 18:58 broquaint joined
jnthn subst 19:01
And yes, trans probably could use quite some optimization.
19:01 kivutar left 19:05 ifim joined 19:07 mikemol left 19:15 snearch joined
lue hello o/ 19:26
19:35 rummik left, rummik joined 19:39 araujo left 19:43 araujo joined 19:56 wamba left 20:01 MayDaniel left, MayDaniel joined 20:02 MayDaniel left
masak hola, #perl6 20:02
20:02 MayDaniel joined, FROGGS__ is now known as FROGGS
masak just wanted to reassure you that an advent post for tomorrow is forthcoming. 20:02
FROGGS hi there 20:03
jnthn hola, masak
masak I didn't have any intention of cracking the language while here, but... it's so easy! :P 20:05
my brain estimates that it's about 40% done, and I landed like two hours ago.
I should spend tomorrow just talking to people, soaking up missing words. 20:06
diakopter MISSING WORDS
FROGGS masak: where are you?
masak Madrid.
FROGGS nice, wasn't there yet :/
masak an Italian lady asked me for the way in the metro. we had trouble communicating, until I realized I could just wing it and make up words from some common fount of Latin/Esperanto. 20:07
basically, Spanish sounds like slurred Esperanto so far. :D 20:09
20:09 wamba joined
masak ok, time to write about the Matching of Longest Tokens. 20:09
cedrvint_ masak: it's already tomorrow somewhere :) 20:11
20:15 xinming_ joined
masak cedrvint_: sure, but we usually publish on GMT midnight, IIUC. 20:15
cedrvint_ yes, I can't wait for reading your post :p 20:16
masak my hamburger just arrived. gonna see to it for a while, then write it. 20:18
20:18 xinming left 20:20 imarcusthis left
masak eats, while rosettastoning the Spanish/English hotel bar menu 20:22
cedrvint_ buen apetito :) 20:24
FROGGS
.oO( bon apetitolino (movie: love actually) )
masak gracias. 20:25
20:25 imarcusthis joined
GlitchMr r: [ # syntax error 20:26
p6eval rakudo 53daef: OUTPUT«===SORRY!===␤Unable to parse expression in array composer; couldn't find final ']'␤at /tmp/xlUIdXv_UH:1␤------> [ # syntax error⏏<EOL>␤»
GlitchMr ⏏ :-)
20:26 paddy joined
masak what about ⏏? 20:26
GlitchMr github.com/rakudo/rakudo/commit/6b...afe882ec15 20:27
masak aye, that's new.
jnthn++
jnthn "new" :)
Just doin' what STD does ;)
GlitchMr * Syntax errors now provide context using ⏏ symbol, just like STD.pm does. 20:28
I know
I'm making yet another Perl 6 changes article.
I know it's from STD.pm
20:28 paddy left
jnthn :) 20:28
GlitchMr But it's useful.
jnthn Note that it does a highwater algorithm now too
Which means you won't get those "error on line 1" reports any more then really the problem is at line 50 or so
GlitchMr :-) 20:29
masak oh, good.
jnthn star: my @a = map { 2 * $_ } 2, 3, 4
p6eval star 2012.10: OUTPUT«===SORRY!===␤Confused␤at /tmp/rm_3JIiOMn:1␤»
GlitchMr Those "error on line 1" were annoying
FROGGS pmichaud wasn't here lately, right? I'm asking because of getting a commit bit for rakudo some day...
jnthn er, hm, how to do multi-line to show this off...
masak jnthn: ␤␤␤␤␤
jnthn star: say 42;␤␤␤ my @a = map { 2 * $_ } 2, 3, 4 20:30
p6eval star 2012.10: OUTPUT«===SORRY!===␤Confused␤at /tmp/Y4TpEwhQlL:1␤»
jnthn r: say 42;␤␤␤ my @a = map { 2 * $_ } 2, 3, 4
p6eval rakudo 53daef: OUTPUT«===SORRY!===␤Confused␤at /tmp/CmMDBvu3p3:4␤------> my @a = map { 2 * $_ } ⏏2, 3, 4␤»
masak \o/
jnthn++
20:30 fgomez left, cognominal joined
jnthn That fix is probably at least as important as the eject marker. 20:30
20:30 pecastro joined
jnthn I'm currently working on the high expect thingy 20:31
It's a bit fiddly.
FROGGS high expect?
jnthn std: say 42;␤␤␤ my @a = map { 2 * $_ } 2, 3, 4
p6eval std a8bc48f: OUTPUT«===SORRY!===␤Strange text after block (missing comma, semicolon, comment marker?) at /tmp/zLngdjUDt_ line 4:␤------> my @a = map { 2 * $_ }⏏ 2, 3, 4␤ expecting any of:␤ horizontal whitespace␤ infix or meta-infix␤ infixed funct…
jnthn The "expecting any of" bit
FROGGS ahh, cool
masak yesbut why "high expect"? what's up with the high? 20:32
GlitchMr - || <.panic: "Too late for semicolon form of $*PKGDECL definition">
+ || <.panic("Too late for semicolon form of $*PKGDECL definition")>
Why it wasn't working previously?
For me, those looks like identical forms
diakopter high-water mark for a tide/flood
jnthn masak: Because it the highwater
*it tracks the...
masak: That is, it records what we were looking for at the highwater position
GlitchMr: NQP treats the two differently 20:33
masak hamburger <GlitchMr> heh, masak hasn't found those issues when I've asked him to proofread :-)
GlitchMr: huh? those were exactly the kind of issues I found :)
missing 'a' or 'the'.
jnthn GlitchMr: For no good reason...
GlitchMr: But it was easier to fix the grammar for now :)
"fix" :) 20:34
masak it's common for slavic-speakers to miss those, so don't sweat it.
GlitchMr Well, Polish doesn't have those ;-).
masak my original point. 20:35
sorear good * #perl6 20:36
masak sorear! \o/
FROGGS hi sorear 20:38
20:38 snearch left
masak rn: say "food and drink" ~~ / foo || food / 20:40
p6eval rakudo 53daef: OUTPUT«「foo」␤␤»
..niecza v24-5-g599cbcb: OUTPUT«#<match from(0) to(3) text(foo) pos([].list) named({}.hash)>␤»
masak rn: say "food and drink" ~~ / foo | food /
p6eval rakudo 53daef: OUTPUT«「food」␤␤»
..niecza v24-5-g599cbcb: OUTPUT«#<match from(0) to(4) text(food) pos([].list) named({}.hash)>␤»
masak ...and that's LTM. done.
short article :P
20:42 cognominal left
FROGGS :o) 20:43
GlitchMr ;-)
It isn't that simple 20:45
glitchmr@strawberry ~> awk 'BEGIN { str = "ab"; gsub(/a|ab/, "<&>", str); print str }'
<ab>
glitchmr@strawberry ~> echo 'BEGIN { str = "ab"; gsub(/a|ab/, "<&>", str); print str }' | a2p | perl
<a>b
jnthn rn: say "food and drink" ~~ / foo | \w+ / # :) 20:46
p6eval rakudo 53daef: OUTPUT«「food」␤␤»
..niecza v24-5-g599cbcb: OUTPUT«#<match from(0) to(4) text(food) pos([].list) named({}.hash)>␤»
GlitchMr awk has LTM, Perl doesn't. 20:47
Well, awk has "sorta" LTM 20:48
s/"sorta"// 20:49
Just like Perl 6
20:50 bruges joined
masak somehow I doubt awk has LTM "just like Perl 6" :P 20:50
GlitchMr Why?
/a|ab/ matches 'ab' if possible, unlike Perl 5. 20:51
masak yes, as you showed above.
that's neat.
GlitchMr Isn't it LTM?
masak sure, but I doubt it's as widely developed as in Perl 6.
what about more complicated declarative prefixes? what about quantifiers, for example? 20:52
sorear I think what awk is doing might be called "using a real DFA engine"
GlitchMr Because it does use DFA 20:53
masak sorear: oh, then it might actually get quite close, I guess.
20:58 SamuraiJack left, erkan left 20:59 Patterner left 21:00 GlitchMr left, erkan joined 21:02 kst` joined
quietfanatic Good * #perl6 21:02
21:03 kst` left
masak quietfanatic! \o/ 21:05
quietfanatic I've got a rails app I'm hankering to port to another framework, so naturally I'm considering Perl 6 as one of the possibilities 21:07
masak well, we have Bailador. :) 21:08
tadzik++
quietfanatic Bailador eh?
masak modules.perl6.org/
quietfanatic aah 21:09
21:09 kivutar joined
quietfanatic does it do databasey stuff? 21:09
doesn't look like it
masak no, it's just the webby end. 21:10
it's a small Dancer clone.
quietfanatic I've never seen Dancer, though it looks kinda like Sinatra
So yeah, I'll need a way of accessing a database. Is there a good module for that? 21:12
I saw DBIish sitting around
masak yeah, Dancer is a Sinatra clone :)
I'd recommend DBIish, yes.
look at zblog for how to join them up.
quietfanatic okay 21:13
masak huh, zblog isn't on modules.perl6.org/
github.com/tadzik/zblog
quietfanatic Oh, that looks really simple 21:15
I'll try that formula out. Thanks for the advice. 21:16
Is this all Rakudo-only? 21:17
21:17 Psyche^ joined, Psyche^ is now known as Patterner
masak as far as I know. 21:17
quietfanatic Looks like. It uses zavolaj 21:18
masak I think DBIish has some zav... right.
would be wonderful to have all that work on Niecza somehow, too. 21:19
21:19 zby_home_ left
lue is beginning to feel that the attempt to split up the CORE.setting step will occur in the vicinity of Perl6::World (at least according to the comments next to NQP's HLL::World) 21:20
masak lue: feels like Perl6::World is at an earlier stage than CORE.setting, though.
lue Well, if I go with my plan to include similar functionality to gcc -c and ld (that is, separate these two parts of the process) 21:21
quietfanatic Gah, I've been working under rails so long, whenever I type 'vim' I immediately follow it with ' app/' 21:22
lue I can keep trying to mash together files in src/core and try to find the smallest combination of files that will compile, but, esp. if it comes to rearranging the contents of files, that isn't -Ofun at all. 21:23
jnthn lue: What's your goal exactly? 21:24
I can't help but feel you're setting off on an essentially doomed task...
lue to split the big CORE.setting -> CORE.setting.pir step. (Or rather, make it less memory-intensive) 21:25
jnthn Making it less memory-intensive is certainly desirable. I just don't think trying to split the step up is likely to be very successful. 21:27
21:28 lichtkind joined
masak I have my doubts as well. 21:28
21:28 felher joined
masak and even if you succeed, it's likely to be something of a moving target. 21:28
part of the allure of CORE.setting is that it's actually all in one scope. 21:29
lue Well, my goal ultimately is to make that step feasible. I'm willing to toss out the (admittedly grandiose) "let's replicated gcc -c and ld" idea.
s/replicated/replicate/
jnthn You'd have an easier time reducing memory usage by looking at slimming down data structures. 21:30
Which is where many of the wins over the last year have come from.
masak ooh, that sounds like a feasible idea.
lue Huh. I just looked at the file sizes of CORE.setting and its resultant pir file. I always thought that was taking up all the RAM.
jnthn Granted most of the low hanging fruit has been eaten. OTOH, I shaved 4 or 8 bytes off every Cursor object within the last week... 21:31
diakopter replied to parrot-dev
jnthn lue: The space isn't really consumed by the input and output, but rather by the data structures built while compiling.
21:33 whiteknight joined
lue sounds like working on memory structure slimming would be fun (although requiring knowledge of the code). I'm assuming these data structures are in nqp (at least mostly)? 21:33
jnthn Yes. 21:35
One example of a possible saving: right now, in QAST::Node (the base class) there is a @!children or something like that.
However, not all node types can have children.
There should be some benefit into moving that into a role, which is composed into the various nodes that can have children. 21:36
lue I'm assuming @!children is actually @!array, correct? 21:42
tadzik źblog's getting popular :) 21:43
21:43 pecastro left
jnthn lue: yeah 21:45
dalek p/highexpect: b30fb7a | jnthn++ | src/Q (2 files):
Keep :dba(...) values for a bit longer.

This will allow them to make it unti NFA construction time.
p/highexpect: 68a947d | jnthn++ | src/QRegex/NFA.nqp:
Remove unused code.
p/highexpect: 00d8597 | jnthn++ | src/ (3 files):
First crack at high expectation tracking.
masak LTM advent post scheduled. 21:46
reviews welcome.
dalek kudo/stdier: a8d2cc2 | jnthn++ | / (3 files):
Updates for Cursor memory use reduction refactor.
21:48
kudo/stdier: eb1e798 | jnthn++ | tools/build/NQP_REVISION:
Get NQP with highwater tracking.
kudo/stdier: 53daeff | jnthn++ | src/Perl6/World.pm:
Use highwater to give better locations in errors.
kudo/stdier: 4068131 | jnthn++ | src/ (2 files):
Try reporting what was expected at high watermark.
21:52 kaare_ left
lue masak++ # this blog post feels "strangely consistent" with the ones on your regular blog :) 21:53
masak :) 21:54
speking of which, I should blog more on my regular blog.
I think the worst part of this semester's $dayjob time-stealing is over, so I should be looking into that...
quietfanatic Okay, um, how do I, uh, install a module 21:57
21:57 cedrvint_ left
quietfanatic oh, I just found that day 8 post, haha 21:58
sorear o/ quietfanatic 21:59
quietfanatic hello sorear 22:00
22:00 kivutar left
tadzik quietfanatic: poke me if something breaks with Bailador 22:01
22:01 kivutar joined
masak .oO( next up he's gonna ask "so how do I parse the longest token?" ) :P 22:02
quietfanatic tadzik: will do
haha
tadzik: While installing Bailador, "t/05-post-content.t ...... No such method 'decode' for invocant of type 'Any'" 22:06
tadzik: gist.github.com/4242187 22:07
tadzik uh-oh
quietfanatic This is the current git-version of rakudo
tadzik tring 22:08
masak "tring"? 22:09
quietfanatic "trying"?
tadzik trying, yep
yep, I get the same result 22:10
let's see if I can fix this quickly
22:12 att__ joined
masak "I don't want to understand the problem, I just want to fix it" :P 22:13
tadzik quietfanatic: well, you can always install with --notests 22:14
flussence broke that :P 22:15
quietfanatic Hm, is it the test that's the problem and not the code then? 22:16
tadzik that might be the only test for that code path
POST params may act funny :) 22:17
and may not (: if źblog works then probably everything's fine
quietfanatic uh...okay, well, I guess I'll go with it then :)
flussence the only reason it fails is because the POST code didn't exist before ;) 22:19
tadzik but it does now, and fails. What to do? /o\ :) 22:21
flussence (actually I'm not sure what's wrong with that particular one, I recall trying to fix it then found out a billion things were broken all the way down to the socket functions)
tadzik I think request() may simply be broken in Bailador::Test
quietfanatic hm.
tadzik it's a bit hand-wavey
flussence IIRC HTTP::Easy will fall over if you try to give it chunked requests too
quietfanatic I can't do without POST though. 22:22
now to get apache to work with this... 22:24
moritz masak++ # LTM post 22:28
masak \o/
I deliberately stayed away from mentioning declarative prefixes. 22:29
if it comes up in the comments, I'll happily explain it.
jnthn Dang, first crack at highexpect gave useless results :( 22:30
jnthn tries another way
moritz
.oO( it's water all the way down )
22:32
22:33 hash_table joined
jnthn moritz: Is status of the sink branch "still segfaulty"? 22:36
22:38 fgomez joined 22:39 kivutar left
masak lol, they actually used the word "mañana" behind me :) 22:39
not entirely surprising given that it's 23:40, I guess. 22:40
jnthn it's not a particularly unusual word :P 22:41
masak no, just funny to hear it from a Spanish mouth :)
'night, #perl6 22:47
22:48 rindolf joined
dalek p/highexpect: 8d297b2 | jnthn++ | src/ (3 files):
Revert "First crack at high expectation tracking."

Seems this was the wrong approach.
22:49
p/highexpect: fb3f186 | jnthn++ | src/Q (3 files):
Another crack at highexpect.

This seems to give better results.
22:58 pecastro joined 23:01 fgomez left 23:03 fgomez joined 23:05 hash_table left 23:07 imarcusthis left
dalek kudo/stdier: 0118e3b | jnthn++ | src/Perl6/Grammar.pm:
Add a bunch of missing :dba(...)s.
23:10
23:10 imarcusthis joined
kudo/stdier: 5e875b4 | jnthn++ | src/ (2 files):
s/Confused/Two terms in a row/ when we detect it.
23:10 cognominal joined 23:19 pmurias joined 23:20 benabik left
lue jnthn: should the children role be does'd by the QAST::Node inheritors that can use them? (Because I was almost going to put the role in QAST::Node much like how the CompileTimeValue and SpecialArg are) 23:25
jnthn lue: No, we don't mix it in, it is statically "does"'d on the classes that need it. 23:26
Because we know up front.
lue OK. I was about to start down that path when I realized mixin-ing could cause the children role to be mixed-in if using it was tried on a subclass that can't use it. 23:28
cognominal E2MUCHBEER, E2MUCHFLUXX 23:38
23:43 pecastro left
sorear o/ cognominal 23:43
cognominal at the hackandquack, I am initiating lizmat to the internals of rakudo/nqp :) 23:45
\o sorear
23:48 spider-mario left, fgomez left
lue Would it be alright for me to leave the has @!array line in QAST::Node? I'm getting an error compiling that I think is caused by the "is parrot_vtable_handler" traits attached to @!array 23:58
[ Specifically: Method 'add_parrot_vtable_handler_mapping' not found for invocant of class 'NQPParametricRoleHOW' ]