|
Parrot 3.5.0 "Menelaus" released | parrot.org | Log: irclog.perlgeek.de/parrot/today Set by moderator on 27 June 2011. |
|||
|
00:03
logie left
|
|||
| dalek | nxed: 55d883f | NotFound++ | t/advanced/05attributes.t: some tests for attribute access |
00:05 | |
|
00:19
theory left
|
|||
| dalek | kudo/nom: e467eaf | jonathan++ | src/ (7 files): Add default %_ for methods. It's rather smarter than master, and doesn't allocate if it's never used. |
00:19 | |
| kudo/nom: d9b6344 | jonathan++ | t/spectest.data: We now pass two more test files. |
|||
|
00:23
whiteknight joined
|
|||
| whiteknight | good evening, #parrot | 00:29 | |
| soh_cah_toa | \\o | ||
|
00:31
kid51_at_dinner left
|
|||
| soh_cah_toa | whiteknight: cotto says i'm supposed to talk to you | 00:34 | |
| about compiling .pir files in hbdb | |||
| whiteknight | sounds like a chore. What did you do to deserve that? | ||
| nopaste | "soh_cah_toa" at 192.168.1.3 pasted "For whiteknight" (33 lines) at nopaste.snit.ch/58812 | 00:35 | |
| bubaflub | evening whiteknight | ||
| soh_cah_toa | whiteknight: that ^ | ||
| it doesn't work | |||
| bah, forgot to remove FOOBAR. that's nothing but a stub | 00:36 | ||
| anyway, it fails at Parrot_api_load_bytecode_file() | |||
| ERROR: PackFile_Header_validate: This is not a valid Parrot bytecode file. | |||
| whiteknight | is it a valid parrot bytecode file? | 00:37 | |
| soh_cah_toa | is a .pir file i want to compile to bytecode | ||
| which i thought the imcc_* functions would do | |||
| whiteknight | what is the contents of ps_file? | 00:38 | |
| dalek | kudo/nom: 1762378 | jonathan++ | NOMMAP.markdown: Remove done nommap item. |
||
| kudo/nom: aeb6b08 | jonathan++ | src/Perl6/Actions.pm: Fix bug with has ($!a, $!b) style decls. |
|||
| kudo/nom: e66e95f | jonathan++ | t/spectest.data: We pass S12-class/attributes.t. |
|||
| whiteknight | better yet, what exactly is this snippet of code supposed to be doing? | 00:39 | |
|
00:39
JimmyZ joined
|
|||
| soh_cah_toa | file is supposed to be the name of a pir file, i want to compile it to bytecode and then load it w/ Parrot_api_load_bytecode_file() | 00:39 | |
|
00:40
mikehh_ joined
00:41
rurban_ joined
00:42
mikehh left
00:43
mikehh_ left,
rurban left
00:44
rurban_ is now known as rurban,
kid51 joined
00:52
Kulag joined
00:54
Drossel left
|
|||
| whiteknight | imcc_compile_file_api compiles the .PIR file to a PBC PMC | 00:54 | |
| Parrot_api_load_bytecode_file loads a .pbc file into a PBC PMC | 00:55 | ||
|
00:55
lichtkind left
|
|||
| whiteknight | so, you only need one or the other. Doing both is nonsensical | 00:55 | |
| soh_cah_toa | hmm, ok let me try | ||
| whiteknight | that bottom /* Load bytecode */ section should all be in an else block | ||
| soh_cah_toa | ok | 00:56 | |
| it was doing this before and again now, when i change: if (!strcmp(strrchr(file, '.'), "pbc")) | 01:04 | ||
| to: if (strcmp(strrchr(file, '.'), "pbc") != 0) | |||
| then it works w/ .pir files but not .pbc files. the first way works w/ .pbc but not .pir | |||
| pretty much what i want is: if (not .pbc file) { compile the .pir } else { load pbc } | 01:05 | ||
| whiteknight | there's code to do that same thing in frontend/parrot/main.c | 01:06 | |
| I dont remember what it does | |||
| soh_cah_toa | i cargo culted much of that from there :/ | ||
| whiteknight | ok | ||
| soh_cah_toa | i just cut out the pasm parts | ||
|
01:09
NotFound_b joined
01:10
dafrito joined
01:11
Kulag left
01:14
Kulag joined
01:19
JimmyZ_ joined
01:20
daniel-s joined
|
|||
| soh_cah_toa | ha! it was b/c i compared the extension to "pbc" instead of ".pbc" | 01:23 | |
| i can't tell you how many mistakes like that i've made this summer ;) | 01:24 | ||
| whiteknight | oh, nice | ||
| soh_cah_toa | though i did need to make it an else clause | ||
|
01:24
JimmyZ left
|
|||
| soh_cah_toa | so whiteknight++ for that | 01:24 | |
|
01:25
JimmyZ_ is now known as JimmyZ
|
|||
| dalek | rrot/whiteknight/pbc_pbc: 05ed215 | Whiteknight++ | src/ (2 files): cleanups to the embedding API |
01:27 | |
| soh_cah_toa | Parrot_pf_prepare_packfile_init() is a MUCH nicer name | 01:28 | |
| dalek | rrot/whiteknight/pbc_pbc: c4d3d65 | Whiteknight++ | t/pmc/packfileview.t: Fixup packfileview.t |
01:30 | |
| dukeleto | msg kid51 please don't assign me Trac tickets without asking me first | ||
| aloha | OK. I'll deliver the message. | ||
| kid51 | dukeleto: Which particular one are you referring to? (Tonight I've mostly just been adding Components.) | 01:35 | |
| Generally, only about 1 of every 150 cage-cleaning actions I take involves assignment of a ticket. | 01:36 | ||
|
01:36
JimmyZ_ joined
|
|||
| cotto | ~~ | 01:36 | |
| kid51 | My practice is to cc before assigning | ||
| cotto | soh_cah_toa, API cleanup ftw | 01:37 | |
| jay | I've been lurking and working. Hello all. | 01:38 | |
| soh_cah_toa | yes | 01:39 | |
| cotto | hi jay | ||
| whiteknight | so...much...cleanup | 01:40 | |
| and as I'm doing this packfile cleanup work, I'm really becoming annoyed by the poor quality of the interp subsystem | |||
| so that might end up on my hitlist before too long | |||
| cotto | whiteknight, what about it? | 01:41 | |
| whiteknight | bad function naming, no clear organization to any of it, weird abstraction boundaries, etc | ||
| cotto | I like it when things annoy you. | ||
|
01:41
JimmyZ left,
JimmyZ_ is now known as JimmyZ
|
|||
| cotto | whiteknight++ | 01:42 | |
| dalek | nxed: 270adb5 | NotFound++ | winxedst1.winxed: improve checks and diagnostics of wrong null usages |
||
| whiteknight | at the current state of the whiteknight/pbc_pbc branch, I think it's possible to rewrite the parrot frontend in PIR | 01:43 | |
| NotFound_b | BTW I'm thinking that we may need a getcontext op | ||
| whiteknight | so I'm going to put together a proof-of-concept for that soon | ||
| NotFound_b: yes, I've planned one of those | |||
| it's an important part of my PCC refactors | 01:44 | ||
| er, my PCC refactor plan | |||
| NotFound_b | It doesn't make much sense to get the interp and then the current context from it. | ||
| dalek | TT #901 closed by dukeleto++: eval is broken in parrot_debugger | ||
| TT #901: trac.parrot.org/parrot/ticket/901 | |||
| TT #1466 closed by dukeleto++: Debugger "eval" instruction needs to be implemented | |||
| TT #1466: trac.parrot.org/parrot/ticket/1466 | |||
| whiteknight | NotFound_b: Create a branch. Add it | 01:45 | |
|
01:46
Kulag left
|
|||
| NotFound_b | getcontext or get_context? I never know what is our current preferred style for op names. | 01:46 | |
|
01:46
kid51 left
|
|||
| whiteknight | I would say getcontext | 01:47 | |
| same as getinterp | |||
| do it in a branch, we can change it if we need | 01:48 | ||
|
01:52
Kulag joined,
whiteknight left
02:01
dafrito left
|
|||
| dalek | nxed: 4a6e6a1 | NotFound++ | winxedst1.winxed: some more checks for wrong null usages |
02:05 | |
| nxed: 4c97909 | NotFound++ | pir/winxed_compiler.pir: update installable compiler |
02:07 | ||
|
02:10
daniel-s left
|
|||
| jay | Anyone here interested in glancing at a slight modification of some old code from Whiteknights' matrixy that I can't quite get working now? It's killing me. | 02:12 | |
| dalek | rrot: cf1bd29 | NotFound++ | ext/winxed/compiler.pir: update winxed compiler to c9790995b * Fixes in string escape sequeneces * New get/setattribute builtins |
02:16 | |
| bubaflub | jay: nopaste or gist it | 02:17 | |
| jay | His original for_statement is in github.com/Whiteknight/matrixy/blo...actions.pm | ||
| My version I'll nopaste. >> | 02:18 | ||
| It almost works, but not quite: a parameter problem I think. It's iterating the right number of times and the body is executing. My code and a simple example is at: nopaste.info/c795ca0efc.html. | |||
| Yes, I realize a while look could suffice, but iterating over a set is a little different... and I'm trying to learn, anyway. | 02:19 | ||
| The changes from Whiteknight's code is minor. As far as I can tell, the PAST::Op.new() has been updated since he probably wrote his code. | 02:20 | ||
|
02:23
NotFound_b left
|
|||
| dalek | rrot-gmp: f81e30b | bubaflub++ | / (4 files): move scripts to bin/ directory |
02:42 | |
| rrot-gmp: 095b282 | bubaflub++ | TODO.md: update TODO list |
|||
| rrot-gmp: c82545e | bubaflub++ | README.md: update README, a bit more explaining to do |
|||
|
02:44
JimmyZ left
02:47
theory joined
03:21
lucian left
|
|||
| dalek | TT #1812 closed by plobsing++: Less Than Awesome error message when new Rakudo tries to run on old Parrot | 04:20 | |
| TT #1812: trac.parrot.org/parrot/ticket/1812 | |||
| cotto | seen zloyrusskiy | 05:02 | |
| aloha | zloyrusskiy was last seen in #parrot 2 days 5 hours ago joining the channel. | ||
|
05:23
theory left
05:24
theory joined,
soh_cah_toa left
05:33
fperrad joined
06:02
daniel-s joined
06:04
zby_home joined
06:06
JimmyZ joined
06:14
JimmyZ left
06:28
JimmyZ joined
06:36
Kovensky left
06:38
theory left
06:46
Kovensky joined
07:28
theory joined
07:34
theory left
07:51
preflex left
07:53
preflex joined
08:33
zby_home left
08:41
rurban_ joined
08:43
rurban left
08:44
rurban_ is now known as rurban
09:06
Eclesia joined
|
|||
| Eclesia | hi | 09:06 | |
|
09:07
fperrad left
09:52
daniel-s left
09:58
daniel-s joined
10:04
daniel-s left
10:12
daniel-s joined
|
|||
| dalek | kudo/nom: f583316 | jonathan++ | src/binder/container.c: Decontainerize a little earlier in scalar assignment, so that the value type check will actually work from the correct type check cache, rather than creating an inferior runloop to do the type check. Should very significantly speed up every $a = $b. |
10:15 | |
|
10:17
daniel-s_ joined
10:20
daniel-s left,
daniel-s_ left
10:26
fperrad joined
10:35
whiteknight joined
|
|||
| dalek | TT #85 closed by whiteknight++: Add exported function Parrot_set_HLL() | 11:05 | |
| TT #85: trac.parrot.org/parrot/ticket/85 | |||
|
11:08
daniel-s joined
11:13
daniel-s left
11:15
daniel-s joined
|
|||
| dalek | rrot: 6c7553f | Whiteknight++ | api.yaml: Parrot_compreg function is not needed after IMCC refactors and is deprecated |
11:16 | |
| rrot: 6aa415d | Whiteknight++ | / (2 files): Add in a new function for returning the search paths array as a single string. Not wired in to anything yet, so shouldn't cause any problems. wayland++. See TT #560 for more details |
|||
| TT #852 closed by whiteknight++: Mark OpenGL subsystem as experimental | 11:21 | ||
| TT #852: trac.parrot.org/parrot/ticket/852 | |||
| whiteknight | msg cotto can you take a look at TT #2146 when you get a moment? I would like to deprecate the current load_bytecode op and replace it with a new version I'm developing. I would like to get the dep notice in before 3.6 if possible. We can wait till 3.9 too, if you prefer | 11:23 | |
| aloha | OK. I'll deliver the message. | ||
|
11:27
lucian joined
|
|||
| dalek | kudo/nom: 48e6bf7 | jonathan++ | src/binder/bind.c: Extra check to make sure we don't corrupt memory when handling *%_ in optimized code path. |
11:30 | |
| TT #2146 created by whiteknight++: Deprecate load_bytecode op | 11:37 | ||
| TT #2146: trac.parrot.org/parrot/ticket/2146 | |||
|
11:45
whiteknight left
12:27
kid51 joined
|
|||
| kid51 | whiteknight++ for culling thru old Trac tickets | 12:28 | |
|
12:30
fivetonsflax joined
|
|||
| jnthn__ | So it turns out that if you have a variable called returns or return_type in an ops file, ops2c goes and wraps it up in an extra level of parens, causing an innevitable C syntax error. WTF. | 12:36 | |
| foo->return_type ends up coming out as foo->(return_type) | 12:38 | ||
| Rename that to rtype and it works | |||
| :/ | |||
| It's TT #2147 now. | 12:40 | ||
|
12:50
ambs joined
|
|||
| fivetonsflax | hi | 12:52 | |
| I can't seem to connect to ftp.parrot.org. | 12:53 | ||
| anyone know what's up with that? | |||
| tadzik | seems down here too | 12:54 | |
| dalek | TT #2147 created by jonathan++: ops2c and a variable with "return" in its name | 12:55 | |
| TT #2147: trac.parrot.org/parrot/ticket/2147 | |||
|
13:03
fivetonsflax left
13:05
fivetonsflax joined,
fivetonsflax left,
fivetonsflax joined
13:12
Coke left,
Coke joined
|
|||
| dalek | nxed: e4d28f7 | NotFound++ | winxedst1.winxed: new builtin getcontext: While parrot still don't have an op to get the conext, this builtin get it via getinterp and the interpreter PMC. When the op gets available, the builtin will be reimplemented without affecting its usages (let's hope). |
13:17 | |
| kid51 | fivetonsflax: Is there something specific there that we can help you with? | 13:19 | |
| fivetonsflax | I'm trying to install parrot via macports | ||
| but the distfile can't be fetched: | |||
| ---> Attempting to fetch parrot-3.3.0.tar.gz from ftp://ftp.parrot.org/pub/parrot/releases/stable/3.3.0/ | |||
| ... times out. | |||
| dalek | kudo/nom: c23e04f | jonathan++ | src/ (2 files): Add is rw trait for routines. |
13:20 | |
| kudo/nom: 6b6bc4e | jonathan++ | src/ (2 files): Get of and returns trait to set return type for routines (not checked yet). |
|||
| kudo/nom: 1fa3334 | jonathan++ | src/core/ (2 files): Introspection of .returns/.of on Routine. |
|||
| kudo/nom: 2f5b530 | jonathan++ | src/ (3 files): Ops for decontainerizing if non-rw sub and for type checking return values. |
|||
| kid51 | What is the sequence of commands you called to get as far as you did? | ||
| kudo/nom: 63e2719 | jonathan++ | src/core/ (4 files): We run into code-gen issues for routines that evaluate to something void; avoid (heh, get it) that. |
|||
| kudo/nom: 9298db6 | jonathan++ | src/binder/multidispatch.h: Copy-pasto. |
|||
| kid51 | It has been so long since I last used 'ftp' that I've forgotten how to use it. | 13:21 | |
| fivetonsflax | heh. | 13:22 | |
| nopaste | "kid51" at 192.168.1.3 pasted "ftp attempt" (7 lines) at nopaste.snit.ch/58904 | 13:23 | |
| fivetonsflax | macports seems out of date anyway ... so maybe I should try a different route. git? I have it installed, but know little about how to use it. | ||
| kid51 | fivetonsflax: I was able to put that URL into a browser and get to that directory. ... | 13:24 | |
| ... but that directory will not be a place to find a macport. | 13:25 | ||
| It's only intended to hold our source code from quarterly supported releases (new release 3.6 coming in two weeks) | |||
| If you want to build and install from source code, you can use one of those tarballs. | 13:26 | ||
| fivetonsflax | port(1) isn't looking to download a macport, per se -- it's looking for a tarball of source code. | 13:27 | |
| kid51 | I am able to download this: ftp://ftp.parrot.org/pub/parrot/releases/stable/3.3.0/parrot-3.3.0.tar.gz | ||
| What is port(1) ? | |||
| fivetonsflax | the cmd-line interface to macports | 13:28 | |
| kid51 | Ah. I haven't tried macports in several yars. | ||
| Well, if all you want is a tarball, you should be able to download it from that URL in your web browser. I'm doing so now. | |||
| fivetonsflax | Hmm. I can now get to that URL with wget -- which I couldn't do earlier -- but I still can't get port to pull it down. Perhaps a passive-mode issue. | 13:29 | |
| spoke too soon. | |||
| ==> SYST ... done. ==> PWD ... done. | |||
| ==> TYPE I ... done. ==> CWD (1) /pub/parrot/releases/stable/3.3.0 ... done. | |||
| ==> SIZE parrot-3.3.0.tar.gz ... 3961124 | |||
| ==> PASV ... | |||
| and it hangs there. | |||
| kid51 | That's output from port? | 13:30 | |
| fivetonsflax | wget | ||
| dalek | kudo/nom: 6a28829 | jonathan++ | src/core/ (7 files): First round of getting us more honest with routine rw-ness. |
13:32 | |
| fivetonsflax | far out. disabling passive mode fixes it. must be some kind of firewall issue. I've never heard of active mode getting through a firewall when passive mode wouldn't! | ||
|
13:32
lichtkind joined
|
|||
| fivetonsflax | sorry for the fire drill. | 13:32 | |
| my overall goal here is to answer chromatic's call for help with Lorito. I'm guessing I need something more current than 3.3.0 to do that in any case. | 13:34 | ||
| kid51 | fivetonsflax: I have confirmed your observation. | 13:37 | |
| I don't have wget on my Mac, but I do on my Linux. | |||
| On that linux, wget ftp://ftp.parrot.org/pub/parrot/releases/stable/3.3.0/parrot-3.3.0.tar.gz hung at the same location you described. | |||
| wget --no-passive-ftp ftp://ftp.parrot.org/pub/parrot/releases/stable/3.3.0/parrot-3.3.0.tar.gz worked. | |||
| fivetonsflax | huh. interesting. so it's not just the network I happen to be using. | 13:38 | |
| kid51 | fivetonsflax: To help on Lorito -- or anything else that's in very active dev -- you're best doing a checkout from our git repository and working from HEAD | ||
| fivetonsflax | With this? | 13:40 | |
| git clone git://github.com/parrot/parrot.git parrot | |||
| kid51 | Sounds good | ||
| fivetonsflax | great. | 13:41 | |
| kid51 | I see there's now a "Clone in Mac" button on github -- but I don't know how it works yet | ||
| fivetonsflax | shrug, I'm happiest on the command-line anyway | ||
| kid51 | If you are around later today, you can ask dukeleto all about github | 13:42 | |
| tadzik | kid51: I think it's related do the new Mac Github client | 13:43 | |
| fivetonsflax | cool | ||
| I see there's a lorito branch | |||
| kid51 | chromatic has been active lately, but he doesn't often come on #parrot. So you may want to email him. | ||
| fivetonsflax | I wonder if I should be checking that one out. | ||
| OK, I'll try that. | |||
| jay | I've been an SVN guy and just started using git a few days ago (encouraged by what you guys are obviously doing with it). Pretty cool I must say, though I need to figure out this branching bit. | ||
| kid51 | However, right now the most active part of the work on Lorito is being conducted by cotto and dukeleto: M0 | ||
| jay: We were on CVS thru 2004 and on SVN thru 2010. | 13:44 | ||
| jay | So I'm only a year behind the curve!? That's unusual. !-) | 13:45 | |
| kid51 | So we were all SVN guys | ||
| jay: I still use Subversion for personal projects, such as my conference presentations/slideshows. | 13:46 | ||
| jay | Yes, I think I will, too. I also just co-authored a paper using Dropbox, and was reasonably happy with the experience (given that my co-authors wouldn't probably have managed SVN). | 13:47 | |
| kid51 | The major benefits of git, IMO, are: (a) output of diff, blame, etc. pages by default; (b) github.com | ||
| tadzik | (c) speed? | ||
| I remember doing svn diff on Parrot one day, and I was wondering if it hanged or something | |||
| kid51 | tadzik: I was speaking of my personal experience. At $job, git is not clearly faster than Subversion | 13:48 | |
| YMMV | |||
| tadzik | mebbe | ||
| jay | I'd put a huge github++ on that item (b), kid51. Logical interface. Good docs on git setup, etc... | ||
| fivetonsflax | I'm shopping for a versioning system to handle three branches of config for some pretty complex mail servers. | ||
| kid51 | There are, needless to say, people who think git is greatest thing since sliced bread | ||
| dalek | kudo/nom: 5c4d4d9 | jonathan++ | src/core/List.pm: A couple more places where we missed 'is rw'. |
13:49 | |
| kudo/nom: fd88893 | jonathan++ | src/core/EnumMap.pm: And one more 'is rw'. |
|||
| fivetonsflax | thinking about git though its distributed features are irrelevant to me | ||
| kid51 | fivetonsflax: ping cotto or ping dukeleto re M0, which is the base layer of lorito | 13:50 | |
| That's under very active development, so, if you're really interested in contributing, they will be able to put you to work right away. | |||
| fivetonsflax | sweet. | 13:51 | |
| I *am* really interested, though only if chromatic was entirely truthful about the required skillset. | 13:52 | ||
| kid51 | As Pontius Pilate said, "Truth -- what is that?" | ||
| fivetonsflax | compiler work is well outside my zone of expertise, but I can read and write perl5 and I'm willing to be the idiot intern for a while. | 13:53 | |
| kid51 | ping cotto. He is operationalizing chromatic's brainstorms. | ||
| fivetonsflax | I will. Thank you. | ||
| kid51 | compiler work is basically outside my zone of expertise as well | 13:54 | |
|
13:58
mro joined,
mro left
13:59
fperrad left,
fperrad joined
14:01
ambs_ joined,
ambs left,
ambs_ is now known as ambs
14:06
mro joined
|
|||
| fivetonsflax | what is your involvement with parrot, kid51? | 14:08 | |
| dalek | kudo/nom: f2e0b4a | jonathan++ | src/ (3 files): Make sure we don't lose scalarness of [...] and so forth that are returned, just rw-ness should be stripped. |
14:09 | |
| kudo/nom: dba1c2f | jonathan++ | src/Perl6/Actions.pm: Turn on scalar decontainerization of return values, and return value type checking. Note we need to be careful to add 'is rw' now to routines that fall off the bottom with a value we expect to return in containerized form. Think I've caught all of these; testing welcome. |
|||
| lucian | fivetonsflax: have you tried homebrew? it's useful in general | ||
| fivetonsflax | no, what isit? | 14:10 | |
| lucian | a better macports | ||
| much better | |||
| fivetonsflax | macports has been mostly good enough for me, but I'll take a look, thanks. | 14:12 | |
|
14:22
Coke left,
Coke joined
14:29
Eclesia left
|
|||
| kid51 reads www.modernperlbooks.com/mt/2011/07/...arrot.html which he thinks is what fivetonsflax was referring to | 14:49 | ||
| dalek | kudo/nom: a78aaa0 | jonathan++ | / (2 files): Catch routine redeclaration in actions, rather than leaving it to IMCC to whine about. |
14:50 | |
|
14:52
Eclesia joined
|
|||
| Eclesia it's too hot ... winter come back ! | 14:53 | ||
|
14:53
Coke left,
Coke joined
|
|||
| fivetonsflax | kid51: yes, right | 14:56 | |
|
14:59
fperrad left
|
|||
| mro | I just read the Less Magic, Faster Parrot article (linked above by kid51)... Where do I sign up? | 15:00 | |
| fivetonsflax | kid51 told me to ping cotto about it. | 15:05 | |
| mro | Thanks! You new here too? | 15:07 | |
| fivetonsflax | yes | 15:08 | |
| jay | jay read that same thing. Interesting. In terms of memory stuff, I'm interested in supporting memory-mapped files for arrays, say, in my HLL, and will be looking at Parrot's MappedByteArray as recommend by whiteknight. My previous work in this area used BOOST and C++. I should look at this with my grad student before jumping too quickly at the traditional route. | 15:09 | |
| mro | Interesting! | 15:14 | |
| dalek | nxed: 420d9c3 | NotFound++ | winxedst (2 files): Check for null before start iterating in for ... in loops |
||
| Coke | mor, fivetonsflax: welcome aboard. | 15:18 | |
| er, mro. | |||
| fivetonsflax | thanks. | ||
| mro | Thanks! | ||
| dalek | kudo/nom: 734ed25 | Coke++ | t/spectest.data: This test runs with a fudge. |
15:20 | |
| rrot: e2109b1 | jkeenan++ | / (2 files): Remove file per trac.parrot.org/parrot/ticket/2143. |
15:22 | ||
|
15:23
fperrad joined
|
|||
| kid51 | afk | 15:26 | |
| dalek | TT #2143 closed by jkeenan++: examples/benchmarks/overload.pl: Can we remove this file? | 15:31 | |
| TT #2143: trac.parrot.org/parrot/ticket/2143 | |||
| kudo/nom: 63f8bd7 | jonathan++ | src/ (3 files): proto auto-generation for methods, so it's now possible to write multi methods again without having to write an explicit proto. Re-uses generic instantiation get get the invocant type on the auto-gen'd proto right...a cunning use I'd not thought of for it. :-) |
15:38 | ||
| kudo/nom: 1e5e666 | jonathan++ | t/spectest.data: Now pass S12-methods/syntax.t again. |
|||
| kudo/nom: ce6e224 | jonathan++ | src/Perl6/Actions.pm: Start to differentiate between where we need to derive a dispatcher and when we need to auto-gen a proto for lexical multis. |
|||
| kudo/nom: 86fd89b | jonathan++ | src/Perl6/ (2 files): First cut of nested lexical multis, which derive a dispatcher based on the one in the outer lexical scope. |
15:57 | ||
| kudo/nom: 5448b49 | jonathan++ | NOMMAP.markdown: Remove completed nommap item. |
|||
|
16:07
jsut joined,
jsut_ left
16:26
ambs_ joined,
ambs left,
ambs_ is now known as ambs
16:32
fivetonsflax left
16:33
theory joined
16:42
rurban_ joined
16:44
rurban left,
rurban_ is now known as rurban
|
|||
| dalek | kudo/nom: e66182f | jonathan++ | src/Perl6/Actions.pm: Toss dead code. |
16:46 | |
| kudo/nom: 1c4235b | jonathan++ | src/Perl6/Actions.pm: proto routine auto-generation for lexical multis. |
|||
| kudo/nom: fbe8267 | jonathan++ | t/spectest.data: Three more passing test files. |
|||
|
16:48
Coke left,
Coke joined
16:52
GodFather joined
17:04
Hunger left
|
|||
| dalek | nxed: e5ec838 | NotFound++ | winxedst1.winxed: refactor a bit integer literal and constant creation |
17:06 | |
|
17:10
JimmyZ left
|
|||
| cotto | ~~ | 17:24 | |
| looks like chromatic++ attracted some minions. This will be fun. | 17:25 | ||
| mro | Hi cotto (or should i say "master" in a minion-y voice?) | 17:36 | |
| Eclesia | question : I would like to have a list of available namespaces and functions. how do I get that ? | 17:37 | |
| cotto | hio mro | ||
| mro | cotto, I was told to ping you for stuff to do! | ||
| cotto | mro, I suppose I'd be the one for that. How's your C and Perl? | 17:38 | |
| mro | I would say "okay" - I use both regularly! | 17:39 | |
| cotto | That's good. | ||
| mro | I | ||
| I've been looking over your TODO-list, but nothing stands out as "easy place to start". | |||
| cotto | I think a good starting point would be to check out the m0-prototype branch and write tests for some of the ops that don't have coverage yet. | 17:40 | |
| dalek | nxed: 3c4995e | NotFound++ | winxedst1.winxed: refactor predefined constants creation |
17:41 | |
| mro | Thanks, I'll take a look at that! | ||
| cotto | You can run make m0_cover to find out which ops those are (the m0_opfunc_xx subs implement ops) and use the tests with op names in t/m0/integration as a starting point. | ||
| mro, do you know where to find the m0 spec? | 17:42 | ||
| aloha, m0 spec? | |||
| aloha | cotto: m0 spec is docs/pdds/drafts/pdd32-m0.pod in the m0-spec branch or github.com/parrot/parrot/blob/m0-s...d32_m0.pod | ||
| jay | Wow, that is way cool. Is something here in IRC linked to git? | 17:43 | |
| cotto | I'll be glad to help. | ||
| jay, nothing other than dalek | |||
| mro | Okay. I'll check out m0-prototype and try to work on that! | ||
| cotto | mro, I'm sure you'll find something confusing. Let me know when you do and I'll try to make it less confusing for the next person. | 17:44 | |
| and thanks for volunteering! | 17:45 | ||
| mro++ | |||
| mro | Your welcome! :) | 17:46 | |
| Eclesia thinks it's nice to see someone motivated | |||
| cotto | And he's not the only one. | 17:48 | |
| I'm going to have to be on the ball just to keep everyone busy. | |||
|
17:49
Hunger joined
|
|||
| Eclesia | want me to give some objectives ? wants support for binary numerics of different size. bit, byte, short, int, long, float, double, doubledouble, bigint, bigdouble and number :D | 17:50 | |
|
17:51
wknight-phone joined
|
|||
| dalek | nxed: ab83d4e | NotFound++ | winxedst1.winxed: use predefined __WINXED_ERROR__ in stage 1 errors |
17:51 | |
| cotto | jay, you have to teach aloha anything you want it to know about. | ||
| aloha, jay? | 17:52 | ||
| aloha | cotto: Search me, bub. | ||
| cotto | aloha, jay is a pretty cool guy | ||
| aloha | cotto: Okay. | ||
| cotto | aloha, jay? | ||
| aloha | cotto: jay is a pretty cool guy | ||
| cotto | hello, whiteknight's phone | ||
| wknight-phone | aloha, jay is the bomb diggity | ||
| aloha | wknight-phone: ... but jay is a pretty cool guy ... | ||
| Eclesia | hi wknight-phone | ||
| wknight-phone | he can't be both? | ||
| hello Eclesia | 17:53 | ||
| bubaflub | aloha: jay is also a pretty cool guy | ||
| aloha | bubaflub: Okay. | ||
| bubaflub | aloha, jay? | ||
| aloha | bubaflub: jay is a pretty cool guy or a pretty cool guy | ||
| cotto | wknight-phone, I agree with the sentiment in the load_bytecode ticket, but I also want to have the replacement ready to use before the old 'n' busted version gets deprecated. | ||
| wknight-phone | ok | ||
| its not osuper urgent, i'm still working on the replacement | 17:54 | ||
| Eclesia | how can I get a list of available namespaces ? and functions availables ? | ||
|
17:54
wknight-phone left
|
|||
| cotto | Eclesia, what part of Parrot are you asking about? | 17:56 | |
| Eclesia | cotto : I'm writing a parser and want to check if a given path exists. is there a function I can use for that. like 'getattribute' ? | 17:57 | |
| cotto | a filesystem path? | ||
| Eclesia | cotto: a namespace path. | 17:58 | |
| something like that : [ 'Rosella'; 'FileSystem'; 'File' ] | 17:59 | ||
|
17:59
kid51 left
|
|||
| Eclesia | I want to get class given by this path, then list it's methods | 17:59 | |
| NotFound: have an idea ? | 18:02 | ||
|
18:04
fivetonsflax joined
18:27
Eclesia left
18:29
fivetonsflax left
|
|||
| dalek | Heuristic branch merge: pushed 21 commits to rakudo/nom by coke | 18:34 | |
| cotto | mro, what's your github username? | 18:44 | |
| mro | Just a sec... | 18:46 | |
| "martinolsen"! | |||
| cotto | good to know | 18:52 | |
| dalek | kudo/nom: 20abe0d | jonathan++ | src/Perl6/Metamodel/C3MRO.pm: Fix up MRO computation when there's containered stuff around. |
18:54 | |
| kudo/nom: bab5ed2 | jonathan++ | src/core/ (2 files): Flesh out eqv a bit more. |
|||
| kudo/nom: 98baf0f | jonathan++ | src/Perl6/Metamodel/MultipleInheritance.pm: Implement :tree in .^parents. |
|||
| kudo/nom: d31e835 | jonathan++ | t/spectest.data: Run S12-introspection/parents.t, |
|||
| kudo/nom: 322fcc0 | jonathan++ | src/ (3 files): Implement Attribute.get_value. |
|||
| nxed: 76502a8 | NotFound++ | winxedst1.winxed: rearrange and simplify handling of int and float literals |
19:12 | ||
| mro | cotto, I created a test for xor: pastebin.com/tE1Hc9mC | 19:13 | |
| Is that the proper way to do it? | 19:14 | ||
| cotto | looking | 19:21 | |
| mro, yes. | 19:22 | ||
| mro | Nice! | ||
| How do you want the patches? | |||
| cotto | mro, are you comfortable with pull requests? | ||
| You can fork parrot, work on the m0-prototype branch and send me a pull request if so. | 19:23 | ||
| If not, I can work from nopaste. | |||
| mro | I have a m0-test branch in a fork on github now. | ||
| cotto | great | 19:24 | |
| mro | Let me rename it. Just a sec... | ||
| cotto | mro, does the spec give you a fair idea of what's going on in that test? | 19:26 | |
| mro | I've sent a pull request now! | 19:29 | |
| cotto | wheee | 19:30 | |
| mro | I did not look at it from that point of view... | ||
| Just did a quick copy of the add_i test and adapted that! | 19:31 | ||
| I could look it over though.. Do you want to know if anything is missing? | 19:32 | ||
| cotto | The big thing right now is that strings are deficient. I don't think there are any other major holes in the spec, but I could be forgetting something. | 19:33 | |
| I tried to make sure that whatever I implemented was in the spec first. | |||
| mro, did you check that 9 xor 90 == 106? | 19:36 | ||
| dalek | nxed: 91e5c57 | NotFound++ | winxedst1.winxed: avoid some special cases in init/assign from concat strings |
19:37 | |
| mro | With perl5 and python, yes! | ||
| Dammit, that's not it... | 19:38 | ||
| cotto | I get 83 | ||
| bubaflub | cotto: same - i get 83 in ruby | ||
| cotto and mro: also, constant string #2 should be changed from "ok 1 xor: 9 + 90 = 99\\n" to "ok 1 xor: 9 xor 90 = 83\\n" | 19:39 | ||
| in the pull request | |||
| cotto | bubaflub++ | 19:40 | |
|
19:41
Patterner left
|
|||
| cotto | bubaflub, I can't say that mro is the only one to miss that | 19:43 | |
| mro | How did you calculate "9 xor 99"? | 19:44 | |
| bubaflub | cotto: i am king of copy-pastas like that | ||
| cotto | mro, python | ||
| bubaflub | mro: 9 xor 90 or 9 xor 99? | ||
| mro | Ahh, I keep using "99"! ;-) | ||
| cotto | ^ | ||
| mro | Yes. | ||
| bubaflub | and in ruby xor is just ^ | 19:45 | |
| mro | also, the test is not working properly.. | 19:51 | |
| cotto | never a dull moment | ||
|
19:52
jevin left
|
|||
| mro | do i need to add anything else than the M0 code in t/m0/integration/? | 19:53 | |
|
19:53
jevin joined
|
|||
| cotto | nope. Adding the test should make it run with the other m0 tests | 19:53 | |
| if make m0_tests passes, you should be good | 19:55 | ||
| mro | i think an exit is missing after the print ok / not ok | 19:58 | |
| otherwise it always falls through to "print successful test"! | 19:59 | ||
|
19:59
jevin left
|
|||
| dalek | nxed: 41dbc4d | NotFound++ | winxedst1.winxed: optimize out body and iteration if the condition is false in for |
20:04 | |
| mro | cotto, i've updated the pull request | 20:05 | |
| cotto | looking | ||
| mro, that exit op should use 0 or 1 directly. "x" is used to indicate syntactically unimportant arguments. | 20:06 | ||
| mro | got it! want me to fix it? | 20:08 | |
| cotto | please do | ||
| mro | what is a successful exit? greater than zero, like at the shell? | 20:09 | |
| s/greater than/equals/ | |||
| cotto | non-zero usually indicates an error | 20:10 | |
| mro | okay, its updated now! | 20:17 | |
| cotto | merged! | 20:26 | |
| dalek | rrot/m0-prototype: a45cd59 | (Martin Olsen)++ | t/m0/integration/m0_xor.m0: Add test for xor. |
||
| rrot/m0-prototype: 0200eda | (Martin Olsen)++ | t/m0/integration/m0_xor.m0: Merge branch 'm0-xor-test' into m0-prototype |
|||
| rrot/m0-prototype: 4804260 | (Martin Olsen)++ | t/m0/integration/m0_xor.m0: make xor test actually fail on error. |
|||
| rrot/m0-prototype: 5e0a584 | (Martin Olsen)++ | t/m0/integration/m0_xor.m0: return proper exit codes in xor test. |
|||
| rrot/m0-prototype: b226909 | cotto++ | t/m0/integration/m0_xor.m0: Merge pull request #139 from martinolsen/m0-prototype add test for xor from mro++ |
|||
| cotto | mro, do you mind if I put the email address attached to your github account into CREDITS so dalek can properly credit you? | 20:28 | |
| mro | cotto, sure! | 20:31 | |
| Do you want me to look over the exit bug in the other tests? | |||
| I see all the math related tests got it too | 20:32 | ||
| cotto | mro, please do | ||
| there you are | 20:33 | ||
| dalek | rrot: 691608f | cotto++ | CREDITS: add mro++ to CREDITS |
||
| cotto | karma mro? | ||
| aloha | mro? has karma of 0. | ||
| cotto | karma mro | ||
| aloha | mro has karma of 3. | ||
| mro | awesome | 20:34 | |
| jay | welcome mro. I seem to have missed quite a bit... and now it appears that I need to produce something of interest to maintain my supposed coolness. | 20:36 | |
| mro | Hi jay! | 20:38 | |
| jay | Looks like you are jumping right in, mro! | 20:39 | |
| mro | Well, chromatic wrote such a convincing post! :-) | 20:41 | |
| jay | I found it very readable, too... something I value. | ||
| cotto | I generally enjoy his writing. | 20:44 | |
|
20:56
Patterner joined
21:00
lucian left
|
|||
| mro | cotto, iton seems to be missing from the spec! Is it convert_n_i? | 21:00 | |
|
21:01
fperrad left
|
|||
| mro | cotto, also, for consistency, maybe the arguments should be turned around making $a1 the destination (like convert_* in the spec) | 21:03 | |
| cotto | mro, istr making a decision about that. I guess I need to update the spec. | ||
| mro, yes | 21:04 | ||
| dalek | rrot/m0-prototype: 1272180 | cotto++ | src/m0/perl5/m0_ (2 files): change iton/ntoi to match the spec |
21:13 | |
| kudo/nom: 8ff1db3 | moritz++ | t/spectest.data: 5 more passing test files |
21:24 | ||
|
21:27
ambs left
|
|||
| GodFather | \\join #perl6 | 21:28 | |
| moritz | GodFather: wrong network, try freenode instead :-) | 21:30 | |
| GodFather | yes sorry and thank you | 21:33 | |
|
21:42
Psyche^ joined
21:44
Eclesia joined
|
|||
| dalek | nxed: dbec52c | NotFound++ | winxedst1.winxed: use constants for the compiler error subtypes |
21:44 | |
| nxed: 23f047e | NotFound++ | winxedst1.winxed: use a constructor in WinxedCompileUnit |
|||
|
21:47
Patterner left,
Psyche^ is now known as Patterner
|
|||
| bubaflub | cotto: have we considered using git submodules for external projects that we include in the parrot repo? i'm thinking specifically of Winxed and NQP. | 21:50 | |
|
21:56
logie joined
|
|||
| dukeleto | bubaflub: considered, yet. Done anyting about, no. | 21:56 | |
| bubaflub | dukeleto: i dunno how useful it would be or if it would only cause more headaches. for winxed, we only really need a partial checkout - just the .pir | 21:57 | |
| dukeleto: i don't know if we need the whole repo for nqp | |||
| dukeleto: and i don't know if it'd be actually easier to maintain | |||
| NotFound | Why you may want to download the winxed C++ source and its infrastructure just to build parrot? | 21:58 | |
|
21:58
jevin joined
|
|||
| Eclesia | what is necessary to compile opengl for parrot ? the build is always 'skipped' for this module | 21:58 | |
|
21:59
jevin left
|
|||
| cotto | bubaflub, the way we're currently including a snapshot seems to be working well enough. I'm open to submodules if there's an advantage. | 22:01 | |
|
22:01
soh_cah_toa joined
|
|||
| cotto goes out for errands | 22:01 | ||
| bubaflub | cotto: agreed, i'm just thinking out loud. | ||
| dalek | nxed: 8ec9fba | NotFound++ | winxedst1.winxed: unify and improve the checks for invalid lvalue |
||
|
22:04
logie left
|
|||
| dalek | nxed: c63dac8 | NotFound++ | pir/winxed_ (2 files): update installable files |
22:05 | |
|
22:07
kid51 joined
|
|||
| dalek | rrot: b633ce4 | NotFound++ | ext/winxed/ (2 files): update winxed snapshot: * for ... in now check for null container * diagnostic improvements |
22:09 | |
| dukeleto | NotFound: when do we get winxed version numbers? How will people know the difference between winxed-in-parrot and winxed master? | 22:10 | |
| NotFound | dukeleto: next week, probably. | ||
| bubaflub | NotFound: the right answer would have been "next version, probably" | 22:11 | |
| NotFound | There is people worried by the difference? ;) | ||
| bubaflub: in any case, before christmas. | 22:12 | ||
|
22:12
jevin joined
|
|||
| Eclesia | NotFound: I am worried too, have several winxed files now for my project ^^ | 22:24 | |
| dukeleto | NotFound: yes, me :) | ||
| NotFound | You are not people, you are parrots ;) | 22:25 | |
| Eclesia just a user | |||
| NotFound | BTW if you want to replace winxed-in-parrot with winxed master into a installed parrot you juts need to do: make ; winxed setup.winxed install | 22:28 | |
| Eclesia | no one knows for opengl ? | 22:35 | |
|
22:41
jevin left
|
|||
| NotFound | Eclesia: knows what? | 22:42 | |
| Oh, compile. | |||
| Eclesia | yes | ||
| opengl module is skipped | |||
| NotFound | glut and mesa libs, I think. | ||
|
22:44
jevin joined
22:47
jevin left
22:48
jevin joined
|
|||
| GodFather | newbie: where can I read the description of the syntax "rule statementlist { [ <statement> | <?> ] ** ';' } the syntax I don't understand is '<?> and '**' | 22:49 | |
| jnthn__ | <?> means "always match" | ||
| ** means "repeated many times", in this case with a ';' between the repetitions | 22:50 | ||
| [\\d+] ** ',' # would match a comma-separated list | |||
| GodFather | Aah does that mean that this grammer rule will continue to match in the event of an error? | 22:51 | |
| dalek | nxed: 584384d | NotFound++ | winxedst1.winxed: put string repeat out of OpMulExpr during optimize phase |
||
| jnthn__ | No | 22:52 | |
| Eclesia | hourray :D . starting to have a real parsed tree : nopaste.snit.ch/59060 | 22:53 | |
| jnthn__ | More than if you write $a = 42;; $b = 100; | ||
| That double semicolon won't be an error | |||
| GodFather | is it correct to understand that ** is a binary operator, op ** op | 22:54 | |
| NotFound | Eclesia: looks good | ||
| sorear | GodFather: yes | 22:57 | |
| NotFound | Eclesia: but I'm curious about the comments. What is that, presenting them on columns? | ||
| GodFather | sorear, thanks | ||
| Eclesia | NotFound: columns ? ho no, I just used tabs, in the text. anything starting with a '|' is a comment | 22:58 | |
| NotFound: I'm actually blocked on something. how can I make the difference between a class and a method .. I mean I have the namespace path. but I don't know how to get the object referenced by this path | 23:00 | ||
| NotFound | Eclesia: winxed or pir? | ||
| Eclesia | winxed if possible | 23:01 | |
|
23:01
jevin left
|
|||
| NotFound | You can use the get_class builtin. | 23:02 | |
| GodFather | jnthn__, thanks 4 u help earlier | ||
| Eclesia | NotFound: var c = get_class("rosella.filesystem.File") ? | 23:03 | |
| NotFound | Uh, no, forget it, it's only for plain names, no namespaces. | 23:04 | |
|
23:05
jevin joined
|
|||
| Eclesia | NotFound: anohter approach. Is there a way to get the namespaces avaible ? some kind of list ? | 23:05 | |
|
23:06
jevin left
23:07
jevin joined
|
|||
| NotFound | Eclesia: You can do this: string key[] = [ "rosella", "filesystem", "File" ]; var cl; { get_class cl, key }; | 23:08 | |
|
23:08
jevin left
|
|||
| dalek | kudo/nom: c30f5f3 | jonathan++ | src/ops/perl6.ops: Fix .VAR, which in turn was causing problems deep in generic instantiation of attributes. |
23:09 | |
| kudo/nom: 12e692c | jonathan++ | src/Perl6/Metamodel/BOOTSTRAP.pm: Correct earlier patch to attribute generic instantiation. |
|||
| kudo/nom: 8e8d803 | jonathan++ | src/Perl6/ (2 files): Fixes to make sure type variables can be seen inside the role body. |
|||
| kudo/nom: 5aba02f | jonathan++ | src/Perl6/Actions.pm: Type variables need to defer to runtime lookup rather than being compile-time resolved in attribute lookup. |
|||
| kudo/nom: 0280c83 | jonathan++ | t/spectest.data: We now pass S14-roles/submethods.t. |
|||
| kudo/nom: 1f04cbc | jonathan++ | src/Perl6/Actions.pm: Also make sure mentions of generic types as terms are not resolved too early, so T.new works. |
|||
| Eclesia | NotFound: thanks, I guess this will only work if the path points to a class. what if it's a function ? | 23:10 | |
| NotFound | Or shorter: ${ get_class cl, split(".", "rosella.filesystem.File") }; | 23:11 | |
| Eclesia: if there is no class, cl gives null | |||
| dalek | rrot: 290ad87 | dukeleto++ | t/src/embed/api.t: Add some code coverage to the new embed API |
||
|
23:12
jevin joined
|
|||
| Eclesia | NotFound: ok, so I can at least test if it's a class. for the other case, is there a 'get_function' ? | 23:12 | |
| NotFound | Eclesia: you can use the get_hll_global op | 23:13 | |
| Eclesia | what will that return ? | 23:14 | |
| dalek | kudo/nom: fb396ad | jonathan++ | NOMMAP.markdown: Update nommap. |
||
| NotFound | Anything, if you want only functions you can check isa Sub | ||
|
23:15
jevin left
|
|||
| NotFound | Or you can use the op get_namespace and use the Namespace object to look for subs, but that thing always confuses me. | 23:16 | |
|
23:16
jevin joined
|
|||
| Eclesia | NotFound: both looks interesting for me :) Is it too much to ask for an example like you did just before ? | 23:18 | |
| (I know I ask plenty of question, sorry ... ) | |||
| dalek | rrot: ba03bd8 | jkeenan++ | parrotbug: Provide better description of final Action selections. See trac.parrot.org/parrot/ticket/920. Also, replace global filehandles with lexical filehandles. |
23:21 | |
| NotFound | Eclesia: var f; ${ get_hll_global f, key, "function_name" }; | 23:22 | |
| Eclesia | thanks :) | 23:24 | |
|
23:38
lichtkind left
23:40
Eclesia left
23:41
bluescreen left,
bluescreen joined
|
|||
| dalek | kudo/nom: 6d729b9 | Coke++ | t/spectest.data: list errors |
23:43 | |
| kudo/nom: ec9adf4 | Coke++ | t/spectest.data: run fudged test |
|||
| kudo/nom: d4a91f4 | Coke++ | t/spectest.data: errors |
|||
| kudo/nom: 417acfb | Coke++ | t/spectest.data: run fudged test |
|||
| nxed: a5f0086 | NotFound++ | winxedst1.winxed: allow non string values in get_class builtin |
|||
| cotto | ohai | 23:56 | |
| kid51 | cotto: This post on parrot-dev re locale fr_FR@euro looks like a serious problem. | 23:57 | |
| NotFound | @euro usually means iso-8859-16 | ||
| cotto | kid51, thanks. looking now | 23:58 | |
| NotFound | Aka latin1 with euro | ||
| jay | If a tree falls in the forest, does it make a sound? If a Parrot newbie gets the NCI working, so that his baby HLL can generate random numbers using a math library from the open-source R project, would anyone care? | 23:59 | |