Camelia, the Perl 6 bug

IRC log for #parrot, 2009-03-25

Parrot | source cross referenced

| Channels | #parrot index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:09 AndyA joined #parrot
00:11 Theory joined #parrot
00:17 zpmorgan joined #parrot
00:19 TiMBuS joined #parrot
00:24 eternaleye joined #parrot
00:57 eternaleye joined #parrot
00:59 dalek parrot: r37690 | cotto++ | trunk/DEPRECATED.pod:
00:59 dalek parrot: [DEPRECATED] add notice about parrot_new_pmc_hash
00:59 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37690/
01:25 alvar joined #parrot
02:14 Theory joined #parrot
02:36 rdice joined #parrot
02:53 Theory joined #parrot
03:16 msmatsko joined #parrot
03:18 Theory joined #parrot
03:20 allison joined #parrot
03:23 dalek parrot: r37691 | allison++ | trunk/ports/debian/libparrot.install.in:
03:23 dalek parrot: [debian] Shift the libparrot install list to a template, so version can
03:23 dalek parrot: be specified.
03:24 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37691/
03:27 dalek parrot: r37692 | allison++ | trunk/ports/debian/libparrot.install.in:
03:27 dalek parrot: [debian] Specify the version for libparrot in the install list.
03:27 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37692/
03:33 dalek parrot: r37693 | allison++ | trunk/ports/debian/rules:
03:33 dalek parrot: [debian] Manually cleaning installable_pbc_to_exe, since it wasn't
03:33 dalek parrot: cleaned by Parrot's 'make distclean' process. Thanks to Colin Watson for
03:33 dalek parrot: the patch.
03:33 purl We don't need no stinking patch!
03:33 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37693/
03:40 dalek parrot: r37694 | allison++ | trunk/ports/debian/control.in:
03:40 dalek parrot: [debian] Fixing notation in dependency versions, fixing conflict between
03:40 dalek parrot: shared libparrot versions. Thanks to Colin Watson for the patch.
03:40 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37694/
03:43 dalek parrot: r37695 | allison++ | trunk/tools/dev/pbc_to_exe.pir:
03:43 dalek parrot: [cage] Changing documentation to the 'man' standard header, because
03:43 dalek parrot: currently these docs are dumped straight to man by pod2man.
03:43 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37695/
03:47 dalek parrot: r37696 | allison++ | trunk/ports/debian/rules:
03:47 dalek parrot: [debian] Add libparrot.install template to generated list.
03:47 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37696/
03:47 janus joined #parrot
04:22 tetragon joined #parrot
04:24 dalek parrot: r37697 | allison++ | trunk/ports/debian/parrot-devel.install.in:
04:24 dalek parrot: [debian] Pulling a few more devel files that were necessary for Ubuntu
04:24 dalek parrot: PPA to compile Pynie.
04:24 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37697/
04:27 dalek parrot: r37698 | allison++ | trunk/ports/debian/parrot.install.in:
04:27 dalek parrot: [debian] Pulling in additional library needed for building Pynie from
04:27 dalek parrot: installed Parrot.
04:27 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37698/
04:28 davidfetter seen allison
04:28 purl allison was last seen on #parrot 12 hours, 27 minutes and 3 seconds ago, saying: Coke: aye, so that's what needs to change
04:29 allison hai davidfetter
04:29 davidfetter hai
04:29 davidfetter hope your flight flew
04:30 allison mmm... yes, it was flighty
04:30 davidfetter beats the alternatives
04:31 davidfetter so you mentioned some sandbox code...
04:31 allison yes, a very rough prototype
04:31 davidfetter is it in a state where you're ready to have others jump to silly conclusions about how to use it?
04:31 amoc joined #parrot
04:32 allison mmmmm... not really, but that's one of my milestones for this month so won't be more than a week or two before it is ready
04:32 davidfetter please don't release it (or anything else) next wednesday
04:32 allison what's next wednesday?
04:32 purl next wednesday is the Mtl Mongers meeting, RIGHT?!
04:32 davidfetter it's very early in april
04:32 davidfetter *very* early
04:32 allison oooh, yes :)
04:33 allison hmmm... I think I'll release a new language ;)
04:33 davidfetter heh
04:33 amoc joined #parrot
04:54 dalek parrot: r37699 | cotto++ | trunk/config/gen/makefiles/root.in:
04:54 dalek parrot: [config] add src/string to make cover results, alphabetize dirs
04:54 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37699/
05:15 tuxdna joined #parrot
05:30 dalek parrot: r37700 | allison++ | trunk/ports/debian (3 files):
05:30 dalek parrot: [debian] Removing pbc_to_exe from packages due to hardcoded path.
05:30 dalek parrot: See TT #495.
05:30 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37700/
05:36 dalek parrot: r37701 | fperrad++ | trunk/tools/dev/mk_language_shell.pl:
05:36 dalek parrot: [languages] use a new naming convention for Makefile template :
05:36 dalek parrot:   config/makefiles/root.in --> build/Makefile.in
05:36 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37701/
05:37 tuxdna joined #parrot
05:41 Tene_ joined #parrot
05:56 dalek parrot: r37702 | allison++ | trunk/ports/debian/changelog:
05:56 dalek parrot: [debian] Updating changelog before sending a new set of test packages to
05:56 dalek parrot: the pkg-parrot group.
05:56 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37702/
05:59 dalek parrot: r37703 | allison++ | trunk/ports/debian/rules:
05:59 dalek parrot: [debian] Removing manpage installation for package that has no manpages.
05:59 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37703/
06:12 eternaleye joined #parrot
06:54 uniejo joined #parrot
06:59 eternaleye joined #parrot
07:18 dalek parrot: r37704 | cotto++ | trunk/src/string/api.c:
07:18 dalek parrot: [string] remove a long-obselete comment
07:18 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37704/
07:56 alvar joined #parrot
08:08 bacek joined #parrot
08:38 masak joined #parrot
08:47 skv joined #parrot
08:49 tuxdna joined #parrot
08:58 tuxdna joined #parrot
08:59 tuxdna left #parrot
08:59 Santtu joined #parrot
08:59 tuxdna joined #parrot
09:00 amoc joined #parrot
09:20 bacek joined #parrot
09:22 contingencyplan joined #parrot
09:32 Ademan joined #parrot
09:49 TiMBuS joined #parrot
10:39 dalek joined #parrot
11:04 donaldh joined #parrot
11:04 donaldh left #parrot
11:04 donaldh joined #parrot
11:04 donaldh left #parrot
11:06 donaldh joined #parrot
11:18 amoc joined #parrot
11:21 donaldh joined #parrot
11:32 elmex joined #parrot
12:12 ruoso joined #parrot
12:17 McFist joined #parrot
12:17 dalek parrot: r37705 | jonathan++ | trunk (16 files):
12:17 dalek parrot: [io] Apply patch from bacek++ to bring socket IO back to Parrot. Seems to largely match up with the I/O PDD, and no tests fail as a result (plus the test it adds passes). This patch also contains my naiive port of the code to Win32, which actually just about runs httpd.pir (an example included in bacek++'s patch), though with a curious browser hang once the complete page has been served.  Patch was from TT#496.
12:17 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37705/
12:20 dalek parrot: r37706 | jonathan++ | trunk/compilers (2 files):
12:20 dalek parrot: Undo two files changed accidentally in the last commit - just some things I had lying around locally that I forgot I'd changed.
12:20 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37706/
12:23 dalek parrot: r37707 | jonathan++ | trunk/PBC_COMPAT:
12:23 dalek parrot: Need to bump PBC_COMPAT up since new opcodes were added.
12:24 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37707/
12:34 rg1 joined #parrot
12:42 TiMBuS joined #parrot
13:00 coke_afk jonathan: you in?
13:02 Coke nevermind, commented on ticket.
13:05 gryphon joined #parrot
13:06 mikehh parrot r37704 still failing build tests as per TT#489 - all other tests PASS including make fulltest - rakudo (9a84c35) also builds and make test/make spectest PASS
13:06 Coke mikehh: yes. I commented on the ticket.
13:06 Coke the tests are, IMO, probably testing something that was true for <1.0
13:07 mikehh I am looking at the ticket at the moment
13:09 mikehh the tests do NOT delete the /tmp files
13:10 bkuhn joined #parrot
13:11 mikehh in the comment before yours - it was stated that if the renumbering was done tests passed but would that be a deprecation?
13:12 Coke the more we renumber, the harder it is to support older bytecode.
13:13 dalek parrot: r37708 | coke++ | trunk/src/ops/io.ops:
13:13 dalek parrot: fixup typos and cut and apparently cut-n-paste-os
13:13 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37708/
13:15 Coke we've already deprecated the bytecode version by adding ANY opcodes.
13:15 Coke I'm just trying to avoid shuffling the other 1000 opcode numbers.
13:15 Infinoid jonathan: Is there some online documentation for the win32 sockets API?  (socket, send, recv, etc.)  I want to rtfm on win32 socket autoflush characteristics
13:15 * Coke wishes he had commented on the socket opcodes when they were just in PDD form.
13:16 Coke using an opcode to create a PMC when we already have "new" seems a waste. (but then, so does "iter", so what do I know.)
13:20 jonathan Coke: I kinda agree, but the spec was reviewed recently-ish.
13:20 jonathan Infinoid: Yes, the MSDN is online.
13:23 jonathan Infinoid: http://msdn.microsoft.com/en-u​s/library/ms740673(VS.85).aspx
13:23 shorten jonathan's url is at http://xrl.us/bemi6d
13:32 Infinoid thanks!
13:33 Infinoid examples/io/httpd.pir is a nice start but there are some rough edges I want to fix
13:33 jonathan Infinoid: Please do go ahead!
13:34 Infinoid one of the more worrisome edges is that the "send" op (much like the corresponding send() function in C) is not guaranteed to write the entire buffer, and its return value needs to be checked
13:35 Infinoid oh, I see.  It does loop after all, it just uses goto instead of while.  my mistake
13:36 jonathan I saw the goto and thought "hmm...goto", but trusted that if it's an issue somebody would care and deal with it. :-)
13:36 Infinoid goto isn't an issue.  would be nice to check errno for things like ECONNTIMEDOUT though, so it won't spin forever
13:37 * Infinoid just fixed the 404 stuff (first pir exception I've ever caught!)
13:41 particle you never forget your first one.
13:53 dalek parrot: r37709 | Infinoid++ | trunk/examples/io/httpd.pir:
13:53 dalek parrot: [examples] Fix the httpd.pir 404 handler.
13:53 dalek parrot: Trying to open a nonexistent file results in a EXCEPTION_PIO_ERROR exception which needed to be caught.
13:53 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37709/
13:53 Infinoid is it really that simple?  I mean... there's no state to clean up after, no explicit exception stack pop or anything?
13:56 dalek parrot: r37710 | Infinoid++ | trunk/config/gen/makefiles/root.in:
13:56 dalek parrot: [io] Add some Makefile dependencies to get make -j working again.
13:56 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37710/
13:59 dalek parrot: r37711 | Infinoid++ | trunk/src/io/socket_unix.c:
13:59 dalek parrot: [io] Fix the following warning.
13:59 dalek parrot: src/io/socket_unix.c:255: warning: ISO C90 forbids mixed declarations and code
13:59 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37711/
14:05 riffraff joined #parrot
14:19 dalek parrot: r37712 | coke++ | trunk/t/codingstd/filenames.t:
14:19 dalek parrot: [t] Delete stale docs.(*)
14:19 dalek parrot: (*) This sort of comment shouldn't have been here anyway. There's already a
14:19 dalek parrot: perfectly good way to tell if a test is TODO'd.
14:19 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37712/
14:27 davidfetter joined #parrot
14:29 pmichaud joined #parrot
14:36 dalek parrot: r37713 | Infinoid++ | /docs/html/index.html'� (1 files):
14:36 dalek parrot: [examples] Consolidate examples/io/httpd.pir to use a common send_response() sub.
14:36 dalek parrot: Add the beginnings of a common set of headers; this really should be a Hash but I don't know enough PIR for that yet.
14:36 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37713/
14:36 Coke Infinoid: hashes are easy.
14:36 Coke $P1 = new 'Hash'; $P1['404'] = 'File not found'
14:37 Coke $S1 = '404'; $S2 = $P1[$S1]
14:39 Infinoid ok.  how do you enumerate the keys?
14:40 Infinoid (that's the part I don't know, and won't have time to look up until later today)
14:41 davidfetter seen gerd
14:41 purl gerd was last seen on #parrot 22 hours, 44 minutes and 57 seconds ago, saying: I have to go home, in the evening I will look in my email, bye
14:42 rg infinoid: actually no, you also need to pop_eh in the handler, otherwise it will stay on the stack.
14:42 jonathan Infinoid: my $P2 = iter $P1
14:42 jonathan erm wtf am I thinking
14:43 jonathan $P2 = iter $P1
14:43 pmichaud good morning #parrot
14:43 jonathan Then just use $S0 = shift $P2 in a loop and if $P2 ... to check if the itrator has more values
14:43 jonathan pmichaud: OH HAI
14:44 alvar joined #parrot
14:44 davidfetter mornin', pmichaud :)
14:45 davidfetter anybody know where gerd hangs out, generally?
14:45 nopaste "pmichaud" at 72.181.176.220 pasted "Canonical iteration of hash" (13 lines) at http://nopaste.snit.ch/15956
14:46 Theory joined #parrot
14:52 Whiteknight joined #parrot
14:53 Whiteknight jonathan: ping
14:53 Whiteknight Win32 build fails with the new socket function additions
14:53 jonathan Whiteknight: pong
14:53 jonathan Whiteknight: Specifics++
14:53 jonathan ?
14:54 Whiteknight I just did an svn up + realclean, and build fails
14:54 jonathan (Since I did the socket port for Win32 and tested it hear...)
14:54 jonathan *here
14:54 jonathan OK, which  compiler?
14:54 purl which compiler is "not the one you're using."
14:56 Whiteknight src/io/socket_win32.c: error: too many arguments to function 'inet_addr'
14:56 Whiteknight I'm on strawberry perl here
14:56 Whiteknight so i guess mingw32-gcc
14:58 jonathan Ah.
14:58 Whiteknight (sorry I'm taking so long to respond, boss keeps looking over my shoulder and I have to pretend to do "real work")
14:58 jonathan OK, it was on the MSVC++ compiler I got it going.
14:58 jonathan Hmm.
14:59 jonathan I wonder if you'd have better luck under MinGW compiling with the unix version instead of the Windows ones.
14:59 Whiteknight lots and lots of warnings too in the socket_* functions, but none that look like build-breakers
15:01 Coke mingw ain't cygwin.
15:01 Coke (warnings) for more fun, run 'make codetest' <broken record>
15:02 Whiteknight i can't make codetest, I can't make
15:02 Whiteknight teh buildz r teh failz
15:05 dalek rakudo: f11ad52 | jnthn++ |  (3 files):
15:05 dalek rakudo: Implement START statements (not terms yet). Add S04-closure-traits/start.t to spectest.data.
15:05 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/f​11ad52fdacb47a529474807eb498cff5ee2ca55
15:05 shorten dalek's url is at http://xrl.us/bemjhe
15:05 dalek rakudo: 87068ef | pmichaud++ | docs/spectest-progress.csv:
15:05 dalek rakudo: spectest-progress.csv update: 329 files, 7367 passing, 0 failing
15:05 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/8​7068ef0d02c72829e038acc97b3c54de0434862
15:05 shorten dalek's url is at http://xrl.us/bemjhg
15:06 Infinoid codetest does not require a built tree, just a configured one
15:07 jonathan So is MinGW using the Windows headers, just compiling with GCC?
15:07 Infinoid jonathan++ # that iter stuff is exactly what I needed, thanks
15:07 Infinoid yes
15:07 Whiteknight oh I'm sorry, I was thinking about "coretest"
15:07 jonathan If so, I don't get why the buildz are fail.
15:07 jonathan (Since presumably inet_addr comes from the Win32 API)
15:07 jonathan Either that or we're calling it wrong, but MSVC++ doesn't care...
15:07 Whiteknight inet_addr probably comes from winsock.h, yes
15:08 jonathan Whiteknight: Looking up inet_addr
15:08 Whiteknight let me go through the realclean + update + reconfigure + rebuild dance again. Who knows, maybe the third time is the charm
15:09 Ademan_ joined #parrot
15:09 jonathan Whiteknight: Eh, so, I think we are calling it wrong.
15:09 jonathan And MSVC++ didn't moan about that.
15:10 Infinoid (MSVC++)-- # insufficient moaning
15:10 * Whiteknight resists the urge to make inappropriate joke at the compiler's expense
15:11 Tene joined #parrot
15:11 * Whiteknight has to go do some work, be back in a snap
15:19 nopaste "jonathan" at 85.216.157.73 pasted "probable fix" (14 lines) at http://nopaste.snit.ch/15957
15:19 jonathan Whiteknight: When you get a moment, try the above pasted patch.
15:20 donaldh joined #parrot
15:29 Infinoid I have mingw here, I'll test it if svn ever finishes updating :)
15:31 jonathan Infinoid: OK, great.
15:31 jonathan It works on MSVC++ too. And is actually probably correct. ;-)
15:31 rg infinoid: did you see my note about needing another pop_eh?
15:31 Whiteknight building now
15:34 dalek parrot: r37714 | moritz++ | trunk/src/io (2 files):
15:34 dalek parrot: [cage] clean up some trivial code test failures
15:34 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37714/
15:34 Infinoid rg: Yep, thanks.  I've got a patch that fixes that and adds some Hash stuff for http headers, I'll commit once I finish some codetest fixes (which it looks like moritz++ is also working on)
15:35 moritz Infinoid: not anymore, just did the trivial ones
15:36 rg infinoid: ok, just making sure you saw it ;)
15:36 rdice joined #parrot
15:37 Whiteknight jonathan: that appears to work. Thanks
15:38 jonathan Whiteknight: OK, I will ci.
15:38 Whiteknight well, by "works", I mean it compiles. I'm not doing any socket testing today
15:38 Tene joined #parrot
15:40 jonathan Whiteknight: Well, compiles is closer to working. ;-)
15:40 Infinoid I'll work on making sure the httpd example works on mingw
15:40 Whiteknight close enough for me anyway
15:40 jonathan Infinoid: Well, it worked on Win32/MSVC++ as well disregarding the buffering issue (I doubt that this fix was related to that at all). But I just think it would not have used this code path.
15:40 dalek parrot: r37715 | jonathan++ | trunk/src/io/socket_win32.c:
15:40 dalek parrot: [t/spec] Fix a bug in the Win32 sockets layer, which made address resolution not work anywhere (we need tests ;-)), but broke compilation on MinGW. whiteknight++ for reporting.
15:41 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37715/
15:41 Infinoid Yeah.  The buffering is what I want to get working
15:41 Infinoid (assuming its buffering as opposed to, say, forgetting to close the connection after the response)
15:42 moritz jonathan: is there a [t/spec] in parrot? :-)
15:43 mj41 r37705 broke build on mingw32 ... http://tt.ro.vutbr.cz/report/pr-Parrot/rp-trunk .. src\io\socket_win32.c:371: error: too many arguments to function `inet_addr'
15:44 Infinoid the SOCKADDR() macro's "t" arg fails t/codingstd/c_macro_args.t and I don't think its possible to fix it.
15:44 jonathan moritz: Clearly only having the one coffee this morning was a bad idea...
15:44 Infinoid mj41: I think r37715 will fix that
15:51 jonathan perl6: my $x = True; $x &&= True; say $x;
15:51 jonathan rakudo: rakudo: my $x = True; $x &&= False; say $x;
15:51 jonathan oh, wrong channel
15:52 Infinoid what happened to polyglotbot?
15:52 jonathan hmm, good point...not sure
15:53 Infinoid ssh: connect to host feather3.perl6.nl port 22: No route to host
15:53 Infinoid maybe the VM wasn't restarted after feather's reboot yesterday
15:54 dalek parrot: r37716 | Infinoid++ | /docs/html/index.html'� (1 files):
15:54 dalek parrot: [examples] Some more examples/io/httpd.pir fixes.
15:54 dalek parrot: * Use a Hash for the headers.  Coke++, jonathan++.
15:54 dalek parrot: * Clean up the 404 exception handler.  rg++.
15:54 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37716/
15:57 dalek parrot: r37717 | Infinoid++ | trunk/src (4 files):
15:57 dalek parrot: [cage] Codetest fixes.
15:57 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37717/
15:58 nopaste "Infinoid" at 75.140.33.106 pasted "socket build warnings on mingw32 (r37717)" (46 lines) at http://nopaste.snit.ch/15958
15:58 dalek rakudo: de86e8a | jnthn++ |  (2 files):
15:58 dalek rakudo: Make .assuming work on multi-methods. Add the now-passing S06-currying/assuming-and-mmd.t to spectest.data.
15:58 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/d​e86e8a8443fb4443024900f68de998a31471e97
15:58 shorten dalek's url is at http://xrl.us/bemjru
15:58 dalek rakudo: f27c7ea | jnthn++ | :
15:58 dalek rakudo: Merge branch 'master' of git@github.com:rakudo/rakudo
15:58 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/f​27c7ea151fc90d6642616cd93ade25c30eefc9e
15:58 shorten dalek's url is at http://xrl.us/bemjrw
16:04 mj41 r37705 mingw32 build error fixed in r37715 ... http://tt.ro.vutbr.cz/report/pr-Parrot/rp-trunk
16:08 dalek parrot: r37718 | NotFound++ | trunk/examples/io/httpd.pir:
16:08 dalek parrot: [examples] send "Connection: close" in http header
16:08 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37718/
16:09 Infinoid this server really should be reporting http 1.0, not 1.1
16:12 Infinoid there we go.  new heatsink fan that actually spins, now maybe mingw can complete a build without gcc segfaulting
16:14 Coke 1.1 is haaard.
16:14 Coke (content chunking FTL.)
16:15 Infinoid hey, I *like* chunked encoding.
16:16 Infinoid or maybe I should say I don't like allocating hundreds of megs of slowly-generated cgi content before outputting anything
16:18 Infinoid but I think I want to implement directory indexes and content-types and maybe forking first
16:19 rg are you sure you want to implement a full-fledged http server in pir?
16:19 darbelo joined #parrot
16:20 Infinoid Don't worry, I'm not going to reimplement apache.  But network programming is fun :)
16:20 moritz I think it's more fun than fixing parrot coding style tests :-)
16:20 Infinoid It's also more fun than moving old release newsposts over from the old parrotcode.org site
16:21 rg true, and it's a really good example for socket and io programming.
16:21 rg so forking (or threading) would probably be good, too.
16:21 Infinoid Yes and no.  The current incarnation doesn't use select() at all, and probably never will.  IRC server in pir, anyone?
16:22 NotFound I'd like a parrot_debugger that reads commands from a socket
16:22 Coke (chunked) no, it's wonderful, until you are the one implementing it. =-)
16:22 rg heh. too much protocol work :P
16:22 Infinoid Coke: true.  I've only implemented the client side
16:22 Infinoid which didn't turn out *that* bad
16:23 NotFound chunked is not so hard. Just chunk it ;)
16:24 * Infinoid feels a libwww-parrot coming on
16:26 NotFound A HTTP::Server module will be nice
16:27 Infinoid CAN HAS HTTP?
16:27 jonathan Infinoid: Hmm. Just tried C:\Consulting\parrot\trunk>parrot examples\io\httpd.pir
16:27 Infinoid httpd.pir reports "bind failed" under mingw
16:28 jonathan And I get bind failed
16:28 jonathan Gah.
16:28 jonathan That worked earlier today. :-|
16:28 Infinoid you're using msvc?
16:28 jonathan (On MSVC)
16:28 jonathan Yes.
16:29 Infinoid I don't think win32 likes the "localhost" string
16:29 Infinoid changing that to 0.0.0.0 works here
16:29 tuxdna Hi, can anyone see if the patch in https://trac.parrot.org/parrot/ticket/491 is alright and apply it ?
16:30 tuxdna It is related to using longopts in parrot_debugger.c
16:31 Infinoid jonathan: after tweaking line 110 a bit, seems to work fine here
16:31 jonathan Infinoid: OK.
16:33 NotFound tuxdna: I don't see the need to use longopts in the current state of parrot_debugger
16:33 Infinoid the "sockaddr" op is going to have to be changed if we ever want to support anything other than IPv4
16:35 tuxdna NotFound: It might be needed later if we have many options to be passed to the debugger. And at present longopts do not cause any bad thing to debugger's performance.
16:36 Infinoid jonathan: do you still get that weird browser hang with msvc?  and are you using IE?
16:36 NotFound tuxdna: I try to never add code just because it does not do any bad thing
16:37 Coke (longopt) are we using longopt in other parrot apps?
16:38 NotFound Coke: parrot and pbc_disassemble, I think
16:38 Coke my vote is it would be nice to have a standard way of dealing with such things.
16:38 jonathan Infinoid: No, it works now!
16:38 jonathan Infinoid: I had to s/localhost/127.0.0.1/ though
16:39 tuxdna longopt is being used in src/pbc_disassemble.c
16:39 jonathan Infinoid: I suspect that maybe something is wrong in the hostname resolution code.
16:39 Infinoid Yeah, I'll commit the 127.0.0.1 part in a minute
16:39 tuxdna and src/pbc_merge.c
16:39 jonathan Well, IMO localhost should work...
16:39 Infinoid Yeah, you're probably right
16:40 tuxdna also in src/pbc_dump.c
16:40 jonathan Infinoid: Heh, it feels nice and fast too.
16:41 Infinoid though... your call to gethostbyname() should have covered localhost
16:41 NotFound Coke: maybe, but will be even nicer to have one that use parrot naming conventions for his exported functions.
16:42 jonathan Infinoid: Is it resolving any names though?
16:42 jonathan Infinoid: I'm suspsecting that call is maybe being done wrong or something.
16:43 Infinoid It resolves them correctly on linux
16:44 Infinoid I can put in hosts from my local dns setup, and they bind fine
16:44 jonathan Infinoid: I meant, being done wrongly on Win32.
16:45 cotto joined #parrot
16:45 cotto left #parrot
16:45 cotto joined #parrot
16:45 tuxdna NotFound: I think that since longopts is being used in three places in parrot, we can use it in parrot_debugger as well. Or if you feel I may help implementing any other thing in parrot_debugger, then please let me know.
16:45 Infinoid Yeah, took a moment to test that (I didn't have any hostnames set up for the windows box.)  It is definitely not resolving hostnames correctly
16:47 Infinoid inet_addr() under linux returns -1 on error, not 0, so I think the condition in get_sockaddr_in() might be wrong
16:48 Infinoid the analogous condition in the unix version is also a little naïve
16:50 NotFound tuxdna: parrot_debugger is just a quick way to start the internal debugger. I don't care much about it until src/debug.c reaches a more stable and full featured state
16:52 tuxdna NotFound: do you mean that parrot_debugger is just a temporary tool to launch the actual debugger and it might be removed later?
16:56 NotFound tuxdna: the real debugger is src/debug.c and is built into libparrot. Maybe parrot_debugger will be removed some day, maybe not.
16:56 jhorwitz joined #parrot
16:56 tuxdna NotFound: I see.
16:57 NotFound You can interact with the debugger without using parrot_debugger, see examples/pir/pirric.pir for an example.
16:58 dalek parrot: r37719 | Infinoid++ | trunk/src/io/socket_win32.c:
16:58 dalek parrot: [io] Fix sockaddr hostname lookups on win32: inet_addr() returns -1 (255.255.255.255) on failure.  This gets "localhost" working for me on mingw, and actual dns entries as well.
16:58 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37719/
16:59 jonathan Infinoid++ # that works for me too :-)
17:03 Infinoid That code will break if you ever have a valid reason to parse a 255.255.255.255 address (for a tunnel netmask or a target address for udp broadcasts, maybe).  there's a big fat warning about that on the inet_addr manpage on linux, which basically says don't use it
17:03 Infinoid but this is still a step in the right direction I think :)
17:04 chromatic joined #parrot
17:04 mj41_ joined #parrot
17:04 jonathan Aye.
17:17 dalek rakudo: a51a0da | jnthn++ | src/builtins/eval.pir:
17:17 dalek rakudo: Fix importation of modules in nested namespaces.
17:17 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/a​51a0da74da21e1359ad5d7867e8592d53510da6
17:17 shorten dalek's url is at http://xrl.us/bemj4a
17:17 dalek rakudo: ce7ff26 | jnthn++ | t/spectest.data:
17:17 dalek rakudo: Add S11-modules/import.t to spectest.data.
17:17 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/c​e7ff269f714ccd91eba66484749ba0f0f704d1e
17:17 shorten dalek's url is at http://xrl.us/bemj4c
17:18 dalek parrot: r37720 | NotFound++ | trunk/src/debug.c:
17:18 dalek parrot: [debugger] stop using IMCC_warning
17:18 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37720/
17:19 Coke tuxdna: but yes, any improvements to the state of debugging are in general welcome. =-)
17:22 Coke 410 RTs left
17:23 NotFound Ah, yes, I don't try to discourage collaboration O:)
17:32 donaldh left #parrot
17:38 Infinoid Apparently mingw doesn't define _WIN32, so PIO_OS_WIN32 never gets defined and parrot/io.h doesn't include io_win32.h, resulting in a bunch of warnings.
17:40 jonathan Infinoid: I guess it defines something you can test there, though?
17:40 Infinoid Or something.  I'm not sure yet
17:40 Infinoid This might just be something that needs another headerizer run
17:41 NotFound __MINGW32_
17:41 NotFound __MINGW32__
17:41 chromatic joined #parrot
17:42 Infinoid Ok.  _WIN32 is there... io_win32.h just doesn't contain the prototypes it should
17:42 jsut there is a picture of allison mid talk in the rotation of the oscon header.
17:58 dalek parrot: r37721 | Infinoid++ | trunk/src (2 files):
17:58 dalek parrot: [cage] Add ARGIN() to some new function arguments.
17:58 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37721/
18:02 dalek parrot: r37722 | Infinoid++ | trunk (4 files):
18:02 dalek parrot: [cage] Add a headerizer location for socket_win32.c global functions to io_win32.h header.  Rerun headerizer.
18:02 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37722/
18:02 Tene pmichaud: I was considering working on context() and caller(), but even if I added the relevant attributes to Code, I'm not sure how I'd set them.  Do you have a plan for this?
18:03 pmichaud Tene: not yet.  I figure we have to get dispatch resolved first.
18:03 Tene hm?  howso?
18:04 pmichaud let me review the spec.
18:04 Tene http://perlcabal.org/syn/S06.html​#The_context_and_caller_functions
18:04 shorten Tene's url is at http://xrl.us/bemkcc
18:06 dalek parrot: r37723 | Infinoid++ | trunk/src/io/socket_win32.c:
18:06 dalek parrot: [cage] Add ASSERT_ARGS() macros to the win32 socket functions.
18:06 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37723/
18:09 pmichaud Tene: ah.  I was thinking more about .want   (more)
18:09 pmichaud The issue with context() is that Parrot contexts aren't PMCs yet.
18:09 pmichaud I don't know if Continuation would have enough information about that, though.  Perhaps that would work.
18:10 Tene in rakudo, interp['sub';1] gives a Code object.
18:10 Andy joined #parrot
18:12 pmichaud I'm a bit confused.... what attributes were you thinking of adding to Code ?
18:12 Coke regarding parrot contexts becoming pmcs - is that still desirable?
18:12 pmichaud (and how does this relate to interp['sub';1]  ?
18:12 pmichaud Coke: I think it's desirable, yes, unless Continuations give me the same sorts of access
18:12 Infinoid jonathan: I'm going to close TT #497, thanks
18:12 Tene the spec says that the object returned from context() needs to support a list of methods, but it doesn't specify what class those methods are defined on.
18:13 Tene My first guess at what it should return was the block itself.
18:13 Tene My clue for that was that we already know that blocks have a .leave() method, which is mentioned in the list.
18:13 Tene search /at least the following/ in S06
18:14 pmichaud I don't think it can be the block, because of .my
18:14 Tene Explain?
18:14 pmichaud block's don't have .my -- contexts do
18:14 pmichaud *blocks
18:14 pmichaud e.g., recursion
18:15 Tene Huh.  Okay.
18:15 pmichaud I'm pretty sure the returned object would be something that has a "Context" role or equivalent.
18:15 jonathan Infinoid: No, thank *you*! :-)
18:16 pmichaud also, blocks don't have a "I'm currently executing file+line" information.  Contexts have that.
18:16 * Tene nods.
18:17 pmichaud so, I'm thinking that whatever implements context() in Rakudo will have to get the information from Parrot's contexts somehow.  Since those aren't PMCs, we probably need special support for them.
18:17 pmichaud I think we need special support anyway, since there's not currently a way to say "get my caller's outer lexical scope" in Parrot.
18:17 pmichaud s/Parrot/PIR/
18:18 Tene isn't that interp['outer';1] ?
18:18 pmichaud that's _my_ outer lexical scope.
18:18 pmichaud not my caller's outer lexical scope.
18:19 Tene No, my outer is interp['outer']
18:19 pmichaud okay,  interp['outer';1]  is my outer's outer then
18:19 barney joined #parrot
18:19 pmichaud not necessarily my caller's outer
18:19 Tene "<item>"; level           ... same for caller <level>
18:19 Tene from parrotinterpreter.pmc
18:20 Coke Does anyone else have a vote on http://rt.perl.org/rt3/Tic​ket/Display.html?id=60642 ?
18:23 pmichaud Tene: I think the docs are misleading there.  The code looks pretty straightforward to me that any level given with "outer" ends up searching outer scopes and not caller scopes.
18:23 pmichaud parrotinterpreter.pmc:455
18:23 pmichaud perhaps I'm reading it wrong.
18:24 NotFound Coke: kill it.
18:25 Coke NotFound: please vote on the ticket so I have a partner in crime. =-)
18:25 Tene pmichaud: I think the most significant thing i was needing from rakudo was a way to get whether a block is "inline" or not, re the defenition of caller as: &caller ::= &context.assuming({ !.inline }, 1);
18:28 pmichaud Tene: we're not doing inline at all yet.
18:28 pmichaud at least, I don't think we are.
18:28 Tene We're not.
18:28 Tene It looked to me that that should be an attribute of something in the Code hierarchy?
18:29 chromatic Coke, I see your point.
18:30 pmichaud Tene: but I'm thinking that something that is inlined (e.g., in PIR) won't be accessible via interp anyway.
18:30 NotFound Coke: done
18:31 Tene pmichaud: does Perl 6's idea of .inline match literal inlining in PIR in every case?
18:32 pmichaud I hadn't looked closely at Perl 6's idea of .inline
18:32 pmichaud I always considered it an optimization.
18:33 pmichaud at any rate, I suspect that 'caller' ends up working by finding the current Routine and asking for its caller
18:33 Tene "The .inline method says whether this block was entered implicitly by some surrounding control structure."
18:33 NotFound "[TODO] Make breakpoints at labels" --> What does this mean in the current state? Sub entry points?
18:34 pmichaud Tene: then perhaps it's an attribute on the Code that is set at compile-time, for specific control structures.
18:34 pmichaud although it might be more properly a property
18:34 Tene pmichaud: regardless, would you be okay with me adding a basic draft of a Context class and context() and caller() functions?
18:35 pmichaud Tene: as long as it doesn't generate a lot of dependencies in the existing code, I'm fine with it.
18:35 NotFound "[TODO] Debugger - Read core dumps" ---> I'll label that as [WISHLIST] rather than [TODO]
18:35 pmichaud like many other pieces -- I'm concerned with putting in "advanced" stuff before the basics are in place because we then have to rip-out/refactor the advanced stuff in order to fix the basics.
18:36 * Tene nods.
18:36 pmichaud in particular, block code generation is about to receive a significant refactor anyway.
18:36 pmichaud because STD.pm changed how it handles blocks.
18:36 Tene Ah, perhaps I'll wait until after that.
18:39 Tene pmichaud: is 'make install' supported for rakudo?
18:39 pmichaud not yet.
18:39 Tene Okay.
18:39 pmichaud I think several people have been working on that but I haven't seen any official patches.
18:39 * Tene nods
18:40 Tene I was going to work on eval :lang with the new load_language op, but I'm not sure any languages support installing yet... :)
18:42 Coke NotFound: we still have labels.
18:42 jonathan pmichaud: I think there is a patch in our RT queue from Allison about make install?
18:43 Coke jonathan: I have a similar one for partcl!
18:43 Coke apply mine too! =-)
18:44 pmichaud jonathan: allison's patch was from before I refactored Rakudo's Configure.pl and build
18:44 pmichaud I think her patch also depends on us using Parrot's Configure.pl and makefile generator, which we no longer do.
18:45 jonathan pmichaud: Ah, OK.
18:45 NotFound Coke: but pir labels are strictly compile-time, isn't it?
18:45 pmichaud I haven't had time to go back and figure out what the relevant bits of the patch are.  Beyond that, I think Parrot's mechanisms for dynops and dynpmcs have also chagned since then as well.
18:45 pmichaud (and I haven't seen documentation for the new approach.)
18:47 barney Tene: Pipp should be installable
18:47 Coke NotFound: IWBNI if they weren't, from the standpoint of debuggng.
18:48 Tene barney: ah, nice.  and it installs to wherever Parrot's language search path defaults to?
18:48 barney It installs somewhere below the 'prefix' from the installed parrot
18:49 barney use the --parrot-config option to Pipps Configure.pl
18:50 barney load_language op is not  yet used
18:51 dalek rakudo: b64e163 | pmichaud++ | src/ (2 files):
18:51 dalek rakudo: Move capitalize into Any-str.pm setting (RT #64060).
18:51 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/b​64e163d146a373101330faac97ea90316ebde25
18:51 dalek rakudo: 7b3f8c4 | pmichaud++ | :
18:51 shorten dalek's url is at http://xrl.us/bemkig
18:51 dalek rakudo: Merge branch 'master' of git@github.com:rakudo/rakudo
18:51 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/7​b3f8c4f3e99b91eeb3e78cf8c830bc797aed1e5
18:51 shorten dalek's url is at http://xrl.us/bemkii
18:56 NordQ joined #parrot
19:00 darbelo Hi, is someone here familiar with the Summer of Code idea for BigNum et al?
19:02 jonathan darbelo: For Parrot or for Rakudo?
19:02 darbelo Parrot.
19:02 jonathan darbelo: I'm not the most familar with it, but I can might be able to answer some of what you want to know. :-)
19:03 darbelo I'm thinking of submitting a proposal for it and was looking for some guidance.
19:03 jonathan Nice! :-)
19:04 darbelo Mostly, what parrot needs from this PMC's and what sort of implementation is desired.
19:06 darbelo I recall that one of parrot's goals was to avoid depending on external libraries, but this seems to have changed since then.
19:07 chromatic Yeah, using IBM's standard decimal math library really seems like an advantage for us.
19:07 jonathan chromatic: Do you see us wanting some fallback, and then being able to use IBM's SDML for performance?
19:07 NotFound darbelo: we just wait for someone to write a full replacement fully portable and fast ;)
19:07 jonathan chromatic: Or us just using their library whatever?
19:08 dalek parrot: r37724 | NotFound++ | trunk/src/debug.c:
19:08 dalek parrot: [debugger] mark disabled breakpoints in "L" listing
19:08 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37724/
19:10 chromatic If I recall correctly, allison suggested adding a fallback of "Sorry, no BigNum support!" and using the library when possible.
19:11 jonathan Right.
19:11 jonathan darbelo: So it looks like essentially it's writing PMCs that wrap around the IBM library, and the stuff in our Configure script to probe for the library.
19:13 jonathan darbelo: Rakudo and other HLLs will then be able to use that to support similar types.
19:13 dalek rakudo: c1c4307 | jnthn++ | src/classes/Multi.pir:
19:13 dalek rakudo: Revert an accidential change from earlier debugging.
19:13 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/c​1c43071a2c64b67c5678b81d6ae71fb435554d4
19:13 shorten dalek's url is at http://xrl.us/bemkne
19:13 dalek rakudo: a572337 | jnthn++ | src/ (2 files):
19:14 dalek rakudo: Fix up exporting (and as a result, importing) of multis.
19:14 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/a​5723375d4dee96919c60eb98f65ae190d588240
19:14 dalek rakudo: 0f50d4f | jnthn++ | :
19:14 shorten dalek's url is at http://xrl.us/bemkng
19:14 dalek rakudo: Merge branch 'master' of git@github.com:rakudo/rakudo
19:14 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/0​f50d4fe59652364c93ea621928d7d48755b85c9
19:14 shorten dalek's url is at http://xrl.us/bemkni
19:14 barney What keeps us from distributin that lib?
19:21 pmichaud what should Rakudo do if Parrot BigNum support isn't available?  i.e., do we even have that option?
19:21 chromatic Allison thinks it's problematic.
19:24 darbelo Wait. What IBM library are talking about exactly? The ones I'm familiar with have limited architecture coverage. (AIX + Linux IIRC)
19:25 chromatic This one's more cross platform; it's linked from the numbers PDD.
19:29 darbelo Oh, ok. Iknow the one you mean. It's just to me "IBM's math library" has always been IMB's ESSL.
19:31 dalek pipp: dc2e166 | (Bernhard Schmalhofer)++ |  (3 files):
19:31 dalek pipp: ignore 'break' statements
19:31 dalek pipp: review: http://github.com/bschmalhofer/pipp/commit​/dc2e166d5a8a660a75f0efbdd3a989557ed50a5d
19:31 shorten dalek's url is at http://xrl.us/bemkqb
19:34 dalek pipp: a67f4ca | (Bernhard Schmalhofer)++ | src/pct/actions.pm:
19:34 dalek pipp: remove redundant blocktype() method calls
19:34 dalek pipp: review: http://github.com/bschmalhofer/pipp/commit​/a67f4cabcb445e28b89bd7be8a7318f073286af8
19:34 shorten dalek's url is at http://xrl.us/bemkq4
19:46 Coke (using 3rd party libraries instead of rolling our own, even as a fallback)++ ++ ++
19:49 darbelo So, the whole thing boils down to "three PMC's that wrap decNumber, if available".
19:54 chromatic Basically.
19:56 darbelo It could be a mess for languages when BigNums are unavailable.
19:57 chromatic Unfortunately.
19:57 particle let the distro packagers worry about that
19:58 particle ...oh, wait, that's still us.
19:58 particle For Now.
19:58 barney (reinventing wheels)--
20:00 NotFound (rolling out own as a fallback)-- If we roll our own, always use it!
20:01 TimToady phone
20:01 darbelo (multiple fallbacks) == (Maintainer Hell)
20:02 chromatic Yeah well, apparently "shipping NIH code under a compatible license" == architect hell, so no go.
20:03 NotFound We can ship an abbacus, just in case ;)
20:04 darbelo Arbitrary precision floating point math with an abbacus? No thanks.
20:05 davidfetter jhorwitz, hai
20:05 jhorwitz davidfetter: oh hai
20:06 davidfetter i was wondering about embedding parrot
20:06 davidfetter what embeddings do you know about apart from yours?
20:06 jhorwitz Parrot::Embed
20:06 purl rumour has it Parrot::Embed is a perl module allowing you to embed a parrot interp in perl
20:07 davidfetter k
20:07 jhorwitz Padre also embeds parrot, though that may use Parrot::Embed...
20:07 davidfetter are both of those actual embeddings of the VM, or do any use IPC to talk to a running VM?
20:07 jhorwitz actual embedding
20:07 szabgab jhorwitz, it does
20:07 jhorwitz ah, straight from the horse's mouth.  :)
20:07 davidfetter ok, so that's 2/2
20:07 davidfetter heh
20:08 davidfetter now that 1.0's out the door, i'm looking for suc^Wvolunteers to help with PL/Parrot :)
20:08 szabgab and then there is Inline::Rakudo that uses Parrot::Embed
20:09 davidfetter k
20:10 jhorwitz you should hit up YAPC this year -- the parrot VM workshop precedes it.
20:17 davidfetter yeah, that's the plan
20:18 davidfetter i'd like to have something to present :)
20:18 NotFound davidfetter: examples/embed/lorito.c
20:40 davidfetter NotFound, belated thanks :)
20:43 NotFound 406 RTs left
20:45 Coke NotFound++
20:48 dalek tracwiki: v1 | gaurav++ | GSOC2009
20:48 dalek tracwiki: Initial writeup of GSoC 2009 details
20:48 dalek tracwiki: https://trac.parrot.org/parrot/wiki​/GSOC2009?version=1&amp;action=diff
20:48 shorten dalek's url is at http://xrl.us/bemkzr
20:51 dalek tracwiki: v2 | gaurav++ | GSOC2009
20:51 dalek tracwiki: Added a section for project listings
20:51 dalek tracwiki: https://trac.parrot.org/parrot/wiki​/GSOC2009?version=2&amp;action=diff
20:51 shorten dalek's url is at http://xrl.us/bemk2h
20:51 dalek tracwiki: v5 | gaurav++ | GSOC2009Tasklist
20:51 dalek tracwiki: Updated status, added link to in-wiki resources for students
20:51 dalek tracwiki: https://trac.parrot.org/parrot/wiki/GSO​C2009Tasklist?version=5&amp;action=diff
20:51 shorten dalek's url is at http://xrl.us/bemk2j
20:54 darbelo Hmm. Having a look at the decNumber site it looks like it has several licenses depending on where you get it.
20:56 darbelo Should the probing mechanism care?
21:06 Coke NotFound++
21:14 dalek tracwiki: v3 | gaurav++ | GSOC2009
21:14 dalek tracwiki: Fixed grammar
21:14 dalek tracwiki: https://trac.parrot.org/parrot/wiki​/GSOC2009?version=3&amp;action=diff
21:14 dalek tracwiki: v4 | gaurav++ | GSOC2009
21:14 dalek tracwiki: Improved a section title
21:14 dalek tracwiki: https://trac.parrot.org/parrot/wiki​/GSOC2009?version=4&amp;action=diff
21:14 shorten dalek's url is at http://xrl.us/bemk6m
21:14 shorten dalek's url is at http://xrl.us/bemk6o
21:30 eternaleye joined #parrot
21:31 dalek tracwiki: v5 | gaurav++ | GSOC2009
21:31 dalek tracwiki: Added some more general information and links
21:31 dalek tracwiki: https://trac.parrot.org/parrot/wiki​/GSOC2009?version=5&amp;action=diff
21:31 shorten dalek's url is at http://xrl.us/bemk8u
21:49 NordQ joined #parrot
22:07 Theory joined #parrot
22:11 dalek rakudo: bb22e02 | jnthn++ |  (3 files):
22:11 dalek rakudo: Support specifying :tags when doing a use, which will import things with those tags. Default to :DEFAULT if none specified. Also always import :MANDATORY no matter what tags are specified.
22:11 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/b​b22e02dc81513539ccc6061604ac89a29c000e0
22:11 shorten dalek's url is at http://xrl.us/bemmd7
22:32 Wizard joined #parrot
22:32 Wizard hi
22:33 Wizard can somebody help me with networking in parrot
22:33 Wizard ?
22:39 darbelo what sort of networking?
22:40 Wizard I'm trying to create a socket, connect etc.  but parrot says that 'socket' is not a sub
22:40 kid51 joined #parrot
22:40 Wizard I'm wondering where these subs exist?
22:40 Wizard and how to call them
22:40 jonathan Wizard: socket is an opcode, but was only added very recently.
22:41 jonathan Wizard: Which version/revision of Parrot are you looking at?
22:41 Wizard I got 1.0.0 build for win32
22:41 jonathan Ah, yes. :-(
22:41 jonathan Those didn't make it into 1.0.0.
22:42 Wizard ah. so how to make connection somewhere in this version of parrot? :)
22:43 jonathan If you're fine building stuff yourself, then grab the latest version from SVN. Otherwise it'll be in the next monthly release, which will again have a build.
22:43 Wizard ok. ty.  will try to build it
22:44 jonathan 1.0.0 really wasn't kitted out so well for networking stuff. Sorry.
22:45 Wizard no problem. I just thought that version 1.0.0 mean that everything already there, and decide to play a little with parrot
22:46 jonathan Well, 1.0.0 is kidna "we got something stable and a nice toolchain to start building your compiler to target" more than "we've implemented everything we ever will".
22:47 moritz Wizard: it means "stable api", not "feature complete" (for some values of "stable")
22:48 moritz but it was released to get people like you interested, so it fullfilled its purpose ;-)
22:49 Wizard then probably documentation is very optimistic ;)
22:50 jonathan Wizard: See the IO spec for Parrot - the sockets implementation that has gone in since should conform with that. So there should be some docs. :-)
22:51 jonathan Wizard: Also, there's a working http server in examples/io/ now ;-)
22:52 Wizard hmm.  win32 install has no examples folder
22:53 jonathan Wizard: Hm. Though actually said example was added only earlier today too, so again, it's at svn head.
22:53 Wizard btw about sockets etc.  dont you think that make such things like sockets as opcodes will make opcodes list to heavy? maybe it will be better to do more libraries with namespacing instead of opcodes?
22:54 jonathan Also at https://trac.parrot.org/parrot/br​owser/trunk/examples/io/httpd.pir
22:54 shorten jonathan's url is at http://xrl.us/bemmif
22:54 Infinoid jonathan: what do we need to do to get sockets into rakudo?  This is a feature I've been waiting for, for years. :)
22:54 jonathan Actually since the patch went in for the sockets stuff, a few folks have said that...
22:54 jonathan Infinoid: We pretty much should have what we need. mberends has already started on it. Join the fun! :-)
22:55 jonathan Wizard: It's possible we might drop the opcode forms and just have the method interface instead.
22:56 jonathan As I said, this only since 1.0.0 went in.
22:56 pmichaud istr that allison++ made a change that eliminated the opcode forms.
22:56 jonathan So there's a few weeks before 1.1.0 to settle on it, I guess...
22:56 jonathan pmichaud: Today?
22:56 purl Today is pretty close to planting day
22:56 pmichaud within the past day or so, yes.
22:56 jonathan pmichaud: 'cus they were there in the PDD this morning.
22:57 jonathan pmichaud: Anyway, if that's so, I won't miss 'em.
22:57 pmichaud I think she simply changed s/opcode/method/
22:57 jonathan Though maybe good to mention to mberends to make sure he's using the method forms and not the opcode forms. ;-)
22:57 pmichaud so that what used to be labeled "Network I/O Opcodes" now reads "Network I/O Methods"
22:58 jonathan ok
22:58 jonathan nice
22:58 jonathan Now we just need to get somebody to rip them out and make sure httpd.pir works fine with all the method forms instead, if it wasn't already using those.
22:59 Infinoid Can do.
22:59 pmichaud in particular, I don't see a 'socket' opcode in the PDD.
22:59 pmichaud the change allison made is:  https://trac.parrot.org/parrot/changeset/37648
22:59 pmichaud "There are no network-specific opcodes."
23:00 jonathan Eh.
23:00 jonathan Infinoid++ # thanks :-)
23:00 Infinoid I'm a little confused, though.
23:00 Infinoid so you'd do a $P0 = new "Socket"
23:01 Infinoid and then call $P0."socket" to set the PF_INET, SOCK_STREAM, IPPROTO_TCP type stuff?
23:01 pmichaud that'd be my guess.
23:01 Infinoid I'll give it a try.
23:02 pmichaud "Socket" as a PMC type is mentioned only once in pdd22
23:02 Infinoid well, I assume I'd have to call the socket method on *something*, so Socket is my best guess
23:02 Infinoid looks a little weird, but if it works, I won't complain much.
23:03 jonathan Infinoid: Also there is a SockAddr PMC...
23:03 Infinoid oh, good.
23:04 Infinoid and presumably there is (or will be) a subclass for INET, INET6, netlink, etc
23:04 * jonathan just point out that he didn't really understand the patch, he just wrote the Win32 port of it. ;-)
23:04 jonathan I'd guess something like that.
23:04 Infinoid jonathan++ # its been fun playing with that patch so far
23:05 jonathan I kinda figured there's enough people who would know what to do to improve things if the patch had rough edges that it should just go in.
23:05 jonathan Not to mention Rakudo folks really wanted it.
23:06 Infinoid What I really want is select().  But that's sort of a separate issue
23:08 eternaleye joined #parrot
23:19 TiMBuS joined #parrot
23:34 bacek_ joined #parrot
23:38 darbelo So, I've been getting up to speed with the decNumber code. Who should I ping for feedback on the BigNum proposal?
23:39 moritz darbelo: in case of doubt parrot-dev@lists.parrot.org
23:42 dalek parrot: r37725 | jkeenan++ | trunk/t/op/trans.t:
23:42 dalek parrot: Updating the TT number under which this TODO is currently being tracked.
23:42 dalek parrot: review: https://trac.parrot.org/parrot/changeset/37725/
23:43 kid51 If anyone can run:  usr/local/bin/perl t/harness --gc-debug -j t/op/trans.t and post results to https://trac.parrot.org/parrot/ticket/38, we could close out that ticket soon.
23:43 moritz with any particular revision?
23:44 kid51 HEAD, preferably
23:44 kid51 It's a bug that was only TODOed for 'make testj'
23:45 kid51 Preferably on Win32, BSDs, 64-bit platforms, etc etc.
23:45 kid51 Diversity of platforms is what we need to close ticket out.
23:46 kid51 ... and our Smolder reports don't (usually) report the alternate runcores.
23:46 rg kid51: i don't think -j is working on 64bit platforms
23:46 moritz I ran it on amd64, I got Failed tests:  1-12, 14-22
23:46 rg or is that what you're trying to test?
23:47 darbelo OpenBSD 4.5-beta i386 FAILED tests 10-11, 19
23:48 kid51 Hrrm.  Well, the TODO comment implied that it was failing with jit.  It didn't refer to 64bit platforms.
23:48 kid51 So, maybe it will have to stay TODOed, albeit for different reasons.
23:49 kid51 darbelo:  Can you post those failures, perhaps in https://trac.parrot.org/parrot/ticket/499 ?
23:50 tetragon joined #parrot
23:50 kid51 moritz:  If I read you correctly, the one test that passed for you was the one we're discussing (#13).
23:51 moritz kid51: I didn't follow the discussion, but yes, #13 passed ;-)
23:51 kid51 Line 269 of t/op/trans.t:  my @todo    = ( $runcore =~ /--runcore=jit/ ? ( todo => 'broken under JIT TT #38' ) : () );
23:52 kid51 Okay, so we're concerned with 32-bit platforms.
23:53 rg freebsd/i386 7.1 fails the same tests as openbsd
23:54 kid51 rg Can you paste?
23:54 darbelo http://pastebin.com/d62af37e
23:55 darbelo is that what you needed?
23:55 rg there's also some more information in RT #36086, i've posted a simple example with which i've tried to debug the problem. i wasn't getting anywhere, though
23:57 rg kid51: paste here or attach to the ticket?
23:58 kid51 Hmm.  TT38 seems to have been focused on test #13:  atan2.  If *that* test is passing, then I'd like to close that TT.  But then we should open a new TT for the other errors.
23:59 kid51 rg But for the time being, please paste.

| Channels | #parrot index | Today | | Search | Google Search | Plain-Text | summary

Parrot | source cross referenced