|
Parrot 4.5.0 "Buff-faced Pygmy Parrot" | parrot.org/ | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC Set by moderator on 19 June 2012. |
|||
| dalek | : 0826c90 | kjs++ | src/ (4 files): enum constants are now recognized by the lexer. for now they're just type of int. |
00:05 | |
|
00:13
wagle joined
|
|||
| dalek | : fd0d156 | kjs++ | src/ (7 files): start clarifying code a bit; better union names. |
00:15 | |
| : da8af1d | kjs++ | src/ (3 files): move struct grammar. enable multiple expressions in for-step. |
00:51 | ||
|
00:52
wagle joined
|
|||
| dalek | : 07abbd1 | kjs++ | src/ (3 files): enable multiple inits in for loop. |
00:55 | |
| rrot/whiteknight/io_cleanup1: 2c2a61b | Whiteknight++ | src/io/ (4 files): Add in the missing function-level docs. Codetest now passes |
01:16 | ||
| whiteknight | okay, I found a better solution to my codetest problem | ||
| Instead of adding the missing docs, I just deleted the undocumented functions | |||
| msg kid51 Updating the threads branch from master, I git a conflict lib/Parrot/Pmc2c/Attribute.pm is deleted in master. nine made some changes to that file. Can you help get me get his changes merged to where the code lives now? | 01:21 | ||
| aloha | OK. I'll deliver the message. | ||
|
02:24
arnsholt joined
02:26
kid51_ joined
|
|||
| kid51_ smolders m0 branch for 1st time | 02:41 | ||
| dalek | rrot/m0: 6487fb3 | jkeenan++ | MANIFEST: Add m0 source code and test files to MANIFEST. |
03:05 | |
| rrot/m0: 3618e52 | jkeenan++ | MANIFEST.SKIP: mk_manifest_and_skip.pl modified MANIFEST.SKIP as well. |
|||
|
03:39
Hunger joined
04:55
kuku joined
06:02
brrt joined
|
|||
| dalek | d_bart: 9082974 | (Bart Wiegmans)++ | / (5 files): Add debug version of cgi output handle, so i can finetune the algorithm |
06:24 | |
| d_parrot: a36a49d | (Bart Wiegmans)++ | / (5 files): Added header reading to cgi loader, although it is not perfect |
06:26 | ||
|
07:11
brrt joined
07:52
mtk joined
|
|||
| dalek | kudo/nom: 11b9d5e | pmichaud++ | src/core/Mu.pm: Add zero and 1 argument forms of infix:<=:=> and infix:<eqv>. |
08:12 | |
|
08:15
lucian joined
08:20
kjs joined
|
|||
| dalek | kudo/nom: 1ffd6cf | moritz++ | src/Perl6/Actions.pm: add line annotations to assignment operator |
09:03 | |
|
09:04
Khisanth joined
09:28
kjs joined
10:33
kjs joined
11:01
JimmyZ joined
11:48
brrt joined
|
|||
| brrt | moritz++ it works | 11:48 | |
|
11:55
kjs joined
|
|||
| Coke yawns | 12:20 | ||
| JimmyZ | kjs: | ||
| kjs: failures/struct.m1 wokrs now | 12:21 | ||
| *works | |||
|
12:22
ilbot2 joined
|
|||
| moderator | Parrot 4.5.0 "Buff-faced Pygmy Parrot" | parrot.org/ | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC | ||
|
12:27
whiteknight joined
|
|||
| whiteknight | Good morning, #parrot | 12:29 | |
| tadzik | good morning whiteknight | 12:30 | |
| whiteknight | hello tadzik | ||
| brrt | good afternoon whiteknight | ||
| whiteknight | hello brrt | ||
| brrt | i've mentally fixed the cgi header reading stuff | ||
| just not in winxed yet | |||
| and i have to go now! :-) | 12:31 | ||
| whiteknight | awesome! I look forward to seeing the code | ||
| kjs | hi JimmyZ | 12:51 | |
| JimmyZ: have you uncommented the other function calls? | 12:52 | ||
| it's commented out because it doesn't work ;-) | 12:53 | ||
|
13:02
PacoAir joined
|
|||
| JimmyZ | kjs: yes | 13:02 | |
| kjs | it still segfaults here | ||
| ... using ./run_m1.sh | 13:03 | ||
| JimmyZ | kjs: it printed '42 | ||
| kjs | sure and then it segfalts | ||
| JimmyZ | "42\\n42\\n42\\n" | ||
| kjs | really? | ||
| interesting | |||
| since when? i didnt change anything in funcall code | |||
| which m0? | 13:04 | ||
| JimmyZ | kjs: about 9 hours ago | ||
| kjs: c-m0 | |||
| kjs | usign run script? | ||
| JimmyZ | ./run_m1.sh | ||
| kjs | mm cool | ||
| which platform? | |||
| doesnt work here | 13:05 | ||
| mac os10.6 | |||
| JimmyZ | kjs: ubuntu 12.04 | 13:06 | |
| kjs | and failures/funcall? | ||
| JimmyZ | jimmy@jimmy-VirtualBox:~/m1$ ./run_m1.sh failures/struct.m1 | 13:07 | |
| 42 | |||
| jimmy@jimmy-VirtualBox:~/m1$ ./run_m1.sh failures/funcall.m1 | |||
| foo() | |||
| bar() | 13:08 | ||
| kjs | you sure it's c-m0? | ||
| i got it working with perl-m0 | |||
| JimmyZ | ./m0 $filename.m0b || { exit 1; } | ||
| kjs | interesting | ||
| awesome, really :-) | 13:09 | ||
| JimmyZ | kjs: ;) | ||
| kjs | looks like a bug in cm0 | ||
| JimmyZ | maybe | ||
| kjs | perlm0 works... | 13:10 | |
|
13:10
Psyche^ joined
|
|||
| JimmyZ | kjs: I don't have mac os | 13:10 | |
| kjs | that's prob the dfif then. perhaps your environment is a bit more forgiving | 13:11 | |
| JimmyZ: perhaps we should switch to perl m0 | 13:20 | ||
| rather than c m0 | |||
| JimmyZ | kjs: make test fails some test by using perl m0 | 13:22 | |
|
13:23
plobsing joined
|
|||
| kjs | really? ok we need t fix that | 13:23 | |
| JimmyZ: could you report those as bugs in perl-M0? | 13:26 | ||
| JimmyZ | kjs: how? | 13:28 | |
| kjs | bugs in issue tracker parrot? | 13:29 | |
| hopefully some M0-perl people pick it up. | |||
| Coke | do we need to continue with perl-m0 ? | 13:33 | |
| wasn't it a POC before M0-C ? | |||
| kjs | Coke: well, the programs that fail on M0-C in failures/ folder run with M0-perl | ||
| so that's interesting | |||
| having 2 verisons might catch various bugs | 13:34 | ||
| bugs that are more ikely in C will be caught there, and likewise in perl, and these things can be double-checked in different implementations | |||
| Coke | <shrug> ok. | 13:35 | |
| kjs | Coke: I actually have good hope that M1 is correct now I've seen the tests run on perl-m0 (in failures folder). | ||
|
13:56
JimmyZ joined
13:58
bluescreen joined
14:14
jsut joined
|
|||
| dalek | : 4267236 | kjs++ | / (5 files): preparations for enabling "for (int i....". |
14:15 | |
| rrot/m0: 55bed69 | jimmy++ | src/m0/perl5/m0_interp.pl: fixed bugs |
14:34 | ||
| rrot/m0: b4f577d | jimmy++ | / (3 files): Merge branch 'm0' of github.com:parrot/parrot into m0 |
|||
| kjs | thanks JimmyZ | 14:37 | |
| array_and_structs still fails | 14:38 | ||
| different failure now i think | |||
| JimmyZ | kjs: that's a weird failure | ||
| kjs | it is | ||
| JimmyZ | kjs: I tried to fix it. but it's weird | ||
| kjs | JimmyZ: I think the warning emitted by perl does pick up on some potential problem | 14:48 | |
| it's hidden now with the "no strict ref" | 14:49 | ||
| JimmyZ | kjs: I think so | ||
|
15:08
dmalcolm joined
15:13
contingencyplan joined
|
|||
| benabik | Hm. Looking at the Subroutine PMC.... Does parrot just dispatch on number of named arguments instead of the names? | 15:52 | |
| Or is there some hidden way to find the names of the required arguments? | |||
| Sadly, I would not be surprised by either of these options. | |||
| whiteknight | I don't know if Parrot's MMD takes named arguments into account | 15:54 | |
| I suspect it does not | |||
| benabik | Alrighty. | 15:56 | |
| Also not surprised by that. | |||
| The argument information in the subroutine is a little odd wrt named arguments. "name_req" and "name_opt" are both integers. Where, really, you want to know what names are required. | 15:57 | ||
| whiteknight | oh yeah, it's just a "little odd", and only with respect to the named arguments. Sure | ||
| benabik | Heh. | ||
| whiteknight | you don't get a bonus check from google for understating problems so dramatically | 15:58 | |
| benabik | Well, the slurpy flags and number of positionals make sense to me. | ||
| the mutli_sig is an FIA of type ints? | 16:00 | ||
| Interesting. | 16:01 | ||
|
16:02
brrt left
|
|||
| whiteknight | why are you talking about this? Every time you mention what the Sub PMC is doing, I get this violent urge to rewrite it | 16:04 | |
| benabik | Because I need to interface with it. | 16:05 | |
| whiteknight | AAAAHHHH | ||
| It's my worst nightmare, come to life | |||
| Nobody should ever use this stupid thing | |||
| benabik | Sadly, at some point, a compiler has to. | 16:06 | |
| So... how do you determine the type number for a type that's being created inside the packfile you're compiling? | 16:07 | ||
|
16:11
rich joined
16:12
alester joined,
jashwanth joined
|
|||
| whiteknight | benabik: Type number of what? | 16:19 | |
| benabik | Hm. | 16:22 | |
| whiteknight: I'm trying to figure out what multisigs are. I thought they were FIAs for a little while, but they appear to be FPAs with Integers for core types and Strings for not. | |||
| Oh, and keys for things in namespaces. How lovely. | 16:26 | ||
| moritz | whiteknight: fwiw I've looked over socket.pmc in your iocleanup branch, and didn't find any methods for reading and writing bytebuffers, though your email to parrot-dev indicated that should be possible | 16:27 | |
| oh, does it get those from Handle? | |||
| whiteknight | yes, it should | ||
| moritz | never mind then | ||
| whiteknight | .read_bytes, I think | ||
| moritz | speaking of sockets... | 16:30 | |
| what does recv do? | |||
| it seems to neither return a bytebuffer, nor take care of character boundaries | |||
| whiteknight | in the new branch? | ||
| moritz | yes | ||
| this might be a topic for a later refactor, actually | 16:31 | ||
| whiteknight | hmm, it goes through the same exact path as .read on FileHandle does, except it ends up at a call to the recv C function | ||
| recv will return whatever is available at the socket, so it may not return as much data as you're asking for | |||
| moritz | that's ok, I'm not asking for anything | 16:32 | |
| whiteknight | please ask for things! | ||
| moritz | just for whatever it receives | ||
| I mean, recv doesn't take a size arguments | |||
| so calling it doesn't ask for some specific size, but just "gimme whatever" | |||
| NotFound | We should add a generic read function: readwim | 16:34 | |
| Read What I mean | |||
| And automatically you get an HTTP header or a full DVD image depending on your intention, the current phase of the moon at execution time and the weather at compile time. | 16:36 | ||
| Or maybe a butterfly was flying around while writing the source. | 16:37 | ||
| moritz | we should use libjustdoit for that functionality | 16:38 | |
| NotFound | A great project for next google Glacial Era of Code. | ||
| whiteknight | moritz: recv in the new branch should respect character boundaries, which means some bytes might end up in the buffer if they don't represent a complete codepoint | 16:47 | |
| moritz | whiteknight: looking into the tests it seems that .recv now defaults to ASCII | 16:48 | |
| whiteknight | what does it default to in master? | ||
| moritz | whiteknight: and the test sends 뻯 as UTF-8, so it blows up | ||
| whiteknight | I thought master was defaulting to ascii too, but I might have read the code wrong | ||
| moritz | dunno. it doesn't blow up in master | 16:49 | |
| whiteknight | okay, I'll have to research it more | ||
| I'll make sure that test passes tonight | |||
| moritz | it's unfortunate, I don't really understand sockets; I'm just the guy ending up maintaining them in rakudo :/ | 16:50 | |
| whiteknight | heh | ||
| moritz | it seems to be one of (UTF-8, Latin-1, Binary) | 16:51 | |
| NotFound | I think the initial design idea was that network IO must be the same as file IO. The idea failed miserably but the bizarre implementations succeed. | ||
| moritz | I guess that leaves you as well-informed as you were before though :-) | ||
| whiteknight | "bizarre" is correct. Some of the old code was batty | 16:52 | |
| And I'm willing to say that because I wrote and modified so much of it | |||
| NotFound | I mean the generic sockets design many moons ago, not the parrot one. | 16:53 | |
| Listen, I will tell you the history of the magic PDP and the lonely programmer... | 16:54 | ||
| whiteknight | gather 'round children and hear the tale | ||
| NotFound | Or go else and read it on wikipedia. | 16:55 | |
| benabik | Interesting. A Sub's multisig isn't in the constants table. | 17:01 | |
|
17:03
zby_home joined
|
|||
| benabik | Oh, that's also fun. IMCC saves the bytecode of immediate subs, but they're not in a subroutine. | 17:05 | |
| zby_home | kkkkkkkkkkkkkkkkkkkkkkkkkkjjjjjjjjjiiiiiiiik, | 17:07 | |
| moritz | vim != irrsi :-) | ||
| benabik | Hm. How do you get the result of an immediate sub? | ||
| moritz | you call it | 17:08 | |
| oh wait, immediate | |||
| benabik | No, that tries to invoke the object. | ||
| moritz | you don't call it, something else[tm] does it... | ||
| benabik | Wait... .const 'Sub' Does it. | ||
| moritz | based on that answer, I'm pretty sure I've misunderstood the question | 17:09 | |
| whiteknight | benabik: yeah, immediate subs are wonderful in every possible way | 17:10 | |
| benabik | I was trying to figure out how IMCC converts type names to type numbers... It looks like it just tries to do the lookup and if it fails, it stores the string. | ||
| whiteknight | if the :immediate sub returns a non-null PMC, that PMC is stored in the constants table in place of the :immediate Sub | ||
| benabik | This is... LTA | ||
| whiteknight | so we keep the bytecode in the packfile, even though you can't call it, and all the .const 'Sub' references point to something that is not a Sub and may not be const | 17:11 | |
| EVERYBODY BE HAPPY | |||
| benabik | I was worried that creating a class in an immediate would leak type numbers. | ||
| moritz | "look, we already have a table for storing stuff!" | ||
| benabik | It's stored in the constant table, which is fine. | ||
| But it's referred to as a Sub which is not. | |||
| So that's an exciting way to define classes in a PBC: store them as return values from immediate subs. | 17:12 | ||
| moritz | exciting because there's no other way to put stuff int he constant table? | 17:13 | |
| whiteknight | not through PIR syntax and IMCC | 17:14 | |
| benabik | Well, that's a limitation of IMCC, really. | ||
| whiteknight | in theory, the packfile PMCs will allow you to do it just fine | ||
| although nobody has ever figured out how to use those things | |||
| benabik is working on it. :-) | 17:15 | ||
| moritz: Exciting because class PMCs stored as constants become registered as global types when the packfile is loaded. I didn't really expect that. | 17:16 | ||
| whiteknight | And that reminds me: The packfile loader! | 17:17 | |
| blah | |||
| benabik: you're killing my mood today, reminding me of all this crap | |||
| benabik | whiteknight: Sorry. | ||
| whiteknight | :) | ||
| My upcoming projects are: 1) get threads merged, 2) get io_cleanup1 fixed and merged, and 3) 6model | 17:23 | ||
| I'll clean up the rest of this Sub crap after that | |||
| and still be in bed before 10PM | 17:24 | ||
|
17:44
particle joined
17:58
lucian joined,
brrt joined
18:17
kjs joined
|
|||
| dalek | : 0968d9a | kjs++ | src/ (5 files): enable local variables ina for loop (for (int i = ... ). |
18:22 | |
|
18:50
kjs joined
19:02
tuxit joined
19:05
bluescreen joined
19:14
jashwanth joined
19:23
zby_home joined
19:25
particle1 joined
|
|||
| benabik | Hm. Interesting. I think the PackfileDebug PMC documentation lies. There should be far more line number mappings than filename mappings. | 19:31 | |
| dalek | p/toqast: cfbc76f | jnthn++ | src/HLL/Actions.pm: Don't need Parrot namespace related stuff here any more. |
19:33 | |
| p/toqast: 395aa0a | jnthn++ | src/QAST/Compiler.nqp: Start to compile QAST::CompUnit. Set HLL and compile the contained top-level block. |
|||
| kudo/toqast: e5c5266 | jnthn++ | src/QPerl6/Actions.pm: Toss useless our statement and parameter. |
19:34 | ||
| kudo/toqast: 7928806 | jnthn++ | src/QPerl6/Actions.pm: Start to refactor various parts of CompUnit to use QAST::CompUnit. |
|||
| kudo/toqast: 0564728 | jnthn++ | src/QPerl6/Actions.pm: type => returns in statementlist. |
|||
|
19:34
kjs joined
|
|||
| benabik | Hm. Actually, it looks like PackfileDebug doesn't provide access to the line number mappings at all. :-( | 19:35 | |
| oh. | 19:36 | ||
| dalek | : 41c4326 | kjs++ | src/m1.y: fix a bug. |
19:37 | |
| : 0d40e57 | kjs++ | src/ (2 files): cleanup for statement. |
|||
| benabik | Or the PDD lies? I don't see the described line number mappings in the packfile code. | ||
|
19:38
birdwindupbird joined
|
|||
| benabik | Bluh. Packfiles are a mess. | 19:39 | |
| Okay, the PDD lies. I can accept that. | 19:40 | ||
|
19:47
LizM joined
|
|||
| dalek | rrot: 66923d2 | benabik++ | docs/pdds/draft/pdd13_bytecode.pod: PDD13: The debug segment has no line numbers The debug segment consists only of a list of offset to filename mappings. While a long table of opcodes to line numbers might be useful, it doesn't exist. So remove the pretty description of it. |
19:47 | |
|
20:15
travis-ci joined
|
|||
| travis-ci | [travis-ci] parrot/parrot#471 (master - 66923d2 : Brian Gernhardt): The build was broken. | 20:15 | |
| [travis-ci] Change view : github.com/parrot/parrot/compare/5...923d2f091f | |||
| [travis-ci] Build details : travis-ci.org/parrot/parrot/builds/1714139 | |||
|
20:15
travis-ci left
|
|||
| benabik | Hm. Looks like t/pmc/timer.t hung. Not caused by me though. | 20:16 | |
| Or perhaps the build just took too long on that machine. *sigh* | 20:17 | ||
|
20:22
PacoAir_ joined
|
|||
| dalek | p/toqast: 6beda3d | jnthn++ | src/QAST/CompUnit.nqp: Add some more SC-related bits to QAST::CompUnit. |
20:33 | |
| p/toqast: 8302932 | jnthn++ | src/QAST/Compiler.nqp: Sketch out compilation of load/main; it may even actually work... |
|||
|
20:37
jashwanth joined
|
|||
| dalek | kudo/toqast: 93627fc | jnthn++ | src/QPerl6/Actions.pm: First step of switching over to QAST::CompUnit for all the SC stuff. |
20:38 | |
| kudo/toqast: 85bbebb | jnthn++ | src/QPerl6/Actions.pm: Eliminate final .loadinit(...) usage. |
|||
|
20:44
brrt joined
20:58
kjs joined
21:11
davidfetter joined
|
|||
| dalek | d_bart: 5af5ab9 | (Bart Wiegmans)++ | foo.winxed: Fixed an algorithm for determining header and content apart |
21:55 | |
| benabik | ... Parrot subs have three names? | 22:08 | |
| Oh, only two. That's alright. :-( | 22:11 | ||
|
22:28
kid51 joined
23:01
particle joined
23:17
kjs joined
|
|||