|
Parrot 1.1.0 Released | parrot.org/ | 322 RTs left | Weekly Priority: Remove Deprecated Items Set by moderator on 6 May 2009. |
|||
| jonathan | You might be the first person writing an emitter in NQP. :-) | 00:00 | |
| bacek | At least second after pmichaud :) | ||
| jonathan | Oh? I didn't realize pm did an emitter too (OK, other than the Perl 6 to LOLCODE translator... ;-)) | 00:01 | |
| bacek | O wait. He emits from PCT. | ||
| jonathan | Yeah, the emitter for PCT is written in PIR. | ||
| And yes, it uses multi-dispatch. | |||
| bacek | And I using same approach. But I want NQP :) | 00:02 | |
| I'll kill dalek again with my commit message. | 00:05 | ||
| dalek | rrot: r38662 | bacek++ | branches/pmc_pct/compilers/pmcc/src/emitter/c.pir: Pass pmclass PAST as first argument during parsing. |
00:07 | |
| bacek | He survived. That's good | 00:08 | |
| afk # housekeeping | |||
| Whiteknight | masak: ping | 00:50 | |
| or, i guess this question could be answered by any Perl 6 hacker | |||
| any of that species around? | 00:51 | ||
| cotto | Isn't there a channel for that? ;) | 00:52 | |
| Infinoid | I've been meaning to learn it, but it's a rather daunting task. | ||
| cotto | ditto | ||
| although working with nqp helps, since it's a subset | 00:53 | ||
| Whiteknight | yeah, I suppose i can go there, but it's on adifferent server | ||
| kid51 | Possible 'make' failure: | 01:55 | |
| make: *** No rule to make target `include/parrot/gc_mark_sweep.h', needed by `src/string/api.o'. Stop. | |||
| At: /usr/local/bin/perl tools/build/vtable_extend.pl | 01:56 | ||
| make: *** No rule to make target `include/parrot/gc_mark_sweep.h', needed by `src/string/api.o'. Stop. | |||
| doing realclean;svn up;reconfiguring;rebuilding | |||
| Got this: ls: include/parrot/gc_mark_sweep.h: No such file or directory | 01:57 | ||
| src/string/api.c was touched in r38654, whiteknight's merging of the gc_api branch into trunk | 01:59 | ||
| Actually, src/string/api.c has been touched several times recently. | 02:03 | ||
| Looks like that was a false alarm. svn up, reconfigure and rebuild appears to have cleared up the problem. | 02:10 | ||
| Infinoid | kid51: Do you build with make -j, by any chance? | 02:20 | |
|
02:33
mikehh_ joined
|
|||
| dalek | rrot: r38663 | jkeenan++ | trunk/lib/Parrot/Docs/File.pm: Delete 2 inline comments so that we can close rt.perl.org/rt3/Ticket/Display.html?id=43683. |
02:34 | |
| Infinoid | hmm, nevermind. I don't see how it could be a missing makefile dependency, I can't find any references to that header at all | 02:35 | |
|
02:35
janus joined
02:38
mikehh__ joined
|
|||
| kid51 | Infinoid: No, I did not. But I think the initial report was wrong. I did an 'ls Makefile', inferred that I was ready to 'make' and forgot that earlier tonight I had done 'svn up' and pulled in all those changes from your branch. | 02:44 | |
| What is 'make -j' anyway? | 02:45 | ||
| I subsequently built and tested successfully: smolder.plusthree.com/app/public_pr...ails/21195 | |||
| Infinoid | ah. make -j runs jobs in parallel, to take advantage of multiple CPUs/cores | 02:50 | |
| It's also a good way to find missing makefile dependencies, because of its inherent randomness | |||
| kid51 | Well, I certainly don't have multiple CPUs on this 5-year-old iBook. | 02:52 | |
| Infinoid | Yeah, I just thought your report might be something else, sorry | 02:53 | |
|
03:32
eternaleye joined
|
|||
| dalek | rrot: r38664 | bacek++ | branches/pmc_pct/compilers/pmcc/src/parser/actions.pm: Set pasttype to inline for inline nodes. |
03:43 | |
| rrot: r38665 | bacek++ | branches/pmc_pct/compilers/pmcc/src/parser/actions.pm: Fix handling of macros flags in actions.pm |
03:46 | ||
| rrot: r38666 | bacek++ | branches/pmc_pct (6 files): Initial support for MACRO substitution |
|||
|
03:52
cognominal joined
03:57
Theory joined
05:07
Theory joined
05:14
Eevee joined
|
|||
| dalek | rrot: r38667 | bacek++ | branches/pmc_pct/compilers/pmcc/src/emitter (2 files): Fix passing PMC PAST to C::emit |
05:34 | |
| rrot: r38668 | bacek++ | branches/pmc_pct/compilers/pmcc (4 files): Inprove parsing of MACRO call arguments |
05:37 | ||
| rrot: r38669 | bacek++ | branches/pmc_pct/compilers/pmcc/src/emitter/c.pm: Ooops. I forgot to add emitter/c.pm |
|||
| rrot: r38670 | bacek++ | branches/pmc_pct/compilers/pmcc/src/emitter/c.pm: Remove useless FIXME comment |
|||
| bacek | cotto: Look! I've got something working for MACRO calls! :) | 05:42 | |
| cotto | so bacek, how long before you get L1 specified and implemented | ||
| I see what you did there. | |||
| bacek++ | 05:43 | ||
| bacek | cotto: I need language/pir... | ||
| cotto | How much more is there to do before pmcc can replace pmc2c? | ||
| bacek | It's almost straight forward now. | 05:44 | |
| dalek | rrot: r38671 | bacek++ | branches/pmc_pct/compilers/pmcc (2 files): SELF.method should generate VTABLE_method. |
||
| bacek | We can start generating get_vtable/update_vtable now. | ||
| Last big chunk - rewrite METHODs. | |||
| cotto | That's nontrivial. | 05:45 | |
| I knew there was something big. | |||
| bacek | Agreed... I think it's better wait for allison to finish pcc_rewired branch. | ||
| cotto | yup | 05:46 | |
| What about filenames? | |||
| bacek | erm. filenames? | 05:47 | |
| cotto | are those available to the parts that need them (i.e. the .c, .h and .dump generating code)? | ||
| foo/bar/baz.pmc ->foo/bar/baz.c, etc | |||
| bacek | ah. those filenames... it doesn't look hard to implement | 05:48 | |
| cotto | Also, unserialize_attrs in src/node.pir currently spits a warning to stderr when it can't find an expected dump. I'm not quite sure what dtrt is here, since some PMCs which are extended (mainly default) don't have ATTRs. | 05:50 | |
| actually, it'll probably need a list of directories to look through for dumps, since dynpmcs can extend normal PMCs. | 05:51 | ||
| bacek | current pmc2c silently regenerates .dump | ||
| cotto | that'd work, as long as the compiler knows where to look for the .pmc files. | 05:52 | |
| bacek | You'll definitely "need a list of directories to look through for dumps" :) | 05:53 | |
| Actually $cwd and "src/pmc" probably enough. | |||
| cotto | It looks like dumps and pmcs are currently installed as part of either install or (more likely) install-dev | 05:54 | |
| bacek | O! We can supply them in command prompt | ||
| supply list of directories | |||
| cotto | that would make the installed version easy too | ||
| bacek++ | 05:55 | ||
| bacek | cotto++ # indeed :) | ||
| Ok. Looks like "someone" have to start extending command-line "pmcc" compiler to dump generated files into proper places. | 05:59 | ||
| Any volunteers? | |||
| purl | Any volunteers are welcome and get beer and pizza. | ||
| bacek | purl: good girl :) | ||
| purl | thanks bacek :) | ||
| cotto | I'll take that, although not tonight. | ||
| bacek | cotto: ok. Thanks | 06:00 | |
| I'll take class_init/get_vtable/update_vtable generating. | |||
| cotto | actually, won't it be enough to pass in the path to the pmc, since the dump will go in the same place? | 06:01 | |
| bacek | dynpmc? | ||
| cotto | of course there'll still need to be a search path for dumps | ||
| bacek | :) | ||
| cotto | dynpmcs are treated the same way as pmcs, as far as dumps go | 06:02 | |
| bacek dreams about removing ATTRs from headers and reimplement ATTRs handling in pmcs... | |||
| Poking inside PMC isn't good idea | 06:03 | ||
| cotto | I'm hoping they'll go away eventually, but pmcc won't be usable if it doesn't make them work like pmc2c does. | 06:04 | |
| bacek | agreed. | ||
| cotto looks forward to 3.0 | |||
| bacek | And 3.1 | 06:05 | |
| And 3.11 for Workgroups! | |||
| cotto | It'll be a different bird altogether. | 06:06 | |
| bacek | :) | 06:07 | |
|
06:09
dduncan joined
|
|||
| bacek | Ok. Little brake. I hope I'll implement get_vtable/update_vtable today (without MUTLIs of cause.) | 06:09 | |
| cotto | ok. I'll probably be in bed when you get back. | ||
| night | |||
| bacek | night | 06:10 | |
|
06:17
dduncan left
08:50
register joined
08:51
iblechbot joined
|
|||
| dalek | rrot: r38672 | bacek++ | branches/pmc_pct (4 files): Add stub for default.pmc specialised handling. |
09:59 | |
|
10:03
bacek_ joined
|
|||
| dalek | rrot: r38673 | bacek++ | branches/pmc_pct/compilers/pmcc/src/parser/actions.pm: Add some TODO comments |
10:12 | |
| rrot: r38674 | bacek++ | branches/pmc_pct (3 files): Register PMC::Emitter::PMC::default as ancestor of PMC. |
|||
| rrot: r38675 | bacek++ | branches/pmc_pct/compilers/pmcc/src/emitter/pmc.pm: Split generate_class_init into 3 parts |
|||
| rrot: r38676 | bacek++ | branches/pmc_pct/compilers/pmcc/t/data/default.pmc: Add stripped down version of default.pmc into test suite. |
|||
| rrot: r38677 | bacek++ | branches/pmc_pct/compilers/pmcc/t/07-default.t: Add (failing) test for default.pmc handling |
|||
|
10:17
gaurav joined
|
|||
| dalek | a: 20bf64a | fperrad++ | src/pmc/lua (5 files): fix build against trac.parrot.org/parrot/changeset/38654 (gc_api merge) COMPATIBILITY BREAK |
10:45 | |
| bacek | Guys... | 10:51 | |
| pobject_lives even wasn't marked as deprecated. | 10:52 | ||
| And marked as PARROT_EXPORT... | |||
| Same for VTABLEs stuff... | 10:53 | ||
| jonathan | There was a general deprecation notice in 1.0 about C function names not of the form Parrot_subsystem_foo | 10:55 | |
| moritz | what a clever move ;-) | ||
| bacek | found deprecation notice about "pobject_lives"... | 10:56 | |
| But can't find deprecation about VTABLEs... Looks like we have to revert my merges of tt631_part* branches. | 10:57 | ||
| jonathan | bacek: What changed? | 10:58 | |
| (that you feel needed a deprecation cycle?) | 10:59 | ||
| bacek | We stop exporting generated VTABLEs functions. See #528 and #631 | ||
| And #651 | |||
| jonathan | OK, but people shoulda been calling those through the VTABLE_foo macros? | 11:01 | |
| Which still works, if I understand correctly? | |||
| bacek | They should. | ||
| jonathan | OK, well, anyone who wasn't IMO gets what they deserve... | ||
| bacek | But we used to export functions directly. | ||
| jonathan | Sure. I'd really hope people weren't calling them directly though. | ||
| For one it breaks polymorphism. | 11:02 | ||
| bacek | Apparently lua called them. | ||
| jonathan | Oh? | ||
| jonathan is a little surprised | |||
| moritz | lua used pobject_lives | ||
| (like rakudo did) | |||
| bacek | 2. Second realted problem - lua uses direct calls to MULTI functions. I can help with replacing such calls with "Parrot_mmd_multi_dispatch". | 11:03 | |
| It's from #651. | |||
| moritz | oh | ||
| bacek | It was something like "Parrot_Foo_method_TYPE" | ||
| dalek | kudo: a74a9cf | moritz++ | t/spectest.data: we pass S12-methods/chaining.t |
||
| jonathan | Heh, I didn't know that was possible. :-) | 11:04 | |
| bacek | fperrad++ refactored such calls to multi_dispatch. But my point is that we used to export them. So we need deprecation cycle :-/ | 11:05 | |
| jonathan: it _was_ possible | |||
| moritz | bacek: maybe ask on next #ps | ||
| bacek | moritz: I can't attend to #ps... It's too early for me. | ||
| Or too late | 11:06 | ||
| 4:30AM localtime | |||
| jonathan | bacek: Suggest sending mail to the list. | ||
| So can be discussed there, or suggest it's brought up at next #ps. | 11:07 | ||
| bacek is not very good writer in polite english. | 11:08 | ||
| jonathan | bacek: Just try and limit yourself to one swear word per sentnece. :-) | 11:09 | |
| bacek | My dictionary for technical discussions usually includes words like "crap", "bullshit" and "OMG, do you really thinks using your brains?" | 11:10 | |
| jonathan looks forward to an email containing all three | 11:14 | ||
| szbalint | I'm pretty sure linguists know this and there are probably a few of those around here, but swearing in one's native language is harder than doing so in a second or third language. When you swear in your native language, it feels stronger. | 11:21 | |
| I actually found myself swearing much more in english than I do in hungarian :) | 11:22 | ||
| bacek rewrote mail 3 times to avoid such technical terms. | |||
| afk # family | |||
| jonathan | szbalint: Yeah, I know that feeling. | 11:23 | |
| You never really know a language until you know how to swear in it too. :-) | 11:24 | ||
| szbalint | that's bullsh..I mean you're completely right :) | ||
| jonathan | ;-) | 11:25 | |
|
11:28
Whiteknight joined
11:31
kj joined
11:57
cognominal joined
12:02
kid51 joined
12:09
kj left
12:23
Whiteknight joined
|
|||
| dalek | rrot: r38678 | whiteknight++ | branches/gc_api: Removing the gc_api branch, it's been merged into trunk already with no major problems. Will do other gc-related cleanup in other branches if I need |
12:24 | |
|
12:40
rg joined
13:16
he joined
13:37
masak joined
14:05
whoppix joined
14:30
kid51 joined
|
|||
| dalek | tracwiki: v68 | jkeenan++ | WikiStart | 14:31 | |
| tracwiki: Currently there is no information on the original Parrot Development Roadmap page. It's all been translated into the per-release roadmap. We should have a page where we describe our overall development plan, but, until we do once again, we shouldn't have a link to an empty page on the first page of our wiki. | |||
| tracwiki: trac.parrot.org/parrot/wiki/WikiSt...ction=diff | |||
| tracwiki: v14 | cotto++ | ParrotQuotes | |||
| tracwiki: various language-related observations | |||
| tracwiki: trac.parrot.org/parrot/wiki/Parrot...ction=diff | |||
|
15:08
pmichaud joined
15:13
tetragon joined
15:17
Theory joined
|
|||
| dalek | tracwiki: v51 | jhorwitz++ | ModParrotArchitecture | 15:23 | |
| tracwiki: trac.parrot.org/parrot/wiki/ModPar...ction=diff | |||
| tracwiki: v52 | jhorwitz++ | ModParrotArchitecture | 15:26 | ||
| tracwiki: trac.parrot.org/parrot/wiki/ModPar...ction=diff | |||
| tracwiki: v42 | jhorwitz++ | ModParrotHLLDocs | 15:33 | ||
| tracwiki: trac.parrot.org/parrot/wiki/ModPar...ction=diff | |||
| kudo: cbc1bf6 | moritz++ | t/spectest.data: regress on a few tests tests that now use "augment" instead of "is also" |
15:44 | ||
|
15:56
eternaleye_ joined
|
|||
| Tene | purl: tell WhiteKnight the 'issues' link in your blog post just links to the "MAKE A PASTE" page, not to an actual paste. | 16:05 | |
| purl | Tene: what? | ||
| Tene | purl: msg WhiteKnight the 'issues' link in your blog post just links to the "MAKE A PASTE" page, not to an actual paste. | 16:06 | |
| purl | Message for whiteknight stored. | ||
|
16:18
cognominal joined
16:29
yuvipanda joined
17:08
mikehh_ joined
|
|||
| dalek | kudo: e6363e8 | pmichaud++ | docs/spectest-progress.csv: spectest-progress.csv update: 383 files, 11085 passing, 1 failing S32-io/IO-Socket-INET.t 2 - echo server and client |
17:14 | |
|
19:04
jan joined
19:14
yuvipanda left
|
|||
| dalek | kudo: 496e1f0 | moritz++ | t/spectest.data: a few more files for t/spectest.data |
19:25 | |
|
19:31
particle1 joined
19:46
indy joined
|
|||
| indy | Hi there! | 19:47 | |
| purl | i guess Hi there! is there a smart way to use inheritance of a db in dbic? | ||
| indy | currently trying to get rakudo running and I am wondering whether anybody would be available to help | ||
| jonathan | indy: hi | 19:49 | |
| You having trouble building? | 19:50 | ||
| indy | yep, sort of | ||
| I installed the win binary for Parrot-1.1.0 | |||
| jonathan | OK, the one hosted on SourceForge? | 19:51 | |
| indy | it's location is C:\\Parrot-1.1.0 | ||
| yes | |||
| sourceforge.net/project/downloading...-1.1.0.exe | |||
| jonathan | OK. | ||
| And that works OK? | 19:52 | ||
| indy | and rakudo-2009-04.tar.gz | ||
| I think it does | |||
| when I type parrot I do get | 19:53 | ||
| parrot -[acEGhprtvVwy.] [-d [FLAGS]] [-D [FLAGS]][-O [level]] [-o FILE] <file> | |||
| basically I am stuck here: | |||
| perl Configure.pl --parrot-config="C:\\Parrot-1.1.0\\bin\\parrot_config.exe" | |||
| NMAKE : fatal error U1073: don't know how to make 'C:\\fperrad\\Parrot\\RELEASE_1_1 | 19:54 | ||
| jonathan | I think there are some issues with using the Parrot Win32 installer, and then doing a source build of Rakudo. | ||
| Did you try the Win32 installable version of Rakudo from Sourceforge? | |||
| indy | NMAKE : fatal error U1073: don't know how to make 'C:\\fperrad\\Parrot\\RELEASE_1_1_0\\parrot.exe' | ||
| jonathan | sourceforge.net/project/showfiles.p..._id=677853 | ||
| indy | no, I haven't | 19:55 | |
| thanks for the link | |||
| jonathan | Yeah. Building Rakudo from source against a Parrot installed this way currently doesn't work. We'd like it to in the future. But for now you really need to either build both from source, or just use the supplied binaries. | ||
| indy | Ok.. thanks for the clarification | 19:56 | |
| jonathan | I do from source, 'cus I'm hacking on Rakudo a bit. But I know people have had success using the Win32 binaries too. | ||
| indy | cool stuff | 19:57 | |
| I'd like to get in it a bit as well | 19:58 | ||
| but first need to get it running and have some more time to play around ;-) | |||
| jonathan | Yeah, the binaries make for an easy way in. | 19:59 | |
| Once you get to wanting to work from the source, it builds easily enough under the free versions of MS VC++ compiler. And I think it's OK under MinGW too. Cygwin I fear we're a tad broken on though. | 20:00 | ||
| Infinoid | strawberry perl (which includes mingw) has proven to be a nice all-in-one for me | 20:02 | |
| it gives you perl5 and c compilers, pretty much everything parrot needs | |||
| indy | Well, I am using the commercial version of VS2008, so that hopefully should do it as well I hope ;-) | ||
| Infinoid | that should work too | ||
| jonathan | Yeah, should be fine. | 20:03 | |
| So long as nmake and cl are in your path, should work out. | |||
| indy | does the rakudo installer automatically set the environment path? | 20:04 | |
| jonathan | Not sure, sorry. I didn't use it. | 20:05 | |
| I meant about the path in relation to if you wanted to compile from source. | |||
| The installer won't need those. | |||
| Or you maybe meant if the installer sets the path of where it installs the perl6 binary, in which case I don't know. | 20:06 | ||
| indy | no worries | ||
| just realized what I did wrong | 20:07 | ||
| working now :-) | |||
| jonathan | yay | 20:09 | |
| indy | thanks a lot for your help! | 20:11 | |
|
20:27
knewt- joined,
szbalint joined
|
|||
| indy | hmm | 20:31 | |
| just tried the simple "hello world" example and I don't get any output at all... | 20:32 | ||
| say "Hello" ~ " World" ~ "!"; | |||
| jonathan | indy: Odd. You ran it as perl6 and then did it at the interactive prompt? | 20:34 | |
| indy | yes, that is working | 20:35 | |
| but also perl6 -c hello.pl doesn't return any output | |||
| jonathan | -c ? | ||
| purl | well, -c is real 0m3.827s | ||
| jonathan | Oh, -c is "check syntax" - should have said the syntax was OK though. | ||
| does perl6 hello.pl work? | 20:36 | ||
| indy | sorry, not explaining myself well enough | 20:37 | |
| What I meant was that just executing perl6 is taking me to the interactive move | |||
| trying to run something like ' | 20:38 | ||
| print "Hello"; | |||
| however returns | |||
| Unhandled exception at 0x011065a8 in perl6.exe: 0xC0000005: Access violation. | |||
| when I run | |||
| perl6 hello.pl | |||
| I do not get any output | |||
| when I try to check the syntax with | |||
| perl -c hello.pl | |||
| I also do not get any output | 20:39 | ||
| not even "OK" | |||
| jonathan | Ouch. :-( | 20:41 | |
| That doesn't sound good. | |||
| What does after it fails to give output this give: | |||
| echo %ERRORLEVEL% | |||
| indy | -1073741819 | 20:42 | |
| purl | -1073741819 | ||
| jonathan | ouch | 20:45 | |
| What version of Windows are you running on? | |||
|
20:46
donaldh joined
|
|||
| indy | Server 2003 R2 SP2 | 20:46 | |
| jonathan | OK, odd. | 20:47 | |
| I've not heard of issues with the binaries on that platform. On the other hand, I don't know how widely used they are... | 20:48 | ||
| It is probably worth reporting you ran into issues with them though. | |||
| purl, rakudobug? | |||
| purl | rakudobug is, like, mailto:rakudobug@perl.org | ||
| indy | ok, will send a mail | 20:51 | |
| jonathan | Thanks. | 20:52 | |
| indy | Thank you | ||
| cotto | bacek, ping | 21:01 | |
|
21:03
szbalint joined
|
|||
| cotto | (and happy Monday) | 21:06 | |
| jonathan | no no no Monday means WORK. | ||
| cotto | not for me :( | 21:07 | |
| jonathan | Ouch. :-( | 21:08 | |
| cotto | well, not paid | ||
| jonathan | Sorry to hear that. | 21:14 | |
| cotto | more time for parrot | 21:18 | |
|
21:31
eternaleye joined
21:32
indy left
|
|||
| bacek | good morning | 21:37 | |
| cotto: pong | 21:38 | ||
|
21:51
__darbelo joined
|
|||
| dalek | rrot: r38679 | chromatic++ | trunk (6 files): [IMCC] Allowed Unicode identifiers in named parameters, arguments, and return The resulting IMCC code could use some refactoring: create a new token which represents a constant SymReg that is already a properly constructed STRING or Unicode STRING. As well, this new code needs memory profiling, as the expected lifespan of this memory isn't always clear. Still, it fixes the immediate bug. |
21:56 | |
| rrot: r38680 | bacek++ | branches/pmc_pct/compilers/pmcc/src/emitter (2 files): Move few methods from pmc.pir to pmc.pm |
|||
|
22:19
gryphon joined
|
|||
| dalek | kudo: a27bbb6 | moritz++ | build/PARROT_REVISION: bump parrot revision to get Unicode identifiers in named arguments, chromatic++ |
22:50 | |
| cotto | bacek, sorry about that. I figured out my question. | 22:52 | |
|
22:57
Ademan joined
|
|||
| dalek | tracwiki: v14 | coke++ | BranchDescriptions | 23:11 | |
| tracwiki: trac.parrot.org/parrot/wiki/Branch...ction=diff | |||
|
23:12
eternaleye joined
|
|||
| dalek | rrot: r38681 | cotto++ | branches/pmc_pct/compilers/pmcc/pmcc.pir: [pmcc] don't load a couple unneeded libraries |
23:15 | |
|
23:18
kid51 joined
23:50
Whiteknight joined
23:54
japhb joined
|
|||