»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo: / pugs: / std: | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by Juerd on 28 August 2009.
00:00 ewilhelm_ joined
diakopter @karma TimToady 00:02
lambdabot TimToady has a karma of 50
diakopter ++TimToady
@karma TimToady
lambdabot TimToady has a karma of 50
diakopter hm
TimToady ++diakopter for finding a way to make people feel good without giving them karma :) 00:03
diakopter ++diakopter--
let-down 00:04
scottp I found lots of refernces to other people on the net with the same issue, but no solution. 00:05
GCC VErsion = gcc version 4.2.1 (Apple Inc. build 5646)
Yes it could be a 64 bit issue
TimToady @karma ++diakopter
lambdabot ++diakopter has a karma of -1
00:06 rindolf left
scottp Issues seems to be around: src/string/api.c - LONG_MAX' undeclared 00:06
TimToady for a bot written by geniuses, lambdabot can be amazingly stupid at times
00:09 zerhash left 00:12 ewilhelm left 00:14 Avada joined
TimToady moritz_: lesson 15, Twigils has a missing twigil on $a: my $block = { say "$^c $a $^b" }; 00:15
00:25 scottp left 00:39 nErVe joined 00:50 payload joined 00:59 nErVe left, jonathanturner joined 01:02 Confield left 01:03 Confield joined
pugs_svn r28408 | lwall++ | [stub.t] is instead should be supersede 01:07
r28409 | lwall++ | [STD] recognize sub stubs and don't complain about redefinition 01:13
TimToady std: sub foo {...}; sub foo {42} 01:18
p6eval std 28379: OUTPUT«===SORRY!===␤Illegal redeclaration of lexical routine foo (from line 1) at /tmp/EcTukOXOne line 1:␤------> sub foo {...}; sub foo⏏ {42}␤ expecting new name to be defined␤FAILED 00:01 95m␤»
TimToady ENOTYET
decommuting while I wait & 01:28
01:30 jonathanturner left 01:33 crythias joined 01:38 meppl left 01:39 stephenlb left 01:45 Whiteknight left 01:51 FCO left 01:55 pmurias left 01:57 rhr_ joined 02:06 Matt-W_ left, tak11 left, nihiliad1 left, mberends left, Patterner left, pmichaud left, mj41_ left, jiing left, rjh left, kolibrie left, JarJarBinks left, frodwith left, Helios- left, PerlJam left, Maddingue left, Khisanth left, nsh left, c9s left, crythias left, payload left, Avada left, ewilhelm_ left, Student left, abra left, elmex left, alester left, xinming_ left, PacoLinux left, mikehh left, garron left, Woodi left, blaze-x left, Infinoid left, meteorjay left, christine left, yves left, buu left, solarion left, clkao left, integral left, dmpk2k left, lisppaste3 left, synth left, silug left, frew_ left, jrtayloriv left, pugs_svn left, avuserow left, ezra left, phenny left, sbp left, devin left, Caelum left, drbean left 02:07 pmichaud joined, crythias joined, payload joined, Avada joined, ewilhelm_ joined, Matt-W_ joined, tak11 joined, Student joined, nihiliad1 joined, mberends joined, abra joined, Patterner joined, elmex joined, alester joined, xinming_ joined, PacoLinux joined, frew_ joined, mikehh joined, jrtayloriv joined, mj41_ joined, jiing joined, silug joined, drbean joined, avuserow joined, Caelum joined, devin joined, ezra joined, pugs_svn joined, phenny joined, sbp joined, rjh joined, Helios- joined, kolibrie joined, Khisanth joined, nsh joined, frodwith joined, c9s joined, Maddingue joined, JarJarBinks joined, PerlJam joined, synth joined, lisppaste3 joined, meteorjay joined, clkao joined, Woodi joined, integral joined, yves joined, blaze-x joined, garron joined, buu joined, irc.freenode.net sets mode: +ovo pmichaud pugs_svn PerlJam, christine joined, solarion joined, Infinoid joined, dmpk2k joined 02:08 rhr left 02:12 St[u]dent joined 02:13 Avada left 02:16 reqamst left 02:17 jaldhar joined
sjohnson how is everyone today? 02:19
02:21 Student left 02:52 s1n_mini joined 02:53 rhr joined 03:04 PZt left
diakopter muy bueno 03:05
std: sub foo {...}; sub foo {42}
p6eval std 28379: OUTPUT«===SORRY!===␤Illegal redeclaration of lexical routine foo (from line 1) at /tmp/bpW54yMNnQ line 1:␤------> sub foo {...}; sub foo⏏ {42}␤ expecting new name to be defined␤FAILED 00:01 95m␤»
03:07 rhr_ left
sjohnson howdy diakopter 03:08
diakopter sjohnson: hiya 03:09
sjohnson: do you have a shovel for the pugscode repo
I mean commit bit
sjohnson i have commit access if that's what you mean 03:10
diakopter yep
sjohnson how can i help you, kind sir
diakopter extend Joose with more Perl6ishness? 03:11
sjohnson what is Joose? 03:12
diakopter code.google.com/p/joose-js/
Moose -> JS
sjohnson i was just about to explain how i was coding in JS for 8 hours today
and it was a nightmare
diakopter oh :(
most languages have non-fun software that can be written in them 03:13
sjohnson i hate javascript, but is this intended to make the life of a JS programmer happier?
diakopter hugme: hug JavaScript
hugme hugs JavaScript
sjohnson perl is the only language i am happy with, and i am struggling to get someone to backport trim in p5 atm
diakopter sjohnson: what kind of JS software do you wrte 03:15
write
sjohnson a bit ot, but if i could get trim backported into p5, i think p5 would become the perfect language
just stuff to make ajax-like response on my boss's website
diakopter o
Tene sjohnson: it's a one-line subroutine you can write yourself, just like say 03:17
03:17 tak11 left
sjohnson tene, i realize that. problem is, it's tedious to have to keep writing it 03:18
for something so basic
as annoying as if i had to write a sub addInteger (int1, int2) function 03:19
to add two numbers together
having to redeclare something so basic becomes tedious very quickly, especially if it is used very commonly on about 30+ stand alone perl unix scripts
03:19 NorwayGeek joined
sjohnson of course, you could use a use module; to bring it in that you write yourself once, but then it is defeated as you migrate systems 03:20
03:20 NorwayGeek left
sjohnson which also busts the CPAN String::Strip; approach 03:20
03:20 NorwayGeek joined
sjohnson Matt-W_: if you are here, please chime in 03:21
Tene they couldn't even get *say* in without requiring a version declaration.
sjohnson it's a step in the right direction though, and i could settle for that
especially if hypothetically it is included now, and then two years, every new system within that time has it already 03:22
and i dont have keep using a macro in VI to paste my trim() sub
diakopter sjohnson: zounds2me like you might could use an editor with some nice paste helpers... macros of a sort.
there you go.
what you said.
except s/two/twenty/ 03:23
sjohnson why even include it in Perl6
if we can just take this purist attitude of having to write it yourself
everytime you want to trim whitespace, which is quite common for a lot of applications
diakopter most systems have *some* type of shared/reuse/modular capability 03:24
sjohnson by this logic of having to only "write one function", should we tell the p6 devels they made a mistake including it, and have it removed?
03:24 NorwayGeke left
diakopter sjohnson: no, Tene's point was that (ideally) each user might need to write it only once, and then reuse/include it from somewhere shared/reusable/modular. 03:25
sjohnson it is easy to do that on a system where you never migrate, but hoping shell to shell, it becomes very tedious
getting all sorts if @INC errors 03:26
for the simplest tasks
i wonder what TimToady thinks
Tene sjohnson: I wasn't saying that it was ideal, just likely to be more successful than getting it into a standard Perl 5. 03:27
sjohnson: I like having those things in Perl 6, and wish they could be more available in Perl 5 too.
sjohnson oh i c, alright im sorry if i sounded fussy
Tene nah, s'fine, I get it 03:28
sjohnson i'm mostly talking from my @INC headaches that i have had numerous times as i migrate ubuntu systems about once every two months
diakopter should've appended the parenthetical with "[Ed.]
"
sjohnson python users also point at me in ridicule when they say "every other language has this already" 03:29
perhaps i just need to talk to someone high up on the perl 5 food-chain
Tene sjohnson: maybe I've been a bit dissilusioned by chromatic, as most of my perception of the perl 5 development process has come from him, but I'd be shocked if you were successful in getting it into, say, 5.12 or something. 03:31
pugs_svn r28410 | diakopter++ | [vijs] literal integers with radices 2-36, and beginnings of some other stuff
diakopter vijs: say :2<101010110000101011101011111>
p6eval vijs 28379: OUTPUT«89675615␤»
diakopter vijs: say :3<1012021202121202020202120212021212120212021212121212>
p6eval vijs 28379: OUTPUT«2575462627556708885900330␤»
diakopter ++TimToady 03:32
03:32 NorwayGeek is now known as NorwayGeek|Away
sjohnson Tene: i was told that too, but i think it's worth trying, based on how much peace of mind i would have if this was in every new version of p5, even if it is so late in the game 03:32
my grandchildren would be proud
... well, i should probably have kids first 03:33
TimToady std: sub foo {...}; sub foo {42}
p6eval std 28379: OUTPUT«===SORRY!===␤Illegal redeclaration of lexical routine foo (from line 1) at /tmp/fAgl3qaqk8 line 1:␤------> sub foo {...}; sub foo⏏ {42}␤ expecting new name to be defined␤FAILED 00:01 95m␤»
diakopter evalbot control restart
03:33 p6eval left, p6eval joined
diakopter o 03:34
std rebuild commented ou
t
diakopter runs it manually
p6eval@debian:~$ sh /home/p6eval/build-std.sh >> ~/std.log 2>&1 03:35
vijs: say :36<MqfzUwn8QWn6gEJUleE38HT1mN1xAjcTaTak7lYCTcfSHJwhBYZUJL4PLBcv0> 03:36
p6eval vijs 28379: OUTPUT«Can't locate object method "parsefile" via package "STD" (perhaps you forgot to load "STD"?) at vivjs line 32.␤»
diakopter oo 03:37
diakopter hides from moritz_
vijs: say :36<MqfzUwn8QWn6gEJUleE38HT1mN1xAjcTaTak7lYCTcfSHJwhBYZUJL4PLBcv0> 03:38
p6eval vijs 28379: OUTPUT«Can't locate object method "term__S_424identifier" via package "STD" at ../STD.pm line 1122.␤»
diakopter erm
03:39 nihiliad1 left
sjohnson can evalbot be called evilbot on halloween? 03:39
diakopter maybe it was commented out For A Reason
TimToady: oh 03:41
it's a bug, I think
vijs: say :9<13458678546371608345764830716081374085678430711634857846017043856710> 03:42
p6eval vijs 28410: OUTPUT«Can't locate object method "term__S_424identifier" via package "STD" at ../STD.pm line 1122.␤»
diakopter or not.
fixing 03:45
lisppaste3 sjohnon pasted "test!" at paste.lisp.org/display/87756 03:48
diakopter std: sub foo {...}; sub foo {42}
p6eval std 28410: OUTPUT«ok 00:01 95m␤»
diakopter TimToady: well
03:50 s1n_mini left 03:52 p6eval left, p6eval joined
diakopter vijs: say :9<13458678546371608345764830716081374085678430711634857846017043856710> 03:53
p6eval vijs 28410: OUTPUT«11954939178966231668384533330838882036560780896698335392896645574␤»
diakopter vijs: say :36<MqfzUwn8QWn6gEJUleE38HT1mN1xAjcTaTak7lYCTcfSHJwhBYZUJL4PLBcv0>
p6eval vijs 28410: OUTPUT«54304609169441051460560502897758299028480854366838378212740174448624496028652862901844878216924␤»
diakopter whee 03:54
phenny: tell moritz_ I made some changes to misc/evalbot/evalbot.pl and src/perl6/Makefile in /home/p6eval/pugs; please take a look and commit if you approve. The changes I made were to make vijs use the same STD "build" as the STD syntax checker (since it was divested from viv, vivjs on p6eval was using its own hybrid of sorts) 03:55
phenny diakopter: I'll pass that on when moritz_ is around.
diakopter TimToady: interestingly, vijs already had (and I didn't realize it) the correct pass-by-ref semantics we were discussing earlier: 04:01
vijs: my $a = 3; say $a, $a++, $a
p6eval vijs 28410: OUTPUT«434␤»
diakopter vijs: say -:16<DEADBEEF> 04:03
p6eval vijs 28410: OUTPUT«-3735928559␤»
04:05 abra left
pugs_svn r28411 | diakopter++ | [vijs] fix overriding lexical names so they're declared in the proper context 04:16
diakopter vijs: my $b=3; my $a=sub{ my $a=$b++ + 2; say $a }; $a(); $a() 04:18
p6eval vijs 28410: OUTPUT«5␤6␤»
04:20 molaf joined
sjohnson (´ー` ) 04:27
04:28 justatheory left
diakopter vijs: say :37<0> 04:32
p6eval vijs 28410: OUTPUT«execute(): execute error: radix out of range (2..36) at vivjs line 66.␤»
04:42 zerhash joined, petdance joined 04:59 molaf left 05:15 petdance left 05:37 synth^2 joined 05:56 jaldhar left 06:04 wayland76 joined 06:06 jaldhar joined 06:26 synth^2 left 06:30 zloyrusskiy joined
pugs_svn r28412 | jimmy++ | [zh-cn/syn/S02-bits.pod]updated SVN to r28409 06:37
06:43 St[u]dent left 06:44 Student joined 06:56 Student left 06:58 zerhash left 06:59 crythias left 07:01 TiMBuS joined 07:06 NorwayGeek|Away left, NorwayGeek|Away joined 07:18 zloyrusskiy left 07:20 jauaor left
pugs_svn r28413 | jimmy++ | [zh-cn/syn/S02-bits.pod]added random translation, still needs more work. 07:21
07:21 araujo left, Zloyrusskiy joined 07:33 Zloyrusskiy left 07:37 drbean left 07:38 drbean joined
moritz_ diakopter: feel free to commit without asking for permission. Forgiveness > Permission 07:52
phenny moritz_: 03:55Z <diakopter> tell moritz_ I made some changes to misc/evalbot/evalbot.pl and src/perl6/Makefile in /home/p6eval/pugs; please take a look and commit if you approve. The changes I made were to make vijs use the same STD "build" as the STD syntax checker (since it was divested from viv, vivjs on p6eval was using its own hybrid of sorts)
mberends vivjs latest commit worksforme on the eeepc, diakopter++ 07:54
moritz_ TimToady: (5 to 6 blog) missing twigil added, thanks 08:15
pugs_svn r28414 | moritz++ | [evalbot] rebuild parrot only when rakudo needs it - this time for real. 08:18
moritz_ bah 08:19
if foo is a directory, ln -s foo bar and ln -s foo/ bar do different things. 08:20
rakudo: say 'hi' 08:34
p6eval rakudo 729722: OUTPUT«hi␤»
moritz_ ok, the update worked.
08:35 PZt joined 08:52 NorwayGeek|Away is now known as NorwayGeek 08:54 reqamst joined 09:14 carlin is now known as Default001, Default001 is now known as carlin 09:19 am0c joined 09:20 icwiener joined
pugs_svn r28415 | jimmy++ | [zh-cn/syn/S02-bits.pod]added more random translation. 09:24
09:31 synth^2 joined 09:46 zamolxes left 09:49 synth left 09:53 dakkar joined 09:56 icwiener left 09:57 icwiener joined 10:24 JimmyZ joined 10:30 payload left, abra joined
pugs_svn r28416 | jimmy++ | [zh-cn/syn/S02-bits.pod]added more translation that makes more localization. It needs more time. 10:43
10:44 JimmyZ left 10:47 pmurias joined 10:53 am0c left 10:54 NorwayGeek is now known as NorwayGeek|Away 11:22 meppl joined 11:33 Whiteknight joined 11:34 iblechbot joined 11:36 lichtkind joined 11:39 M_o_C joined 11:40 M_o_C left 11:59 JimmyZ joined
moritz_ smolder.plusthree.com/app/public_pr.../28098/294 doesn't look too nice 12:12
jnthn ohai 12:18
moritz_ it's j\o/nathan
mberends jnthn: oh hai
jnthn moritz_: :-P :-) 12:19
mberends: hi, how's things?
dalek kudo: e33d20e | moritz++ | docs/release_guide.pod:
[docs] mention smolder reports in release_guide.pod
mberends good thanks, hacking away at proto, needs refactoring as functionality is added. Also thinking about when to rewrite Temporal (is the new spec stable?) 12:20
jnthn Ah, the "is the spec stable" game :-) 12:21
jnthn knows that one well, so can empathize...
moritz_ mberends: it's as stable as it gets when nobody hacks on an implementation ;-)
mberends :-) time to hack then... 12:22
jnthn Aye, it often goes that way 12:23
diakopter moritz_: did you see the change 12:30
diakopter waiting for plane to SiValley 12:31
12:32 carlin left 12:33 sri_ left
diakopter moritz_: can I commit from p6eval's account without it saving my credentials in /home/p6eval/.svn (not as if it really matters) 12:34
12:34 sri_ joined
PacoLinux With the latest patch from NotFound++ parrot compiles again in Haiku :) 12:35
12:36 broquaint left, broquaint joined
jnthn NotFound wrote a patch 12:37
Parrot compiles again w00t
This is so awesome
;-)
diakopter almost done adding argslots to vijs subroutines/closures. No multis yet, of course. 12:38
jnthn diakopter: Writing multi dispatchers is fun! :-) 12:39
diakopter so I've heard :D
and waiting for them to run is even funner
moritz_: nm; I'll commit from another place 12:40
moritz_ diakopter: it was just a few path changes, right? 12:42
diakopter yeah, but also hopefully avoiding rebuilding STD unnecessarily 12:44
12:45 ejs joined
diakopter then maybe rebuild_std can be uncommented in the crontab 12:45
12:46 nihiliad joined
TiMBuS is the only way to delete an item from a hash to use .delete? there probably should be a sub version of it.. 12:46
diakopter undefine?
(I dunno)
TiMBuS awwwh i should have known that
diakopter I remember only the last 0.2 of the last synopsis I read... and none of the others. small window. 12:47
to clarify, I don't know whether undefine should do that
TiMBuS yeah perl 6 is hard to digest
moritz_ the .delete method is not specced 12:48
TiMBuS too big to swallow, might be a better way to put it
moritz_ the spec says there's a :delete adverb to the .{} operator
diakopter o
mberends undefine gets rid of the value, .delete gets rid of the key
TiMBuS also .delete gives a null_pmc on a nonexisting key 12:49
mberends diakopter: shall I begin building a test harness for vivjs? 12:51
diakopter mberends: let's wait a bit.. 12:52
give me 1 more day, and it should be able to run the spectests
I don't know whether to use the fudge system 12:53
moritz_ why not?
diakopter it would clutter the .t files more? I dunno. 12:54
t/
moritz_ that's fine
mberends fudging will be essential early on, so that the unimplemented bits don't prevent testing of the implemented ones.
diakopter oh :) 12:55
diakopter is convinced now; thanks moritz_ & mberends
moritz_ FYI rakudo has 1333 fudge directives in t/spec/ :-)
rakudo: say 1333/18670 12:56
diakopter 1 more and it's 1334
p6eval rakudo e33d20: OUTPUT«0.0713979646491698␤»
moritz_ 4 more and it's leet ;-)
diakopter oh, 4 more.
:)
mberends right now with say '1..1' vivjs can already pass 1/1 12:57
diakopter mberends: pmurias already added some .t
mberends oh, nice :)
diakopter since the Test.pm subs are mostly wrappers of try/catch, I'm going to use the JS try/catch, so the Test.pm subs will be special cased as lazy JS subs (as opposed to the sole other JS sub, `say`, which is strict). 12:59
JS subs are just built in subs that masquerade as p6subs 13:00
but written entirely in JS, but just as if they were a p6 sub 13:01
easily permits gradual 'bootstrapping', I guess.
jnthn diakopter: We did the same in Rakudo - using Parrot primitives that were "right enough" to get a start. 13:02
diakopter neat
jnthn e.g. Parrot has multi-dispatch support built in, so we used its default algorithm at first. 13:03
diakopter yet another thing the media folks can't label "unprecedented"
jnthn Which was good enough for a while.
mberends I was thinking of a special Test.pm for vivjs, based on what it's current P6 capabilities are 13:04
*its
diakopter it can't be a special Test.pm just yet 13:05
without adding some magical markers here and there 13:06
mberends sure, even 'use' is NYI. That t/say.t shows the way to get started.
jnthn Also see what's in the t/00- and t/01- directories in Rakudo 13:07
Which are its "can we run the test harness yet"-ish tests.
13:08 carlin joined, iblechbot left 13:09 ejs left
mberends yeah, sanity and so on, that's what I could start on already. I think I'll at least write a Makefile with 'test' and 'spectest' targets along Rakudo's lines. 13:09
diakopter vijs: say :16<AF> 13:10
p6eval vijs 28416: OUTPUT«175␤»
diakopter vijs: say :16<af> 13:11
p6eval vijs 28416: OUTPUT«175␤»
diakopter oh good
mberends nice
diakopter plane flight&
13:11 abra left 13:12 ruoso joined
ruoso bom dia, #perl6 13:16
13:18 NorwayGeek joined 13:20 NorwayGeek|Away left 13:25 NorwayGeek is now known as Norway_, Norway_ is now known as NorwayGeek 13:28 payload joined 13:29 ejs joined 13:34 crythias joined 13:37 molaf joined 13:42 ab5tract joined
pmurias ruoso: hi 13:45
13:47 saran joined 13:48 abbe joined
abbe hi everyone 13:49
any ideas about paste2.org/p/438734 ?
13:50 molaf left 13:56 saran left
carlin Daylight saving just ended so I lose an hour 14:01
carlin grumbles
jnthn You'll get it back in six months. 14:02
s1n carlin: where do you live that has daylight savings already? 14:04
carlin s1n: New Zealand 14:05
s/ended/started/
s1n ahh okay
14:22 TopoMorto joined 14:32 Psyche^ joined, Student joined, Patterner left, Psyche^ is now known as Patterner
mberends abbe: from S02:2959: "bare array, hash and subroutine variables my I<never> be interpolated.", so Pugs was being too P5ish 14:35
*may
abbe i copied that code from an article authored by moritz_ . 14:40
mberends abbe: we are walking barefoot on a construction site ;-) 14:41
abbe :)
mberends abbe: nice domain name, btw :) 14:42
abbe oh, thanks mberends :) 14:43
14:45 NorwayGeek left 14:48 zamolxes joined 14:53 NorwayGeek joined 14:54 frew__ joined 14:56 am0c joined 15:00 ejs left
carlin \o/ Rakudo on Haiku with no hackery. Still had to use --without-opengl though 15:03
15:06 TopoMorto left
s1n pmichaud: remember, hackathon today at 2p at Saxby's :) 15:08
15:28 Whiteknight left 15:31 tak11 joined
pmichaud good morning, #perl6 15:32
s1n: yes, hadn't forgotten it this time. :)
pugs_svn r28417 | jimmy++ | [zh-cn/syn/S02-bits.pod]added a bit translation for Whitespace and comment, needs more work. 15:35
15:37 JimmyZ left
cognominal Haiku? 15:42
carlin An open source BeOS clone 15:43
www.haiku-os.org/
cognominal fast boot is nice 15:44
15:46 TiMBuS left
s1n pmichaud: i have my new toy this time 15:48
15:49 zamolxes left
pmichaud s1n: yes, I want to see your new toy. I'm thinking of getting one for a relative. :) 15:52
s1n pmichaud: i'll be there early, i have to start preparing for an exam 15:54
15:57 dolmen joined
pmichaud okay, I'll try to show a bit early also then. 16:00
moritz_ rakudo: class A { has $!bar = "OH HAI"; method Str() { $!bar }}; say A.new.Str 16:04
p6eval rakudo e33d20: OUTPUT«OH HAI␤»
moritz_ rakudo: class A { has $.bar = "OH HAI"; method Str() { $!bar }}; say A.new.Str
p6eval rakudo e33d20: OUTPUT«OH HAI␤»
moritz_ rakudo: my $x = ''; $x ~= $_ for Nil; say $x.perl 16:15
p6eval rakudo e33d20: OUTPUT«"Nil()"␤»
16:15 justatheory joined
pugs_svn r28418 | moritz++ | [t/spec] test for RT #69270 16:17
16:21 cls_bsd left
pugs_svn r28419 | moritz++ | [t/spec] test for RT #69262 16:24
dolmen rakudo: say 3.Str 16:25
p6eval rakudo e33d20: OUTPUT«3␤»
dolmen rakudo: say 3.Range
p6eval rakudo e33d20: OUTPUT«Method 'Range' not found for invocant of class 'Int'␤»
dolmen rakudo: say 3.Float
p6eval rakudo e33d20: OUTPUT«Method 'Float' not found for invocant of class 'Int'␤»
moritz_ rakudo: say 3.Num
p6eval rakudo e33d20: OUTPUT«3␤»
moritz_ rakudo: say 3.Num.WHAT 16:26
p6eval rakudo e33d20: OUTPUT«Num()␤»
dolmen rakudo: say 3.Int.WHAT
p6eval rakudo e33d20: OUTPUT«Int()␤»
dolmen rakudo: say 3..5.WHAT
p6eval rakudo e33d20: OUTPUT«Use of type object as value␤␤»
dolmen rakudo: say (3..5).WHAT
p6eval rakudo e33d20: OUTPUT«Range()␤»
dolmen rakudo: say (3..5).WHAT.WHAT 16:27
p6eval rakudo e33d20: OUTPUT«Range()␤»
dolmen rakudo: say (3..5)[0]
p6eval rakudo e33d20: OUTPUT«3␤»
dolmen rakudo: say (3..5)[4] 16:28
p6eval rakudo e33d20: OUTPUT«Use of uninitialized value␤␤»
dolmen rakudo: say (3..5)[2]
p6eval rakudo e33d20: OUTPUT«5␤»
dolmen rakudo: say "5".Int 16:29
p6eval rakudo e33d20: OUTPUT«5␤»
16:29 frew__ left
dolmen rakudo: say "5".Int.WHAT 16:29
p6eval rakudo e33d20: OUTPUT«Int()␤»
dolmen rakudo: say "5..7".Range.WHAT 16:30
p6eval rakudo e33d20: OUTPUT«Method 'Range' not found for invocant of class 'Str'␤»
moritz_ I don't think that should work
with eval() instead of .Range, yes
dolmen rakudo: say "5..7".eval.WHAT 16:31
p6eval rakudo e33d20: OUTPUT«Method 'eval' not found for invocant of class 'Str'␤»
dolmen rakudo: say eval("5..7").WHAT
p6eval rakudo e33d20: OUTPUT«Range()␤»
dolmen rakudo: say PROCESS.WHAT 16:32
p6eval rakudo e33d20: OUTPUT«Null PMC access in getprop()␤»
moritz_ rakudo: say FOOO.WHAT
16:32 molaf joined
p6eval rakudo e33d20: OUTPUT«Could not find non-existent sub FOOO␤» 16:32
dolmen rakudo: say GLOBAL.WHAT 16:33
p6eval rakudo e33d20: OUTPUT«Null PMC access in getprop()␤»
moritz_ dolmen: could you submit a bug report for PROCESS.WHAT?
dolmen ok
pugs_svn r28420 | moritz++ | [t/spec] tests for RT #69260, private attributes leaking to parent class
r28421 | moritz++ | [t/spec] test for RT #66818, %*VM behaving weirdly 16:39
dolmen rakudo: say %ENV.WHAT 16:45
p6eval rakudo e33d20: OUTPUT«Symbol '%ENV' not predeclared in <anonymous> (/tmp/BHOlIrAuSx:2)␤in Main (src/gen_setting.pm:3469)␤»
dolmen rakudo: say %ENV.kv
p6eval rakudo e33d20: OUTPUT«Symbol '%ENV' not predeclared in <anonymous> (/tmp/UzWrHwajdN:2)␤in Main (src/gen_setting.pm:3469)␤»
dolmen rakudo: say %toto 16:46
pmichaud I think you mean %*ENV
p6eval rakudo e33d20: OUTPUT«Symbol '%toto' not predeclared in <anonymous> (/tmp/soY8zRHrdz:2)␤in Main (src/gen_setting.pm:3469)␤»
16:46 cls_bsd joined
dolmen rakudo: say %*ENV.WHAT 16:46
p6eval rakudo e33d20: OUTPUT«Hash()␤»
dolmen rakudo: say %*ENV.kv
p6eval rakudo e33d20:
..OUTPUT«PATH/usr/local/bin:/usr/bin:/bin:/usr/gamesLS_COLORSno=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.svgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;…
dolmen interesting...
pmichaud rakudo: say %*ENV.perl 16:47
p6eval rakudo e33d20: OUTPUT«{"TERM" => "screen", "SHELL" => "/bin/bash", "HISTCONTROL" => "ignoreboth", "_" => "../p/bin/perl6", "USER" => "p6eval", "PERL6LIB" => "lib", "LANG" => "en_US.UTF-8", "LOGNAME" => "p6eval", "MAIL" => "/var/mail/p6eval", "HOME" => "/home/p6eval", "SHLVL" => "2", "PWD" =>
.."/home/p6ev…
dolmen rakudo: say $^X
p6eval rakudo e33d20: OUTPUT«too few arguments passed (0) - 1 param expected␤in Main (/tmp/9B5Is4Eor7:0)␤»
16:48 ab5tract left
dolmen Which synopsis defines %*ENV ? 16:52
say "56".chop 16:53
rakudo: say "56".chop
p6eval rakudo e33d20: OUTPUT«5␤»
dolmen rakudo: say "é".chop 16:54
p6eval rakudo e33d20: OUTPUT«␤»
pmichaud rakudo: { say "hello" }.()
p6eval rakudo e33d20: OUTPUT«hello␤»
pmichaud rakudo: sub { say "hello" }.()
p6eval rakudo e33d20: OUTPUT«Confused at line 2, near ".()"␤in Main (src/gen_setting.pm:3469)␤»
16:54 s1n_mini joined
pmichaud rakudo: { say "hello" #`(hello) }.() 16:54
p6eval rakudo e33d20: OUTPUT«hello␤»
dolmen rakudo: my $x = { say "hello" }; $x.(); 16:55
p6eval rakudo e33d20: OUTPUT«hello␤»
dolmen rakudo: ({ say "hello" }).();
p6eval rakudo e33d20: OUTPUT«hello␤invoke() not implemented in class 'Boolean'␤in Main (/tmp/Sr22ON3JEs:0)␤»
16:55 abbe left
dolmen Boolean? 16:55
rakudo: (true).(); 16:56
p6eval rakudo e33d20: OUTPUT«Syntax error at line 2, near "(true).();"␤in Main (src/gen_setting.pm:3469)␤»
dolmen rakudo: true.();
p6eval rakudo e33d20: OUTPUT«invoke() not implemented in class 'Undef'␤in Main (/tmp/2Go1guJKJe:2)␤»
dolmen rakudo: say true;
pmichaud ({ say "hello"}) is an immediate block
p6eval rakudo e33d20: OUTPUT«say requires an argument at line 2, near " true;"␤in Main (src/gen_setting.pm:2565)␤»
dolmen rakudo: say True;
p6eval rakudo e33d20: OUTPUT«1␤»
dolmen rakudo: (True).();
p6eval rakudo e33d20: OUTPUT«invoke() not implemented in class 'Boolean'␤in Main (/tmp/0Wmh2HfEA9:2)␤»
dolmen an immediate block? could you tell me more? 16:57
pmichaud at least, Rakudo thinks that ({say "hello"}) is an immediate block. Perhaps it shouldn't.
an immediate block is a code block that is executed automatically when it's encountered
for example: 16:58
rakudo: say "foo"; { say "baz"; }; say "bar";
p6eval rakudo e33d20: OUTPUT«foo␤baz␤bar␤»
pmichaud the inner block is an "immediate block"
s1n pmichaud: what all should i take on my thumbdrive?
pmichaud s1n: I don't know.
s1n pmichaud: i have the sept. release of rakudo
pmichaud s1n: that should be good enough
dolmen rakudo: ({ say "hello" });
p6eval rakudo e33d20: OUTPUT«hello␤»
dolmen rakudo: say ({ say "hello" }).WHAT; 16:59
p6eval rakudo e33d20: OUTPUT«hello␤Bool()␤»
s1n pmichaud: does that release have parrot in it?
pmichaud s1n: the tarballs don't ever include the parrot code
carlin rakudo: say { (true) }
p6eval rakudo e33d20: OUTPUT«Unable to parse block; couldn't find final '}' at line 2, near "(true) }"␤in Main (src/gen_setting.pm:3469)␤»
carlin rakudo: say { (false) }
p6eval rakudo e33d20: OUTPUT«_block50␤»
dolmen rakudo: say (say "hello").WHAT
p6eval rakudo e33d20: OUTPUT«hello␤Bool()␤»
pmichaud note that "true" is a prefix operator, not a constant
i.e., it's the opposite of "not" 17:00
dolmen return value of "say" is Bool ?
pmichaud dolmen: yes.
dolmen is reading S32 17:01
pmichaud S32 sayeth:
"=item multi print (*@LIST --> Bool)
Stringifies each element, concatenates those strings, and sends the
result to the output.
Returns C<Bool::True> if successful, C<Failure> otherwise.
colomon rakudo: say (1i).PARROT 17:02
p6eval rakudo e33d20: OUTPUT«Complex␤»
dolmen rakudo: my $x = IO.new; 17:03
p6eval rakudo e33d20: ( no output )
dolmen rakudo: my $x = IO.new; "hello".say $x;
pmichaud rakudo: (sub { say "hello" #`(hello) }).()
p6eval rakudo e33d20: OUTPUT«Confused at line 2, near "$x;"␤in Main (src/gen_setting.pm:3469)␤»
rakudo e33d20: OUTPUT«hello␤»
dolmen rakudo: say PROCESS.PARROT 17:04
p6eval rakudo e33d20: OUTPUT«Null PMC access in getprop()␤in Main (src/gen_setting.pm:3469)␤»
dolmen rakudo: say PROCESS
p6eval rakudo e33d20: OUTPUT«Null PMC access in getprop()␤in Main (src/gen_setting.pm:3469)␤»
pmichaud rakudo doesn't recognize PROCESS as a namespace yet
rakudo: say CORE::PROCESS
p6eval rakudo e33d20: OUTPUT«invoke() not implemented in class 'Undef'␤in Main (/tmp/2u5dPR6soW:2)␤»
dolmen rakudo: say CORE::PROCESS.WHAT 17:05
pmichaud rakudo: say CORE::PROCESS.PARROT
p6eval rakudo e33d20: OUTPUT«invoke() not implemented in class 'Undef'␤in Main (/tmp/BPqJjDTRC1:2)␤»
rakudo e33d20: OUTPUT«invoke() not implemented in class 'Undef'␤in Main (/tmp/0nABO76SyX:2)␤»
pmichaud yeah -- it doesn't have a good understanding of namespaces yet
especially the lexical handling of namespace names
dolmen rakudo: my $x = IO.new; ("hello".say $x) or say "Error"; 17:07
p6eval rakudo e33d20: OUTPUT«Confused at line 2, near "$x) or say"␤in Main (src/gen_setting.pm:3469)␤»
dolmen rakudo: my $x = IO.new; ("hello".say($x)) or say "Error";
p6eval rakudo e33d20: OUTPUT«too many arguments passed (2) - 1 param expected␤in Main (/tmp/vrHegd1XPN:2)␤»
pmichaud the .say method doesn't expect an argument
ah... but it's supposed to. 17:08
rakudobug.
dolmen rakudo: say OUT.WHAT; 17:10
p6eval rakudo e33d20: OUTPUT«Could not find non-existent sub OUT␤»
dolmen rakudo: say $*OUT.WHAT; 17:11
p6eval rakudo e33d20: OUTPUT«IO()␤»
dolmen rakudo: "hello".say($*OUT);
p6eval rakudo e33d20: OUTPUT«too many arguments passed (2) - 1 param expected␤in Main (/tmp/wFKyaBd8df:2)␤»
dolmen rakudo: $*OUT.say "hello"; 17:12
p6eval rakudo e33d20: OUTPUT«Confused at line 2, near "\"hello\";"␤in Main (src/gen_setting.pm:3469)␤»
dolmen rakudo: say $*OUT.ins;
p6eval rakudo e33d20: OUTPUT«␤»
dolmen rakudo: say $*OUT.outs; 17:13
p6eval rakudo e33d20: OUTPUT«Method 'outs' not found for invocant of class 'IO'␤»
dolmen rakudo: say $*OUT.outs();
p6eval rakudo e33d20: OUTPUT«Method 'outs' not found for invocant of class 'IO'␤»
dolmen rakudo: say $*OUT.isWriteable; 17:14
p6eval rakudo e33d20: OUTPUT«Method 'isWriteable' not found for invocant of class 'IO'␤»
carlin rakudo: say $*OUT.^methods.join(', ');
p6eval rakudo e33d20: OUTPUT«printf, t, slurp, close, Scalar, ins, eof, lines, say, print, get, unpolar, sech, ord, rand, 1, 1, 1, 1, asin, 1, atanh, cosh, cosec, grep, values, 1, roots, reverse, isa, ucfirst, kv, samecase, tan, cos, capitalize, fmt, bytes, flip, does, p5chop, lc, asinh, acotan, reduce,
..cotanh…
dolmen carlin: thx 17:15
rakudo: say $*OUT.1;
p6eval rakudo e33d20: OUTPUT«Confused at line 2, near ".1;"␤in Main (src/gen_setting.pm:3469)␤»
dolmen rakudo: say $*OUT.^methods.perl; 17:16
p6eval rakudo e33d20: OUTPUT«[{ ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ...
..}, { …
dolmen rakudo: say $*OUT.^methods;
p6eval rakudo e33d20:
..OUTPUT«sayprintgetprintftslurpcloseScalareofinslinesmatchacoshwordscancotanatan2lcfirstucsrandComplexkeysmappolarcislogsubstrminmaxpickfirstevalfiletranssinIntacosecjoinsubstsinhcosechacosechelemsabsendchompindexceilingtrimp5chompasecpairsunpolarsechordrandtruncatesortrindexsqrtasinintata…
dolmen rakudo: say $*OUT.kv; 17:17
p6eval rakudo e33d20: OUTPUT«0IO()<0x2b9b49517820>␤»
dolmen rakudo: say $*OUT.WHAT.^methods; 17:18
p6eval rakudo e33d20:
..OUTPUT«sayprintgetprintftslurpcloseScalareofinslinescotanhchracotanh:d:e:fcombfloorasechatanacosroundchoptanhsplitmatchacoshwordscancotanatan2lcfirstucsrandComplexkeysmappolarcislogsubstrminmaxpickfirstevalfiletranssinIntacosecjoinsubstsinhcosechacosechabselemsendchompindexceilingtrimp5ch…
17:18 jferrero joined
pugs_svn r28422 | moritz++ | [t/spec] test for anonymous, typed invocant (RT #69206) 17:18
cognominal dolmen, p6eval is also on #perlfr 17:22
diakopter dolmen: you can also /msg p6eval directly 17:23
dolmen cognominal, but Perl 6 monks are not on #perlfr or in private message ;) 17:24
except you
;)
rakudo: say $*OUT.say.WHAT; 17:26
p6eval rakudo e33d20: OUTPUT«␤Bool()␤»
dolmen rakudo: say $*OUT.print.WHAT;
p6eval rakudo e33d20: OUTPUT«Bool()␤»
dolmen rakudo: say $*OUT.printf.WHAT; 17:27
p6eval rakudo e33d20: OUTPUT«No candidates found to invoke␤in Main (/tmp/3KjAamvZiD:2)␤»
dolmen rakudo: say $*OUT.printf("xx");
17:27 Zloyrusskiy joined
p6eval rakudo e33d20: OUTPUT«xx1␤» 17:27
dolmen rakudo: $*OUT.printf("xx");
p6eval rakudo e33d20: OUTPUT«xx» 17:28
dolmen rakudo: say say.WHAT;
p6eval rakudo e33d20: OUTPUT«say requires an argument at line 2, near ".WHAT;"␤in Main (src/gen_setting.pm:2563)␤»
diakopter rakudo: say &say.WHAT
p6eval rakudo e33d20: OUTPUT«␤»
dolmen rakudo: say $*OUT.&printf.WHAT; 17:29
p6eval rakudo e33d20: OUTPUT«elements() not implemented in class 'Sub'␤in Main (/tmp/iPwK5u8ApO:0)␤»
dolmen rakudo: say $*OUT.&say.WHAT;
p6eval rakudo e33d20: OUTPUT«IO()<0x2b0344268580>␤Bool()␤»
dolmen rakudo: $*OUT.printf("%05d", 5); 17:30
p6eval rakudo e33d20: OUTPUT«00005»
17:30 tak11 left
diakopter intersting 17:32
17:33 iblechbot joined
dolmen rakudo: say &say.WHAT; 17:35
p6eval rakudo e33d20: OUTPUT«␤»
pmichaud rakudo: say &say.PARROT; 17:36
p6eval rakudo e33d20: OUTPUT«Perl6MultiSub␤»
pmichaud rakudo: say &say.WHAT.PARROT;
p6eval rakudo e33d20: OUTPUT«␤»
colomon pmichaud: What is the 0-argument form of the operators you speak of in that e-mail? 17:40
17:40 zamolxes joined
pmichaud colomon: multi sub infix:<->() { 0 } 17:40
multi sub infix:<*> { 1 }
multi sub infix:<~> { '' } 17:41
oops
add parens
multi sub infix:<~>() { '' }
multi sub infix:<*>() { 1 }
colomon So they return the -- shoot, I don't remember the term from group theory?
+ would also be 0, / would also be 1? 17:42
pmichaud although perhaps those are for the reduce forms, not the infix forms
multi sub infix:<[-]>() { 0 }
anyway, the table is in "Reduction operators" in S03 17:43
colomon Actually, I find myself wishing that (say) <<*>> extended the array with 1s rather than the last element.
It seems like that would be much more mathematically useful.
pmichaud isnt that just 17:44
@b <<*>> @a,1
?
moritz_ @a, 1 xx *
lambdabot Maybe you meant: . ? @ arr ask bf do faq ft id map pl rc v wn
pmichaud do we need the xx * if it extends the last element? 17:45
dolmen rakudo: say eval('`cat /etc/passwd`', :lang<perl5>)
p6eval rakudo e33d20:
..OUTPUT«root:x:0:0:root:/root:/bin/bash␤daemon:x:1:1:daemon:/usr/sbin:/bin/sh␤bin:x:2:2:bin:/bin:/bin/sh␤sys:x:3:3:sys:/dev:/bin/sh␤sync:x:4:65534:sync:/bin:/bin/sync␤games:x:5:60:games:/usr/games:/bin/sh␤man:x:6:12:man:/var/cache/man:/bin/sh␤lp:x:7:7:lp:/var/spool/lpd:/bin/sh␤mail:x:8:8:m…
colomon It's that ONLY if you know @a is the short one.
If it is the long one, then you are adding a superfluous element to the array. 17:46
pmichaud maybe an adverb, then
colomon pmichaud: yeah, I was thinking that might be a good solution.
17:47 dakkar left, crythias left
lisppaste3 colomon pasted "Example of ugly code that could use the adverb" at paste.lisp.org/display/87772 17:49
colomon That could be a one-liner if there were an ":extend-with" adverb. 17:50
18:03 tak11 joined 18:04 zamolxes left, icwiener left
pmichaud seems like one might be able to get @a,1 <<+>> @b,1 to work somehow if we could just remove the last element 18:06
colomon pmichaud: certainly in that example you could hack the constructor to ignore 0s at the end of the array and do @a,0 <<+>> @b, 0. 18:10
but wouldn't @a <<+>> @b :extend(0) be more elegant and Perl 6ish? 18:12
pmichaud it might, yes
anyway, maybe worth a message to p6l 18:13
gotta run -- bbiaw
18:14 szabgab joined, justatheory left 18:17 pmurias left, NorwayGeek left, NorwayGeek joined 18:26 NorwayGeek left, NorwayGeek joined 18:31 NorwayGeek left, NorwayGeek joined 18:35 s1n_mini left
pugs_svn r28423 | kyle++ | [t/spec] nil plan += 1 18:35
r28424 | diakopter++ | [vijs] argument binding in subroutines working; no multis though, yet, of course 18:39
18:39 zerhash joined
diakopter vijs: my $c=4; my $a = sub ($b) { say $b * $c; $b++; say $b + $c }; $a(3); $a(4) 18:41
p6eval vijs 28422: OUTPUT«12␤8␤16␤9␤»
diakopter perl6: my $c=4; my $a = sub ($b) { say $b * $c; $b++; say $b + $c }; $a(3); $a(4) 18:42
p6eval rakudo e33d20: OUTPUT«12␤Cannot assign to readonly variable.␤in sub _block55 (/tmp/LVF8tZm9zL:1)␤called from Main (/tmp/LVF8tZm9zL:0)␤»
..pugs: OUTPUT«12␤*** Can't modify constant item: VInt 3␤ at /tmp/HmBqYSps5L line 1, column 42-46␤»
..elf 28424: OUTPUT«12␤8␤16␤9␤»
diakopter o
named arguments aren't rw by default? 18:43
colomon diakopter: as far as I know they are ro by default. 18:44
18:44 icwiener joined
mberends diakopter: that's correct. you can change that with 'is rw' or 'is copy'. 18:45
diakopter deciding whether to detect/implement that yet, or leave them all rw for now :) 18:46
mberends diakopter: leave 'em, there will be spectests enough to remind you later ;) 18:47
diakopter I mean, now that rw is done, ro is 'easy'
but it's just an optimization hint, anyway
the default (ro) case, without the 'is rw' or 'is copy', I mean 18:48
I 'implemented' comparisons & chained comparisons, now to see how buggy my first/blind attempt was. 18:49
STD sends every comparison as a chain
std: 4<5 # breaks (in an unexpected way) 18:50
p6eval std 28424: OUTPUT«===SORRY!===␤(Possible runaway string from line 1 to line 2)␤Whitespace required before < operator at /tmp/v3IvzRnQBs line 1:␤------> 4<⏏5 # breaks (in an unexpected way)␤ expecting escape␤FAILED 00:02 95m␤»
diakopter ok nm; it did for me.
mberends std: 4 < 5; # with spaces 18:51
p6eval std 28424: OUTPUT«ok 00:01 95m␤»
diakopter I konw; locally it gives me a different error
vijs: 4<5 18:52
p6eval vijs 28424: OUTPUT«Can't locate ToJS.pm in @INC (@INC contains: .. /etc/perl /usr/local/lib/perl/5.10.0 /usr/local/share/perl/5.10.0 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl .) at vivjs line 7.␤BEGIN failed--compilation aborted at vivjs line
..7.␤»
diakopter sigh
18:52 Student left
diakopter vijs: 4<5 18:52
p6eval vijs 28424: OUTPUT«===SORRY!===␤(Possible runaway string from line 1 to line 2)␤Whitespace required before < operator at /tmp/yPsfPWiJhf line 1:␤------> 4<⏏5␤ expecting escape␤»
diakopter ok, it's just me.
for the curious: Can't locate object method "cursor_singleton" via package "STD::Q::_X_SQq::_X_SQw1::_X_SsLt_Gt" at ../STD.pm line 23347. 18:53
pugs_svn r28425 | diakopter++ | [vijs] implemented [chained] comparisons; implemented infix_Lt for Int; more comparison operators to come. 19:10
19:11 s1n_mini joined
pugs_svn r28426 | mberends++ | [vivjs/Makefile] 'make test' proves t/*.t and it passes 1/1 tests 19:13
19:15 nErVe joined 19:16 xomas_ left
diakopter vijs: say 4 < 5 < 6, 4 < 3 < 5 19:16
p6eval vijs 28424: OUTPUT«10␤»
19:17 rfordinal left
diakopter vijs: say 4 < 5 < 6, 4 < 3 < 5 19:18
pugs_svn r28427 | diakopter++ | [vijs] fixing off-by-one typo (not a thinko, I do say!)
p6eval vijs 28426: OUTPUT«10␤»
diakopter vijs: say 4 < 5 < 6, 4 < 4
p6eval vijs 28426: OUTPUT«10␤»
diakopter <whew>
19:20 rhr_ joined
diakopter mberends: do you want to implement the rest of the Int comparisons? 19:20
you don't need to change interp.js; just builtins.js... just copy/paste the existing do_infix__S_Lt (where it appears in both places) 19:21
e.g. to infix__S_LtEqual
vijs: 4 <= 4 19:22
p6eval vijs 28426: OUTPUT«execute(): execute error: infix__S_LtEqual not yet implemented; srsly!!?!?? at vivjs line 66.␤»
mberends diakopter: I must learn exactly, but with your guidance, sure. I'm here to learn :)
diakopter I'll do that one, then you just have to model that one commit
mberends :)
diakopter there 19:24
pugs_svn r28428 | diakopter++ | [vijs] implement infix__S_LtEqual
19:25 araujo joined
diakopter vijs: say 4 <= 4 19:25
p6eval vijs 28426: OUTPUT«1␤»
diakopter mberends: do you know where the visual diff site is?
perlcabal.org/svn/pugs/revision
mberends looks 19:26
very copy/paste friendly, ok
diakopter yep; not much work required when just wrapping another library 19:27
(libBigInt)
you just have to try it once to see what to name the method: 19:28
vijs: say 4 >= 5 19:29
p6eval vijs 28426: OUTPUT«execute(): execute error: infix__S_GtEqual not yet implemented; srsly!!?!?? at vivjs line 66.␤»
mberends aha, the error message tells what to patch
:)
diakopter yep; just prepend do_ 19:30
don't do EqualEqualEqual, but do do EqualEqual :)
19:31 molaf left
mberends fair enough, === implies class-y things probably 19:31
19:32 rhr left
diakopter the way I did the comparison "methods" there, I'm going to convert the existing stuff to use the same type of dispatch for the builtins, so that I can make 'dereferencing' handled automatically 19:34
19:34 scion joined
diakopter another plane flight soon, supposedly 19:35
mberends any edits of builtins.js coming?
diakopter nope 19:36
19:36 Zloyrusskiy left
diakopter not in those sections of the file anyway 19:36
mberends holds the builtins.js pumpkin
19:36 scion is now known as astinus
diakopter I'll finish up Test.pm.js on this flight, hopefully, if I'm not surrounded by unhappy infants 19:37
mberends :) bon voyage 19:38
diakopter after that comes making if/then/else blocks actually lexical blocks (which I think is correct?) and then do, while, and loop 19:39
and then array indexing
hmm. last to board, again. & 19:40
pugs_svn r28429 | diakopter++ | [STD/vijs] Makefile snap to hopefully retain more 19:41
r28430 | diakopter++ | [evalbot] make vijs path correct for using shared STD build; read file 19:42
r28430 | revisions more simply moritz_++ moritz++
diakopter s/dereferencing/unboxing/ 19:44
pugs_svn r28431 | mberends++ | [js/builtins.js] almost clone Int < and <= into > >= == and != 19:52
mberends oops, forgot second series of clones, quickly adding... 19:55
19:55 tak11 left 20:01 jferrero left, tak11 joined 20:02 crythias joined
pugs_svn r28432 | mberends++ | [js/builtins.js] almost clone p6var < and <= into > >= == and != 20:02
mberends this is why we (er, I) should run tests ;) 20:03
20:06 zamolxes joined 20:07 rhr joined, szabgab left
dalek kudo: a65ece5 | chromatic++ | src/pmc/ (3 files):
[PMC] Changed GC markings to use PMC/STRING specific marking functions, rather

major potential for compile-time correctness.
20:11
kudo: 834929c | chromatic++ | build/PARROT_REVISION:
Bumped up PARROT_REVISION to r41447 to take advantage of improved marking
20:17
mberends vijs: say " <", 3 < 4 < 5, 4 < 4 < 5," <=", 3 <= 4 <= 5, 5 <= 4 <= 5," >", 5 > 4 > 3, 5 > 4 > 4," >=", 5 >= 4 >= 4, 5 >= 4 >= 5," ==", 5 == 5 == 5, 5 == 4 == 4," !=", 5 != 4 != 3, 5 != 5 != 4
colomon (I'm trying these patches on OS X right now.)
p6eval vijs 28432: OUTPUT« <10 <=10 >10 >=10 ==10 !=10␤»
mberends perl6: say " <", 3 < 4 < 5, 4 < 4 < 5," <=", 3 <= 4 <= 5, 5 <= 4 <= 5," >", 5 > 4 > 3, 5 > 4 > 4," >=", 5 >= 4 >= 4, 5 >= 4 >= 5," ==", 5 == 5 == 5, 5 == 4 == 4," !=", 5 != 4 != 3, 5 != 5 != 4 20:18
p6eval rakudo e33d20: OUTPUT« <10 <=10 >10 >=10 ==10 !=10␤»
..elf 28432: OUTPUT«No viable candidate for call to multimethod infix__60(#,#,#) at (eval 146) line 3␤ at ./elf_h line 5881␤»
..pugs: OUTPUT« <1 <=1 >1 >=1 ==1 !=1␤»
20:19 rhr_ left
spinclad pugs: say 3 < 4 < 5 20:20
p6eval pugs: OUTPUT«1␤»
spinclad pugs: say 3 < 4 < 3
p6eval pugs: OUTPUT«␤»
spinclad pugs: say False
p6eval pugs: OUTPUT«␤»
spinclad perl6: say False 20:22
p6eval elf 28432: OUTPUT«False␤»
..rakudo e33d20: OUTPUT«0␤»
..pugs: OUTPUT«␤»
spinclad elf++ 20:23
mberends vijs: say False 20:24
p6eval vijs 28432: OUTPUT«0␤»
20:40 rhr left, dolmen left, reqamst left, mberends left, Matt-W_ left, rjh left, frodwith left, kolibrie left, JarJarBinks left, Helios- left, jiing left, Maddingue left, mj41_ left, nsh left, pmichaud left, c9s left, PerlJam left, Khisanth left, nErVe left, drbean left, pugs_svn left, avuserow left, frew_ left, jrtayloriv left, devin left, Caelum left, ezra left, sbp left, phenny left, silug left, crythias left, iblechbot left, Patterner left, broquaint left, sri_ left, synth^2 left, wayland76 left, garron left, Woodi left, mikehh left, blaze-x left, Infinoid left, meteorjay left, christine left, yves left, buu left, solarion left, clkao left, integral left, dmpk2k left, lisppaste3 left, elmex left, xinming_ left, ewilhelm_ left, PacoLinux left, alester left 20:41 PerlJam joined, rhr joined, crythias joined, nErVe joined, iblechbot joined, dolmen joined, Patterner joined, broquaint joined, sri_ joined, synth^2 joined, reqamst joined, drbean joined, wayland76 joined, dmpk2k joined, Infinoid joined, solarion joined, christine joined, buu joined, garron joined, blaze-x joined, yves joined, integral joined, Woodi joined, clkao joined, meteorjay joined, lisppaste3 joined, JarJarBinks joined, Maddingue joined, c9s joined, frodwith joined, nsh joined, Khisanth joined, kolibrie joined, Helios- joined, rjh joined, sbp joined, phenny joined, pugs_svn joined, ezra joined, devin joined, Caelum joined, avuserow joined, silug joined, jiing joined, mj41_ joined, jrtayloriv joined, mikehh joined, frew_ joined, PacoLinux joined, xinming_ joined, irc.freenode.net sets mode: +ov PerlJam pugs_svn, alester joined, elmex joined, mberends joined, Matt-W_ joined, ewilhelm_ joined, pmichaud joined, irc.freenode.net sets mode: +o pmichaud 20:45 frew__ joined
pugs_svn r28433 | mberends++ | [js/builtins.js] almost clone Int compare ops to Str (lt le gt ge eq ne) 20:56
mberends vijs: say " lt","a" lt "b" lt "c", "a" lt "a" lt "b"," le","a" le "b" le "b", "a" le "b" le "a"," gt","c" gt "b" gt "a", "c" gt "c" gt "b"," ge","b" ge "b" ge "a", "c" ge "b" ge "c"," eq","a" eq "a" eq "a", "a" eq "b" eq "b"," ne","a" ne "b" ne "a", "a" ne "a" ne "b"
p6eval vijs 28432: OUTPUT« lt10 le10 gt10 ge10 eq10 ne10␤» 20:57
20:57 cogno joined 20:58 zamolxes left 21:01 molaf joined 21:09 cogno left 21:16 alester left 21:18 s1n_mini left 21:19 NorwayGeek left, NorwayGeek joined 21:21 lichtkind left
mikehh rakudo (834929c) builds on parrot r41499 - make test / make spectest (up to 284432) PASS - Ubuntu 9.04 amd64 21:24
rakudo make spectest_smolder -> #28134
that's 28432/3 for smolder
21:28 Zloyrusskiy joined 21:40 frew__ left 21:46 Zloyrusskiy left 21:49 mberends left 21:53 am0c left 21:56 molaf left 22:08 PacoLinux left 22:10 PacoLinux joined 22:12 frew__ joined 22:13 nihiliad left 22:15 nihiliad joined 22:16 iblechbot left
dolmen vijs? 22:17
jrtayloriv How do I iterate over the keys of a hash in NQP? Is there something like for (keys %foo) ? 22:29
nm :) 22:35
crythias I like fumble:keychain
22:48 gdonald joined 22:49 gdonald left 22:53 darkwolf joined, darkwolf is now known as DarkWolf84
dolmen rakudo: say CORE.WHAT 22:56
p6eval rakudo 834929: OUTPUT«Could not find non-existent sub CORE␤»
22:57 icwiener left
dolmen rakudo: say %*ENV.keys.join(', ') 22:58
p6eval rakudo 834929: OUTPUT«_, USER, PERL6LIB, LANG, LOGNAME, MAIL, SHLVL, HOME, PWD, PATH, LS_COLORS, TERM, SHELL, HISTCONTROL␤»
22:58 frew__ left
dolmen rakudo: say eval('`ls /tmp`', :lang<perl5>) 22:59
p6eval rakudo 834929:
..OUTPUT«0322GNq24e␤04GO4lAs6w␤0edbcq7r0o␤0eVXTWom9q␤0GySzft0I0␤0hhH0d9PjA␤0nABO76SyX␤0nqnn57jgY␤0nSsrGE2kT␤0o7jNs2aJZ␤0O9Z8taJEN␤0rLffyUrkT␤0RsjH3DHgd␤0Wmh2HfEA9␤0zKwZ8WkpR␤10ChpqzbFA␤10EnajMtdS␤1b5dAX4TB0␤1BBZZKqCCR␤1BTRMAHtOt␤1eu9H1sm9r␤1Je0uYVcT9␤1Ng2Sv9dGL␤1oQtgPdyWA␤1vzfkD1p1Z␤1wlxkGB…
dolmen rakudo: say eval('`cat /tmp/04GO4lAs6w`', :lang<perl5>)
p6eval rakudo 834929: OUTPUT«use Safe;␤subsub␤»
dolmen rakudo: say eval('`grep WHAT /tmp/*`', :lang<perl5>) 23:00
p6eval rakudo 834929: OUTPUT«grep: /tmp/autobox-2.55: Permission denied␤grep: /tmp/autodie-2.06: Permission denied␤grep: /tmp/Module-Which-0.0207: Permission denied␤grep: /tmp/String-Truncate-0.102: Permission denied␤grep: /tmp/YAML-LibYAML-0.32: Permission denied␤/tmp/29ZF8NbvP2:say
..say.WHAT;␤/tmp/2RVwPLls74:…
DarkWolf84 rakudo: multi sub infix{'>>+'}(Int @array, Int $var){ my @return; for @array->$item { push (@return, $item + $var)} return @return;}; (<1 2 3> >>+ 1).say;
p6eval rakudo 834929: OUTPUT«Confused at line 2, near "(Int @arra"␤in Main (src/gen_setting.pm:3469)␤»
DarkWolf84 rakudo: multi sub infix<-_-(Int @array, Int $var){ my @return; for @array->$item { push (@return, $item + $var)} return @return;}; (<1 2 3> -_- 1).say; 23:01
p6eval rakudo 834929: OUTPUT«Malformed routine definition at line 2, near "infix<-_-("␤in Main (src/gen_setting.pm:3469)␤»
DarkWolf84 rakudo: multi sub infix:{'>>+'}(Int @array, Int $var){ my @return; for @array->$item { push (@return, $item + $var)} return @return;}; (<1 2 3> >>+ 1).say; 23:02
p6eval rakudo 834929: OUTPUT«Confused at line 2, near "return @re"␤in Main (src/gen_setting.pm:3469)␤»
DarkWolf84 rakudo: multi sub infix:<-_->(Int @array, Int $var){ my @return; for @array->$item { push (@return, $item + $var)} return @return;}; (<1 2 3> -_- 1).say;
p6eval rakudo 834929: OUTPUT«Confused at line 2, near "return @re"␤in Main (src/gen_setting.pm:3469)␤»
DarkWolf84 rakudo: multi sub infix:<-_->(Int @array, Int $var){ my @return; for @array->$item { push (@return, $item + $var)} return @return;} (<1 2 3> -_- 1).say; 23:03
p6eval rakudo 834929: OUTPUT«Confused at line 2, near "return @re"␤in Main (src/gen_setting.pm:3469)␤»
DarkWolf84 rakudo: multi sub infix:<-_->(Int @array, Int $var){ my @return; for @array->$item { push (@return, $item + $var);} return @return;}; (<1 2 3> -_- 1).say; 23:04
p6eval rakudo 834929: OUTPUT«Confused at line 2, near "return @re"␤in Main (src/gen_setting.pm:3469)␤»
colomon DarkWolf84: probably need a semicolon after the for block?
DarkWolf84 ok
i'll try
colomon rakudo: rakudo: multi sub infix:<-_->(Int @array, Int $var){ my @return; for @array->$item { push (@return, $item + $var); }; return @return;};
p6eval rakudo 834929: OUTPUT«Confused at line 2, near ": multi su"␤in Main (src/gen_setting.pm:3469)␤»
colomon rakudo: multi sub infix:<-_->(Int @array, Int $var){ my @return; for @array->$item { push (@return, $item + $var); }; return @return;}; 23:05
p6eval rakudo 834929: ( no output )
DarkWolf84 strange
colomon I left off the end bit.
rakudo: multi sub infix:<-_->(Int @array, Int $var){ my @return; for @array->$item { push (@return, $item + $var); }; return @return;}; (<1 2 3> -_- 1).say; 23:06
p6eval rakudo 834929: OUTPUT«No applicable candidates found to dispatch to for 'infix:-_-'␤in Main (/tmp/aQeMts6saC:0)␤»
DarkWolf84 is there way to enter '>' char in infix:<>
colomon rakudo: say <1 2 3>.WHAT
p6eval rakudo 834929: OUTPUT«List()␤»
colomon rakudo: say <1 2 3>.perl
p6eval rakudo 834929: OUTPUT«["1", "2", "3"]␤»
colomon It's an array of strings.
DarkWolf84 too bad 23:07
colomon rakudo: multi sub infix:<-_->(Int @array, Int $var){ my @return; for @array->$item { push (@return, $item + $var); }; return @return; }; ((1, 2, 3) -_- 1).say;
p6eval rakudo 834929: OUTPUT«No applicable candidates found to dispatch to for 'infix:-_-'␤in Main (/tmp/kKs2TfRaqJ:0)␤»
DarkWolf84 it shouldn't be like that
colomon I agree, at a first approx.
DarkWolf84 i want to get ' >>+', '>>*' etc ops in rakudo 23:09
but I can't get '>' char in infix:<> 23:10
like my Obj.^methods(:local)>>.say 23:12
btw the above program works on my computer when it's in file 23:16
colomon Wait, what do you want >>+ to do? 23:18
DarkWolf84 any element should add the $var to it's value 23:20
colomon >>+>> should do that without modifying... 23:21
gotta run,alas....
DarkWolf84 ok 23:22
rakudo: <1,2,3> >>+>> 1
p6eval rakudo 834929: ( no output )
DarkWolf84 hm
23:23 zpmorgan joined
DarkWolf84 oops 23:23
rakudo: (<1,2,3> >>+>> 1).say
p6eval rakudo 834929: OUTPUT«2␤»
DarkWolf84 no it's not that 23:24
the output must be 234 23:25
rakudo: <foo bar baz> >>.say 23:27
p6eval rakudo 834929: OUTPUT«Confused at line 2, near ">>.say"␤in Main (src/gen_setting.pm:3469)␤»
DarkWolf84 rakudo: ("foo", "bar", "baz") >>.say 23:28
p6eval rakudo 834929: OUTPUT«Confused at line 2, near ">>.say"␤in Main (src/gen_setting.pm:3469)␤»
DarkWolf84 1.^methods(:local)>>.say 23:30
rakudo: 1.^methods(:local)>>.say
p6eval rakudo 834929: OUTPUT«Str␤sec␤Int␤pred␤succ␤Num␤WHICH␤ACCEPTS␤perl␤abs␤Scalar␤Rat␤»
DarkWolf84 why that works only here 23:31
:(
where I'm wrong
1.^methods(:local).perl.say 23:32
rakudo: 1.^methods(:local).perl.say 23:33
p6eval rakudo 834929: OUTPUT«[{ ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }, { ... }]␤»
23:33 quietfanatic joined
quietfanatic rakudo: <foo bar baz>>>.say 23:34
DarkWolf84 ok <a b c> is array too
p6eval rakudo 834929: OUTPUT«foo␤bar␤baz␤»
quietfanatic It's the space.
DarkWolf84 I got it
I'm really sleepy now and make many mistakes 23:35
Is there a way to enter > in infix:<> 23:36
?
diakopter looks for mberends 23:37
quietfanatic rakudo: say < \> >
p6eval rakudo 834929: OUTPUT«>␤»
pugs_svn r28434 | diakopter++ | [vijs] clean up relic 23:38
quietfanatic vijs: say 3 + 4 23:42
p6eval vijs 28433: ( no output )
DarkWolf84 rakudo: multi sub infix:<\>_\<>(Str $a, Str $b){ return "Test"; }; say "a" >_< "b"; 23:44
p6eval rakudo 834929: OUTPUT«Could not find non-existent sub _␤»
quietfanatic Oh, you mean in sub declarations?
DarkWolf84 yeah 23:45
is it posible
quietfanatic Hmm.
diakopter vijs: say 3 + 4
p6eval vijs 28433: OUTPUT«Can't locate object method "parsefile" via package "STD" (perhaps you forgot to load "STD"?) at vivjs line 32.␤»
diakopter quietfanatic: that happens sometimes, it seems... mostly when STD is rebuilding. I'll look into it
quietfanatic sub infix:< _\>_ > ($a, $b) { say $a + $b }; 3 _>_ 4
diakopter vijs: say 3 + 4 23:46
p6eval vijs 28433: OUTPUT«7␤»
quietfanatic rakudo: sub infix:< _\>_ > ($a, $b) { say $a + $b }; 3 _>_ 4
p6eval rakudo 834929: OUTPUT«Confused at line 2, near "_>_ 4"␤in Main (src/gen_setting.pm:3469)␤»
diakopter std: sub infix:< _\>_ > ($a, $b) { say $a + $b }; 3 _>_ 4
p6eval std 28433: OUTPUT«ok 00:02 101m␤»
quietfanatic rakudo: sub infix:< __ > ($a, $b) { say $a + $b }; 3 __ 4
p6eval rakudo 834929: OUTPUT«7␤»
DarkWolf84 vijs using STD?
nice
quietfanatic DarkWolf84: I guess Rakudo can't do that yet.
DarkWolf84 ok
quietfanatic Though I don't know why > in particular doesn't work. 23:47
sub infix:<< _>_ >> ($a, $b) { say $a + $b }; 3 _>_ 4
diakopter rakudo: sub infix:<< >>>> >> ($a, $b) { say $a + $b }; 3 >>>> 4
p6eval rakudo 834929: OUTPUT«Malformed routine definition at line 2, near "infix:<< >"␤in Main (src/gen_setting.pm:3469)␤»
quietfanatic rakudo: sub infix:<< _>_ >> ($a, $b) { say $a + $b }; 3 _>_ 4 23:48
DarkWolf84 I think <a> is the same as ('a')
p6eval rakudo 834929: OUTPUT«7␤»
crythias Can't open perl script "STD_syntax_highlight": No such file or directory
diakopter crythias: :P
yeah it needs to be STD_syntax_hitlite
quietfanatic Looks like it works if you don't use single angles.
diakopter hilite
diakopter goes to fix
crythias ...
what? it's not *my* fault.
I'm just the messenger. 23:49
DarkWolf84 uietfanatic: thaks anyway 23:50
pugs_svn r28435 | diakopter++ | [vijs] attempt to fix std_syntax_highlight dir
diakopter evalbot control restart 23:51
23:51 p6eval left, p6eval joined
diakopter /msg p6eval say 3 23:51
better, sorta
oops, wrong [vijs] there..
DarkWolf84 bye all 23:52
23:52 DarkWolf84 left
zpmorgan I just watched Larry Wall's talk at google, and was impressed by his number of workspaces 23:55
23:55 meppl left
quietfanatic Yeah, he uses 15. 23:56
He like to keep a maximized terminal on most of them, each one in a different directory/computer. 23:57
I only recently changed from 6 to 12. 23:58
diakopter std: say 40:5
p6eval std 28434: OUTPUT«===SORRY!===␤Confused at /tmp/jXb3F3Cgzv line 1:␤------> say 40⏏:5␤ expecting any of:␤ POST␤ bracketed infix␤ infix stopper␤ postfix␤ postfix_prefix_meta_operator␤ standard stopper␤ statement modifier loop␤
..terminator␤ whitespace␤FAILED 00:01…