»ö« 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.
00:04 xabbu42 left 00:05 jedai_ left 00:06 jedai joined 00:10 f00li5h left, f00li5h joined 00:17 felipe left 00:18 ggoebel joined 00:24 ggoebel left 00:28 f00li5h left 00:33 rvrgs left, wamba left 00:40 stkowski left, QinGW joined 00:44 QinGW left 00:48 QinGW joined 00:57 masonkramer joined 01:01 ggoebel joined 01:05 f00li5h joined 01:06 f00li5h left, f00li5h joined 01:07 SpiceMan joined
SpiceMan I'm early adopting rakudo star. compiling right now, never really cared to read about perl 6. is there some perldoc perlsyn like thin? 01:09
*thing
(or perldoc, actually :)
01:21 jaldhar joined 01:25 Entonian left 01:38 meppl joined
masonkramer nothing terribly quick SpiceMan 01:40
I know you're a perl 5 guy - synopses 2, 3, 12 were the most important ones for me to get started 01:42
I'm sure the perl 6 authors contributors will have more to say
01:42 florz left
masonkramer there is also a book, but it's still under heavy development 01:42
also this perlcabal.org/syn/Differences.html 01:43
I've also learned a lot from moritz perlgeek.de/en/ 01:45
01:47 zostay left 01:48 zostay joined, florz joined 01:56 Sherif joined
Sherif hello 01:56
01:59 Sherif left 02:15 ggoebel left 02:21 ggoebel joined
SpiceMan masonkramer: thanks, sorry for the late reply, stupid marketing called :p 02:24
02:26 f00li5h left
SpiceMan hey! use v5; is all I needed :p 02:26
02:26 f00li5h joined 02:29 nadim_ left 02:33 ggoebel left 02:38 agentzh joined 02:39 skids joined 02:40 masonkramer left 02:42 cdarroch left 02:45 f00li5h left, f00li5h joined 02:57 zostay left 02:58 zostay joined 03:10 _twitch joined 03:23 meppel joined 03:24 meppl left 03:29 _twitch left 03:45 meppel left 03:46 meppl joined
SpiceMan hmm, does compiling parrot take a lot of time? it's been in "parrot-nqp --target=pir --output=src/gen/perl6-grammar.pir" since for about 90 mins. (it's a 384MB RAM VM though) 03:55
s/since//
florz there was some talk about building taking forever recently 04:00
SpiceMan ah, ok. just wanted to know if I had to kill the thing and look for causes or let it be 04:01
florz maybe use one of the * releases? 04:02
(assuming you intend to use rakudo ...)
plobsing SpiceMan: are you using 2.9.0? we (parrot) had to make a 2.9.1 release because of slowness of rakudo compiles. 04:03
SpiceMan I cloned the git repo
of... rakudo. which I believe fetches parrot with svn
"parrot_install/include/2.9.1-devel" 04:04
plobsing the gc eats memory in 256M increments. compiling the setting (huge single unit compilation) might require more than 256M, which would exceed your VM's 384M memory and cause crazy swapping. 04:06
SpiceMan right, free mem: 5mb. well, I'm in no hurry 04:08
04:10 agentzh left, Chillance left 04:11 skids left, agentzh joined 04:18 Schwern joined
dalek odel: 588770d | mberends++ | java/runtime/ (6 files):
[java/runtime] add P6mapping and sync all recent dotnet changes
04:24
04:39 cognominal left 04:40 kjeldahl joined, colomon joined 04:50 araujo left 04:56 colomon left 04:59 [particle] left, [particle] joined 05:18 pythonian4000afk is now known as pythonian4000 05:21 pythonian4000 is now known as pythonian4000afk, Schwern left 05:43 Schwern joined 05:57 _kaare joined 05:58 dual left 05:59 envi joined 06:05 dual joined
sorear SpiceMan: you really want 768 to build Rakudo now. 384 hasn't been supported since Apr-May 06:11
it fluctuates a great deal - in Mar and Jun-Jul you needed 1.5-2 G
SpiceMan heh 06:12
sorear is stuck on a 384 MB physical box. One of a handful of reasons I'm not contributing to the Rakudo project
06:18 spinclad left 06:26 xabbu42 joined 06:29 dju_ left 06:43 justatheory left 06:54 [particle]1 joined 06:56 [particle] left 06:57 pnu_ left 07:34 muixirt joined
muixirt wonders why so many devs have low memory boxes 07:36
sorear: what are the mem requirements building or running niecza? 07:39
sorear muixirt: I think you mean so few. If Rakudo's memory usage was causing problems for the developers it would have been fixed by now 07:40
~256. Which is not a problem for me, so improving it is not a priority. 07:41
07:42 aloha left
muixirt sorear: well I thought of parrot devs as well 07:44
ok, the mem problems building parrot and rakudo are somewhat related 07:45
sorear only kid51 has ever complained about memory problems among Parrot core devs
and he has 256MB ram 07:46
muixirt and someone with 128MB complained on the mailing list
for example I don't understand the move from ops2c.pl to ops2c.nqp 07:47
this is cracking nuts with an even bigger slegehammer 07:48
07:51 Schwern left
sorear it needed a rewrite 07:52
b/c Parrot is moving away from C
muixirt snickers 07:53
07:53 jfried left, rgrau left, LionMadeOfLions left, IllvilJa left, sECuRE left, shabble left, \xF0 left, robinsmidsrod left, Maddingue left, nsh left, nperez left, frodwith left, xiaolongxia left, dual left, _kaare left, jjore left, huf_ left, krakan left, lue left, pochi_ left, broquaint left, gfldex left, peters_mops left, sirhc left, DarthGandalf left
moritz_ good morning 07:54
muixirt hi moritz_
sorear hi moritz_
07:55 dual joined, _kaare joined, jjore joined, huf_ joined, krakan joined, lue joined, pochi_ joined, broquaint joined, gfldex joined, peters_mops joined, sirhc joined, DarthGandalf joined 07:56 kjeldahl left, jfried joined, rgrau joined, IllvilJa joined, sECuRE joined, shabble joined, \xF0 joined, robinsmidsrod joined, Maddingue joined, nsh joined, nperez joined, frodwith joined, xiaolongxia joined, kjeldahl joined 08:00 LionMadeOfLions joined 08:02 pythonian4000afk is now known as pythonian4000 08:08 krunen joined 08:09 kjeldahl left
dalek ecza/master: 5c30728 | sorear++ | / (6 files):
Implement <O> and regex args
08:12
08:19 aloha joined
jnthn morning, #perl6 08:21
08:21 mce_ro joined 08:22 dju joined
moritz_ mornin' jnthn 08:23
08:23 dakkar joined, mce_ro left
moritz_ just finished the cake for wive's birthday 08:23
08:24 mce_ro joined
jnthn moritz_: Nice :-) 08:24
08:25 jhuni joined
sorear Is wive a typo or a linguistic slip? 08:26
morning, jhuni
08:26 dju left
sorear jnthn 08:26
08:27 dju joined
jnthn v and f are just a voicing apart :-) 08:27
muixirt moritz_ is a muslim and has wives :-)
sorear that would be wives' then 08:28
08:28 jferrero joined
muixirt well ok, would be still a typo 08:28
jhuni sorear: thank you, but it is like 10 at night here lol 08:29
anyways, recently I have been attracted to the idea of visual programming languages like labview 08:30
sorear jhuni: I meant to reply to jnthn> morning, #perl6
jhuni k 08:31
sorear but irssi and I do not agree on j<tab> :p
08:31 nadim_ joined
jnthn Yeah, it sucks they didn't implement mind-reading yet. 08:31
frettled And typo-fixing. Which fixes unintentional typos only.
jhuni sorear: do you ever get the feeling text programming is cumbersome?
sorear I don't think the text per se is an issue 08:32
I do get annoyed by the one-dimensionality of it from time to time
frettled I get annoyed by having to spend time typing trivial code. 08:33
sorear it makes layout ... hard
VQ issues
frettled I probably should start using an IDE more actively.
sorear s/layout/organizing stuff/
I found the Lego Mindstorms IDE quite infuriating when I played with it six years ago. Has the state of the art in visual programming languages advanced much since then? 08:34
jnthn I quite like having an IDE at some level, but only if it doesn't get in my way too much.
Vanilla Visual Studio I can cope with. Start adding tools like Resharper and the annoyance factor is higher than the usefulness. 08:35
sorear I do enjoy a decent IDE, but most of them are far too totalitarian for my tastes
jnthn Yes. I really hate excessive "I must fix your code layout"-ness.
I lay things out the way I do for a reason.
I don't really need an IDE thinking it knows better. 08:36
But, such things can normally be enabled/disabled at will.
sorear I haven't met an IDE that insists on fixing code layout yet. If I did there would be significantly fewer intact windows in the city.
jhuni In general it is cumbersome to have a unique identifiers for things, like generally people use google to search for stuff rather then typing out a url.... similarily it might be nicer to be able to just search for a function rather then knowing a unique identifier, this especially applies to php functions lol 08:37
a decent IDE or a visual environment provides that with stuff like autocomplete 08:38
sorear Every nontrivial work in a written language creates its own language, augmenting the language with local context serving as definitions of vague or meaningless terms 08:39
A program is no different
If your program has more functions than words in your setting vocabulary, your program is far too large 08:40
sorear wonders if there's anything like local $::paren = 0 unless $self->passcap in Perl 6
moritz_ uhm, s/v/f/ of course :-) 08:42
08:46 jjore left 08:54 am0c joined 08:55 zby_home_ joined 08:57 wamba joined
sorear out 09:12
dalek ecza/master: 2a653c8 | sorear++ | / (5 files):
Implement $<sym>

Also restructures and simplifies the regex CHECK process.
09:16
09:19 robinsmidsrod left, robins joined 09:26 simcop2387 left, simcop2387 joined 09:31 muixirt left 09:36 simcop2387 left 09:37 simcop2387 joined 09:47 pnu joined
moritz_ nopaste.snit.ch/24655 std build failure (for sorear and TimToady 09:59
10:06 QinGW left 10:07 ggoebel joined
moritz_ somehow I can't manage to bisect anything lately 10:09
just tried to bisect that "too few positional arguments: 2 passed, 3 (or more) expected" bug when a variable is not predeclared 10:10
getting quite a different result than before 10:11
10:11 mce_ro left 10:15 ggoebel left 10:19 jjore joined 10:20 agentzh left 10:22 masak joined
masak oh hai, #perl6 10:22
moritz_ lolitsmasak! 10:24
masak moritz_: re TimToady saying that the X** in '[+] @nums X** 2' can be parallelized: he seems to be talking about 'these hyperops' in general, so it kinda holds even though X itself is lazy.
moritz_ right, X isn't hyper
masak also, interestingly a "clever optimizer" could notice that the X** is inside a slurpy [+], and turn it into a <<*<<
s/ly/ly,/
moritz_ <<**>> in genral 10:25
masak troo
TimToady: Java has ++, and has had it since day one, AFAIK. the foreach came in Java 5, but there are no ranges, so it doesn't really help in the example shown. 10:33
moritz_ could anybody else please try to bisect it? 10:37
10:41 baux joined 10:45 ggoebel joined 10:46 colomon joined
masak ah, so *that*'s where the "Rakudo is fast as a turtle" meme comes from. 10:46
TimToady running his turtle on Rakudo and jokingly pointing out when Parrot does a GC run.
moritz_ yes, I saw it on youtube too 10:47
masak leaving all unknowable aspects of "which end of the Rakudo/Parrot spectrum is causing the slowness?" question aside, surely there's objective factual evidence that Parrot's GC is... heavily suboptimal? 10:50
10:50 ggoebel left 10:51 flussence left, jhuni left
colomon masak: is there? I know I used to blame all the slow on parrot, but I'm not so sure anymore. 10:52
masak I'm not blaming "all the slow" on Parrot.
moritz_ masak: do you remember pmichaud's mail about GC pressure to parrot-dev?
masak I'm saying that those almost second-long pauses in TimToady's turtle program are caused by the GC.
moritz_: not immediately, no. 10:53
moritz_ masak: loading perl6.pbc slowed down an othewise fast program by a facto of >10
excluding startup time
masak I'm also saying that I don't recall the JVM having such long and such frequent GC pauses.
moritz_: ah. it's coming back now.
moritz_ just because the objects were considered during each GC run
colomon moritz_: woah. 10:54
moritz_ "A short example of Parrot GC pain" 10:56
10:56 flussence joined
masak oh, that's why? I never grokked that part. 10:56
making a VM is hard. let's go shopping.
moritz_ shop a VM? 10:57
masak I'm not at the point yet where I'm dismissing Parrot altogether. it might just be a great project with a very long buildup.
moritz_ well, parrot does have some important features that other VMs lack 10:59
jnthn masak: Me either, but I'm also very keen to break having an absolute dependency on it.
moritz_ like native support for multi dispatch
jnthn moritz_: lol
moritz_: You do know that we don't use Parrot's multi-dispatch at all in Rakudo? 11:00
colomon jnthn++
moritz_ jnthn: yes
masak "native support for multi dispatch" sounds like something a VM *designed with Perl 6 in mind* should have... :/
jnthn :S
moritz_ jnthn: but it means that other languages have an easy time using the multi dispatcher from Perl 6
masak in Parrot's defense, what Perl 6 is keeps changing slightly.
jnthn moritz_: 11:01
What really matters here is that there's an API for invocation.
moritz_ right 11:02
moritz_ wonders if there's an API for innovation too :-) 11:03
gfldex well, the patent office got a public interface 11:07
that's a start :)
moritz_ well, in programming patents are pretty much hinder innovation 11:09
masak this shows pretty clearly the effects of the GC: gist.github.com/638298
nom &
11:10 ggoebel joined 11:11 mdxi left 11:12 kjeldahl joined 11:14 ggoebel left 11:18 nsh_ joined, \xF0_ joined 11:19 nsh left, jfried left, \xF0 left, rgrau left 11:21 jfried joined 11:25 Trashlord joined 11:27 felipe joined, mdxi joined
colomon masak: just tried that code out here, UGH! 11:29
11:34 allbery_b left 11:38 xinming joined, nymacro joined
colomon I mean, I'm seeing approx a one second pause for GC every three seconds. That means GC is adding 33% to the execution time. 11:39
11:40 cognominal joined
colomon I wonder how many objects are created per step? 11:40
11:44 pnu left
masak that's what I'm talking about. ugh. 11:46
masak writes to the parrot-dev thread about this
colomon it's also using up 366 MB of memory basically to create a linked list which now has 16,000 elements in it. 11:49
on the plus side, memory usage doesn't seem to be growing very quickly at all, so the GC is at least accomplishing something.
11:50 Trashlord left
takadonet morning all 11:50
jnthn This is the kinda thing that bacek++'s much-needed current work on generational GC is aimed at improving.
11:53 mj41 left 11:59 allbery_b joined, Trashlord joined 12:04 aloha left
colomon hmmm, wasn't watching closely enough to see when it happened, but we're now at 378 MB memory usage in the run, and 26,000 runs through the loop. 12:05
masak rakudo: say (1 < 3 > 2) 12:06
p6eval rakudo d35769: OUTPUT«Bool::True␤»
colomon that means the last 10,000 elements in the linked list cost us 10 MB of memory. somewhere on the order of 1K memory per element.
jnthn What are the elements? 12:10
12:10 Guest84593 joined
masak *all* of them? :) 12:10
jnthn (what data type)
colomon jnthn: just the internal iterator created by 1..Inf
jnthn On, Int then 12:11
*OK
That's...pricey.
colomon it may be a bad assumption -- could be the GC isn't doing a good job of deleting dead variables 12:12
jnthn OTOH, today one Rakudo Int is 3 PMCs and that's before considering that we may have a scalar container wrapper in the array too iirc.
Which if it has an rw property marked on it is...2 more PMCs (one for container, one for prop hash) 12:13
If you add that lot up you might get closer to 1K. :/
colomon still, in any sane world that would be under 100 bytes. 12:14
12:15 aloha joined
colomon and one would hope a carefully built implementation was more like 24 bytes 12:15
jnthn I'm carefully building. :-) 12:17
colomon ;)
Juerd Jenga
jnthn This is one place where 6model should give us a nice win.
heh..."Jenga Perl 6"
Juerd A building project in Rotterdam collapsed today. 5 injured. 12:18
12:18 MayDaniel joined
jnthn :( 12:19
Juerd Some sources say only the scaffolding collapsed, most indicate it's the building they were building that went down.
colomon :(
Juerd Maybe I'm just naive but couldn't someone easily tell the difference between the two? 12:20
Even without knowledge of architecture... :)
(concrete knowledge...) 12:21
12:21 Schwern joined
jnthn Lack of concrete knowledge may have been the problem here ;-) 12:24
12:28 aloha left
masak Tom Christiansen is on StackOverflow. \o/ stackoverflow.com/questions/3973834...xcept-spac 12:29
12:35 MayDaniel left 12:36 bluescreen joined 12:37 aloha joined 12:40 leprevost joined
masak merlyn++ (Randal L. Scwartz) did a FLOSS Weekly inteview about Rakudo Perl 6. 12:44
I wonder why he's not on here. I think he's on freenode.
12:45 ggoebel joined 12:47 pythonian4000 is now known as pythonian4000afk 12:55 wamba left 12:57 colomon left
takadonet masak: url? 12:58
masak takadonet: twitter.com/merlyn/status/27960589524 12:59
13:02 ggoebel left 13:04 bluescreen left 13:05 bluescreen joined 13:09 ggoebel joined 13:14 zby_home_ left, Schwern left 13:15 tzhs joined
PerlJam good morning #perl6 13:16
masak PerlJam! \o/
PerlJam masak: today is going to be a busy day for me it seems. Code to write. Interviews to conduct. oh, and a compiler to "release" 13:18
:-)
13:18 leprevost left
PerlJam I won't be able to get to rakudo until later today local time, so it may be "tomorrow" for some of our denizens 13:19
takadonet NO!!!! hehe 13:20
13:20 Patterner left
pmichaud good morning, #perl6 13:20
masak PerlJam: the Europeans forgive you, I'm sure.
pmichaud! \o/ 13:21
jnthn Morning, pmichaud
PerlJam (Why do we call them "releases" anyway? That only seems to fit under the old regime of "only release when we've built up enough features to warrant it". Back then we were holding back until "good enough" and then releasing it out into the world. With clockwork releases it's more like we're kicking it out the door rather than letting it go.) 13:23
13:24 aloha left 13:25 aloha joined
flussence interesting question... it seems like there's a trend, everywhere, toward time-based releases instead of good-based releases :/ 13:26
(I think they should be called "snapshots" if they're time-based) 13:27
PerlJam I don't know ... I don't think time-based releases are the antithesis of "good-based" releases. I think it's more that we're recognizing smaller units of "good" 13:28
13:28 plainhao joined, ruoso joined
flussence with rakudo it's not polar opposites, they do get delayed after all :) 13:29
13:29 ruoso left, ruoso joined 13:32 Psyche^ joined, Psyche^ is now known as Patterner 13:37 nymacro left
masak PerlJam: for better or worse, "release" is a magic word. even knowing this, I tend to look at an email subject line saying "ANNOUNCE: Parrot/Inkscape/MediaWiki/Perl release x.y.z", and automatically go "ah! maybe it's time to upgrade, then". even when I decide not to upgrade, a little flag in my brain saying "this project is alive and well" gets set. that's worth a lot. 13:44
moritz_ rakudo: say now.x 13:45
p6eval rakudo d35769: OUTPUT«1287668749.37868␤»
PerlJam masak: re merlyn, he's on #git sometimes and #squeak or #smalltalk or something too (as RandalSchwartz), but another #perl on another network soured him a little I think, so he doesn't hang out on #perl-ish channels much
13:47 zby_home joined
masak PerlJam: right, I almost suspected that. and yet he's writing a book about Perl 6, and giving interviews about Rakudo. as usual, it just feels so strange when people who are involved with Perl 6 in various ways don't have a presence here. 13:48
PerlJam masak: you have proof that he's actually writing a book ? :)
moritz_ not only that, but don't have a presence on any perl6- mailing list either 13:49
pmichaud I suspect that may become the norm someday, though.
Juerd Heh
masak PerlJam: I think it was from merlyn that I got a long excerpt about Perl 6's history, yes. that seemed to be part of a book.
pmichaud I mean, how many people develop things for Perl 5 but aren't active in p5p or #perl or .... :-P
PerlJam He's been talking about "Learning Perl 6" for several years yet, but I don't think he's actually working on it except sporadically.
masak don't recall anymore where I saw that excerpt. 13:50
pmichaud He and I talked about that yesterday (outside of the interview)
moritz_ pmichaud: "developing *for*" ne "developing"
Juerd I fear 5-to-6 translations of existing Perl books.
13:50 _kaare left
masak pmichaud: were you in the interview as well? 13:50
PerlJam Juerd: I only fear *bad* translations :)
heh
pmichaud he's been (understandably) waiting for an alpha release of Perl 6 before really focusing on Learning Perl 6 13:51
Juerd Like how some Perl 5 books are updated Perl 4 books.
PerlJam there's that word again ... "release"
pmichaud masak: merlyn and I recorded an episode of "FLOSS weekly" about the history of Rakudo and Perl 6
Juerd New features are discussed in separate chapters or not at all, and all the existing stuff is still 4-ish
PerlJam: Do you think we should replace that with real ease? 13:52
pmichaud Juerd++ # nice
masak pmichaud: oh, cool! looking forward to hearing it.
Juerd "You keep asking about real ease, but we already have that."
moritz_ too 13:53
Juerd +the
pmichaud it really ended up being more about Perl 6 history than anything else; hope I didn't mangle the facts too much. :)
moritz_ pmichaud: I don't have big concerns in that respect
13:53 Schwern joined
PerlJam Schwern! 13:54
masak Schwern! \o/
Juerd Is there any other "Vaporware" project that has such a long and lively history, active development and a regular release schedule? :)
PerlJam Juerd: I doubt it. 13:55
masak Juerd: I think we should put some effort into finding out.
Juerd And books
masak Juerd: I keep a list of candidates for exactly that purpose.
Juerd :)
masak Juerd: Duke Nukem Forever (recently re-activated), Apache 2, Mozilla, the Hurd, Xanadu, grub2, the whole thing with 5th-gen computers in the 1980's. 13:56
Juerd I use Apache 2 and Grub 2 in production, so that must mean Perl 6 is safe for production use as well. 13:57
masak at some point, I'd like to do a "compare-and-contrast" article-length blog post about all those projects.
frettled PHP 6!
masak frettled: thanks; added.
just to explain (to myself, if to no-one else) where Perl 6 fits into it all. 13:58
frettled It was _started_ around when Perl 6 was announced.
masak Python 3k also added.
frettled :D
Ruby 2?
x3nU i wouldn't use rakudo in production ;f
masak x3nU: then you're not like me :) 13:59
x3nU it's too heavy imho
frettled masak: ooh, I have another one: the GUI replacement for X11.
X12 or whatever :D
x3nU of course for some uses it's not problem
masak frettled: you think you could find its actual name?
PerlJam "too heavy"? 14:00
masak x3nU: that's the key thing -- it depends on who's the one using the word "production".
Juerd PerlJam: There's only so much weight a 19" server cabinet can carry.
frettled masak: It's so vaporvare that it doesn't even exist in name, IIRC.
Juerd One must always be careful weigh and balance new software before putting it in. 14:01
PerlJam Juerd: mine carries thousands and thousands of software packages. :)
frettled masak: but have a look-see here: en.wikipedia.org/wiki/X_Window_Syst...se_history
Juerd PerlJam: Sure, so does mine if they're feather light packages
masak frettled: thanks; added.
Juerd PerlJam: df --weight 14:02
masak could anyone help me find the actual keynote hinted at in www.ruby-lang.org/en/news/2010/10/0...on-valley/ ?
Juerd Include -h if you want kg instead of g
masak surely it must be online as a video somewhere?
PerlJam heads off to interview a potential ISO
frettled masak: Seven years between X11R5 and X11R6 was pretty bad, people started claiming that X/X11 «is dead», that the concept itself was dated, that a new and perhaps incompatible release would not work out, etc. People also seem to agree that the X11 model is fundamentally flawed, but at a loss when asked to provide a functional alternative. :) 14:03
masak recognizable situation.
moritz_ PerlJam: how is the release going?
frettled Hmm. Emacs 19 -> Emacs 20, perhaps? 14:04
masak possibly.
I'll write that one down as a candidate. 14:05
moritz_ plan 10!
frettled Nah, that wasn't so bad, not too many years.
masak moritz_: :P
moritz_: to their credit, they did release a 9 1/2...
frettled heh 14:06
flussence xmms 2?
(which I've been using for months now...)
masak appears to be a complete rewrite. 14:08
yeah, might qualify :)
I'm glad I brought this up. my list is twice as long now. :) 14:09
flussence ooh, add e17 too
moritz_ indeed 14:10
masak noted.
14:12 ruoso left 14:13 ruoso joined, ruoso left, alester joined, timbunce joined 14:17 ruoso joined
moritz_ started to take a course on Norwegian, and now ponders writing a vocabular training program in Perl 6 14:20
moritz_ is a bit puzzled that Compose + ° + a doesn't produce å by default 14:21
14:23 MayDaniel joined, zostay left, icwiener joined
masak moritz_: I recognize the feeling -- almost always when I learn a language, I want to write software to help me learn it. 14:23
I seldom get around to it, however.
Juerd moritz_: Use a bigger °, like o 14:25
moritz_ Juerd: I used Compose a a now 14:26
Juerd Doesn't work here
compose o a does
moritz_ both work for me
discovered aa in the vim :digraphs table
14:27 zostay joined
masak aa makes sense from a historical perspective. 14:32
flussence altGr + {,a for me... all the extra bits are on punctuation keys 14:33
14:33 ruoso left, ruoso joined
ruoso trying to use irssi instead of xchat... local connection is weird, better using ssh to a machine with a saner connetion 14:35
14:40 masonkramer joined
masak rakudo: my @t = 1..10; say (my &stddev)(@t) given &stddev = -> @x { sqrt ([+] (@x X- my $mean) X** 2) / (@x - 1) given $mean = ([+] @x) / @x } 14:41
p6eval rakudo d35769: OUTPUT«3.02765035409749␤»
masak cackles evilly 14:42
jnthn eww! 14:43
masak :D
jnthn But hey, it works...
masak credit goes to TimToady++ for developing that style of writing.
14:43 icwiener left
masak it's a bit similar to 'where' in Haskell. 14:44
14:44 icwiener joined
masak rakudo: my @t = 1..10; say .(@t) given -> @x { sqrt ([+] (@x X- $_) X** 2) / (@x - 1) given ([+] @x) / @x } 14:45
p6eval rakudo d35769: OUTPUT«3.02765035409749␤»
masak one can think of it as a sort of "named $_" pattern. 14:46
14:46 MayDaniel left
jnthn yeah 14:47
On second glance it's not quite so bad.
masak I like it. 14:48
flussence I can almost understand that!
masak "declare now, define later"
flussence (which is good, given I never understood it in school)
masak oh, you mean the standard deviation.
flussence yeah, the thing. 14:49
masak it's just a maths formula. chances are the parts you don't understand are just-so magic anyway :)
but basically, if you assume that your samples follow a gaussian distribution, the standard deviation is a measure of the "width" of the bell curve. 14:50
moritz_ \o/ first, primitive version of vocabular trainer is running 14:51
masak moritz_++
moritz_: when will we see the source?
some of us have been waiting for hours already :P 14:52
there are murmurs about vapourware...
moritz_ masak: hours? you mean, about 0.5 hours?
masak it *feels* like hours. :) 14:53
14:54 masonkramer left, masonkramer joined
moritz_ github.com/moritz/perl6-vocabular-coach 14:55
currently it's *very* primitive, and stateless
masak reviews 14:56
I like the use of smilies. 14:57
jnthn I need to make one of these for Russian, but that can test me on declensions. :-)
14:58 justatheory joined
jnthn
.oO( Trombone (Instrumental): )
14:58
14:58 colomon joined
jnthn @lang[$_].=trim for ^2; 15:00
Why now
@lang>>.=trim;
*not
moritz_ does that work?
rakudo: my @a = ' a ', ' b'; @a».=trim; say @a.perl
p6eval rakudo d35769: OUTPUT«["a", "b"]␤»
masak rakudo: 'my $pair = "OH HAI" => 42; my (Pair($key, $value)) := $pair; .say for $key, $value # jnthn: what am I doing wrong here? I want to "automatically" extract $key and $value 15:01
p6eval rakudo d35769: OUTPUT«===SORRY!===␤Confused at line 22, near "'my $pair "␤»
15:01 orafu joined
masak rakudo: my $pair = "OH HAI" => 42; my (Pair($key, $value)) := $pair; .say for $key, $value 15:01
er.
p6eval rakudo d35769: OUTPUT«Not enough positional parameters passed; got 0 but expected 2 in sub-signature␤ in 'infix:<:=>' at line 1␤ in main program body at line 22:/tmp/gnS7v6hB9V␤»
jnthn Missing space?
masak rakudo: my $pair = "OH HAI" => 42; my (Pair ($key, $value)) := $pair; .say for $key, $value
p6eval rakudo d35769: OUTPUT«Not enough positional parameters passed; got 0 but expected 2 in sub-signature␤ in 'infix:<:=>' at line 1␤ in main program body at line 22:/tmp/qqm0K1W6eU␤»
jnthn Named params? 15:02
though hm
masak rakudo: my $pair = "OH HAI" => 42; my (Pair (:$key, :$value)) := $pair; .say for $key, $value
p6eval rakudo d35769: OUTPUT«Mu()␤Mu()␤»
masak better, though.
jnthn rakudo: my $pair = "OH HAI" => 42; say $pair.Capture.perl
p6eval rakudo d35769: OUTPUT«\()␤»
moritz_ I think the Capturification of Pair is broken
right
jnthn Yeah
masak submits rakudobug 15:03
jnthn That's the real issue.
It woulda worked if that had.
PerlJam returns
15:04 tzhs left
jnthn Oh, I think I remember us diagnosing this one before too. 15:06
masak I can make a quick search. I've already submitted it. 15:08
rakudo: my $code = "\$" ~ 1 x 1024; eval $code 15:11
p6eval rakudo d35769: OUTPUT«error:imcc:syntax error, unexpected IDENTIFIER ('Inf')␤ in file 'EVAL_11' line 68␤»
jnthn wtf :-) 15:12
masak an old one, reported by bbkr :) 15:13
at least it's clever. probably not very common, though.
but I agree that it's a bug.
15:14 jfried left
jnthn *yawn* almost home time... 15:17
jnthn mighta been done for the day if Snaketrafiken weren't so crap at getting him into Malmo on a morning. :|
15:20 timbunce left
moritz_ now added ASCIIficiation to his comparison routines 15:21
15:23 MayDaniel joined 15:26 timbunce joined
jnthn decommute 15:28
15:28 Ross joined
masak Parrot GC runs last for about a second, with a standard deviation of about a quarter of a second: gist.github.com/638685 15:30
needless to say, this is the kind of "statistics" of the "damnd lies" kind. 15:31
s/damnd/damned/
moritz_ masak++ # hard numbers about GC
fsvo "hard" :-)
masak right.
biggest measuring error is probably that the logic inside the loop takes time, too. 15:32
15:32 risou joined
masak probably saving all the timestamps and processing them afterwards might be better. 15:32
but then memory consumption might be an issue instead :/
masak runs it once without IO, too. 15:33
in my humble opinion, the fact that the GC is invoked 28 times in a simple 1..1000 `for` loop on a 4GB computer, is a kind of crazy deserving of its own category of crazy. 15:36
similar results without IO: gist.github.com/638685 15:37
15:41 [particle]1 left
masak keeping all timestamps and doing sorting later also gives similar results: gist.github.com/638685 15:42
15:42 [particle] joined
masak after this, I won't hesitate saying "Parrot GC takes one second". 15:43
16:00 bluescreen left 16:15 robins is now known as robinsmidsrod
takadonet ... 16:15
16:16 stkowski joined, _kaare joined, Amine1285 joined
Amine1285 Depending where you are, Good morning or good evening! 16:18
I am new here
and realy like to do something with perl for perl
I like perl
takadonet Amine1285: hey 16:19
masak hi there! we like Perl too :)
Amine1285 Hi :)
masak rakudo: say "oh hai Amine1285!"
p6eval rakudo d35769: OUTPUT«oh hai Amine1285!␤»
masak Amine1285++ 16:20
aloha: karma Amine1285
aloha masak: Amine1285 has karma of 1.
masak consider that a welcome bonus :)
Amine1285 :D
what does it mean karma of 1? 16:21
masak it means that we think you're awesome.
just wait until you get a karma of 2!
aloha: karma takadonet
aloha masak: takadonet has karma of 3.
jnthn aloha: karma jnthn
aloha jnthn: jnthn has karma of 118.
jnthn I'm SO awesome! 16:22
masak jnthn++ # has a lot of karma. oh wait
jnthn ;-)
Maybe we should track modesty too ;-)
masak we do. we just haven't been letting you know :P
jnthn feels negative
:-)
takadonet i have 3 karma.... wow 16:23
jnthn masak: Those GC numbers are...eww. 16:24
masak Amine1285: now -- how can we assist you on your quest?
Amine1285 Ok
I understand now
mmm
masak Amine1285++ # understands now
aloha: karma Amine1285
aloha masak: Amine1285 has karma of 2.
masak :)
Amine1285 I just want to be involved in perl6
because I like perl 16:25
:P
masak Amine1285: easiest way to do that is to write Perl 6 code. doesn't have to be advanced in any way.
just start somewhere, and before you know it -- you'll be involved.
Amine1285 is it different from perl 6?
I mean 5
masak yes and no.
Amine1285 beacue I already write in perl 5
masak if you go into Perl 6 assuming it's Perl 5, you'll get some surprises. 16:26
Amine1285 but when I want to start perl6 I notice that is still "under construction"
masak it is.
but people've constructed a great lot already.
Amine1285 I have a stupid question 16:27
why we move to perl 6? 16:28
masak because there is room for improvement.
Amine1285 i.e.?
masak Perl 5 is great, but some aspects of it are limited and limiting.
Amine1285 like? 16:29
masak many aspects.
OO
parsing
takadonet grammars!!!!!
masak signatures
language extensibility 16:30
PerlJam Amine1285: also note that Perl 5 and Perl 6 live comfortably together. There's no mutual exclusion.
masak Amine1285: what PerlJam said. if you go into a Perl 5 channel and ask "why we move to perl 6?", they answer "we don't". 16:31
16:31 aloha left
masak there are many use cases for Perl 5, and many for Perl 6. 16:31
some people will stick with one or the other simply because they are more comfortable with that language.
PerlJam People who are comfortable haven't been pushing the boundaries of their language too much :) 16:32
Amine1285 I have also one other stupid question :s 16:33
why Perl is much slower than Java 16:34
?
perl 6 resolve this?
PerlJam That's actually an interesting question. 16:35
For most of Java's lifetime, it's actually been the reverse. Perl has been faster than Java. 16:36
masak Amine1285: you'll find that Perl 5 is really really fast. it solves most problems while the JVM is still booting up.
Amine1285 there is one test on the net, that show that java could achieve task in seconds, while perl hang for ages... 16:37
PerlJam Amine1285: One sample does not a trend make :)
16:38 Entonian joined
PerlJam Amine1285: The current Java compilers may be faster than Perl (I don't have any hard numbers handy so I don't know for sure) because just-in-time compilation. 16:38
masak Amine1285: Perl 5 is really fast. especially after one has gotten used to the speed of Rakudo.
Amine1285 Rakudo? 16:39
16:39 s1n left
masak rakudo: say "that's me!" 16:40
p6eval rakudo d35769: OUTPUT«that's me!␤»
PerlJam Amine1285: rakudo is the front-runner perl 6 compiler (for now :) 16:43
16:45 _buno_ joined 16:46 _buno_ left
pmichaud masak++ # very cool gc timings 16:47
masak thanks.
pmichaud I agree, the fact that GC is invoked 28 times in a 1000-iteration loop is.... bizarre. 16:49
16:49 inket joined
masak it's tragic. 16:50
inket is there a differenc ebetween scripting languages and general programming languages
or they all come under the same folder
masak inket: the line is really blurry, I'd say.
a script is just a small program.
inket right
perl is a scripting language isnt it
not a programming language
masak it's both. 16:51
inket but in a resume
what do you put it under
masak :)
depends how you use Perl, I guess.
if you never write larger things with it, put it under "scripting language".
inket but in a resume do you generally have to disntinguish the two
masak why?
inket as in scripting languages and regular joe programming languages?
oh dunno just thought people take a liking to that because you know the difference 16:52
arnsholt My resume just has a list of the most relevant/interesting programming languages I know
masak inket: I think you read too much into the difference.
inket but nothing wrong in it is it
just adds more value me thinks
masak sure. unless you think that scripting languages aren't programming languages. 16:53
inket atleast gives the hiring committee an idea at a glance that i know it's different and not the same
tcl is not a programming language
masak sighs
inket if it is, why is it called a scripting language
flussence I'd put perl under both 16:54
masak some programming languages are called scripting languages.
inket thats practical, putting it under both
masak Perl is all about practicality :) 16:55
16:55 justatheory left
inket perl wasa text processing language 16:56
but over time itbecame an all purpose lanbguage
masak "was"?
inket not the same with a scripting language like tcl
or say bash
16:56 timbunce left
inket yeah was, its more a general purpose language now 16:56
masak I see the usefulness of distinguishing programming languages from things that aren't programming languages (like HTML, or CSS). you should definitely distinguish those on your resumé. 17:00
but "scripting languages" are just a loosely-defined set of programming languages.
17:01 timbunce joined
masak "scripting" itself is a loosely defined activity. it's a bit like talking about "bioinformatics languages". which ones are and which ones aren't depends on who's asking. 17:01
17:03 ruoso left
inket true 17:03
17:03 ruoso joined
masak evening & 17:03
17:03 masak left 17:06 dakkar left 17:07 aloha joined
inket isnt tcl different to php when it comes to scripting? 17:07
both TCL and PHP both have interpreters which take the script, and both provide output based on it, they should be the same then right?
17:07 cdarroch joined, cdarroch left, cdarroch joined 17:08 patrickas joined
patrickas o/ 17:09
flussence inket: they're built for different purposes
for example, Tcl's logo is a feather, while PHP's is an elephant. I think that explains the difference pretty well
patrickas TimToady ping 17:10
inket no but they both have interpreters which take the script
php is considered a general purpose language than a scripting while tcl is just scripting, weird
17:10 Schwern left
flussence PHP also has the roadsend compiler, and some other one(s) 17:11
inket so is it fair to clal it just a scripting language?
x3nU what 17:12
>php is considered a general purpose language
flussence "scripting language" is just a vaguely defined subset of programming languages
17:12 Amine1285 left
inket ok what is the different between tcl and php and perl though 17:13
all scrioting but major different being
x3nU php sucks while perl not
eot
inket they all serve the same purpose, you give it input, it gives output
x3nU ;)
inket and they all have bindings for many tasks
java and C are general purpose languages, I mean they're not pure compiled languages.. they run in VM's 17:21
pmichaud wikipedia's article on "scripting languages" isn't too bad
inket wouldnt they be scripted?
pmichaud en.wikipedia.org/wiki/Scripting_language
inket right
by definition tey say tcl and php are
Juerd x3nU: More often than not, PHP is considered a web programming language and not at all general purpose.
inket but wouldnt java and C be too then?
they';re not exactly general purpose languages are they
pmichaud I wouldn't consider java and C as scripting languages, no. 17:22
inket java is
pmichaud: they're not compiled languages
Juerd In my book, scripting is extending existing programs with code that is evaluated (whether compiled or not) during these programs' runtime. 17:23
inket they run ina VM
pmichaud running in a VM isn't the defininition of "scripting language"
inket what is
Juerd So with Perl, it's definitely scripting if you're building extensions for Irssi, but it's not scripting if you're building a standalone program.
pmichaud in the case of java, you run a compiler on the source, producing bytecode, this is then independently run on a VM
diakopter I think the simplest definition is that a scripting language's source files can be "executed" directly from a shell by an "interpreter/compiler" without necessarily requiring a *visible* compilation step
Juerd Perl happens to be great for both :)
diakopter: So with Inline::C, C becomes a scripting language? :)
17:24 timbunce left
inket you can not compile Perl 17:24
it is still interpreted
Juerd diakopter: And with explicit compilation, Python's no longer a scripting language?
patrickas pmichaud o/ how is the cold going ?
diakopter Juerd: what? I said "*necessarily*"
inket it still runs as a script
Juerd inket: Actually, Perl code is compiled before it is executed. It's compiled over and over and over, once for every execution, but it still is compiled.
pmichaud patrickas: cold is largely gone, but replaced by some other issues :(
inket so diakopter, pmichaud: a scripting language still requires a 3rd party program to run 17:25
Juerd: either perl, something built into irssi that calls perl, what ever
Juerd: so is php and the rest
huf_ so is c, by that logic. good luck running most things without a libc and friends
along with the kernel
patrickas well I hope the other issues will follow the cold soon! 17:26
Juerd I'm not sure about current versions of PHP, but 3 years ago PHP was, by default, not compiled to an intermediate format before being executed.
huf_ Juerd: it is now
pmichaud has been for quite a while, iiuc
Juerd That's wonderful for those who have to work with PHP
huf_ it's compiled on every page request by default, but it is.
inket huf_: If I compile my C app, I can remove all external dependencies from the binary.. C can run "stand alone"
php can not
perl can not
huf_ inket: depending on what you mean by standalone
inket java can not 17:27
diakopter inket: my definition was "from source files"
Juerd I remember installing something called, APC, which was a PHP compiler, and getting an enormous performance boost for Mediawiki
huf_ inket: as i said, most c code still depends on kernel and libc, so not standalone
inket Juerd: yes it is
Juerd (A much needed performance boost, I might add)
inket The script is compiled and optimized into optcode
huf_ inket: you can compile c to run truly standalone, but you could make such an environment for perl too
diakopter inket: I stand by my simple definition of the source files being involved directly in the initial invocation.
inket huf_: ALL code requires a kernel of some sort
huf_ inket: nope
inket ? 17:28
huf_ there's no kernel under the bit of code that boots your pc
altho even that's not standalone :)
(it uses the BIOS)
and whatever else is there, i have no idea
inket I can compile my C application to not require in any libc libraries but rather include the desired functionality as part of the resulting binary file
huf_ inket: pp can do the same for perl scripts, iirc
pmichaud I've certainly written programs that didn't require external libraries of any sort.
inket pp?
pmichaud (not recently, and not on modern OS's, but I've certainly done it before :-) 17:29
inket huf_: not for perl
I have seen some hackish perl -> binary compilers
huf_ inket: what?
inket and some php -> binary as well honestly
17:29 timbunce joined
diakopter inket: hackish? 17:30
inket but "Out of the box" no, you're dead wrong
huf_ inket: so you did not bother to look up what pp is.
patrickas does anyone know what is (64,32,16 ...^ Rat) supposed to return? that's RT:78324 ... Is 64,32,16 the right answer ?
diakopter inket: see Reini Urban's work
huf_ inket: the distinctions you're trying very hard to make dont seem to make sense... abandon them :()
inket hackish as in using something for something its not designed for
huf_ :)
inket link me diakopter
flussence C wasn't designed for use outside a PDP-11, for instance.
*shrug* 17:31
pmichaud patrickas: 64, 32, 16, 8, 4, 2, 1
diakopter inket: search.cpan.org/search?query=B::C&mode=all
inket diakopter: got the link/
thx
pmichaud patrickas: i.e., it should stop when the series produces a Rat, which would be 1/2 17:32
inket pmichaud: yeah you can
you dont need external libs and such as huf_ puts it
patrickas rakudo: say (16/2).WHAT
p6eval rakudo d35769: OUTPUT«Rat()␤»
inket This compiler backend takes Perl source and generates C source code corresponding to the internal structures that perl uses to run your program. When the generated C source is compiled and run, it cuts out the time which perl would have taken to load and parse your program into its internal semi-compiled form. That means that compiling with this backend will not help improve the runtime execution
speed of your program but may improve the
17:32 tadzik joined
inket start-up time. Depending on the environment in which your program runs this may be either a help or a hindrance. 17:32
look at that
C compiles
perl doesnt
it transforms perl into C
and generally as a rule, I've never seen a signal one of these type of applications do anything worth a dick
diakopter that's compilation.
tadzik ¡Hola!
inket any sort of complex coding breaks things 17:33
pmichaud patrickas: ah, that's a good point. I suppose one can argue that the correct answer should be 64, 32, 16 then
inket nd you lose ALL your language nuances
17:33 Ross left
pmichaud since 8 is the first Rat produced in the sequence 17:33
inket turning perl source into c source is compilation
diakopter inket: your OT-ness and rudeness is about to get you kb'd
tadzik what transforms Perl into C?
patrickas pmichaud: that's what I got when working on the bug, but I wanted to get a second opinion about
inket this particular thing diakopter showed me
diakopter tadzik: reini's B::C
x3nU diakopter: c'mon cursing isn't anything inacceptable imo
inket its not compilation
huf_ inket: so what kind of arcane magic *is* compilation then? 17:34
pmichaud patrickas: I haven't seen anything that says that Int / Int should return Int if there's no loss of precision
patrickas pmichaud: it does seem surprising at first! But I am not sure it is the sequence's Job to figure out the real Rats from the "Fake" ones
diakopter pmichaud++ patrickas++ staying on topic
pmichaud I'm sure it's not the sequence's Job
I suspect the real question is whether 16 * (0.5) produces an Int or a Rat 17:35
inket huf_: compilation is the process of taking source code (C, what ever) and turning it into binary instructions designed to talk to the Operating system and interact with the user
pmichaud and I think I'm likely to vote for Rat.
inket After which a new file is created that can be ran
huf_ inket: in that case, gcc isnt a compiler.
patrickas pmichaud: ok so I'll fix it to return 32,16,8 and call it THAT bug resolved .. then we can think about 16/2 :-)
inket without requiring a compiler again
pmichaud patrickas: note that it's not really 16 / 2, though.
inket huf_: you're right, gcc is a frontend
pmichaud the factor used in 64, 32, 16 is 0.5 17:36
(a Rat)
17:36 wamba joined
tadzik inket: what's your point anyway? 17:36
huf_ inket: so the only compiler in the entire gcc heap is the assembler?
patrickas pmichaud: right
17:36 risou left
pmichaud and we get the next element by multiplying by a Rat, not by dividing by an Int 17:36
inket huf_: i said compilation is the *process* of turning source into object code 17:37
however many programs that takes.
diakopter facepalm
huf_ inket: so how is an interpreter not a compiler?
inket: it's just another process for turning source into machine code, however many programs that takes
inket and diakopter your B::C application is just taking one source code, and translating it into another source code
tadzik hey hey! I'm not here for long, and although I read the backlog, I still don't now: what's the point? 17:38
patrickas pmichaud: thanks
inket an interpreter doesn't leave you with object code
it interprets it and reacts to the code as its processed
huf_ inket: btw, machine code is just another form of source code too, nothing special
flussence ew
line-by-line execution is nasty.
not even php does that any more.
huf_ inket: almost no interpreter does that
inket an interpreter is object code that reads an interpreted language and executes its own object code to produce the resultant behavior
flussence so? 17:39
inket your code is never directly translated to object code
flussence and?
diakopter what is "your"
huf_ inket: yes, so a compiler is an iterpreter and an interpreter is a compiler. your definitions make no sense.
inket an interpreter performs instructions, a compiler transforms source code into object code. 17:40
flussence I'm with tadzik here, I don't see the point of language-lawyering over the definitions of scripting/programming like this.
huf_ flussence: precisely.
tadzik flussence++
diakopter goes to look at irc.perl6.org to find inket's original beef/question
inket diakopter: we've come a long way since then
tadzik I sense a little "Scripting is for stupid and compiled is for pr0", but it might be something with my nose today
inket tryig to define compilation here
diakopter inket: this isn't the channel for that. 17:41
huf_ inket: compilation is the act of transforming source code into another language (be that machine code or VM code or anything)
inket tats what wikipedia says 17:44
tadzik So Perl is compiled! At last, let's drink, or do something productive 17:45
huf_ i'm hacking php atm, this flame is by definition more productive than that ;)
inket huf_: compiling is source -> object
thats about it
17:45 wamba left
huf_ inket: you're confusing things again, stop with the rainclouds! 17:45
diakopter inket: I should clarify. this isn't the channel for "defining terms", *per se*. let's talk about your goals/ideas here.
huf_ paint smiley faces.
inket diakopter: just a regular discussion man 17:46
gees
huf_: what part am i confusing here
diakopter inket: my point is, why do you need to define these things? 17:47
huf_ *sigh* nothing, nothing, i'll keep quiet
flussence everything that runs on an x86 cpu from the last decade is compiled into micro-ops on the processor anyway, so that answers that :)
huf_ flussence: \o/
inket because i like to know the right stuff
diakopter why?
inket learning?
diakopter I can play sophistry too
huf_++ hacking php atm :) 17:48
tadzik yuk 17:49
17:49 cotto left
huf_ diakopter: i dont think i deserve a ++ for that... :( 17:49
huf_--
diakopter well, at least for mentioning it; heh
huf_ :)
inket cant have a discussion here ?
ok
huf_ this was a discussion? 17:50
inket its about basic definitions in computing
flussence trolling is generally frowned upon
inket how is it trolling? becuase i have a difference of opinion?
diakopter I can't claim to have never been too combative/defensive here, but the combativeness/defensiveness level was too high.
just type more slowly and use fewer newlines between others' replies 17:51
that helps a lot
17:52 justatheory joined
tadzik diakopter: you have an extra newline before 'that help a lot' :) 17:52
diakopter :D
inket: can we talk about the definition I proposed? 17:53
inket which is
for compilation/
diakopter you can take a look at irc.perl6.org/ for a good view of the irclog
no, for scripting language
inket for scripting language to some extent i agree with what you said 17:54
tadzik script is what you give an actor
tadzik hides
inket but for compilation i dont get how
perl just doesnt compile
tadzik why not?
takadonet perl is alive!
tadzik Compilation is transforming one code into another, isn't it?
Either C code to machine code, or Perl 6 code to Parrot/.NET code, nay?
17:54 meppl left
huf_ inket: you're hung up on this "object code" thing, as if that were some well-defined state, but it isnt. object code can be further transformed, interpreted, it's just code. 17:54
diakopter inket: explain "i dont get how perl just doesnt compile"
which perl? perl5 or perl6 implementations? 17:55
inket the ewxample you showed me 17:56
uber raiki orsomething
cant possibly call that compiling
tadzik :)
diakopter inket: write a compiler or two, then you'll understand. 17:57
inket i know its hard
but im saying that part where c transforms it into perl is not compiling 17:58
c compiles it
17:58 araujo joined
huf_ inket: c is a language, it doesnt compile anything, it doesnt even run 17:58
tadzik I disagree. If you compile Java to JVM bytecode, it later gets compiled from bytecode to machine code, with JIT 17:59
diakopter you need to llllleeeettttt ggggooooo of your magical hangup on the word 'compiler'
tadzik so JVM compiles it, yet javac compiles it too, nay?
huf_ but this really is extremely futile, even by my irc flame standards ;)
(still better'n php tho :)))
18:00 bluescreen joined
diakopter inket: "that part where c transforms it into perl is not compiling" makes zero sense 18:00
even accounting for every braino/typo I can imagine 18:01
inket diakopter: I said that B::C app you showed me was a perl to c transformers
not compiling
diakopter yes. it is.
huf_ inket: you are using a nonexistent definition of compiler. stop now. 18:02
diakopter and ALL of us are trying to tell you that "tranform" is another word for "compile"
18:02 pyrimidine joined
inket diakopter: i like perl and all but except for a few hacks, perl doesn't leave you with a compiled object 18:03
which means its not compiled
I have perl source, I run it through perl, it does stuff, I'm left with perl and my perl source. 18:04
now with c
I have C source, I run it through gcc, the code in the source file does NOT run, I end up with my source AND an object file
diakopter inket: You still haven't answered my question about which version of Perl you're asking about.
PerlJam inket: i can do exactly the same thing (as perl) with C
huf_ PerlJam: c isnt compiled? shit. 18:05
inket PerlJam: you serious? can you show an example
diakopter: any
18:05 MayDaniel left
inket perl5/6 18:05
18:05 jferrero left
PerlJam inket: of course I'm serious 18:06
inket ok i'd like to see an example if you dont mind
diakopter inket: just because there is no compilation result left on disk, doesn't mean no internal transformation/compilation took place.
PerlJam inket: Are *you* serious? You want me to show you a C interpreter? 18:07
flussence llvm.
diakopter inket: most JIT compilers emit object code to memory only
PerlJam as if such a thing could never exist
diakopter inket: you're being too demanding. if you want to know whether something exists, research it yourself. 18:08
inket llvm is a C interpreter?
im not demanding
PerlJam said he could
i thought he'd have an example. thats all
tadzik tcc -run 18:09
flussence right, and you're excessively pressing that point along with several others. That's called being demanding.
inket whats the example?
llvm?
flussence and an hour later, you still haven't answered the most important question
who cares?
tadzik tcc -run is an example 18:10
moritz_ (llvm is exactly what the name says - a low-level virtual machine. It' not a C compiler or interpreter)
oh hai
jnthn o/ moritz_ 18:11
moritz_ tilbake fra norsk course
jnthn ...that looks like rong Swedish. :P
flussence (if I'd said "llc" nobody would know what I meant)
18:11 MayDaniel joined
tadzik oh, jnthn 18:11
flussence oh that reminds me
diakopter (but it's a "VM" in the sense most people think, since it doesn't have a garbage collector). but the "llvm project" does include the prod-quality "clang" c compiler
tadzik jnthn: you think it'd be possible to generate Perl 6 function prototypes for Zavolaj by examining the .h files? 18:12
diakopter it's *not* a "VM", I meant
flussence jnthn: the readme for zavolaj mentions something about parrot and hard-coded tables, does that mean I can't just use it with any random lib?
moritz_ diakopter: that's the "ll" part :-)
jnthn tadzik: Sounds like an interesting tool. 18:13
patrickas o/ moritz_ jnthn
tadzik inket: C script supported : just add '#!/usr/local/bin/tcc -run' at the first line of your C source, and execute it directly from the command line. # bellard.org/tcc/
PerlJam tadzik, jnthn: I thought someone in parrot-land was working on such a tool even.
patrickas It's been a while! :-)
moritz_ \o patrickas
jnthn tadzik: I think somebody wrote a Perl 6 grammar for C source files already.
tadzik jnthn: I though like a NativeCall submodule, like `importlib "libgtk2.0"`
jnthn tadzik: So you needn't even re-invent that wheel.
tadzik: Could be interesting. 18:14
tadzik I'm quite short of internet access these days
jnthn flussence: I think it depends on how your Parrot is built. Though it may also depend on if the branch that removes the limitation got merged yet too...
flussence oh, that sounds promising :) 18:15
tadzik but but, how to export subroutines in runtime? I mean, creating them first, some sort of eval-ution?
jnthn Just checking on #parrot
18:16 MayDaniel left
inket tadzik: yeah tried it 18:16
jnthn 20:27 <@dukeleto> jnthn: it is one failing test away from being mergable
flussence yay
jnthn flussence: ^^ That's status of the branch in question. :-)
tadzik: Ah, I thought you were thinking more of a tool that generates the .pm file from a .h file at first. Hm 18:17
tadzik jnthn: well, that's the easy way, but the better way would be better I think
inket anyhow thanks for the discussion
i didnt mean to cause a flame war or anything 18:18
jnthn tadzik: I think you may - if you can do it early enough - be able to put stuff into the Module::Name::EXPORT::DEFAULT namespace...
I'm not quite sure how to tie it all together off ahnd without thinking about it a bit more. 18:19
18:19 standz left 18:20 standz joined 18:21 wormwood joined 18:22 am0c left 18:23 Schwern joined 18:26 mberends joined
dalek ast: 1b6274b | patrickas++ | S03-sequence/basic.t:
added test for RT #78324
18:26
moritz_ patrickas: ah, that's the bug I hoped to get you working on :-) 18:28
patrickas moritz_: I got some free time today so I fixed it :-) 18:29
pmichaud rakudo: (32,16,8 ...^ Rat).perl.say
p6eval rakudo d35769: OUTPUT«(timeout)» 18:30
pmichaud huh
moritz_ patrickas: then push -- you have commit access
pmichaud I'm surprised rakudo doesn't have that right already
patrickas pmichaud: it was a stupid thing I had done in the new code , was really trivial to fix
pmichaud rakudo: (32,16,8 ...^ 0).perl.say
p6eval rakudo d35769: OUTPUT«(32, 16, 8, 4/1, 2/1, 1/1, 1/2, 1/4, 1/8, 1/16, 1/32, 1/64, 1/128, 1/256, 1/512, 1/1024, 1/2048, 1/4096, 1/8192, 1/16384, 1/32768, 1/65536, 1/131072, 1/262144, 1/524288, 1/1048576, 1/2097152, 1/4194304, 1/8388608, 1/16777216, 1/33554432, 1/67108864, 1/134217728, 1/268435456,
..1/5368…
pmichaud rakudo: (32,16,8 ...^ 1).perl.say 18:31
p6eval rakudo d35769: OUTPUT«(32, 16, 8, 4/1, 2/1)␤»
flussence wha
moritz_ note that it produces rats immediately
patrickas when the limit is not .defined the sequence would be infite
pmichaud ....?
flussence shouldn't it omit the /1 ?
pmichaud patrickas: that statement doesn't make sense to me
patrickas in the code I wrote i had a line that says return infite-series unless $limit.defined :-o 18:32
pmichaud oh, that would be wrong 18:33
so, I understand now.
patrickas which I changed to return infite-series if $rhs ~~ Whatever
18:34 timbunce left 18:35 aloha left
patrickas the whole line is not really necessary but it seemed like a good idea to avoid the check if the sequence is finished when we know it is infinite. 18:36
pmichaud it'll also be useful when we can start to tag infinite lists
afk for a while
patrickas ok tests done ... I'll push to the rakudo repo directly for the first time ever, if all hell breaks loose you know who to blame 18:38
actually, how do I fake push to master, just to make sure only the right patch will be pushed before I do it for real ? 18:39
PerlJam patrickas: why not just: git diff origin/master master 18:40
18:40 timbunce joined
moritz_ patrickas: there's no fake push... one way is to write down the patch SHA1, then git reset --hard origin/master; git cherry-pick $sha1; git push 18:40
18:41 Guest84593 left
patrickas Thanks moritz_ and PerlJam ... indeed there were a bagillion different things between the branch I am on and origin/master 18:41
PerlJam works on the rakudo release 18:42
patrickas PerlJam: maybe it is wise for me to wait till after the release to push 18:43
PerlJam patrickas: what are you pushing?
patrickas a minor patch for sequence but I am a total git noob and this is the first time I am pushing without the training wheel (ie moritz_ applying my patches) 18:44
flussence patrickas: check out a clean branch from master, then git cherry-pick that one patch 18:45
18:45 aloha joined
patrickas flussence that's what I am doing (in theory) but that would be my first cherry-pick ever and I am bound to screw up somehow ... :-) 18:46
PerlJam patrickas: just do it. There's enough git-fu around that we can clean up if you make a mess.
18:48 Guest82379 joined
PerlJam you know ... the most onerous thing about rakudo releases for me is that I have to wait for the spectests :) 18:49
(I'm not patient)
18:50 saaki left 18:51 mavrc joined 18:52 inket left
patrickas Ok I pushed, thanks for being patient with me :-) 18:53
dalek kudo: 7a2990d | patrickas++ | src/core/operators.pm:
Patch for sequence not terminating when the rhs is not .defined
moritz_ patrickas++ # looks good to me 18:54
patrickas First thing I did is check the history in github to make sure only one line was changed :-) 18:55
btw is it better to push to rakudo then add the tests when I have a patch ready to avoid dalek spam? or should I always add fudged tests, push patch, unfudge the test ? 18:56
18:57 saaki joined
moritz_ patrickas: whatever you like best - for us dalek doesn't spam, but inform us :-) 18:58
PerlJam patrickas: "always" is a bit too restrictive. If you have the tests first, go ahead and add them (no need to wait)
dalek ast: ef896c7 | pmichaud++ | S03-sequence/basic.t:
Update test message in basic.t to be more accurate.
18:58 bluescreen left
PerlJam patrickas: but if the tests aren't quite there but the patch is, go ahead and add it too :) 18:58
patrickas: share early, share often. 18:59
patrickas :-)
moritz_ aye; if you get sidetracked and don't get around to fixing, at least everybody has the tests 19:00
19:05 justatheory left, Entonian left
dalek ast: ff0784a | patrickas++ | S03-sequence/basic.t:
unfudge test
19:08
ast: c1b2547 | patrickas++ | S03-sequence/basic.t:
unfudge test
patrickas actually patrickas-- for the first one :-) 19:09
PerlJam Draft release announcement: gist.github.com/907a574db2b58509c51b 19:10
Anyone see anything missing or otherwise wonky? 19:11
patrickas: before pushing, I probably would have combined those two commits.
patrickas PerlJam how can I do that? 19:12
19:13 bluescreen joined
PerlJam patrickas: git rebase -i <SHA1> # then do what it says in the comments. 19:13
patrickas: the <SHA1> should be one prior to the ones you want to combine
moritz_ PerlJam: looks fine to me.. though I don't know off-hand what the "numerous documentation improvements" are 19:14
PerlJam patrickas: and be sure to not rebase any commits that have already been pushed as that changes history
moritz_: looking through the log inse the last release I see lost of "fix typo" and such 19:15
s/lost/lots/
s/inse/since/ # dunno /what/ happened there!
flussence
.oO( fixing typos )
19:16
moritz_ PerlJam: ok
patrickas PerlJam ... thanks, I'll try that next time. Now that you mention it I am sure moritz_ arealy tried to squeeze that through my thick skull once but oviously failed :-) 19:17
PerlJam although now that I look at it again, it doesn't seem like "lots" this time.
moritz_ PerlJam: maybe mention improved error messages instead
rakudo: (1, 2) >>+<< (1, 2, 3)
p6eval rakudo d35769: OUTPUT«Sorry, sides are of uneven length and not dwimmy.␤ in 'hyper' at line 184:CORE.setting␤ in main program body at line 1␤»
PerlJam and warnings
I'll do that. 19:18
moritz_ huh, that's still the old one
takadonet rakudo: (1, 2,3) >>+=<< (1, 2, 3)
moritz_ s/error/diagnostic/ :-)
p6eval rakudo d35769: OUTPUT«Cannot modify readonly value␤ in '&infix:<=>' at line 1␤ in <anon> at line 211:CORE.setting␤ in 'hyper' at line 1␤ in main program body at line 1␤»
takadonet rakudo: 2 [+=] (1,2,3)
p6eval rakudo d35769: OUTPUT«Cannot modify readonly value␤ in '&infix:<=>' at line 1␤ in main program body at line 22:/tmp/Hn7Wf217sX␤»
takadonet rakudo: [+] (1,2,3)
p6eval rakudo d35769: ( no output )
takadonet rakudo: say [+] (1,2,3) 19:19
p6eval rakudo d35769: OUTPUT«6␤»
dalek kudo: 33bdcee | perlpilot++ | docs/ (2 files):
release preparation
19:26
19:27 orafu left 19:28 orafu joined 19:36 _buno_ joined
moritz_ huh. My ssh agent just died. 19:40
19:40 _buno_ left
sorear good * #perl6 19:41
moritz_ good * sorear
can I configure git somehow to use separate push and fetch URLs? 19:42
19:42 DJAB joined
flussence yes 19:42
moritz_ how?
DJAB whats up 19:43
tadzik #34 :)
flussence moritz_: one sec, I know it's possible, just can't find where I've done it...
moritz_ ah, separate pushurl in .git/config 19:44
git remote set-url --push origin [email@hidden.address]
flussence yeah, figures it'd be something obvious yet I don't remember what :) 19:45
19:45 DJAB left 19:47 xabbu42 left
moritz_ very handy for t/spec/ 19:49
19:51 envi left
dukeleto moritz++ # i didn't know about that 19:51
patrickas moritz_ how do you use it with t/spec/ ?
moritz_ [remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = git://github.com/perl6/roast.git pushurl = [email@hidden.address] 19:53
patrickas I mean why is it very handy for t/spec ?
19:53 wamba joined
flussence fetch over git, push over ssh maybe 19:53
moritz_ patrickas: because 'make spectest' automatically pulls. If the ssh key is not available, 'make spectest' hangs
flussence the git one will be slightly faster due to not encrypting stuff, too 19:54
patrickas moritz_ oh ok
sorear moritz_: I am starting to wonder if and when I should do a release announcment to p6c
moritz_ and it turns out ssh-agent sometimes dies if it runs out of disc space
sorear: as soon as you do a release
tadzik niecza release? 19:57
19:57 justatheory joined, wamba left
moritz_ sorear: I'm sure it would be a good thing, raising awareness, giving people something to link to apart from just the repo 19:58
sorear I'm also wondering if an when there should be a release. :)
PerlJam sorear: Do you want other people playing with niecza? 20:01
patrickas evening & 20:05
20:05 patrickas left
PerlJam continues to wait for the spec tests to run. 20:06
s/run/finish running/
20:07 Ross joined
moritz_ rakudo: say { a => 1, b => 2 }.pick.perl 20:08
p6eval rakudo d35769: OUTPUT«"b"␤»
20:11 plainhao left 20:12 ggoebel left 20:15 Entonian joined
PerlJam finally! 20:17
seems it failed only one test #8 in t/spec/S05-transliteration/trans.rakudo
20:24 MayDaniel joined, MayDaniel left, MayDaniel joined 20:26 zostay left, leprevost joined 20:27 zostay joined 20:29 justatheory left 20:31 justatheory joined 20:32 wormwood_ joined 20:34 wormwood left 20:35 ggoebel joined 20:36 zostay left 20:37 zostay joined 20:39 Guest82379 left 20:42 bluescreen left 20:43 sftp left 20:44 breinbaa1 left, cggoebel joined
moritz_ yep; that must be fudged out 20:45
20:45 ggoebel left, breinbaas joined
sorear PerlJam: Do I want other people playing with niecza...? Tough one. 20:47
20:47 baux left
dalek ecza/master: 876edf3 | sorear++ | src/ (2 files):
$/ and $! are contextuals
20:48
ecza/master: 94651cd | sorear++ | / (2 files):
Fix try to put error in $!, not inline
ecza/master: 4b358b4 | sorear++ | / (5 files):
Implement temp $*foo
ecza/master: 7a7e3f2 | sorear++ | / (2 files):
Fix <foo> <foo> capturing
20:48 zby_home left 20:49 orafu left 20:50 orafu joined 20:51 jaldhar left 20:52 pmurias joined
pmurias hi 20:52
sorear hello pmurias
sjohnson yo dudes
20:56 timbunce_ joined
sorear ugh. FindBin has failed me. 20:58
20:58 timbunce left, timbunce_ is now known as timbunce, araujo left 20:59 bluescreen joined
moritz_ are symlinks involved? 20:59
sjohnson FailBin
21:00 jaldhar joined 21:01 cggoebel left, justatheory left, kjeldahl left, justatheory joined
moritz_ rakudo: my %a; %a<b><c><d> = 5; say %a.perl 21:03
p6eval rakudo d35769: OUTPUT«{"b" => {"c" => {"d" => 5}}}␤»
moritz_ rakudo: my %a; %a<b><c><d> += 5; say %a.perl 21:04
p6eval rakudo d35769: OUTPUT«{"b" => {"c" => {"d" => 5}}}␤»
sorear moritz_: could you try building std again? it no longer looks for an installed STD.pmc while rebuilding 21:05
moritz_ tries 21:06
sorear my goal is to be able to demonstrate STD.parse("2 + 2", :setting<NULL>) at next #phasers
moritz_ looks much better (STD build) 21:07
21:08 leprevost left
moritz_ std: say "success!" 21:08
p6eval std : ( no output )
moritz_ uhm, I need "make snap"
std: say "success!" 21:09
p6eval std a194beb: OUTPUT«sh: /opt/perl-5.12.1/bin/perl: not found␤»
21:10 p6eval left, p6eval joined, ChanServ sets mode: +v p6eval
moritz_ std: 1 21:10
dalek albot: 568324e | moritz++ | evalbot.pl:
[std] use system perl
p6eval std a194beb: OUTPUT«ok 00:01 117m␤» 21:11
21:12 timbunce left 21:13 whiteknight joined 21:15 Ross left 21:17 timbunce joined, bluescreen left, pyrimidine left 21:33 masak joined
masak ahoy, #perl6! 21:33
jnthn yayitsmasak!
masak mam lagi... 21:34
sorear masak!
sjohnson hi masak + jnthn + sorear 21:35
21:36 orafu left 21:37 masonkramer left
pmurias sorear: how's niecza doing? 21:38
21:38 _twitch joined
sorear Very well. 21:39
pmurias that's good
sorear I think I'll be able to demonstrate STD.parse("2 + 2", :setting<NULL>) at #phasers next week
masak ++sorear
pmurias nice
21:40 MayDaniel left, _kaare left 21:41 mavrc left 21:47 spinclad joined 21:53 Schwern left 21:55 Schwern joined 21:57 araujo joined 21:58 pmurias left 21:59 xabbu42 joined
dalek odel: e47a5fb | jnthn++ | dotnet/compiler/DNST.pm:
[dotnet] Add DNST::TryCatch and DNST::Throw nodes.
22:02
odel: c6bbf47 | jnthn++ | dotnet/compiler/DNST2CSharp.pm:
[dotnet] Compile DNST::Throw and DNST::TryCatch.
odel: 670415d | jnthn++ | dotnet/ (3 files):
[dotnet] Start to stub in the bits we'll need to implement .leave.
odel: 47c868a | jnthn++ | dotnet/compiler/ (2 files):
[dotnet] Min codegen e kass - make things a bit less noisy.
22:03 masak left 22:04 xabbu42 left
dalek odel: c788c81 | jnthn++ | dotnet/runtime/Runtime/Ops.cs:
[dotnet] Add a leave_block op. This is what we'll do when needing to do some stack unwinding.
22:07
odel: 3c156f0 | jnthn++ | common/NQP/NQPSetting.pm:
[common] Add a NQPCode with a leave method.
odel: bd57e32 | jnthn++ | dotnet/runtime/Init.cs:
[dotnet] Use NQPCode instead of the hack LLCode.
odel: 4281db6 | jnthn++ | dotnet/compiler/PAST2DNSTCompiler.pm:
[dotnet] Fix a silly thinko and...we have &building.leave($elvis) working. \o/
22:08 masak joined 22:09 _twitch left 22:10 _twitch joined 22:11 masonkramer joined 22:12 timbunce left
PerlJam Is there some more direct correspondence between the spec tests repo and the rakudo repo? 22:15
sorear no
dalek kudo: acce294 | perlpilot++ | VERSION:
bump VERSION
22:17
sorear PerlJam: there is a tension in my mind between "too many tasks, too little time" and "this is MY sandbox!" 22:18
22:26 nadim_ left
dalek odel: 9445e1d | jnthn++ | dotnet/runtime/Runtime/Exceptions/LeaveStackUnwinderException.cs:
[dotnet] I forgot to finish the
22:29
22:35 Schwern left
PerlJam sorear: there's still a chance for niecza to become the defacto Perl 6 compiler ;) 22:36
dalek ast: f8d9c6f | perlpilot++ | S05-transliteration/trans.t:
fudge trans test
22:39
22:39 _twitch left 22:43 zostay left 22:44 masak` joined 22:45 masak left 22:46 masak` is now known as masak 22:47 zostay joined, _twitch joined 22:50 icwiener left 22:51 justatheory left, justatheory joined
jnthn sleep & 22:56
masak not a half-bad idea, actually. 22:57
colomon sleep sounds heavenly, but I've got to get my boy to bed first.
and I'll be lucky if he's ready to settle down an hour from now. 22:58
moritz_ finds that JSON is broken :( 23:01
23:01 aloha left
masak :/ 23:02
moritz_ say from-json('{ "a": 1 }').perl; 23:03
"a" => 1
23:03 cotto joined 23:06 alester left
moritz_ rakudo: class A { method TOP($/) { make { a => 1 } } }; grammar B { token TOP { ^. } }; say B.parse('x', :actions(A.new)).ast.perl 23:07
p6eval rakudo d35769: OUTPUT«{"a" => 1}␤»
masak thinks that's right
moritz_ right 23:08
it's just that the code in JSON::Tiny::Actions does basically the same, but loses the curlies somewhere along the way
masak <inket> huf_: compilation is the process of taking source code (C, what ever) and turning it into binary instructions designed to talk to the Operating system and interact with the user
I'm almost glad I didn't stick around for the conclusion of that discussion. 23:09
flussence I'm glad I wasn't paying attention :D 23:10
masak it's funny how some people enter the channel, start with a simple question, and half an hour later, they've only proven themselves to be wrong and untechable. luckily, they're few and far between.
s/tech/teach/
23:11 aloha joined
moritz_ wonders if the disappearing hash wrapper is related to the .item fix in rakudo 23:12
masak looking forward to the bug report with the golfed code. 23:16
having backlogged inket's confused ramblings, I do believe that he meant no actual harm. he just hasn't had any good teachers so far. that happens.
I seriously hope I'll never be as hard-headed as he was in the presence of ten or so people trying to educate me. 23:17
PerlJam boy scout meeting with my son and then release! 23:18
PerlJam bbl
moritz_ nope, that wasn't it
23:18 s1n joined
masak PerlJam: good luck with the release! 23:19
masak heads bedwards, with the faint hope of sleeping
'night.
23:19 masak left 23:21 stkowski left
moritz_ rakudo: class A { method TOP($/) { make ( a => 1 ).hash; say $/.perl } }; grammar B { token TOP { ^. } }; say B.parse('x', :actions(A.new)).ast.perl 23:31
p6eval rakudo d35769: OUTPUT«Match.new(␤ ast => "a" => 1,␤ from => 0,␤ orig => "x",␤ to => 1,␤)␤"a" => 1␤»
moritz_ rakudo: say (a => 1).hash.perl
p6eval rakudo d35769: OUTPUT«{"a" => 1}␤»
moritz_ rakudo: class A { method TOP($/) { make ( a => 1 ).hash } }; grammar B { token TOP { ^. } }; say B.parse('x', :actions(A.new)).ast.perl
p6eval rakudo d35769: OUTPUT«"a" => 1␤»
moritz_ rakudo: class A { method TOP($/) { make ( a => 1, b => 2 ).hash } }; grammar B { token TOP { ^. } }; say B.parse('x', :actions(A.new)).ast.perl 23:32
p6eval rakudo d35769: OUTPUT«("a" => 1, "b" => 2)␤»
moritz_ rakudo: class A { method TOP($/) { make ( a => 1, b => 2 ).hash.item } }; grammar B { token TOP { ^. } }; say B.parse('x', :actions(A.new)).ast.perl
p6eval rakudo d35769: OUTPUT«{"a" => 1, "b" => 2}␤»
23:33 stkowski joined 23:37 ggoebel joined
moritz_ rakudo: say ()>>.uc.flat.perl 23:39
p6eval rakudo d35769: OUTPUT«Incompatible versions of `perl6_ops' oplib. Found 2.8.0 but loaded 2.9.1␤»
23:40 ashleydev joined
moritz_ hates it 23:40
23:42 cdarroch left 23:44 orafu joined
moritz_ rakudo: class A { method TOP($/) { make () } }; grammar B { token TOP { ^. } }; say B.parse('x', :actions(A.new)).ast.perl 23:49
p6eval rakudo : OUTPUT«Any␤»
moritz_ that's wrong too 23:50
23:50 Entonian left
moritz_ rakudo: sub f($x) {·say $x.perl }; f(()) 23:51
p6eval rakudo : OUTPUT«===SORRY!===␤Unable to parse blockoid, couldn't find final '}' at line 22␤»
moritz_ rakudo: sub f($x) { say $x.perl }; f(()) 23:52
p6eval rakudo : OUTPUT«()␤»
23:53 Entonian joined 23:55 zostay left 23:57 zostay joined