»ö« 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! | Rakudo Star Released!
Set by diakopter on 6 September 2010.
dalek ecza/cilbackend: 3aeed03 | sorear++ | / (3 files):
Implement rest of &sub2 cases
00:50
sorear niecza: say $( "foo" ~~ / (.) <?before $0> / ) 02:22
p6eval niecza 406e042: OUTPUT«o␤»
sorear (Jörg Walter)++ # finding corner cases 02:23
rakudo: say item( "foo" ~~ / (.) <?before $0> / )
p6eval rakudo cae7f9: OUTPUT«f␤»
sorear niecza: say $( "an\nb" ~~ m/<-[\n\#\ \t]>+/ ) 02:42
p6eval niecza 406e042: OUTPUT«===SORRY!===␤Action method quote__S_m not yet implemented at /home/p6eval/niecza/src/Niecza/Actions.pm line 54.␤invalid undef here at /home/p6eval/niecza/src/Niecza/Actions.pm line 1542␤ Niecza::Actions::whatever_precheck('Niecza::Actions', '', 02:43
..'Op::StringLiteral=…
sorear niecza: say $( "an\nb" ~~ /<-[\n\#\ \t]>+/ )
p6eval niecza 406e042: OUTPUT«an␤»
sorear niecza: say $( "a\nb" ~~ /<-[\n\#\ \t]>+/ )
p6eval niecza 406e042: OUTPUT«a␤»
dalek ecza/cilbackend: 95e6723 | sorear++ | lib/CLRBackend.cs:
Add &pkg2 functions to thawer
03:34
lopnor hello, 04:09
lopnor is there any way to fork a process? 04:10
TiMBuS yes, if you use zavolaj you can call fork 04:11
github.com/jnthn/zavolaj
lopnor is it core in rakudo star? 04:12
TiMBuS not sure, but it's a simple single .pm file you can include
github.com/jnthn/zavolaj/blob/mast...ix-fork.p6 there's the example
lopnor oh, it's very easy! 04:13
thank you, i will try that
TiMBuS yeah i was surprised at how easy it was, as well
im not sure if it's very efficient. keep an eye on your memory usage 04:14
lopnor i wanted to fork for testing some server,
so it should be okay for me 04:15
lopnor TiMBuS: hm, the sample doesn't work in my mac, 04:27
saying "Could not locate symbol 'fork' in native library '(resident)'"
i'm using rakudo star 2010-11 04:28
TiMBuS you might need to specify the library name 04:29
lopnor what library name? 04:30
TiMBuS erm, whats fork in osx? 04:32
'libc' ?
lopnor ah,
sub fork() returns Int is native() { ... } 04:33
this line should be
"sub fork() returns Int is native(libc) { ... }" or something,
right?
TiMBuS yeah 04:34
its a string, so is native('libc')
lopnor thank you!
it ran
sorear is native<libc> 04:40
lopnor it also ran:) 04:41
dalek ecza/cilbackend: edc4573 | sorear++ | lib/CLRBackend.cs:
Add stash log processor
05:02
ecza/cilbackend: 5370305 | sorear++ | lib/CLRBackend.cs:
Add &pkg3 functionality
sorear for some reason I'm slightly disturbed that niecza/cilbackend is keeping module interface data in JSON 05:12
dalek ecza/cilbackend: 95bc91e | sorear++ | lib/CLRBackend.cs:
Add signature encoder
07:36
ecza/cilbackend: d9b3d8c | sorear++ | lib/CLRBackend.cs:
Add &sub3 functionality
Koznetsov hello, i have few question about perl6 07:38
masak Koznetsov: for next time when you have questions, please (1) stay on the channel, and (2) ask. 07:45
lue hello masak o/ 07:48
sorear hi lue, masak. 07:54
I think I have a complete SAFE.dll from the new backend now 07:55
masak \o/ 07:57
good morning sorear, lue. 07:58
TimToady I think I can do the advent entry for the 24th; is there a pod-to-wp translator anywhere? 08:01
lue heh, more like good night here. Just looking at gallifreybase.com before bed (hard to believe how privatized it is!) 08:02
TimToady but must sleep now, so if anyone comes up with a better idea, feel free to pursue it 08:03
I will backlog in the AM
TimToady $.state = Sleep; 08:04
masak \o/ ++TimToady 08:07
moritz_ spoke of a pod2html translator. it's possible to input raw HTML into wp, too.
masak bus & 08:12
moritz_ godd morning 08:36
dalek ecza/cilbackend: 93a0597 | sorear++ | lib/CLRBackend.cs:
Add CORE-used primitives, dependency handling
08:37
ecza/cilbackend: 8807f8a | sorear++ | lib/CLRBackend.cs:
Add support for generating executables
sorear good morning moritz_
moritz_ stackoverflow.com/questions/4516057...-in-perl-6 08:39
lue good night #perl6 o/ [ I'll probably be the only one to say that for a few hours :) ] 08:40
moritz_ good night #perl6 # just to prove lue wrong, not because I'm actually going to bed :-) 08:41
masak oh hai from a long-distance *bus* \o/ 08:52
moritz_ heading home for christmas?
sorear hi masak 08:54
masak yes, just so.
well, my actual home is where I'm heading from. I'm heading towards home**2, where I grew up.
I don't know who Jörg Walter is, but his bug reports are very readable. 08:56
moritz_ sounds rather German-ish
(the name at least)
masak I know why #81136 occurs. 08:57
<before> is one big honking hack in PGE.
haven't looked at it in nqp-rx, but let's just say I'm not surprised it doesn't retain captures. 08:58
masak #81180 review: looks fine. if anyone who's not on a bus wants to apply it, feel free. 09:02
someone might also want to write a brilliant answer to stackoverflow.com/questions/4516057...-in-perl-6 09:03
moritz_ pasted that link 25 minutes ago too 09:04
I guess the "right" contextualizer would fix the problem, if it were implemented
but then [+] $_ is bound not to do what the OP wants
masak mm.
sorear I think what he actually needs is 1..7 X 1..7 X 1..7 09:05
X should be list-associative
this isn't working in rakudo
as for the sum,
moritz_ that too
@$_ should help
sorear rakudo: given [1, 2, 3] { say [+] .list }
p6eval rakudo cae7f9: OUTPUT«6␤»
sorear rakudo: given [1, 2, 3] { say [+] @$_ } #does Rakudo have this yet? 09:06
p6eval rakudo cae7f9: OUTPUT«===SORRY!===␤Non-declarative sigil is missing its name at line 22, near "@$_ } #doe"␤»
moritz_ rakudo needs @($_)
\o/ 1.4k views on yesterday's advent post 09:07
dalek ecza/cilbackend: 4acf199 | sorear++ | lib/CLRBackend.cs:
Generate runtime module dependency edges
09:16
ecza/cilbackend: 11ec6d1 | sorear++ | lib/CLRBackend.cs:
Add missing casts for type object setup
ecza/cilbackend: 65b47c2 | sorear++ | lib/CLRBackend.cs:
Fix several more verifier-caught errors
sorear cilbackend can now run say "Hello, world"
moritz_ \o/ 09:17
sorear before it can be merged, it needs to 1. pass the full testsuite 2. be integrated with the driver 09:17
masak`` thundergnat++ # "May the Schwartz be with you!" 09:18
mathw \o
masak`` o/
on December 10, I quadrupled the traffic to my blog. 09:20
masak`` the two by far most popular URLs are now strangelyconsistent.org/blog/feed.atom and strangelyconsistent.org/blog/masaks...ng-contest 09:21
masak the root URL comes a distant third. 09:22
moritz_ the rss feed is no surprise 09:25
masak` hm, and 4chan is one of my referrers. :)
moritz_ I'd say that the coding contest is a pleasant surprise :-)
masak` ah: dis.4chan.org/read/prog/1292263150 09:27
surprisingly positive.
masak moritz_: "Harry Potter and the methods of rationality" is only getting better and better. I'm at chapter 39 now. I'm simply amazed at the quality of writing -- far above my expectations for a fanfic. 09:32
moritz_ same here 09:36
masak I've started on a blog post which showcases bug reporting, debugging and TDD as aspects of the scientific method. 09:38
tadzik hello! 09:46
tadzik finally has internets at home
masak tadzik! \o/ 09:47
masak reads the test*.pl files in niecza master to see what it can do 09:48
tadzik and I moved to this flat in october
dalek ecza/cilbackend: 6539673 | sorear++ | / (3 files):
Finish LAD construction, misc label and goto bindings
10:31
ecza/cilbackend: a15d1ec | sorear++ | / (3 files):
Fix several regex bugs
sorear -> sleep
dalek kudo: a980da4 | nwellnhof++ | src/core/IO.pm:
Fix open() with binary flag

Signed-off-by: Moritz Lenz [email@hidden.address]
10:54
kudo: a5a9364 | nwellnhof++ | src/core/Buf.pm:
Make Buf.decode work

Signed-off-by: Moritz Lenz [email@hidden.address]
takadonet morning all 12:54
colomon o/ 12:57
takadonet www.reddit.com/r/programming/commen...e_sort_of/ 12:58
flussence I've got a line "if $a.IO.e or $b.IO.changed > $a.IO.changed", but is there a better way to write "do this, unless the output file is newer"? 13:35
oops, should be a ! after if there 13:36
smash hello everyone 13:46
colomon \o
takadonet smash: yo 13:47
lichtkind what you mean by munch? 14:00
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....dex_tablet 14:05
smash i predict a very short changelog for this release 14:06
.pm names suggestions for release names are welcome 14:09
lichtkind smash: rakudo? 14:20
dalek tpfwiki: (Herbert Breunung)++ | www.perlfoundation.org/perl6/index....lta_tablet 14:21
smash lichtkind: yes 14:27
pmurias hi 14:37
takadonet pmurias: yo
smash (tricky question) any idea on which was the first perl mongers group? 15:15
NY.pm according to wikipedia 15:16
smash just push'ed changelog updates and announcement, everyone feel free add more updates 15:51
dalek kudo: b2440a5 | smashz++ | docs/ (2 files):
[release] update changelog and add announcement
15:56
kudo: 4830af6 | smashz++ | docs/release_guide.pod:
[release] update release guide
smash running tests and spectest for the next couple of hours 15:56
last chance for last minutes updates 15:57
tadzik how about these today's fixes in Buf? 16:01
smash hmm, i missed that one, and open fix too 16:02
tadzik: thks 16:05
dalek kudo: e9cf790 | smashz++ | docs/ChangeLog:
[release] changelog updates, tadzik++ for pointing out changes
16:09
dalek ast: eb032c7 | (Kyle Hasselbacher)++ | integration/error-reporting.t:
[error-reporting.t] Add test for RT #80982
16:29
ast: 20034ba | (Kyle Hasselbacher)++ | integration/error-reporting.t:
add fudge
ast: 9d5a903 | (Kyle Hasselbacher)++ | S02-polymorphic_types/subset.t:
[subset.t] Test for RT 80930
masak partway into niecza's tests, I have this to say: 16:32
wow!
sorear++
takadonet masak: why? b/c it's fast?
masak I'm not running the tests, I'm reading them.
dalek ast: a0b2612 | (Kyle Hasselbacher)++ | / (2 files):
[OOPS] update the test plans I forgot
masak` it's like this: I've seen Pugs grow steadily, and I've seen Rakudo grow steadily, but now I'm becoming aware that I *completely* missed niecza's early childhood. 16:34
masak` to remedy this, I'm thinking of making January a niecza-only month. 16:34
won't be difficult, considering all that's already there. 16:35
(and yes, it seems pretty fast, too) 16:36
masak by the way, there's only today and tomorrow left to sign up for the Perl 6 Coding Contest! 16:39
tadzik hmm
thanks for the reminder :)
masak` sorear: test.pl:265: ok (?0) ~~ (?1), "bools are a constant"; 16:43
sorear: I think the test is correct but I'm mystified by its description. 16:44
other than that, test.pl is an inspiring read. kudos!
jasonmay coding contest? 16:46
masak jasonmay: strangelyconsistent.org/blog/masaks...ng-contest 16:48
perigrin masak: getting others to write your Go AI I see 16:49
perigrin hides.
masak heh :)
was that a reference to p4?
perigrin actually the first four would all apply in some transformative fashion 16:50
masak huh.
I can honsetly say that I didn't have Go on my mind when I thought of them.
perigrin :)
but you see where I'm seeing it ? 16:51
masak looks
perigrin looked so hard you killed your other connection 16:51
masak my other connection sucked. 16:52
so does this one, in all likelihood.
perigrin it's cause instead of broadband you've got bredband
I blame the Sweedish government.
flussence the ducks are eating his connection 16:52
masak` I can see how p4 might be a subset of Go somehow. I can see how p3 might possibly be related.
I don't see the connection with p1 (which is about matrices) and p2 (which is in the continuous plane). 16:53
perigrin a Go board is pretty similar to a continuous plane
masak` perigrin: but if you see it, then you definitely should sign up! :)
maybe you'll have some insight that others don't. 16:54
perigrin yeah I know what a matrix is ... but not how to multiply it ... they didn't include that in the red pill.
masak` my wifi is a bit wobbly because I'm on a bus going across Sweden. 16:55
the wikipedia entry on matrix multiplication is pretty good. 16:56
flussence bus-provided wifi?
perigrin but if you view a go board as a series of points [1 2 3 4 ....] you can see how it easily transforms into a matrix :) 16:56
flussence (continental EU gets all the fun stuff... bah) 16:57
perigrin flussence: they have it on long haul busses in teh US now too
masak` flussence: yeah! it's great. when it works.
perigrin but yeah it's using a 3G connection or something
for the entire bus
flussence I was wondering whether it was on the bus, or the bus was just really slow and you were picking up signals from buildings :) 16:58
masak` perigrin: when you're not using the special matrix multiplication, it's more of a regular 2D array, I'd say...
:)
masak I see such networks going by now and then. 16:58
perigrin masak: yeah ... my maths stopped before the fun stuff in college 17:00
masak I'm sorry to hear that. 17:01
never to late to seek out all the fun stuff, though :)
TimToady masak: I believe import of the comment is that True ~~ False even if the Bool is supplied by an expression, so the "constant" is more of an "invariant" 17:09
TimToady er, False ~~ True rather 17:09
masak ok, that kinda makes sense. 17:10
TimToady my question is why this is a niecza test instead of a spectest :)
masak there's probably quite a bit of overlap between the test*.pl files in niecza and the spectests. 17:11
I don't know why sorear has chosen not to use the spectests directly.
I imagine this way he can move forward faster.
tadzik twitter.com/VienosNotes/statuses/17...2383662080 -- looks worrying 17:12
TimToady wonders how many of the niecza tests rakudo would pass...
masak tadzik: nah, he's just explaining to @osa9 how whitespace works after function names. 17:13
tadzik ah
masak TimToady: I was thinking the same thing. now I'm going to try it.
tadzik ah, right
masak it'll take a bit of manual fudging, because niecza does heredocs and stuff.
but if I do it with the aim of writing a blog post, it might be fun.
niecza's lib/Test.pm6 also has a sub rxtest. 17:15
it's nice, but I will have to fake it for Rakudo.
sub rxtest($rgx, $rgxname, @y, @n) is export
was able to guess the function of $rgx and $rgxname, but not of @y and @n just looking at the calls. :)
masak things I've seen so far that I know Rakudo doesn't do but niecza does: heredocs, LTM, WHENCE, better autoviv. 17:19
daxim still no heredocs in rakudo? booooy 17:28
dalek ast: fef3dcc | (Kyle Hasselbacher)++ | S10-packages/basic.t:
[S10-packages] Test for RT 80856
17:30
ast: ee1cf20 | (Kyle Hasselbacher)++ | S02-whitespace_and_comments/minimal-whitespace.t:
[minimal-whitespace.t] Test for RT 80330
ast: 5760b39 | (Kyle Hasselbacher)++ | S03-sequence/misc.t:
[S03-sequence] Test for RT 80574
colomon masak: you should fudge it the other way, and get heredocs working in Rakudo. ;) 17:57
ggoebel masak: If I remember right, sorears biggest hurdle with spectest was eval 18:05
ggoebel sorear: as exciting as niecza is from the optimization ax grinding perspective... the day it'll be "real" for this lurker, is the day it has eval and starts running the spectest. 18:09
ggoebel sorear: and have to say once again, niecza is exciting. It has restored my faith that Perl6, when it matures, will be both fast and good :) 18:13
jjore Hi, here is a very short horror story of meta object protocols that clash with user code. $work thought it'd be neat to have an object attribute named 'can' and also thought it'd be neat to auto-generate methods for working with attributes. Somewhere along the way UNIVERSAL::isa.pm was handed one of these objects and everything went kablooey. In prod, of course. 18:29
moritz_ I don't see the connection to MOP 18:30
I just see a method name clash
jjore ->can('...')?
In perl 6 you'd spell that something like .^can or something, right? 18:31
moritz_ right
so you can have both .can and .^can
jjore anyway, it's "namespaced" away.
moritz_ yes 18:33
shortcircuit I suppose I should mention here that I contributed a Perl 6 example to Rosetta Code: rosettacode.org/wiki/Counting_in_Factors 18:40
TimToady shortcircuit++ 18:41
I'll look at it later, but at the moment I'm writing the Christmas Eve advent calendar entry
colomon TimToady++ 18:46
shortcircuit You know what might be useful? A desugar filter. Syntactic sugar can make the reasons for code's behavior non-obvious. For understanding the language syntax, (and existing code), I'd find it useful to be able to de-sugar code. 18:48
tadzik shortcircuit: well volunteered! 18:49
:)
that could be a Padre plugin, so when you mouseover code it desugars, or something 18:50
shortcircuit tadzik: That'd require me to understand the sugar. :) 18:57
rindolf Hi all. 19:12
Was Rakudo Star for December released yet?
flussence there's an announcement written, the thing itself isn't yet... 19:13
rindolf flussence: OK, thanks.
flussence think we're just waiting for the tests to finish right now... 19:14
smash today's release is not rakudo star release 19:15
flussence oh, that too.
(I didn't see the star, because the weather's cloudy here) 19:16
smash All tests successful, last call if anyone wants to include something on today's release 19:36
dalek kudo: 8246b5c | smashz++ | VERSION:
[release] bump VERSION
19:38
dalek ecza/cilbackend: cacbb63 | sorear++ | test.pl:
Reword a confusing test label masak++
19:49
sorear shortcircuit: you mean like perl -MO=Deparse,-p -e '...' ? 19:51
maybe add ,-x7,-q,-P for good measure 19:52
KyleHa Hello #perl6. 20:02
sjohnson hello, world
tadzik helli KyleHa
dalek ast: 84eeb91 | (Kyle Hasselbacher)++ | S02-builtin_data_types/whatever.t:
[whatever.t] Test for RT 79166
KyleHa rakudo: say dir().pick(5) 20:03
p6eval rakudo cae7f9: OUTPUT«Operation not permitted in safe mode␤ in 'Safe::forbidden' at line 2:/tmp/e0Z8D5bNcv␤ in main program body at line 22:/tmp/e0Z8D5bNcv␤»
sorear good * #perl6
takadonet sorear: hey 20:05
KyleHa In which syn is dir() spec'd? 20:06
I think I found it in S32-setting-library/IO.pod 20:09
takadonet KyleHa: i believe that where it is for the moment 20:10
however I'm not 100% sure
tadzik What is <ident> in grammars? 20:20
sorear a subrule call 20:22
sorear not a language-defined subrule 20:22
tadzik funny. It's used in lolsql parser, but not defined anywhere. Gets a maximum recursion depth in Rakudo, I'll try with niecza 20:23
colomon wouldn't it be the rule for an identifier? 20:23
sorear you might be seeing leakage from the Perl6 grammar
tadzik Action method multi_declarator__S_null not yet implemented 20:24
tadzik colomon: is there one? 20:24
tadzik there is in HLL::Grammar iirc 20:24
colomon token identifier { <.ident> [ <.apostrophe> <.ident> ]* }
that's in Rakudo's Grammar.pm
suspect it is pulling ident from HLL::Grammar or something, yes. 20:25
tadzik adding "is HLL::Grammar" fixes that bug
so a Rakudobug, no?
colomon seems like, but not my area at all, I admit.
tadzik rakudo: grammar Foo { token TOP { <ident> } }; Foo.parse('arsars') 20:26
p6eval rakudo cae7f9: ( no output )
colomon sorear probably has a better idea...
tadzik rakudo: grammar Foo { token TOP { <ident> } }; Foo.parse('arsars')
p6eval rakudo cae7f9: ( no output )
tadzik eh
rakudo: grammar Foo { token TOP { <ident> } }; Foo.parse('arsars'); say 'alive'
p6eval rakudo cae7f9: OUTPUT«alive␤»
tadzik not so easy
now it's even funnier: paste.perldancer.org/28mOhB7fnOJLx 20:29
it probably misses something from HLL::Grammar now
dd070 hello ppl 20:43
anyone awake 20:44
tadzik ywis
gfldex yawns
hmm?
dd070 cool 20:45
tadzik now that you've woken up gfldex please present some lifechanging patches you've come with :)
dd070 which point of perl6 spec hurts most ? 20:46
gfldex sadly i have so far no lifechanging patches
but i have high hopes to celebrate perl6's inherent greatness when jnthn++ enlightens us with the next object model 20:47
tadzik no idea, I'm not into specs really
:)
gfldex i would say S22 20:48
dd070 well even i haven't read official docs. but i am aware of a few features. 20:49
or restrictions
like forcing variable declaration in any script. 20:50
it really hurts in quick and dirty scripts. 20:51
having use strict was enough.
moritz_ then you can switch it off.
dd070 how can i switch off ?
moritz_ no strict; 20:52
not yet implemented though
dd070 i would have to write no strict on top for quick and dirty scripts.
moritz_ right 20:53
gfldex you could have your own settings
moritz_ and by that you clearly label it as "quick and dirty"
if that's what you want, why not?
you can even write an alias, so that 'use quick'n'dirty;' does the same as 'no strict;' 20:54
dd070 quick things should not bother with settings. such scripts sole purpose is only specific to testing some logic or new hack very quickly.
moritz_ dd070: I see your point, but history has clearly shown that in general 'no strict;' is a bad default 20:55
it means you have to start off teaching newbies why 'use strict;' and variable declarations are good idea in the first place
dd070 but such scripts are small mostly limited to 5 yo 10 lines and i know i will not mistype any variable.
moritz_ well, then type 'no strict;' and be happy. 20:56
gfldex you could tie no strict to it's own executable/shell wrapper
dalek ast: d6631bb | (Kyle Hasselbacher)++ | S12-subset/subtypes.t:
[subtypes] Test for RT 78318
ast: 98abe8e | (Kyle Hasselbacher)++ | S12-subset/subtypes.t:
[subtypes.t] Test for RT #78322
Su-Shee hi. 20:56
moritz_ when you've answered 20 posts on perlmonks where somebody wrote spaghetti perl code with errors that 'use strict;' would have caught, and the one who asks it had no clue what's wrong, then you start to see that it's a bad default that way 20:57
hi Su-Shee
allbery_b and extra code to complain if the script is larger than N lines or used more than M times :)
dd070 in production code we are free to 'use strict'. moreover its auto enabled if we use moose 20:58
newbies generally grow up quickly knowing what is 'use strict'
moritz_ if they get so far at all. 20:59
dd070 in PHP there no such thing. still its hot selling cake.
KyleHa Lack of lexical scoping is what drove me away from PHP.
moritz_ wonders if godwin's law transferred to programming discussions includes the mention of PHP 21:00
dd070 i know bugs can be produced but thats why liked perl's 'use strict' feature. but I do not like to make it turned on by default.
moritz_ well, we can't expect everybody to be happy with every change
Su-Shee javascript has use strict; now too.
dd070 javascript too ?
Su-Shee yes. EC5 supports it, the rest ignores it if it is there. 21:01
Su-Shee it's very similar to perl5's, with a little javascript twist here and there (naturally) 21:01
dd070 anyway, some moments back to perl, for large script or project kind of thing Perl5 offers 'use strict'. thats good thing. I don't want to use Java for simple tasks. 21:02
moritz_ ... and you don't have to.
dd070 right. thts why i prefer to 'use strict' for production. its not bad. 21:04
moritz_ anything new you want to add to the discussion? 21:06
dd070 KyleHa: in php functions all variables are localized. if want to access global one, use global keyword. its fine enough. but not having 'use strict' often lead to bug due to variable name mistyping. 21:07
moritz_ do you think that variables inside functions should work differently from variables outside functions? 21:09
and should those inside functions which are nested inside other functions work differently again?
dd070 not so clear about that. but it works that way. if want to use global variable, have to declare it with global keyword first. otherwise local copy will be created. 21:11
in functions.
KyleHa As I recall, PHP had three scopes: global, file, and function. I want to scope a variable to a block. 21:12
dd070 we can enable warning to log use of uninitialized variables.
KyleHa: I think global and file scope are same thing as far as PHP is concerned. 21:13
dd070 KyleHa: no you can not scope variable to a block. 21:13
KyleHa That fact about PHP burned me, and I left it. It may be very popular with others, but that was my personal deal breaker. 21:14
Su-Shee so, I take it from the discussion that the latest rakudo version is implemented in PHP? ;) whose idea was that? ;)
dd070 Su-Shee: rakudo is Perl6 project. isn't it 21:15
moritz_ Su-Shee: pmichaud's of course. After he did it in lolcode, he asked himself "is there anything else I could do where the audience would laugh any harder?". PHP was his answer 21:16
*SCNR*
Su-Shee I'm being sarcastic, I already have rakudo ;)
dd070 KyleHa: That thing never hurtd me really. i was comfortable to write good quality code for long.
Su-Shee moritz_: you typed "laugh" wrong - it's spelled "would cry any harder" ;) 21:17
dd070 KyleHa: actually I still like PHP but its mostly used in Web App. and its lib is not as large as CPAN
dd070 its most open source classes are web apps specific. 21:18
Su-Shee ok, what am I using to install modules? pls, proto, neutro or ufo? 21:25
flussence neutro
seems to be the most 'alive' one right now, anyway
moritz_ neutro 21:26
tadzik wow, I didn't expect it'd be alive and well for so long 21:32
smash devel release #36 done 21:34
tadzik :) 21:35
smash++
smash there's noone scheduled for release #37
moritz_ smash++ 21:37
tadzik can I try?
moritz_ tadzik: sure. Have you submitted a CLA already?
tadzik moritz_: CLA?
moritz_ tadzik: Contributor's License Agreement 21:37
www.perlfoundation.org/contributor_..._agreement 21:38
tadzik oh
serious business
moritz_ yes :( 21:39
tadzik so I need to write a letter and send it through the ocean to the USA? 21:39
moritz_ aye
flussence not quite, it'd get wet. 21:40
tadzik please tell me this is a joke for the newcomers
moritz_ (maybe a fax is OK too, but I don't know any number you might send it to)
tadzik: no, it's really serious
KyleHa Treat it with shark repellent first. Except that might give the lawyers problems...
tadzik huh
moritz_ I've signed such a thing too
sbp use a hermetically sealed envelope
that's what keeps hermet crabs dry [sic]
KyleHa I've sent in a CLA.
sbp not sure about the hermet seals though 21:41
tadzik how about a scanned document through an email?
smash moritz_: i've sent one myself, letter in _real paper_ !!
tadzik: they require in paper, signed
tadzik huh
smash it's more of a burocratic thing, lawyers like paper
tadzik Big Thing. But well, it'll get useful sooner or later 21:42
tadzik checks how much a letter to the USA costs
ho, that's cheap. I can do that 21:43
dalek kudo: 8f10c4b | moritz++ | docs/release_guide.pod:
[docs] tadzik++ volunteers for next release; add a few more planned release dates
tadzik alright. I'll sent it after christmas, prioritaire 21:45
(I'm still amazed how Big Thing it is)
smash tadzik: it's a quite common thing 21:46
well, i'm off to "Celebrate with the appropriate amount of fun" like the release guide instructs 21:47
moritz_ smash++
have the appro... you're going to ahve it anyway :-)
tadzik :)
smash hehe, laterz
tadzik from time to time I find bugs in neutro so horrible I wonder how did this thing even work before :) 21:57
dalek ast: 1e438c8 | (Kyle Hasselbacher)++ | S03-operators/assign.t:
[assign] Test for RT 80614: chained array item assignment
22:01
allbery_b sounds like you're a Real Programmer :) 22:04
lue good afternoon #perl6 o/ [ I'll probably be the only one to say that in the past 10 minutes :) ] 22:05
lue waits for moritz_ to edit the backlog
tadzik hello lue
lichtkind good night 22:10
lue 'night lichtkind o/ 22:14
TimToady preview of day 24: perl6advent.wordpress.com/?p=708&am...eview=true 22:19
lue I get error 404 :/ 22:21
TimToady I think only authors can see it
flussence (and you have to be logged in)
Eliazar helo 22:24
TimToady howdy
TimToady is not a sendmail, if that's what you were expecting... 22:25
tadzik twisted, but I like it :) 22:26
Eliazar is perl6 now officially released?
TimToady is not a sendmail, if that's NOT what you were expecting...
allbery_b *eyeroll* 22:27
TimToady Eliazar: you'll need to define at least four of those words before we can answer you :)
Eliazar mmm... I kept hearing about some beta versions here and there.. I am just a C++ programmer and wanted something new.. :) 22:28
TimToady several perl6's have been released, but none of them implement all of the Perl 6 spec 22:29
lue well written post, TimToady++
TimToady but they're fun to play with nonetheless
Eliazar what are major implementations the development team expect from the language? 22:30
TimToady all of them, eventually
we currently have efforts on Haskell, Parrot, CLR
more distant on JVM
Eliazar oh great..
TimToady niecza: say "I'm running on mono" 22:30
p6eval niecza 406e042: OUTPUT«I'm running on mono␤» 22:31
TimToady we find that the multiple implementations help more than they hurt, because they research different areas and share
tadzik yapsi: say "I'm Perl6 in Perl6"
p6eval yapsi: OUTPUT«===SORRY!===␤Unable to find module 'Yapsi' in the @*INC directories.␤(@*INC contains:␤ lib␤ /home/p6eval/.perl6/lib␤ /home/p6eval/p1/lib/parrot/2.10.1-devel/languages/perl6/lib␤ .)␤»
tadzik :) 22:32
flussence perl6: say $*VM.split("\n").[0] # I bet this won't work on the others...
p6eval rakudo cae7f9: OUTPUT«name parrot␤»
..pugs: OUTPUT«␤␤»
flussence nearly...
TimToady and jnthn++'s 6model will likely have emitters for a number of backends 22:33
Eliazar TimToady: This is going to be a great language.. for me.. moving from awk to C to perl6 will be like discovering America :D.. (Now I feel old :P ) !
TimToady well, we're all very impatient to get Perl 6 here, which is why we're working on it so hard :)
have you seen the advent calendar?
perl6advent.wordpress.com/ 22:34
sjohnson perl6: coming this christmas!
p6eval pugs: OUTPUT«*** ␤ Unexpected "!"␤ expecting "::", dot, ":", "(", term postfix, operator or ","␤ at /tmp/BLFSgS1WpS line 1, column 22␤»
..rakudo cae7f9: OUTPUT«===SORRY!===␤Confused at line 22, near "coming thi"␤»
tadzik :)
flussence
.oO( unexpected excitement? )
Eliazar TimToady: checking it now
sjohnson i guess it ain't comin 22:35
sorear old is good! 22:35
I am young and I have many things yet to learn
TimToady except when it sucks, sez my joints...
Eliazar TimToady: so in general is perl6 a kind of perl5 with better OOP? 22:36
TimToady that's one way to look at it
sjohnson Eliazar: it also does a heck of a lot more than p5
i'm excited to use it
TimToady but it also has better FP, better AOP, better almost everything
and generally is clearer to read
sjohnson nicer freenode irc channel too 22:37
TimToady blames au++ 22:37
frettled It also has TimToady. 22:37
sorear Perl was designed in 1984, 1994, and 2004 22:38
we're working to make the 2004 design a reality now
TimToady er, 1987
frettled and 2005 and 2006 and 2007 and 2008 and 2009 and 2010 and 2011 (I hope) and …
colomon TimToady++ # good post
TimToady doesn't know how/when to publish it though
Eliazar TimToady: perl was amazing helper for analyzing log files in 90's.. I could't live without it! :)
colomon it's for the 24th, right?
TimToady colomon: yup 22:39
frettled Eliazar: it still is!
sorear we're doing a lot more transparency now
perigrin Perl (5 and 6) are still pretty amazing.
TimToady if we can only get Perl 6 running as fast as Perl 5, it'll really take off
sorear Perl 1.0.0 was ready for many types of use when it first hit usenet
perigrin sorear: you think you're being trasnparent ... but I can see right through that 22:40
sorear Perl 6 has been in public version control since the beginning, so it's a lot harder to answer "when are you releasing"
flussence if it was even 1/10th as fast as perl5 I'd be happy
frettled sorear: or easier: «continuously!»
colomon TimToady: I just scheduled it for noon UTC on the 24th.
perigrin flussence: well if you add all the features to perl5 to get it close to the same syntax
TimToady sorear++ was about -13 when Perl 1 came out :)
sorear frettled: good one, I think I'll use it.
colomon I think.
perigrin then it is 1/10th as fast
TimToady no, -3, sorry
frettled sorear: \o/
Eliazar TimToady: so there is speed issues? 22:41
colomon TimToady: officially scheduled. :)
flussence Eliazar: rakudo isn't going to win any benchmarks any time soon, but it's bearable 22:42
TimToady Eliazar: the implementation on parrot, while most feature complete, is also very slow
it really depends on what you're trying to do
I wouldn't use it for log analysis yet, unless it's a short log... :)
flussence it's like 1990s Javascript, when we're aiming for 2010 JS speed
sorear Perl 6 is defined in terms of itself in a lot of places
TimToady which means it gets recursively faster automatically as it gets faster... 22:43
tadzik github.com/tadzik/neutro/blob/mast...Install.pm -- could someone give me a hand? File::Mkdir supplies a new, 2 arg variant of mkdir(), yet the code dies with "Unexpected named parameter 'p' passed in 'mkdir' at line 5682:CORE.setting", as if it didn't include the module
TimToady and we *hope* the design will be optimizable as much as we hope it will...er... 22:44
sorear $x = $y + $z is, abstractly 2 sub calls on the surface, then another sub call to dispatch the + overload, a method call to poke the $x variable, ...
sorear you need a bit of cleverness in a Perl 6 implementation to short-circuit the metacircularity when it isn't needed 22:44
perigrin Eliazar: also keep in mind most comparisons are made against languages that have had years focusong on speed rather than finishing the spec 22:44
flussence tadzik: I think I came across that myself, but I didn't bother figuring out why and just used a shell command instead :) 22:44
perigrin Slow is relative 22:45
tadzik :<
Eliazar TimToady: I was just about to ask about log analyzing when you replied! I have the impression that perl5 will still be the only master for text processing .. maybe perl6 will be more general purpose like,, mmm python I guess..
TimToady sorear: but you have more than a bit of cleverness, so you could have problems :)
sorear Rakudo right now is styling itself a reference implementation; it tries to be obviously correct. Not helping matters is that sub calls are currently the slowest part of Parrot
TimToady and that the type system of parrot has a fairly large impedence mismatch with Perl 6's model 22:46
both these should improve in the future
sorear relatively speaking - a raw Parrot procedure call without arguments is approximately twice as slow as a raw Perl 5 sub call 22:46
while everything else is blindingly faster :)
TimToady Eliazar: our hope is that it will be just as good for logs, if not better, eventually, and also more general purpose
perigrin Eliazar: you're also missing out on some of the nicer features that came back to Perl5 from Perl6 with that analysis 22:47
Eliazar well, I used perl5.8.6 usually on my bsd servers.. 22:48
gfldex Eliazar: you will be able to write parsing code that is easer to write and possible to read
in fact you can do so already
TimToady the Perl 6 parser is written in Perl 6, in fact
sjohnson std?
TimToady nodnod
Eliazar Are perl6 regexes now completely implemented? 22:49
tadzik Yep
TimToady well, largely
I don't think rakudo does lookbehinds yet
nor does it really do LTM 22:50
tadzik ah
TimToady niecza does though
LTM = longest token matching
sorear niecza does lookbehinds only for strings that decompose into a sequence of character classes
Eliazar so it is not completely done assuming rakudo is most popluar imp..
sorear like <?after abc> or <?after \s> but not <?after ba+>
TimToady mostly we implement what we need as we need it to bootstrap Perl 6 in itself 22:51
sorear I don't think anyone does full lookbehind yet
also I don't think anyone has implemented ::> or <:Age(2.0..*)> yet
TimToady and it will always be subject to the constraint of "patterns that can be reversed"
not sure anyone has done <*word> yet either 22:52
Eliazar so maybe perl6 will be the first to have them..
TimToady it'll be the first to have a lot of things, so if we have to put off some of the lesser ideas till after 6.0.0, we can 22:53
fundamentals have to come before convenience features, generally
Eliazar TimToady: agree.. 22:54
TimToady except insofar as convenience falls conveniently out of the fundamental design :)
Eliazar TimToady: now we are talking! :)
TimToady we're very pragmatic, except when we aren't...
Eliazar TimToady: Is there any expected date for 6.0.0 ? 22:56
gfldex x-mass
sorear I think a better question is, "Is there any expected definition for 6.0.0 ?" 22:57
Eliazar sorear: You mean in terms of specs?
TimToady it will be a process of convergence with the various nearly complete implementations
gfldex what means we will notice a few days after 6.0.0 happend that 6.0.0. happend :) 22:58
TimToady much of the final spec work is expected to arise from the various impls duking it out :)
frettled Eliazar: The challenge is that the language is separate from the implementations. The 6.0.0 spec has arguably been several years ago.
gfldex the question is "do i need 6.0.0 to start using perl6 to my hearts content?"
TimToady and where they can't agree, we put "Reliance on one behavior or another here is erroneous." 22:59
gfldex: depends on how easily your heart is contented, and by what.
Eliazar TimToady: well.. I guess it would be great to start with a minimal but very efficient version.. then start to look for the impossible (which is possible :)) 23:00
gfldex my heart is lusting for proper bindings to some proper gui toolkit
and i somehow think i will have to make those bindings happen myself 23:01
colomon gfldex: that's the most reliable way to get things done. :)
TimToady the most reliable way to get things done the way you like, at least...
lue
.oO(Unless you're notoriously unreliable)
23:03
flussence gfldex: someone *was* asking when it'll have a Tk binding a while back... 23:05
(personally I'd prefer something shiny-looking like gtk :) 23:06
gfldex how sad! Tk would be my last choice
colomon gfldex: then do what you want !
tadzik was wondering about making a gtk bindings a while ago 23:07
OR
this awesome idea about a DBI for GUIs.
One interface, multiple backends
lue Qt looks particularly shiny from my KDE session :)
gfldex i would love to have Qt bindings and i have an idea to fake them into rakudo 23:08
icanhascheezburger.com/2007/04/12/soon/ 23:09
lue tadzik: I think that is a great idea. Certainly would make GUIs easier. 23:10
tadzik lue: wanna help? 23:13
gfldex the point with Qt is that you don't really need bindings, all you need to do is to pass some strings around between 2 processes 23:14
at least that's my idea
may or may not work as expected
lue Hm. I'm assuming I would have to have access to GUIs in order to really work on it.
gfldex you still with dec terminals? :->
Eliazar perl6: printf("the %s jumped over the %s ... %d times\n", "cow", "moon", 2); 23:15
p6eval pugs, rakudo cae7f9: OUTPUT«the cow jumped over the moon ... 2 times␤»
allbery_b I'm somewhat tempted to point out that there really isn't much of a right way to link databases to GUIs, because in the end it's the application needs (the spec) that controls
gfldex luckyly i have no intention to fiddle with DBs :) 23:17
allbery_b (ex-db freak. very "ex")
(...dear g-d, it's been 15 years)
tadzik allbery_b: we don't want to link dbs to guis
it's about a unified interface for drawing windows 23:18
allbery_b good luck with that one too :) 23:19
(python. stdwin. learn from others' mistakes.)
lue How much RAM do you need to compile Rakudo now? 23:20
gfldex about 270MB 23:21
might be a little more in peaks 23:22
lue ooh, I should try compiling Rakudo again.
sorear but drawing windows is the window manager's job 23:31
colomon gist.github.com/753694 (messing around with Rosetta Code...)
TimToady colomon: does primes() memoize? 23:36
colomon TimToady: in Math::Prime? It's supposed to... 23:37
TimToady also, every time I see a "use" for a universal math concept, I shudder, and wonder why it isn't a built-in 23:38
TimToady hates "use List:Utils" too...
allbery_b because there are lots of universal math concepts and we don't want to necessarily pollute the namespace? 23:39
flussence small core?
allbery_b I can count the number of times I've needed primes on the fingers of one hand
colomon doesn't feel he can just add his own half-baked routines to the spec....
TimToady the namespace is not really polluted if any user can override in their lexical scope
TimToady that's why we put such things into a setting 23:40
allbery_b (...and the number of times I needed them for something other than hash table sizing on my nose_)
colomon but he is more than happy to make modules full of routines he would like to have available.
TimToady and the name is really the only thing that needs to be there, with some info on how to load it on demand
lue
.oO(maybe a Core++ thing?)
23:41
sorear it doesn't have to be &CORE::primes
sorear we have DateTime stuff in a subnamespace of CORE; NumberTheory could be the same 23:42
colomon afk #dinner
TimToady Int::primes() would be okay 23:45
or Int::<@primes> 23:46
lue That seems like a good idea. Is there a defined system for this sort of situation, or do you just add stuff in a seemingly sensible way as you go? 23:50
TimToady well, it's more like: don't add it in a non-sensible way :) 23:52
I just find some kinds of module names "smelly" 23:53
lue feels there should be a sort of Core++ system. It might make some things easier.
sjohnson it stinks!
lue I agree. Math::Prime looks unneccessary, yet I don't see it as very core-ish [ for non-mathematics languages anyway :) ] 23:54
TimToady modules ending ::Utils or ::More or ::Misc or ::Tiny are all just indications that something hasn't been factored out to be implementation dependent that ought to have been 23:56
*independent
lue There's something about how modules work in Perl 6 that seems off. I have no idea what though. The unregulated nature? The restrictive naming practices? 23:59