Camelia, the Perl 6 bug

IRC log for #parrot, 2011-12-15

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
01:31 dukeleto ~~
01:31 dukeleto msg Yuki`N yep, got your message, trying to make some tasks before the next deadline
01:31 aloha OK. I'll deliver the message.
01:47 jlaire joined #parrot
02:11 benabik joined #parrot
03:07 Themeruta joined #parrot
03:21 dalek parrot.github.com: 5f75490 | alvis++ | NOTE:
03:21 dalek parrot.github.com: Pushing a temporary NOTE file to see if 'parrot.github.com' will rebuild - per github folk's instructions.
03:21 dalek parrot.github.com: review: https://github.com/parrot/parro​t.github.com/commit/5f75490508
03:32 dalek parrot.github.com: 2deea8b | alvis++ | NOTE:
03:32 dalek parrot.github.com: Removed temporary NOTE file because 'parrot.github.com' rebuilt - Yay.
03:32 dalek parrot.github.com: review: https://github.com/parrot/parro​t.github.com/commit/2deea8b720
03:35 Psyche^ joined #parrot
04:32 atrodo joined #parrot
06:41 davidfetter joined #parrot
07:02 alvis msg whiteknight For some more GCI Documentation Tasks, please see git://gist.github.com/1480129.git, and, as always, "Thank you."
07:02 aloha OK. I'll deliver the message.
07:13 alvis msg NotFound Please see the following gist: git://gist.github.com/1480159.git
07:13 aloha OK. I'll deliver the message.
07:35 dalek rakudo/nom: 8ea0b2b | moritz++ | src/core/ObjAt.pm:
07:35 dalek rakudo/nom: ObjAt needs its own WHICH method, since it is a value type
07:35 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8ea0b2b0ba
08:01 dafrito joined #parrot
08:11 baest joined #parrot
08:22 mj41 joined #parrot
08:46 mj41 joined #parrot
09:18 bacek joined #parrot
09:19 bacek joined #parrot
09:19 TonyC joined #parrot
09:22 nopaste joined #parrot
09:39 lucian joined #parrot
10:20 Aleksanda joined #parrot
12:48 AzureSto_ joined #parrot
14:04 mtk joined #parrot
14:28 dalek Guitor: 974dd9e | NotFound++ | src/Guitor.winxed:
14:28 dalek Guitor: don't deactivate MenuBar when mouse pointer is inside a bar item
14:28 dalek Guitor: review: https://github.com/NotFoun​d/Guitor/commit/974dd9e8c6
14:45 dalek Guitor: f6e5149 | NotFound++ | examples/puzzle.winxed:
14:45 dalek Guitor: share colors instead of creating for each piece
14:45 dalek Guitor: review: https://github.com/NotFoun​d/Guitor/commit/f6e514908f
14:55 whiteknight joined #parrot
14:59 whiteknight good morning, #parrot
15:29 muixirt joined #parrot
15:31 dalek Guitor: 5cb5744 | NotFound++ | examples/pokedit.winxed:
15:31 dalek Guitor: fix backspace at end of file
15:31 dalek Guitor: review: https://github.com/NotFoun​d/Guitor/commit/5cb57440aa
15:45 muixirt so now one writes nci bindings win winxed instead of pir, right?
15:47 muixirt s/win/with/
15:48 NotFound muixirt: anything is better with winxed than with pir.
15:52 jsut_ joined #parrot
15:55 * muixirt reads Advent 4 - Threading
15:55 davidfetter joined #parrot
15:59 dalek jaesop: c0ddc65 | Whiteknight++ | stage0/runtime/jsobject.winxed:
15:59 dalek jaesop: Add in .map() and .forEach() methods to Array
15:59 dalek jaesop: review: https://github.com/Whiteknig​ht/jaesop/commit/c0ddc6575b
16:03 Crazyjavahacking joined #parrot
16:04 Crazyjavahacking hi guys
16:06 sorear Hello...
16:07 whiteknight Hello Crazyjavahacking
16:07 whiteknight are you crazy about Java, or crazy with Java?
16:07 whiteknight or going crazy because of Java?
16:07 dukeleto ~~
16:08 dukeleto Crazyjavahacking: howdy
16:08 dukeleto muixirt: yes, writing bindings with NCI is much more pleasant with winxed
16:09 dukeleto muixirt: https://github.com/bubaflub/parrot-gmp is a good example
16:09 Crazyjavahacking actually
16:09 Crazyjavahacking crazy about java, not only the language but now more about the VM
16:09 Crazyjavahacking are here any ParrotVM developers?
16:09 dukeleto muixirt: iirc, we do the simple dlfunc call in PIR to actually make foreign functions callable, then you load that bytecode from winxed and use it from winxed
16:09 whiteknight Crazyjavahacking: yes, many of us are ParrotVM devs.
16:09 dukeleto Crazyjavahacking: just about everyone here is a parrot dev :)
16:10 dukeleto muixirt: https://github.com/bubaflub/parro​t-gmp/blob/master/src/GMP/raw.pir
16:10 Crazyjavahacking I am working on my master thesis
16:10 Crazyjavahacking it will be about visualizing garbage collection
16:10 dukeleto muixirt: that code is usually generated, as well
16:10 Crazyjavahacking the initial idea was to basically do a GCSpy rewrite
16:11 dukeleto Crazyjavahacking: oooh, that sounds fun.
16:11 Crazyjavahacking which is metacircular Java VM
16:11 Crazyjavahacking sorry, the JikesRVM is
16:11 dukeleto Crazyjavahacking: we have a few GC's to choose from if you want to study those
16:11 Crazyjavahacking and the GCSpy was used to graphically see what was hapenning from GC point of view
16:11 dukeleto Crazyjavahacking: i am familiar with the JikesRVM, but not GCSpy
16:11 muixirt dukeleto: ok, thanks
16:11 dukeleto ah! that makes more sense :)
16:11 Crazyjavahacking and the idea is that there is a server written in C/C++ which communicates with kind of client which then will run Java app to visualize the GC changes
16:12 Crazyjavahacking and I would like to ask if this could be useful for Parrot VM as well
16:12 dukeleto Crazyjavahacking: that sounds awesome. We definitely want/need to visualize our GC
16:12 Crazyjavahacking so if there is a tool for Parrot to visulize the GC, or if it make sense for you
16:12 dukeleto Crazyjavahacking: not sure about others, but I definitely want something like that
16:12 dukeleto Crazyjavahacking: we don't have anything like that currently
16:12 Crazyjavahacking as far as I understand it now, the only thing will be to provide a communication interface in C/C++ and data which will be send
16:12 dukeleto Crazyjavahacking: we have a generational GC, have you worked with one of those before?
16:13 Crazyjavahacking old, young, ... yes know the idea
16:13 Crazyjavahacking you have only this GC? or is there more of them/option to choose?
16:13 whiteknight Visualizing GC state changes would be a very nice thing, I think
16:13 Crazyjavahacking any documentation?
16:13 whiteknight We have a mark+sweep GC also, though the performance is lousy
16:14 dukeleto Crazyjavahacking: we have a few GCs, our recent generational one is the default
16:14 whiteknight although that's a problem with the algorithm, not the implementation so much
16:14 dukeleto Crazyjavahacking: because it is the least crappy :)
16:14 Crazyjavahacking :D
16:14 Crazyjavahacking http://labs.oracle.com/projects/gcspy/
16:15 Crazyjavahacking this is how it looks right now
16:15 Crazyjavahacking I will do a rewrite to real modular way, the idea is to use NetBeans platform
16:15 dukeleto whiteknight: i am on parrot.github.com and I am not seeing anything about our GCs
16:16 dukeleto whiteknight: ah, maybe the PDDs
16:16 Crazyjavahacking during following weeks I will do a old architecture overview and proposal
16:16 whiteknight we probably don't have good docks about it, because switching is sort of nonsensical now
16:16 dukeleto whiteknight: how old/out of date/wrong is this doc? http://parrot.github.com/html​/docs/pdds/pdd09_gc.pod.html
16:16 Crazyjavahacking the idea is to support multiple VMs as a proof of concept, not jusr JikesRVM
16:16 whiteknight dukeleto: probably "very"
16:16 dukeleto Crazyjavahacking: http://parrot.github.com/html​/docs/pdds/pdd09_gc.pod.html
16:17 dukeleto Crazyjavahacking: beware. Those docs may be wrong in some places, but it is a start
16:17 whiteknight Crazyjavahacking: that does sound like a great idea. We could easily add in some probes to the GC source to send out state messages to an external lib
16:17 whiteknight Crazyjavahacking: does the visualization tool run in-process, or is it a separate process with IPC?
16:18 whiteknight if the visualization code is Java, I suspect it's going to have to be external
16:18 Crazyjavahacking it should be an java app
16:18 Crazyjavahacking any problem with that?
16:18 whiteknight okay. We could easily attach a pipe handle to the interp, and write status information to that pipe from GC
16:19 dukeleto whiteknight: couldn't our GC just write out raw data to a file that could be read in?
16:19 whiteknight no, no problem at all
16:19 dukeleto whiteknight: in some kind of standard format?
16:19 Crazyjavahacking whiteknight> that will be cool
16:20 Crazyjavahacking whiteknight: I will study the document, but is there a well defined set of information you are able to provide from GC?
16:21 Crazyjavahacking I mean both VMs are definitely different in some points (I don't know Parrot so much), so we will need first to unify all the data which could be acquired from GCs
16:21 whiteknight dukeleto: either or. Once you have an extra FileHandle in the interp, we can point it at anything
16:22 whiteknight hell, it could be a socket, writing to a database on the international space station for all I care
16:22 Crazyjavahacking dukeleto: any other ideas, objections?
16:22 whiteknight Crazyjavahacking: if you aren't afraid of some C code, src/gc/gc_private.h and src/gc/gms.c are the best sources of information
16:23 whiteknight We have some structures which contain GC state information, and all the functions you would need to tap into are in that file
16:29 Crazyjavahacking thanks, I am not really a C programmer, few years ago I kind of was, but I will definitely look at it
16:29 Crazyjavahacking so any further steps should be communicated through IRC? or mailing list could be better?
16:30 whiteknight Crazyjavahacking: we're always here on IRC and love to chat. Mailinglist works great too
16:30 whiteknight parrot-dev at lists.parrot.org, etc
16:31 benabik joined #parrot
16:33 Crazyjavahacking joined #parrot
16:36 dukeleto Crazyjavahacking: http://lists.parrot.org/ma​ilman/listinfo/parrot-dev
16:36 dukeleto Crazyjavahacking: http://lists.parrot.org/mai​lman/listinfo/parrot-users
16:36 benabik o/ #parrot
16:36 dukeleto Crazyjavahacking: -dev is for questions about Parrot internals, -users is for questions about using/building on parrot
16:36 dukeleto Crazyjavahacking: just cc both if you don't know which to send it to
16:36 dukeleto benabik: mornin'
16:37 Crazyjavahacking thanks
16:38 benabik dukeleto: What's shakin'?
16:40 dukeleto benabik: drinking my morning coffee and planning to take over the world
16:40 benabik dukeleto++
16:41 dukeleto This looks like an awesome book that slyly teaches kids about CS: http://www.laurenipsum.org/tinker
16:42 dukeleto http://www.laurenipsum.org/sample is a better link
16:42 benabik …  Red-Black Forest?
16:43 benabik The tone vaguely reminds me of Sophie's Choice.
16:43 moritz read on, there's more to come
16:43 moritz nice names and all
17:08 jsut joined #parrot
17:10 dukeleto this is cool: http://mapofcpan.org
17:17 dalek rakudo/nom: b70ea99 | moritz++ | src/core/ListIter.pm:
17:17 dalek rakudo/nom: missing unbox
17:17 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b70ea99ec5
17:17 baest joined #parrot
17:55 fperrad joined #parrot
17:59 snearch joined #parrot
17:59 dalek rakudo/nom: 081cc0e | moritz++ | src/Perl6/Actions.pm:
17:59 dalek rakudo/nom: fix codgen for ."$var"()
17:59 dalek rakudo/nom:
17:59 dalek rakudo/nom: it used to call the get_string vtable, now uses an explicit unbox_s
17:59 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/081cc0e279
18:25 dalek Guitor: 99df02e | NotFound++ | / (3 files):
18:25 dalek Guitor: fill polygon
18:25 dalek Guitor: review: https://github.com/NotFoun​d/Guitor/commit/99df02eb9a
18:25 dalek Guitor: 2bb11c5 | NotFound++ | src/Guitor.winxed:
18:25 dalek Guitor: DrawLines
18:25 dalek Guitor: review: https://github.com/NotFoun​d/Guitor/commit/2bb11c57a5
18:25 dalek Guitor: 15009d9 | NotFound++ | examples/pizarra.winxed:
18:25 dalek Guitor: polygon, fill polygon, and optimize a bit color handling in example pizarra
18:25 dalek Guitor: review: https://github.com/NotFoun​d/Guitor/commit/15009d9d28
18:51 jsut_ joined #parrot
19:04 cotto ~~
20:09 perlite_ joined #parrot
21:07 dalek Guitor: dba7bc3 | NotFound++ | src/Guitor.winxed:
21:07 dalek Guitor: check status in DrawString and DrawImageString
21:08 dalek Guitor: review: https://github.com/NotFoun​d/Guitor/commit/dba7bc3ab9
21:11 dalek Guitor: 4094224 | NotFound++ | examples/pokedit.winxed:
21:11 dalek Guitor: save as, ctrl-s, quit with ctrl-q
21:11 dalek Guitor: review: https://github.com/NotFoun​d/Guitor/commit/40942249cd
21:11 dalek Guitor: f4def33 | NotFound++ | examples/pizarra.winxed:
21:11 dalek Guitor: fix color in poly hint
21:11 dalek Guitor: review: https://github.com/NotFoun​d/Guitor/commit/f4def33b8a
21:33 * dukeleto got on http://www.mozilla.org/credits/
21:33 dukeleto i will be at about:credits in the next release. IN YOUR BROWSER.
21:35 tadzik woot
21:36 benabik Huh.  There's an about:credits in my browser.
21:36 tadzik in mine too!
21:40 benabik I don't think dukeleto will be in there though, unless he's suddenly become a software project.
21:40 tadzik oh, you're using chromium too
21:40 tadzik I suspect
21:40 tadzik dukeleto: what did you do for mozilla?
21:40 benabik Chrome, yes.
21:43 cotto dukeleto++
21:43 cotto looks like you're there now
21:48 dukeleto tadzik: i helped make RegExp objects lazy in the javascript enging of Firefox (Spidermonkey), which saves a few tens of MB on startup
21:48 dukeleto and yes, about:credits is updated already!
21:58 NotFound So you are credited for making it more lazy?
21:58 NotFound That's why software is fun.
22:09 muixirt functions in winxed don't have a return type?
22:12 NotFound muixirt: not yet. I have the idea of optionally specifying return type, but is just an idea for a now.
22:14 muixirt NotFound: so what is better: something like return int(expr) or to call the function with int(myfunc())?
22:16 NotFound muixirt: that depends. return int(x) is convenient if x is a PMC that must not be modified by the caller.
22:17 NotFound And int(myfunc()) may be neceessary if it's part of an expression and you need int type.
22:18 benabik I thin Winxed always assumes functions return a PMC.  (i.e. "say(foo())" becomes "$P1 = foo() ; say $P1")
22:19 NotFound benabik: yes
22:20 NotFound In some cases using a inline with return type specified that calls the function can be convenient.
22:22 benabik inline function fooI() { return int(foo()); } // ??
22:23 * benabik hasn't toyed with inline yet.
22:24 NotFound Yeah
22:25 benabik Is inline in the Parrot snapshot yet?
22:25 NotFound But specifyng the return type:inline function fooI() return int { return int(foo()); }
22:26 NotFound benabik: yes. I'ts also in the last release, but in current master has some fixes and improvements.
22:27 benabik Hm.  For "inline function fooI() {}"  I get "Expected '(' near fooI"
22:27 benabik Oh.  No function
22:27 NotFound Ops, I'm sleepy. Of course.
22:32 benabik I had thought I tried that.  Whatever.
22:33 * benabik probably forgot to save that time.
22:39 mj41 joined #parrot
22:41 dafrito joined #parrot
23:19 dalek Guitor: 9838435 | NotFound++ | examples/pizarra.winxed:
23:19 dalek Guitor: fix release button while in first line of a fillpoly
23:19 dalek Guitor: review: https://github.com/NotFoun​d/Guitor/commit/9838435770
23:22 alvis hello #parrot
23:22 alvis got a question: It seems 'docs/draft/pdd13_bytecode.pod' obsolesces 'docs/parrotbyte.pod' (e.g., MAGIC is incorrect in 'docs/parrotbyte.pod') ...
23:23 alvis is this correct?
23:25 NotFound alvis: the only way to know for sure is to dump a pbc file.
23:26 alvis NotFound: I did.  I examined a dozen or so and all of our *.pbc use the magic string identified in 'docs/draft/pdd13_bytecode.pod'.
23:27 alvis but more, there are variances between the content of the two docs. I'm wondering ...
23:27 NotFound alvis: regarding Guitor, I think it's ready. Now you can look at src/GuitorNci.winxed functions loadXlib, loadXftlib and loadXpmlib, and see what libs must be added to the search lists.
23:27 alvis (1) why 'docs/draft/pdd13_bytecode.pod' is still a draft? and
23:28 alvis (2) why 'docs/parrotbyte.pod' hasn't been pulled or archived or something?
23:28 alvis NotFound: Ok.  I'll check it later this evening. (evening, here, that is. :)
23:29 NotFound alvis: bytecode format is still evolving, and probably will not start being stabilized until we move to a lorito based machine.
23:31 alvis NotFound: Ok, thank you.
23:31 NotFound And usually, when a thing gets better documented, people take a better look at it, and change the thing, but not the document X-)
23:34 alvis NotFound: Yeah.
23:43 dalek Guitor: d931a57 | NotFound++ | src/Guitor.winxed:
23:43 dalek Guitor: improve automatic height of TextButton
23:43 dalek Guitor: - For the record: first edit made with pokedit
23:43 dalek Guitor: review: https://github.com/NotFoun​d/Guitor/commit/d931a576a0

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

Parrot | source cross referenced