|
Parrot 3.10.0 "Apple Pi" | parrot.org | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC Set by moderator on 2 December 2011. |
|||
| dukeleto | ~~ | 01:31 | |
| msg Yuki`N yep, got your message, trying to make some tasks before the next deadline | |||
| aloha | OK. I'll deliver the message. | ||
|
01:47
jlaire joined
02:11
benabik joined
03:07
Themeruta joined
|
|||
| dalek | href="https://parrot.github.com:">parrot.github.com: 5f75490 | alvis++ | NOTE: Pushing a temporary NOTE file to see if 'parrot.github.com' will rebuild - per github folk's instructions. |
03:21 | |
| href="https://parrot.github.com:">parrot.github.com: 2deea8b | alvis++ | NOTE: Removed temporary NOTE file because 'parrot.github.com' rebuilt - Yay. |
03:32 | ||
|
03:35
Psyche^ joined
04:32
atrodo joined
06:41
davidfetter joined
|
|||
| 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. | ||
| alvis | msg NotFound Please see the following gist: git://gist.github.com/1480159.git | 07:13 | |
| aloha | OK. I'll deliver the message. | ||
| dalek | kudo/nom: 8ea0b2b | moritz++ | src/core/ObjAt.pm: ObjAt needs its own WHICH method, since it is a value type |
07:35 | |
|
08:01
dafrito joined
08:11
baest joined
08:22
mj41 joined
08:46
mj41 joined
09:18
bacek joined
09:19
bacek joined,
TonyC joined
09:22
nopaste joined
09:39
lucian joined
10:20
Aleksanda joined
12:48
AzureSto_ joined
14:04
mtk joined
|
|||
| dalek | itor: 974dd9e | NotFound++ | src/Guitor.winxed: don't deactivate MenuBar when mouse pointer is inside a bar item |
14:28 | |
| itor: f6e5149 | NotFound++ | examples/puzzle.winxed: share colors instead of creating for each piece |
14:45 | ||
|
14:55
whiteknight joined
|
|||
| whiteknight | good morning, #parrot | 14:59 | |
|
15:29
muixirt joined
|
|||
| dalek | itor: 5cb5744 | NotFound++ | examples/pokedit.winxed: fix backspace at end of file |
15:31 | |
| muixirt | so now one writes nci bindings win winxed instead of pir, right? | 15:45 | |
| s/win/with/ | 15:47 | ||
| NotFound | muixirt: anything is better with winxed than with pir. | 15:48 | |
|
15:52
jsut_ joined
|
|||
| muixirt reads Advent 4 - Threading | 15:55 | ||
|
15:55
davidfetter joined
|
|||
| dalek | esop: c0ddc65 | Whiteknight++ | stage0/runtime/jsobject.winxed: Add in .map() and .forEach() methods to Array |
15:59 | |
|
16:03
Crazyjavahacking joined
|
|||
| Crazyjavahacking | hi guys | 16:04 | |
| sorear | Hello... | 16:06 | |
| whiteknight | Hello Crazyjavahacking | 16:07 | |
| are you crazy about Java, or crazy with Java? | |||
| or going crazy because of Java? | |||
| dukeleto | ~~ | ||
| Crazyjavahacking: howdy | 16:08 | ||
| muixirt: yes, writing bindings with NCI is much more pleasant with winxed | |||
| muixirt: github.com/bubaflub/parrot-gmp is a good example | 16:09 | ||
| Crazyjavahacking | actually | ||
| crazy about java, not only the language but now more about the VM | |||
| are here any ParrotVM developers? | |||
| 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 | ||
| whiteknight | Crazyjavahacking: yes, many of us are ParrotVM devs. | ||
| dukeleto | Crazyjavahacking: just about everyone here is a parrot dev :) | ||
| muixirt: github.com/bubaflub/parrot-gmp/blo...MP/raw.pir | 16:10 | ||
| Crazyjavahacking | I am working on my master thesis | ||
| it will be about visualizing garbage collection | |||
| dukeleto | muixirt: that code is usually generated, as well | ||
| Crazyjavahacking | the initial idea was to basically do a GCSpy rewrite | ||
| dukeleto | Crazyjavahacking: oooh, that sounds fun. | 16:11 | |
| Crazyjavahacking | which is metacircular Java VM | ||
| sorry, the JikesRVM is | |||
| dukeleto | Crazyjavahacking: we have a few GC's to choose from if you want to study those | ||
| Crazyjavahacking | and the GCSpy was used to graphically see what was hapenning from GC point of view | ||
| dukeleto | Crazyjavahacking: i am familiar with the JikesRVM, but not GCSpy | ||
| muixirt | dukeleto: ok, thanks | ||
| dukeleto | ah! that makes more sense :) | ||
| 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 | ||
| 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 | ||
| Crazyjavahacking | so if there is a tool for Parrot to visulize the GC, or if it make sense for you | ||
| dukeleto | Crazyjavahacking: not sure about others, but I definitely want something like that | ||
| Crazyjavahacking: we don't have anything like that currently | |||
| 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 | ||
| dukeleto | Crazyjavahacking: we have a generational GC, have you worked with one of those before? | ||
| Crazyjavahacking | old, young, ... yes know the idea | 16:13 | |
| you have only this GC? or is there more of them/option to choose? | |||
| whiteknight | Visualizing GC state changes would be a very nice thing, I think | ||
| Crazyjavahacking | any documentation? | ||
| whiteknight | We have a mark+sweep GC also, though the performance is lousy | ||
| 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 | ||
| dukeleto | Crazyjavahacking: because it is the least crappy :) | ||
| Crazyjavahacking | :D | ||
| labs.oracle.com/projects/gcspy/ | |||
| this is how it looks right now | 16:15 | ||
| I will do a rewrite to real modular way, the idea is to use NetBeans platform | |||
| dukeleto | whiteknight: i am on parrot.github.com and I am not seeing anything about our GCs | ||
| whiteknight: ah, maybe the PDDs | 16:16 | ||
| Crazyjavahacking | during following weeks I will do a old architecture overview and proposal | ||
| whiteknight | we probably don't have good docks about it, because switching is sort of nonsensical now | ||
| dukeleto | whiteknight: how old/out of date/wrong is this doc? parrot.github.com/html/docs/pdds/pd...c.pod.html | ||
| Crazyjavahacking | the idea is to support multiple VMs as a proof of concept, not jusr JikesRVM | ||
| whiteknight | dukeleto: probably "very" | ||
| dukeleto | Crazyjavahacking: parrot.github.com/html/docs/pdds/pd...c.pod.html | ||
| 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 | ||
| Crazyjavahacking: does the visualization tool run in-process, or is it a separate process with IPC? | |||
| 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 | ||
| any problem with that? | |||
| whiteknight | okay. We could easily attach a pipe handle to the interp, and write status information to that pipe from GC | ||
| 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 | ||
| dukeleto | whiteknight: in some kind of standard format? | ||
| Crazyjavahacking | whiteknight> that will be cool | ||
| whiteknight: I will study the document, but is there a well defined set of information you are able to provide from GC? | 16:20 | ||
| 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 | ||
| 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? | ||
| 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 | ||
| We have some structures which contain GC state information, and all the functions you would need to tap into are in that file | 16:23 | ||
| 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 | |
| so any further steps should be communicated through IRC? or mailing list could be better? | |||
| whiteknight | Crazyjavahacking: we're always here on IRC and love to chat. Mailinglist works great too | 16:30 | |
| parrot-dev at lists.parrot.org, etc | |||
|
16:31
benabik joined
16:33
Crazyjavahacking joined
|
|||
| dukeleto | Crazyjavahacking: lists.parrot.org/mailman/listinfo/parrot-dev | 16:36 | |
| Crazyjavahacking: lists.parrot.org/mailman/listinfo/parrot-users | |||
| benabik | o/ #parrot | ||
| dukeleto | Crazyjavahacking: -dev is for questions about Parrot internals, -users is for questions about using/building on parrot | ||
| Crazyjavahacking: just cc both if you don't know which to send it to | |||
| benabik: mornin' | |||
| Crazyjavahacking | thanks | 16:37 | |
| benabik | dukeleto: What's shakin'? | 16:38 | |
| dukeleto | benabik: drinking my morning coffee and planning to take over the world | 16:40 | |
| benabik | dukeleto++ | ||
| dukeleto | This looks like an awesome book that slyly teaches kids about CS: www.laurenipsum.org/tinker | 16:41 | |
| www.laurenipsum.org/sample is a better link | 16:42 | ||
| benabik | ⦠Red-Black Forest? | ||
| The tone vaguely reminds me of Sophie's Choice. | 16:43 | ||
| moritz | read on, there's more to come | ||
| nice names and all | |||
|
17:08
jsut joined
|
|||
| dukeleto | this is cool: mapofcpan.org | 17:10 | |
| dalek | kudo/nom: b70ea99 | moritz++ | src/core/ListIter.pm: missing unbox |
17:17 | |
|
17:17
baest joined
17:55
fperrad joined
17:59
snearch joined
|
|||
| dalek | kudo/nom: 081cc0e | moritz++ | src/Perl6/Actions.pm: fix codgen for ."$var"() it used to call the get_string vtable, now uses an explicit unbox_s |
17:59 | |
| itor: 99df02e | NotFound++ | / (3 files): fill polygon |
18:25 | ||
| itor: 2bb11c5 | NotFound++ | src/Guitor.winxed: DrawLines |
|||
| itor: 15009d9 | NotFound++ | examples/pizarra.winxed: polygon, fill polygon, and optimize a bit color handling in example pizarra |
|||
|
18:51
jsut_ joined
|
|||
| cotto | ~~ | 19:04 | |
|
20:09
perlite_ joined
|
|||
| dalek | itor: dba7bc3 | NotFound++ | src/Guitor.winxed: check status in DrawString and DrawImageString |
21:07 | |
| itor: 4094224 | NotFound++ | examples/pokedit.winxed: save as, ctrl-s, quit with ctrl-q |
21:11 | ||
| itor: f4def33 | NotFound++ | examples/pizarra.winxed: fix color in poly hint |
|||
| dukeleto got on www.mozilla.org/credits/ | 21:33 | ||
| i will be at about:credits in the next release. IN YOUR BROWSER. | |||
| tadzik | woot | 21:35 | |
| benabik | Huh. There's an about:credits in my browser. | 21:36 | |
| tadzik | in mine too! | ||
| 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 | ||
| I suspect | |||
| dukeleto: what did you do for mozilla? | |||
| benabik | Chrome, yes. | ||
| cotto | dukeleto++ | 21:43 | |
| looks like you're there now | |||
| 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 | |
| and yes, about:credits is updated already! | |||
| NotFound | So you are credited for making it more lazy? | 21:58 | |
| That's why software is fun. | |||
| muixirt | functions in winxed don't have a return type? | 22:09 | |
| NotFound | muixirt: not yet. I have the idea of optionally specifying return type, but is just an idea for a now. | 22:12 | |
| muixirt | NotFound: so what is better: something like return int(expr) or to call the function with int(myfunc())? | 22:14 | |
| NotFound | muixirt: that depends. return int(x) is convenient if x is a PMC that must not be modified by the caller. | 22:16 | |
| And int(myfunc()) may be neceessary if it's part of an expression and you need int type. | 22:17 | ||
| benabik | I thin Winxed always assumes functions return a PMC. (i.e. "say(foo())" becomes "$P1 = foo() ; say $P1") | 22:18 | |
| NotFound | benabik: yes | 22:19 | |
| In some cases using a inline with return type specified that calls the function can be convenient. | 22:20 | ||
| benabik | inline function fooI() { return int(foo()); } // ?? | 22:22 | |
| benabik hasn't toyed with inline yet. | 22:23 | ||
| NotFound | Yeah | 22:24 | |
| benabik | Is inline in the Parrot snapshot yet? | 22:25 | |
| NotFound | But specifyng the return type:inline function fooI() return int { return int(foo()); } | ||
| benabik: yes. I'ts also in the last release, but in current master has some fixes and improvements. | 22:26 | ||
| benabik | Hm. For "inline function fooI() {}" I get "Expected '(' near fooI" | 22:27 | |
| Oh. No function | |||
| NotFound | Ops, I'm sleepy. Of course. | ||
| benabik | I had thought I tried that. Whatever. | 22:32 | |
| benabik probably forgot to save that time. | 22:33 | ||
|
22:39
mj41 joined
22:41
dafrito joined
|
|||
| dalek | itor: 9838435 | NotFound++ | examples/pizarra.winxed: fix release button while in first line of a fillpoly |
23:19 | |
| alvis | hello #parrot | 23:22 | |
| got a question: It seems 'docs/draft/pdd13_bytecode.pod' obsolesces 'docs/parrotbyte.pod' (e.g., MAGIC is incorrect in 'docs/parrotbyte.pod') ... | |||
| is this correct? | 23:23 | ||
| NotFound | alvis: the only way to know for sure is to dump a pbc file. | 23:25 | |
| 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:26 | |
| 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. | ||
| alvis | (1) why 'docs/draft/pdd13_bytecode.pod' is still a draft? and | ||
| (2) why 'docs/parrotbyte.pod' hasn't been pulled or archived or something? | 23:28 | ||
| NotFound: Ok. I'll check it later this evening. (evening, here, that is. :) | |||
| NotFound | alvis: bytecode format is still evolving, and probably will not start being stabilized until we move to a lorito based machine. | 23:29 | |
| 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-) | ||
| alvis | NotFound: Yeah. | 23:34 | |
| dalek | itor: d931a57 | NotFound++ | src/Guitor.winxed: improve automatic height of TextButton |
23:43 | |