»ö« | 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:04 am0c joined
diakopter mberends: awesome 00:06
mberends it's addictive ;)
diakopter yeah it is
00:07 Chillance left
mberends there must be a lot of spectests either passable or easily reached 00:08
diakopter ++TimToady adding computed signature to blocks from its locals with ^ twigils
mberends that must be handy, so closures internally are not so anonymous 00:09
diakopter yeah 00:10
mberends: the .eval_args member of each node (results of strictly eval'd arguments/children) - I'm gonna switch it to be a p6builtin.List 00:11
(and someday an actual Capture or whatever :)
mberends how does JS access members of the p6 List? 00:12
diakopter list_obj.items[index] and I guess it needs a .has_another(last_successful_index) index or smth 00:13
along with a .get_next(last_successful_index) 00:14
mberends no prob there
diakopter Probably there's a proper Perl 6 way of saying those :)
00:15 Ctrl-ZZZ left
mberends yeah, something that deals with lazy lists, such as $file.get() 00:16
it's the internal layer below those functions that we want 00:17
my plan: sleep, home chores, get harness-fudging.pl useable, tidy + comment the most important .js code for other devs. 00:20
00:21 am0c left 00:22 cognominal joined
mberends afk & # sleep 8*3600 00:23
diakopter tomorrow I think I'll spend the whole day refactoring it all for *real* method/member dispatch (.invoke) and integrate the new type/class system I wrote 00:25
00:25 hercynium left, hercynium joined
crythias I think class warfare is bad. 00:26
TimToady I particularly hate spitwads.
00:26 nbrown joined
crythias indeed. and chattering teeth. 00:26
00:27 cognominal left
TimToady retreats to go socialize with real people 00:27
crythias I wish I could do that.
crythias 's wife nudges him. 00:28
00:28 rhr joined, eMaX left
quietfanatic C Header files are more complex than I suspected, but I shouldn't have to completely parse every piece of them. 00:28
only the typedefs and function declarations.
00:28 eMaX joined
crythias just use #ifdef FALSE and you don't have to worry about it. 00:29
quietfanatic I'm not writing them, just reading them. 00:30
carlin I'm using IO::Socket::INET to send headers to a webserver, but recv() doesn't return until the server closes the connection (after 300 seconds). Does anyone know how this is supposed to work? 00:31
00:32 cognominal joined 00:35 quietfanatic left 00:38 drbean_ left 00:39 cognominal left 00:40 rhr_ left 00:44 kid51 joined
kid51 Are ircperlorg and ircperlorg1 down? 00:46
00:51 discHead left 00:55 hercynium left
crythias if they are, I'd feel a bird irc'd... 00:55
s/bird/bit
kid51 looks like ircperlorg is back up 01:02
pugs_svn r28561 | colomon++ | [t/spec] Full version of the new trig tests. (Still a bit of work to do.) 01:09
01:09 quietfanatic joined 01:16 orafu left, lanny joined, orafu joined 01:19 stephenlb left, tak11 left
lanny rakudo: Rat(0, 0).perl.say 01:23
p6eval rakudo be44f6: OUTPUT«invoke() not implemented in class 'Rat'␤in Main (/tmp/6rEr5acH7H:0)␤»
lanny rakudo: Rat.new(0,0).perl.say
p6eval rakudo be44f6: OUTPUT«Divide by zero␤»
colomon That seems to be a hole in the Rat. 01:24
lanny hah. :)
If 1/0 is a Rat then surely 0/0 == 1? 01:25
crythias 0/0 is how much water it takes to fill a klein bottle. 01:26
colomon BTW, I think it's definitely worth having your Num.Rat in Rakudo, and I can do the technical end of adding it (if you'd like), but I don't know about handling the legal end of things, if you know what I mean. 01:27
rakudo: say 0.0 / 0.0;
p6eval rakudo be44f6: OUTPUT«Divide by zero␤»
lanny I'll add it. Just writing the tests.
Had to get kids from school, then entertain them, then supper, yada yada yada.
colomon I understand. 01:28
01:33 hudnix left
lanny So I'm with you on method Rat being in Num but I find it odd that there is no S32-num/num.t 01:38
For now I'll test in rat.t and they can be moved 01:39
colomon I think S03-operators/arith.t covers most of tests that would be in num.t if it existed.
lanny Thanks 01:40
colomon I think there should be a num.t longterm, though.
diakopter crythias: o/o
lanny There sort of is. A lot of the operations are in S-32/*.t. But there isn't a num.t explicitly
colomon I added rat.t myself, and I until recently complex.t only tested complex-specific functions.
They have been built up in a rather ad-hoc fashion. 01:41
lanny Oh yes. I recall.
01:58 TiMBuS joined 02:01 rhr_ joined 02:15 rhr left 02:18 dalek left 02:19 dalek joined
colomon Did I break dalek by pushing too many commits at once? 02:20
02:22 kid51 left
lanny Programming reminds me (every time I do it) of that joke about, "I know this like the back of my hand", and then they look at the back of their hand and say, "Where did that come from?" 02:24
diakopter dalek: wb 02:53
03:09 SmokeMachine left 03:10 jaldhar joined, SmokeMachine joined 03:11 wknight8111 left 03:13 rhr joined 03:14 payload left, sbp left, [particle] left, synth^2 left, baest_ left, Maddingue left, wayland76 left, elmex left, Woodi left, zaphar_ps left, jrtayloriv left, s1n left, viklund left, jnthn left, Eevee left, rapacity left, michaelr left, Trey left, Aisling left, andreasg_ left, ilbot2 left, r0bby left, Woody2143 left, jnthn_ joined, viklund_ joined, michaelr_ joined, andreasg1 joined, rapacity_ joined 03:15 elmex joined 03:16 sbp joined 03:25 rhr_ left 03:43 jrtayloriv joined 03:55 spooneybarger joined 03:56 spooneybarger left, spooneybarger joined, spooneybarger left, cdarroch left
lanny Anyone on use git-svn for working with svn.pugscode.org? 04:03
04:06 [particle]1 joined 04:13 rapacity_ is now known as rapacity 04:14 justatheory left, justatheory joined 04:33 PacoLinux left, zerhash left, sjohnson left, christine left, pugs_svn left, ezra left, phenny left, yves left, gbacon left, lambdabot left, allbery_b left, omega left 04:35 omega joined 04:36 ezra joined, christine joined, ezra is now known as Guest15333 04:37 pugs_svn joined 04:47 gbacon joined, zerhash joined, allbery_b joined, sjohnson joined 04:48 yves joined
pugs_svn r28562 | lwall++ | [STD,Cursor] add $?SIGNATURE for lexical scopes that have one 04:52
r28562 | symbolicalize the xpos and opos links
04:52 PacoLinux joined 05:01 lanny left 05:38 [particle]1 left 05:42 justatheory left 05:51 Woodi joined
pugs_svn r28563 | lwall++ | [t/spec] random bug suppression 06:02
06:04 envi^home joined 06:10 alanhaggai joined 06:13 alanhaggai_ joined 06:15 yahooooo left, yahooooo joined 06:17 alanhaggai left, alanhaggai joined, alanhaggai left, alanhaggai_ is now known as alanhaggai 06:40 zloyrusskiy joined, zloyrusskiy left 07:24 zloyrusskiy joined 07:31 xenoterracide joined 07:47 zloyrusskiy left 07:57 alanhaggai left 07:58 ejs joined 08:19 patspam1 joined, patspam1 left 08:20 patspam1 joined, patspam1 left 08:22 eMaX left 08:33 drbean joined 08:36 kyle_l5l joined 08:37 eMaX joined 08:40 pmurias joined 08:45 redicaps joined 09:11 kyle_l5l left 09:24 lambdabot joined 09:29 masak joined 09:32 phenny joined
masak TimToady: I tried using closures instead of continuations. It's... not as ugly as I feared. So you've half-convinced me. I guess I'll just create an emulate-continuations-with-closures module when the time is ripe. 09:35
phenny masak: 02 Oct 18:16Z <diakopter> tell masak there's a file in perl6/sprixel/ that starts with RE and ends with ADME :)
masak should have ssen that one coming :)
09:49 abra joined 09:54 crythias left 10:12 masak left 10:24 Whiteknight joined 10:34 zloyrusskiy joined 10:35 zloyrusskiy left 10:52 dakkar joined 11:14 zloyrusskiy joined
carlin Is there a way to make IO::Socket.recv() return before the server closes the connection? 11:19
eg, I'm trying to connect to Apache and it hangs until the server times out before returning any headers etc. 11:20
11:21 icwiener joined 11:35 icwiener left 11:37 icwiener joined 12:14 fridim joined 12:18 araujo left 12:30 envi^office left 12:31 envi^office joined 12:45 ruoso left 12:47 kidd joined 12:50 xenoterracide left 12:52 jnthn_ is now known as jnthn, abra left
jnthn o/ 12:54
12:59 redicaps left
mberends \o jnthn, any interesting plans for the last few days of your trip? 13:14
jnthn mberends: well, in some senses, today is last full day 13:16
was a fun one though :-)
mberends :-) 13:17
jnthn Tomorrow will fly back to Tokyo and be there for tomorrow night
Plus meet a friend for beer++
And then on Monday, it's the long flight home.
Tuesday it'll be back to Normal Life 13:18
mberends as you're known as a beer-to-code converter, (meet with a friend)++ 13:19
jnthn It's not really a writing code kinda meetup :-) 13:21
13:21 nihiliad joined
jnthn I'll do some beer2code when I get back to Slovakia though. :-) 13:22
mberends ok :-) are you able to restart lambdabot? irclogs are not recording.
diakopter howdy mberends, jnthn
mberends howdy doody diakoptery
jnthn No idea about lambdabot, no, sorry :-(
pmurias diakopter: hi
jnthn hi diakopter 13:23
pmurias diakopter: i'm working on making mildew emit js code
jnthn btw, it didn't hit news.perlfoundation.org just yet, but I did get news that my signatures grant is approved.
mberends great!
jnthn I'll be digging right in on my return. :-)
diakopter pmurias: hi to you too :)
pmurias ;) 13:24
diakopter jnthn: yay..
jnthn will also need a new laptop....
This one is finally done for. :-/
mberends not just the mouse button?
jnthn mberends: It's been acting odd in other ways too....they could be related. 13:25
I slightly fear it may be mobo related fail though.
mberends I just broke another hard drive (by a hard impact). I've decided to get only solid state drives. 13:26
jnthn ouc
*h
diakopter pmurias: what sort of js code? target fglock's compiler/runtime? or another? 13:28
colomon Yay grant!
mberends diakopter, in a few hours' time I plan to get very busy with sprixel documentation and code cleaning, so please commit early and often, and check for incoming updates too. 13:30
lisppaste3 pmurias pasted "untitled" at paste.lisp.org/display/88098
diakopter mberends: let me know whether you were going to add things to List... otherwise I was going to work on its internals and add laziness and multiple placeholder-take to map
pmurias diakopter: i'm writing the runtime for it atm 13:31
mberends moritz_++ is away for the weekend, hopefully someone else can restore irclog operation 13:32
afk & # other_stuff
jnthn oh my...sprixel? 13:35
jnthn can't keep up with all the new projects
diakopter (renamed vijs)
jnthn oh
That's just a mental re-naming then :-) 13:36
13:36 JarJarBinks left
diakopter sum1 should connect bots named rakudo, pugs, perl6, sprixel, just so tab-completion works _for_me_ :D 13:37
pugs_svn r28564 | pmurias++ | m0ld --js emits syntacticly valid js
r28565 | pmurias++ | [m0ld] started a runtime for code emitted via m0ld --js
r28566 | pmurias++ | [m0ld] added interpreter to the js runtime
r28567 | pmurias++ | [m0ld] some progress on the --js runtime
diakopter pmurias: cool.. :) I like that paste 13:38
jnthn: (anagram of perlsix, in case you didn't notice) 13:39
coined by crythias 13:40
phenny: tell crythias someday we'll credit you with coining 'sprixel'
phenny diakopter: I'll pass that on when crythias is around.
diakopter heh
diakopter reads S07, slowly for once 13:52
13:59 icwiener_ joined
diakopter I might as well implement lazy lists before List's Positional anyway... 13:59
std: &say..&die 14:07
p6eval std 28567: OUTPUT«ok 00:02 126m␤»
14:13 envi^office left 14:14 envi^office joined, icwiener left 14:16 TiMBuS left
carlin Bah! Rakudo won't create a Makfile if SVN isn't installed, it just dies saying you have "revision 0" of Parrot 14:21
carlin does echo 0 > build/PARROT_REVISION 14:23
14:23 Psyche^ joined
mberends diakopter: brief thought between @other_stuff: it would be nice to rename 'sprixel.pl' to sprixel and make it executable. To enable that, let's bring in another convention first and rename the 'sprixel' directory to 'sprixel.d' 14:25
pmurias can't the executable live in the sprixel directory? 14:30
diakopter pmurias: no, because then viv would create lex/ in that subdir 14:33
viv/STD
which is why I moved it back to perl6/
it was havocing with keeping the snap/p6eval system maintainable 14:35
pmurias we could symlink the lex/ directories? 14:36
diakopter ok... :) s/maintainable/maintainably by me & moritz/ 14:37
14:40 Patterner left, Psyche^ is now known as Patterner 14:43 fridim left 14:51 justatheory joined 14:57 meppl joined 14:58 cognominal joined 15:29 zloyrusskiy left 15:30 abra joined, abra left, abra joined
TimToady maybe lex should turn into ~/.perl6/cache or some such 15:32
diakopter likey likey 15:35
TimToady since I'd also like to cache .syml files and such 15:36
15:40 nErVe joined 15:47 araujo joined 15:50 blahblahblah joined 15:51 blahblahblah left 15:59 xenoterracide joined
pmurias TimToady: keep in mind that there maybe multiple versions of STD in use 16:11
pugs_svn r28568 | pmurias++ | [m0ld] say "Hello World" works with --js 16:29
16:29 masak joined
masak o/ 16:29
pmurias o\ 16:30
masak a person and somebody else's arm? :)
TimToady person being hit by a cluebat 16:31
masak :)
luckily, cluebats in #perl6 are all made of foam. 16:32
diakopter masak: btw my RE ADME cluebomb was referring to your building perl-v8 question :) 16:33
16:33 cognominal left
masak yes, I realized that. I figgered out most of it myself, I think. 16:34
didn't manage to build v8, though. but I only tried once so far.
diakopter masak: you on amd64? or ia32
or arm, I guess
masak I always forget... 16:35
it's gotta be Intel, because there was a big hubbub about Apple switching to Intel a while ago...
TimToady it's easier to never remember
diakopter yeahbut 16:36
ppc wasn't one of the options I gave you :P
masak maybe never remembering was indeed what I did. I don't remember.
diakopter sprixel: note 'A440' 16:37
p6eval sprixel 28567: OUTPUT«Undeclared routine:␤ note used at line 1␤»
diakopter i c.
16:38 jferrero joined, explorer__ joined
diakopter std: note 'A440' 16:38
p6eval std 28567: OUTPUT«Undeclared routine:␤ note used at line 1␤ok 00:01 97m␤»
16:38 explorer__ left
masak diakopter: do I read the backlog correctly? sprixel is _slower_ than rakudo? o.O 16:38
diakopter masak: yes, for microbenchmark of loop {} 16:39
there are lot of intermediate tree-walkings that can be rolled up though
pmurias it's an interpreter written in javascript
16:39 ejs left
masak still, v8 is rumored to be fast. 16:40
pmurias faster then C?
masak I was sorta hoping sprixel would give us some gratuitous speed.
pmurias: rakudo doesn't run on C, it runs on a VM running on C.
pmurias sprixel runs on a VM running on javascript 16:41
diakopter pmurias: shootout.alioth.debian.org/u32/benc...p;lang=all
masak: sprixel doesn't run in javascript, in runs on a VM written in javascript running on a javascript VM written in C++ that emits unoptimized machine code 16:42
masak oh. 16:43
diakopter but a lot of the intermediate descents/ascents on the ast can be "rolled up" if the heuristics for detecting such situations were encoded somewheres 16:44
and in general, anything like that that's deterministic and pure can be folded
pmurias and i'm working on making mildew emit js code so we might be able to just compile perl6 to javascript 16:45
diakopter masak: (and fglock is doing much the same thing, but with mp6 instead of smop/mildew)
masak oh. for some reason I thought sprixel was emitting js code. 16:46
Perl 6 in the browser would be so awesome.
pmurias mp6 should offer performace similiar to js but it' 16:47
diakopter the Perl 5 script ToJS.pm emits js code, but js code that only reconstructs the ast in the JS world
pmurias only works for a subset
16:49 lanny joined
masak oh, right. I had a few bugs for you today. 16:52
most of them known, I think.
rakudo: my $x = 1; my @a; while $x < 5 { @a.push($x); $x++ }; say @a.perl 16:53
p6eval rakudo e976f2: OUTPUT«[5, 5, 5, 5]␤»
masak rakudo: for 1,2,3 -> $a, $b = $a { say $b } 16:56
p6eval rakudo e976f2: OUTPUT«2␤StopIteration␤in Main (/tmp/5WCiLsPJDY:0)␤» 16:57
masak rakudo: map -> $a, $b = $a { say $b }, 1, 2, 3
p6eval rakudo e976f2: OUTPUT«1␤2␤3␤»
16:59 jan__ left
masak rakudo: my Hash $h 17:01
p6eval rakudo e976f2: OUTPUT«Could not build C3 linearization: ambiguous hierarchy␤in sub trait_mod:of (src/gen_setting.pm:136)␤called from Main (/tmp/2NM23mIRQC:0)␤»
masak rakudo: my Array $a
p6eval rakudo e976f2: OUTPUT«Could not build C3 linearization: ambiguous hierarchy␤in sub trait_mod:of (src/gen_setting.pm:135)␤called from Main (/tmp/LOmMwAmLSm:0)␤»
lanny rakudo: Rat.new(1, 1e4).perl.say 17:02
p6eval rakudo e976f2: OUTPUT«too many arguments passed (3) - 1 param expected␤in Main (/tmp/7r63C0XIZu:0)␤»
lanny rakudo: Rat.new(1, 1e4.Int).perl.say
p6eval rakudo e976f2: OUTPUT«1/10000␤»
pugs_svn r28569 | lanny++ | [t/spec] add tests for Num cast to Rat 17:05
17:05 fridim joined
lanny Let's see. May I have a commitbit for Rakudo or shall I submit cast of Num to Rat as a patch? (If any that control commitbits or have insight are listening.) 17:08
pmurias diakopter: what could an Unsupported value type at XXX when calling ->execute on V8::Context mean? 17:09
masak lanny: getting a Rakudo commitbit takes some time. better to submit a patch, I think. 17:10
lanny Thanks. Shall do.
pugs_svn r28570 | diakopter++ | [sprixel] make ranges work (in list context only, and only when assigning to @slot!) lazily, and also make list access by index work. only by Int. 17:16
diakopter pmurias: it's an interesting thing
perl-v8 tries to send the result of the last statement in your js file back to Perl, and if it's not a string or number, it can't convert it, b/c it knows how to convert only to SV 17:17
so, a cutesy workaround is to add a 1; as the last line of the .js file. :D 17:18
sound familiar?
perl6: my @a = 4..99999999; say @a[99999999-5]; say @a[99999999-4] 17:20
p6eval sprixel 28570: OUTPUT«99999998␤99999999␤» 17:21
..pugs: OUTPUT«Stack space overflow: current size 8388608 bytes.␤Use `+RTS -Ksize' to increase it.␤»
..elf 28570: OUTPUT«Can't call method "postcircumfix__91_32_93" without a package or object reference at (eval 126) line 4.␤ at ./elf_h line 5881␤»
..rakudo e976f2: ( no output )
17:21 nihiliad left
colomon lanny: That "too many arguments passed (3) - 1 param expected" error is because Rat.new(Int, Num) doesn't match the Rat.new(Int,Int) signature or the Rat.new(%hash_of_parameters) signature. It's a bad error message, but it's correct. 17:27
lanny Understood.
diakopter sprixel: my @a = 4..99999999; say @a[99999999-5]; say @a[99999999-4]; say @a 17:28
p6eval sprixel 28570: OUTPUT«99999998␤99999999␤9999999899999999␤»
diakopter hah
hm. a little too lazy, methinks 17:29
sprixel: my @a = 4..999999999999; say @a[999999999999-5]; 17:30
p6eval sprixel 28570: OUTPUT«-727379970␤»
diakopter hee
17:32 b_jonas joined
diakopter sprixel: my @a=6,5,4,3,2,1; say (map { $_ * $_ * 2 + 3 }, @a)[2] 17:37
p6eval sprixel 28570: OUTPUT«35␤»
diakopter ok, positional access works better than I expected
17:38 rgrau left, kidd_ joined, b_jonas left 17:41 abra left 17:47 zloyrusskiy joined 17:51 masak left 17:53 jferrero left 17:55 nihiliad joined
pugs_svn r28571 | diakopter++ | [sprixel] made list flattening also deref @slots 17:56
r28572 | pmurias++ | [mildew] mildew -Bjs works 17:58
r28573 | diakopter++ | [sprixel] remove debug line diakopter-- diakopter--
pmurias diakopter: thanks, mildew -B now works
diakopter yw :)
good ol' 1;
pmurias you can also use -Cjs to see the javascript
diakopter perl6: my @a = 4,5,6,7; @a = map { $_ + 5 }, 3,5,7,9,@a; say @a; 17:59
p6eval pugs, rakudo e976f2, sprixel 28570: OUTPUT«81012149101112␤»
..elf 28571: OUTPUT«Use of uninitialized value $_ in addition (+) at (eval 123) line 4.␤Undefined subroutine &GLOBAL::map called at (eval 123) line 4.␤ at ./elf_h line 5881␤»
pugs_svn r28574 | lwall++ | [S06] 18:13
r28574 | remove 'is inline' as supportive of bad premature optimization policy
r28574 | instead establish hard/soft distinctions for routine mutability
r28574 | default to hard, unless specifically requested soft by anyone (that is,
r28574 | much like the application-wide declarable dynamicism of class semantics
r28574 | (we really need a shorter name for this principle...))
18:15 NorwayGeek left, Rugxulo joined
TimToady "declarative pessimization" maybe 18:18
"prepessimized" 18:19
diakopter "unoptimizablization"
TimToady that doesn't imply predeclaration 18:20
I like the work "prepessimal" just for the sound of it :) 18:21
*word
diakopter and the work
18:22 Trey joined
TimToady anyhoo, I've never heard this principle discussed anywhere; it just seems that most language assume you tell an optimizer what it can do, not what it can't do 18:23
*languages 18:24
selective dynamicism is another way to look at it 18:25
diakopter the 'dynamic' keyword in C# is sorta analogous 18:26
TimToady but is that only used in self-flagellation, or can it be applied to an unwitting victim? 18:28
diakopter well in .Net CLR's case, it's self-flagellation (on the part of the compiler writers), but I guess for Mono, they're the victim, being copycats. but I suppose you meant the user of the language... :) 18:29
18:35 _Jedai_ left
pugs_svn r28575 | lwall++ | [S02] add SoftRoutine and HardRoutine types to type lists 18:35
18:35 Jedai joined 18:46 Rugxulo left 18:53 perl7 joined 18:58 Ctrl-ZZZ joined
diakopter rakudo: say -2..6 19:05
p6eval rakudo e976f2: OUTPUT«-2-10123456␤» 19:06
diakopter quietfanatic: is that right? ^^
quietfanatic I think so.
TimToady rakudo: say (-2..6).Str
p6eval rakudo e976f2: OUTPUT«-2 -1 0 1 2 3 4 5 6␤»
diakopter i c 19:07
TimToady rakudo: say (-2...6).Str
p6eval rakudo e976f2: OUTPUT«-2 -1 0 1 2 3 4 5 6␤»
TimToady rakudo: say (-2...*+2,6).Str
p6eval rakudo e976f2: OUTPUT«-2 -1 0 1 2␤»
TimToady o_O 19:08
that's bogus
19:08 perl7_ joined
diakopter rakudo: say (-2...{},6).Str 19:09
p6eval rakudo e976f2: OUTPUT«-2 -1 0 1 2␤»
diakopter rakudo: say (-2...{}).Str
p6eval rakudo e976f2: OUTPUT«-2 -1 0␤»
TimToady rakudo: say (-2 ... *+2, 6).Str
p6eval rakudo e976f2: OUTPUT«-2 -1 0 1 2␤» 19:10
quietfanatic I don't get this a...b,c syntax
TimToady rakudo: say (-2 ... {$_+2}, 6).Str
p6eval rakudo e976f2: OUTPUT«-2 -1 0 1 2␤»
quietfanatic rakudo: say (-2 ... {$_ <= 6 ? $_+2 : ()} ).Str 19:11
p6eval rakudo e976f2: OUTPUT«Confused at line 2, near "? $_+2 : ("␤in Main (src/gen_setting.pm:3468)␤»
quietfanatic rakudo: say (-2 ... {$_ <= 6 ?? $_+2 !! ()} ).Str 19:12
p6eval rakudo e976f2: OUTPUT«-2 0 2 4 6 8␤»
diakopter rakudo: say (-2...(9,9)).Str
p6eval rakudo e976f2: OUTPUT«-2 -1 0 1 2␤»
diakopter yeah 19:13
19:24 nErVe left 19:26 perl7 left 19:37 RoomsUser_ joined
quietfanatic rakudo: say (-2 ... {$_+2 if $_ < 6}).Str 19:40
p6eval rakudo e976f2: OUTPUT«-2 0 2 4 6␤»
19:43 Confield joined 19:47 RoomsUser_ left 19:48 RoomsUser_ joined 19:53 Confield left 19:55 envi_office2 joined 19:58 RoomsUser_ left 20:02 FCO joined 20:04 colomon left 20:07 envi^home left 20:08 envi^office left, perl7_ left
pugs_svn r28576 | pmurias++ | [mildew] added -e 20:09
20:18 envi^office joined 20:19 SmokeMachine left
pmurias diakopter: do you think we could use mildew as the compiler for sprixel? 20:20
20:21 FCO left
diakopter pmurias: sure, I don't see why not 20:26
really, all that sprixel adds to the "Perl 6" effort so far is a bit of visualization (in JS source code form) into the semantics of the nodes of STD's output, many of which are generated by mangle.pl, of course 20:27
so, a bit more semantic linkage between STD and the synopses 20:28
pmichaud TimToady: while working on grammars a bit more... perhaps <sym> should have an implicit <!ww> at its end?
e.g.: token infix:sym<mod> { <sym> }
s.b.: token infix:sym<mod> { <sym> » } 20:29
but it gets taken care of "automagically" if we say that <sym> includes the <!ww>
if some one really wants the other semantics, there's always 20:30
token infix:sym<mod> { $<sym>=[mod] }
anyway, just an idea
diakopter (I agree; that adds the potential for more efficient "pre-lexing")
(if I understand correctly) 20:31
pmichaud that's possible also, yes.
I just know that it's very easy to overlook the prefixish possibility 20:32
20:32 dakkar left
pmichaud and typically when someone says token infix:sym<mod> { <sym> } they aren't expecting it to match the "mod" in "modular" 20:32
20:32 zloyrusskiy left
diakopter right, so ww+ can almost always be looked at as a unit (yay) 20:33
(aside: JSMeta's default 'keyword' combinator applied exactly that by default; it sped up parsing greatly when I added that) 20:34
(and since JSMeta is scannerless, it sped up scanning too :) 20:37
pmurias JSMeta? 20:38
20:38 envi_office2 left
diakopter pmurias: jsmeta.org - an implementation of Microsoft's MGrammar parser-generator DSL 20:39
it has a nice UI, but I oughtta rollback the last commit I made to it, since it added some neat features but also broke stuff 20:40
pugs_svn r28577 | pmurias++ | [mildew-js] added infix:~ t/01-sanity/01-tap.t passes 20:42
diakopter pmurias++ 20:43
pmurias: can I add mildew-js to p6eval? 20:44
pmurias np 20:45
it only does &say and &infix:<~> for now 20:46
diakopter strings and integer literals?
pmurias string ones... fixing 20:48
diakopter mildew: say 4
20:48 Tene left
p6eval mildew: OUTPUT«4␤» 20:48
diakopter mildew: say say 4
p6eval mildew: OUTPUT«unknown method "Str" at message line 79 file build/native/src/capture_message.c␤4␤»
diakopter mildew: wild me 20:50
p6eval mildew: OUTPUT«Undeclared routines:␤ me used at 1 ␤ wild used at 1 ␤Could not find variable &wild in the lexical scope.␤»
diakopter std: wild me
p6eval std 28577: OUTPUT«Undeclared routines:␤ me used at line 1␤ wild used at line 1␤ok 00:03 97m␤»
diakopter mildew uses a branch of std? 20:51
pmurias a snapshot
diakopter o 20:52
pmurias i should get round to updating it some day
diakopter is p6eval's mildew: using the same codebase/everything as mildew-js? (I mean the converse question)
20:54 Tene joined
pmurias mildew needs the -Bjs option to use the js backend 20:54
diakopter that's it? (no other changes for it to work in p6eval?)
pmurias thinks so 20:55
diakopter evalbot control restart 20:57
20:57 p6eval left, p6eval joined
diakopter mildew-js: say "hidy ho, neighbors" 20:57
p6eval mildew-js: OUTPUT«hidy ho, neighbors␤»
diakopter workage
pmurias cool
20:59 fridim left
pugs_svn r28578 | diakopter++ | [evalbot] add mildew-js as another p6eval target; didn't add it to the perl6: 20:59
r28578 | group; anyone can add that anytime...
pmurias shower& 21:02
diakopter diakopter@d5dev01:~/src/pugs/src/perl6$ v8 --nodebugger -e 'var a=0;try{function A(){++a;A()};A()}catch(e){print(a)}' 21:06
21829
not a very deep stack
21:10 ruoso joined
diakopter mildew-js: say "hi ruoso" 21:15
p6eval mildew-js: OUTPUT«hi ruoso␤»
ruoso wow... that's cool
diakopter pmurias made that today 21:16
mildew-js: say "4","5" 21:17
p6eval mildew-js: OUTPUT«4␤»
pugs_svn r28579 | pmurias++ | [mildew-js] m0ld emits integer constants correctly, say takes multiple 21:21
r28579 | arguments, fixed -C
21:22 jan__ joined
ruoso diakopter, pmurias, does it generate from m0ld to js? 21:23
diakopter yes
pmurias nopasted some above somewhere 21:24
pmurias ruoso: m0ld has a --js option
ruoso: you can see the js with -Cjs
ruoso amazing... 21:26
pugs_svn r28580 | pmurias++ | [mildew-js] fix &infix:<~>
ruoso but does that mean you implemented a smop-like structure in js? 21:27
pmurias yes, see v6/re-smop/m0ld/runtime.js
ruoso that is awesome... 21:29
because it even means we have an enrionment where it's easier to evaluate smop concepts...
pmurias sleep& 21:42
21:42 pmurias left 22:03 jferrero joined 22:04 vio joined 22:09 kid51 joined 22:10 vio left 22:13 eternaleye joined 22:17 SmokeMachine joined
TimToady pmichaud: generally, <!ww> is a bad plan for operators, since might be composed into a metaoperator 22:21
for instance, we used to have XopX
and the LTM handles it anyway
22:22 envi_office joined
TimToady for those categories that need a consistent constraint, we already have implicit <endsym> after the <sym> 22:22
22:25 envi^office left 22:45 Khisanth left 22:46 lanny left 22:49 buubot left, jimk joined 22:51 buubot joined, envi_office left 22:52 envi^office joined 22:53 jimk left 22:54 Jedai left 22:58 kid51 left, Khisanth joined, fridim joined 23:52 jferrero left