|
Parrot 3.2.0 released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Parrot is accepted for GSoC 2011! Student application deadline is Apr 8 | Goals: Get more GSoC ideas on wiki; close tickets; stable 3.2 release; assess status of roadmap goals for 3/15 meeting. Set by moderator on 18 March 2011. |
|||
|
00:07
sjn_ joined
00:08
theory joined,
cosimo joined
00:16
soh_cah_toa joined,
cosimo left
00:17
cosimo joined,
cosimo left
00:18
cosimo joined
|
|||
| dalek | rrot/opsc_llvm: f1a81ea | bacek++ | runtime/parrot/library/LLVM/BasicBlock.pm: Add LLVM::BasicBlock.insert_before(); |
00:19 | |
| rrot/opsc_llvm: 1f4542e | bacek++ | runtime/parrot/library/LLVM/Value.pm: Return self from Value.name for simplify chained calls. |
|||
| rrot/opsc_llvm: b440a5c | bacek++ | runtime/parrot/library/LLVM/Type.pm: Improve Type::PMC slightly. LLVM doesn't like pointer(void). It should be replaced with pointer(int8()). Which makes sanse but still quite surprise. |
|||
| rrot/opsc_llvm: a9482e2 | bacek++ | runtime/parrot/library/LLVM/Value.pm: Fix typo |
|||
| rrot/opsc_llvm: 25c884a | bacek++ | / (2 files): Add Type::function for create FunctionType |
|||
| rrot/opsc_llvm: 71d072f | bacek++ | runtime/parrot/library/LLVM/Module.pm: Switch Module to use Type::function |
|||
| rrot/opsc_llvm: 84952f9 | bacek++ | runtime/parrot/library/LLVM/Value.pm: Fix bug with Value.name. We should actually return result of LLVM call. |
|||
|
00:21
theory left
00:23
whiteknight left
00:29
kid51_at_dinner left
|
|||
| soh_cah_toa | sorry, but i got a noob question here: what are all these messages from dalek about that show up from time to time? | 00:32 | |
| bubaflub | soh_cah_toa: dalek is a bot that reports commits to parrot and related repo | 00:34 | |
| bacek_at_work | soh_cah_toa, commits into parrot and related repos | ||
| soh_cah_toa | okay | 00:35 | |
| plobsing | soh_cah_toa: we have a number of bots. dalek reports commits, ttbot reports continuous integration failures, aloha delivers messages and factoids (but is quite shy), clunker3 is for kicking because we no longer need it and it keeps comming back | 00:42 | |
| bacek_at_work | plobsing++ :) | 00:43 | |
| soh_cah_toa | cool, i've never seen that before | 00:44 | |
| dalek | rrot/opsc_llvm: 0adf372 | bacek++ | / (2 files): Add BasicBlock.prev |
00:45 | |
|
00:45
kid51 joined
|
|||
| kid51 | bacek_at_work ping | 00:49 | |
| bacek_at_work | kid51, pong | 00:50 | |
| bacek_at_work is here barely. | 00:51 | ||
| kid51 | bacek_at_work: I just want to make sure you got my msg about t/library/llvm/. | ||
| bacek_at_work | kid51, yes, thanks. I think we should enable recursive processing. Otherwise t/library will be stuffed with a lot of independent tests. | 00:53 | |
| especially for any reasonable complex library. | |||
|
00:57
bubaflub left,
theory joined
00:59
mtk left
01:05
woosley joined
01:07
mtk joined
|
|||
| dalek | rrot/opsc_llvm: c21ee4f | jkeenan++ | lib/Parrot/Harness/DefaultTests.pm: Add t/library/*/*.t to list of globs included in \\@library_tests, hence run during 'make test'. |
01:13 | |
|
01:13
sjn left
|
|||
| nopaste | "kid51" at 192.168.1.3 pasted "opsc_llvm branch: t/library/llvm/*.t: results when only older version of LLVM is available" (120 lines) at nopaste.snit.ch/38345 | 01:14 | |
| bacek_at_work | kid51, can you replace libname on line 108 in runtime/parrot/library/LLVM.pm? | 01:16 | |
| with probably libLLVM-2.2.so | |||
| hmm | 01:18 | ||
| It will not work. llvm-2.2 (at least in debian) doesn't have shared library. | |||
| dalek | rrot/opsc_llvm: cf06776 | luben++ | runtime/parrot/library/LLVM/Builder.pm: Add more Builder methods |
01:19 | |
| rrot/opsc_llvm: a9403d6 | luben++ | / (7 files): Merge branch 'opsc_llvm' of github.com:parrot/parrot into opsc_llvm |
|||
| kid51 | bacek_at_work: Perhaps we should search for a minimum version of LLVM in config/auto/llvm.pm (and adjust t/steps/auto/llvm-01.t accordingly)? | 01:20 | |
| bacek_at_work | kid51, sounds about all right. Something like "2.7+" will work. | ||
| actually, 2.7 is minimal required version. | 01:21 | ||
|
01:27
dmalcolm left
01:33
hercynium joined
01:34
luben joined
|
|||
| bacek_at_work | luben, ping | 01:40 | |
| msg luben Can you add "A" record with your "git commits email" into CREDITS? Than dalek will properly give you karma for commits. | 01:44 | ||
| aloha | OK. I'll deliver the message. | ||
|
01:45
particle left
01:46
particle joined
|
|||
| luben | bacek, thanks, it's OK now, I was not working from this laptop and the previous 2 commits I have not setup the git repo with my email | 01:46 | |
| bacek_at_work | luben, ok | 01:47 | |
| luben | the last commit seems OK | ||
| bacek, if I could help with llvm/jit branches, tell me where to hack, what is most important | 01:51 | ||
| cotto | ~~ | 02:04 | |
|
02:09
robertpeters_WLS joined
|
|||
| robertpeters_WLS | Hi everyone. | 02:09 | |
| Does someone have a moment to assist me with a Parrot installation problem? | |||
| When I type "parrot setup.pir test" at the prompt, I get "load_bytecode" couldn't find file 'distutils.pbc' | 02:11 | ||
| I'm on a rather fresh install (haven't done anything with it yet), using Windows 7 64bit and ActiveState Perl (Strawberry gave me an error when I tried to install it) | |||
| I feel like Parrot isn't finding its own directories (like it doesn't know where to look for it's modules). I'm typing that code within the main Parrot directory. | 02:12 | ||
| dalek | rrot/opsc_llvm: 79bb548 | luben++ | runtime/parrot/library/LLVM/ (2 files): * Add list of all available optimizer passes |
02:15 | |
|
02:18
marcel_r joined
|
|||
| plobsing | robertpeters_WLS: you could try using a tool that monitors a process for system calls to confirm this. | 02:19 | |
| wikipedia suggests strace (presumably short for "system trace") is a debugging utility in Linux to monitor the system calls used by a program and all the signals it receives, similar to "truss" utility in other Unix systems. This is made possible by a kernel feature known as ptrace. | |||
| oops. sorry, paste-o | 02:20 | ||
| www.intellectualheaven.com/default....strace.htm | |||
|
02:20
mikehh left
|
|||
| robertpeters_WLS | Thanks, plobsing. I'm using Windows, unfortunately. | 02:20 | |
|
02:20
jsut joined
|
|||
| plobsing | although I cannot personally vouch for this product, not having developed on windows in a while | 02:20 | |
| cotto | There's probably a sysinternals tool you can use. | 02:21 | |
| robertpeters_WLS | Ah. I see the link is for Windows, thanks. | ||
| cotto, can you elaborate? | 02:22 | ||
| cotto | robertpeters_WLS, I'm digging to see what looks likely. Are you familiar with sysinternals? | 02:23 | |
| robertpeters_WLS | No. :( | ||
| kid51 | msg bacek-at_work I will probably have a version of config/auto/llvm.pm that tests for min version in a day or two. | ||
| aloha | OK. I'll deliver the message. | ||
| cotto | They make a number of very useful windows-specific tools for digging into internals | 02:24 | |
| kid51 | robertpeters_WLS: Did you try: cd your_language_directory;../parrot.exe setup.pir | 02:25 | |
| robertpeters_WLS | I'm surprised the solution would be that involved. I haven't done anything but a basic install! :) | ||
| kid51: yes, but got the same error | |||
|
02:25
jsut_ left
|
|||
| cotto | process monitor and process explorer look likely | 02:25 | |
| kid51 | robertpeters_WLS: If it persists, this calls for filing a bug ticket in Trac. | 02:26 | |
| cotto | unfortunately I'm not near a windows machine (and mine at work has Strawberry Perl installed) | ||
| robertpeters_WLS | Okay. Thanks, everyone. I'll try removing everything and starting over for starters. If that doesn't work, I'll poke around in sysinternals. Thanks! | 02:27 | |
| plobsing | robertpeters_WLS: do you have anything funny in your paths (spaces and/or non-ascii characters have given us problems in the past)? | ||
| bacek_at_work | kid51, thanks! | ||
| kid51, can you try to implement something like --with-llvm-config=<foo> to forcefully set used llvm? | |||
| robertpeters_WLS | plobsing: no, it's c:\\Users\\<<username>>\\Dropbox\\Parrot-3.2.0 | 02:28 | |
| bacek_at_work | luben, most important things for now is LLVM memory management and IO. | ||
| robertpeters_WLS | username has no spaces or special characters. | ||
| bacek_at_work | luben, items 6 and 7 from blog.bacek.com/2011/03/finishing-of...ranch.html | ||
| luben | ok, I will work on that | 02:29 | |
| bacek_at_work | luben, thanks! | ||
| luben, can you also set "git config branch.opsc_llvm.rebase true" to avoid merge commits? | 02:30 | ||
| dalek | rrot/opsc_llvm: 0376785 | luben++ | runtime/parrot/library/LLVM/BasicBlock.pm: Some more BasicBlock methods |
||
| kid51 | bacek_at_work: Please check git status of runtime/parrot/library/LLVM.pir and runtime/parrot/library/LLVM/*.pir. Should they be in gitignore and/or MANIFEST.generated? | ||
| Or do they need to be added to MANIFEST? | 02:31 | ||
| bacek_at_work | kid51, they should be in .gitignore and cleaned in "make clean" | 02:32 | |
| kid51 must sleep | |||
|
02:32
kid51 left
02:37
nwellnhof left
02:42
marcel_r_ joined
|
|||
| luben | bacek, why we don't use LLVM::Opaque for LLVMMemoryBufferRef - it is just a pointer? | 02:47 | |
|
02:47
marcel_r left,
marcel_r_ is now known as marcel_r
|
|||
| robertpeters_WLS | plobsing: I had Parrot installed in my users directory. When I moved it to C:\\Parrot, everything now seems to be working fine. | 02:52 | |
|
02:52
petdance joined
|
|||
| robertpeters_WLS | Dunno what the issue was. Thanks for your help. | 02:52 | |
| bacek_at_work | luben, it can probably work. I didn't have time to check it | 02:53 | |
|
02:53
robertpeters_WLS left
02:55
soh_cah_toa left
|
|||
| bacek_at_work | luben, I think BasicBlock.as_value should return LLVM::Value, not BasicBlock | 03:01 | |
|
03:03
theory left
|
|||
| luben | yes, my fault | 03:03 | |
| bacek_at_work | luben, not "a fault", just "typo" :) | 03:04 | |
| luben | yes , from copy/paste | ||
| dalek | rrot/opsc_llvm: 0ac018a | luben++ | runtime/parrot/library/LLVM/BasicBlock.pm: fix copy/paste error |
03:05 | |
| bacek_at_work | aloha, clock? | 03:07 | |
| aloha | bacek_at_work: LAX: Mon, 20:07 PDT / CHI: Mon, 22:07 CDT / NYC: Mon, 23:07 EDT / UTC: Tue, 03:07 UTC / LON: Tue, 03:07 GMT / BER: Tue, 04:07 CET / TOK: Tue, 12:07 JST / SYD: Tue, 14:07 EST | ||
|
03:15
theory joined
|
|||
| luben | bacek, couldn't we hide LLVMMemoryBufferRefs. My idea is to add read/write methods in LLVM::Module, because that's what BitWriter/Reader do: they serialize and deserialize modules | 03:22 | |
| atrodo | neat. doing a duckduckgo for lorito brings up my github repo | 03:23 | |
|
03:43
marcel_r left
|
|||
| cotto | duckduckgo++ | 03:44 | |
| atrodo | aloha: karma duckduckgo | ||
| aloha | atrodo: duckduckgo has karma of 2. | ||
| atrodo | duckduckgo++ | ||
| way too low | |||
| bacek_at_work | luben, go for it. Any functional solution will help. | 03:48 | |
| luben | I'm writing files, working on reading them back | 03:49 | |
| bacek_at_work | luben, excellent! | 03:50 | |
| luben++ | |||
| It can be tricky to pass pointer-to-pointer into something like LLVMGetBitcodeModule without involving pure-C. | 03:52 | ||
| luben | just a question, do you know how to handle **char types? bitReader uses it for passing parse messages | ||
| bacek_at_work | luben, in C: const char *message;LLVMFoo(&message); <do something with message>; LLVMDisposeMessage(message); | 03:53 | |
| in "PIR", some magic with ManagedStruct/PtrBuf. | |||
| luben | I should figure out how to do it in PIR/NQP ... | 03:54 | |
| bacek_at_work | luben, looks like "B" is what we can use for char** | 04:03 | |
| t/pmc/nci.t "nci_tB" test | |||
| "LLVMFooPtr *" is more... complex. | 04:04 | ||
| luben | :) thanks, I will try | 04:05 | |
| bacek_at_work | luben, isn't it 3 o'clock at the morning? | 04:07 | |
| luben | 6 in the morning here | ||
| bacek_at_work | aloha, clock? | ||
| aloha | bacek_at_work: LAX: Mon, 21:07 PDT / CHI: Mon, 23:07 CDT / NYC: Tue, 00:07 EDT / UTC: Tue, 04:07 UTC / LON: Tue, 04:07 GMT / BER: Tue, 05:07 CET / TOK: Tue, 13:07 JST / SYD: Tue, 15:07 EST | ||
|
04:07
hercynium left
|
|||
| bacek_at_work | luben, oh-ho-ho. | 04:08 | |
| luben | :) I have slept yesterday till 19 o'clock | 04:09 | |
| bacek_at_work | yeah... I wish sometimes to sleep for few days. | ||
| luben | haha, yes :) | 04:10 | |
| bacek_at_work | luben, actually you can add .load_module into LLVM_Engine. I think it will save time. We can figure out how to do it via Ptr/PtrBuf later. | 04:13 | |
| src/dynpmc/llvm_engine.pmc | |||
| luben | ok, I will do it there, it will save time, yes ) | 04:14 | |
| :) | |||
|
04:21
petdance left
04:44
ShaneC left
04:55
ShaneC joined
|
|||
| cotto | atrodo, you around? | 05:05 | |
| dalek | rrot/opsc_llvm: 0998fee | bacek++ | src/dynpmc/llvm_engine.pmc: [cage] Trailing whitespace. |
05:22 | |
|
05:24
kurahaupo_mobi left,
kurahaupo joined
05:28
giwi joined
05:29
sjn_ is now known as sjn
|
|||
| luben | bacek, ping | 05:37 | |
| bacek_at_work | luben, pong | ||
| luben | I have it, write to file, read from file, execute | 05:38 | |
| bacek_at_work | luben, SHIP IT! | 05:39 | |
| luben | it is ugly but I have to go to work | ||
| bacek_at_work | No worries. I'll polish it tonight. | ||
| dalek | rrot/opsc_llvm: 424fb27 | luben++ | / (4 files): serialize and deserialize LLVM bitcode to files |
05:40 | |
| luben | the basic problem now is that we have to create an engine in order to read bitcode | 05:41 | |
| we could make another, very light dynpmc for purposes like these | 05:42 | ||
| bacek_at_work | luben, it's not a big deal. We have to have to create it anyway | ||
| luben, dynop is better option I think. | 05:43 | ||
| but it will work for now. | |||
| luben | yes | ||
|
05:46
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
| bacek_at_work | luben++ # llvm bindings! | 05:46 | |
|
05:49
Drossel left,
Kulag joined
|
|||
| tadzik | duckduckgo++ # way to low indeed | 05:52 | |
| they totally bought me when I tried "Star Wars Planets" | 05:53 | ||
|
05:53
theory left
05:54
kurahaupo left,
kurahaupo joined
05:59
contingencyplan left
06:09
luben left
06:14
mikehh joined
06:40
Eduardow left
|
|||
| dalek | rrot/opsc_llvm: 203d726 | bacek++ | / (3 files): Implement function fetching and navigation |
06:41 | |
| rrot/opsc_llvm: e0e05e1 | bacek++ | src/dynpmc/llvm_engine.pmc: Split LLVM_Engine.class_init function for initalize LLVM once only. Add empty .init. Fix memory leak in .load_module. |
|||
| rrot/opsc_llvm: d2f863f | bacek++ | src/dynpmc/llvm_engine.pmc: Fix loading of bitcode. |
|||
| rrot/opsc_llvm: 656caea | bacek++ | runtime/parrot/library/LLVM/Module.pm: Use empty LLVM_Engine to load bitcode |
|||
| rrot/opsc_llvm: 13d22b9 | bacek++ | src/dynpmc/llvm_engine.pmc: Rework bitcode loading slightly. |
|||
| rrot/opsc_llvm: 856b74a | bacek++ | t/library/llvm/99-example.t: Fix testing loaded module. Fe have to find proper function from it to call. |
|||
|
06:56
kurahaupo left,
kurahaupo joined
|
|||
| dalek | Heuristic branch merge: pushed 24 commits to parrot/jit_prototype by bacek | 07:05 | |
|
07:05
rurban_ joined
07:07
rurban left,
rurban_ is now known as rurban
07:25
cosimo left
07:28
simcop2387 left
07:29
fperrad joined
07:31
simcop2387 joined
07:53
fperrad left
08:09
mj41 joined
08:17
simcop2387_ joined
08:18
simcop2387 left,
simcop2387_ is now known as simcop2387
08:21
kurahaupo left
08:26
simcop2387 left
08:36
simcop2387 joined
|
|||
| dalek | rrot/jit_prototype: d2ecf13 | bacek++ | t/jit/test.t: Actually load CUR_CTX. |
08:43 | |
| rrot/jit_prototype: e740bad | bacek++ | t/jit/test.t: Add proto for Parrot_io_printf. |
|||
| rrot/jit_prototype: 73a5845 | bacek++ | runtime/parrot/library/LLVM/Type.pm: Create complex parrot's types once only. |
|||
| rrot/jit_prototype: a308bd8 | bacek++ | runtime/parrot/library/LLVM/Type.pm: Add * variants of parrot types. |
|||
| rrot/jit_prototype: 7003a3b | bacek++ | runtime/parrot/library/LLVM/Function.pm: Add Function.return_type. |
|||
| rrot/opsc_llvm: 67151ce | bacek++ | runtime/parrot/library/LLVM/Type.pm: Create complex parrot's types once only. |
08:45 | ||
| rrot/opsc_llvm: ae04e65 | bacek++ | runtime/parrot/library/LLVM/Type.pm: Add * variants of parrot types. |
|||
| rrot/opsc_llvm: 1738a31 | bacek++ | runtime/parrot/library/LLVM/Function.pm: Add Function.return_type. |
|||
|
08:48
mtk left
08:54
mtk joined
|
|||
| dalek | rrot/opsc_llvm: d96afc5 | bacek++ | / (2 files): Add Module type introspection. |
08:59 | |
|
09:18
alin joined
|
|||
| dalek | rrot/opsc_llvm: 4430c2e | bacek++ | / (2 files): Add Module.find_function |
09:21 | |
|
10:14
fperrad joined
10:17
woosley left
|
|||
| moritz | fwiw a rakudo smolder submissions resulted in an internal error again | 10:31 | |
|
11:02
jsut_ joined
11:07
jsut left
11:08
whiteknight joined
|
|||
| whiteknight | good morning, #parrot | 11:12 | |
| moritz | hello whiteknight | 11:14 | |
|
11:16
whiteknight left,
whiteknight joined
11:56
lucian joined,
ambs joined
|
|||
| bacek | aloha, whiteknight | 11:57 | |
| whiteknight | hello bacek | ||
| atrodo | cotto> ping | 12:23 | |
|
12:24
bluescreen joined
|
|||
| Coke notes reviewingly that parrot installs are not relocatable. | 12:26 | ||
| (so if you installed to parrot, and then moved to users, it wouldn't work. OP didn't say that's what happened, but something to keep in mind.) | |||
|
12:40
mj41 left,
lucian left,
lucian joined
12:52
davidfetter joined
12:54
marcel_r joined
|
|||
| dalek | sella/harness_refactor: 025117f | Whiteknight++ | src/tap_harness/ (5 files): Line is a child of TestFile, so rename it appropriately. Several other fixes and doc updates |
12:54 | |
|
12:55
mj41 joined,
mtk left,
mtk joined
|
|||
| dalek | Heuristic branch merge: pushed 17 commits to Rosella by Whiteknight | 12:59 | |
|
13:00
ambs left,
ambs joined
13:08
woosley joined
13:15
contingencyplan joined
|
|||
| dalek | sella: 0dd8c8f | Whiteknight++ | src/t (3 files): Give TestContext a defined API for interacting with the Listeners, instead of using direct attribute access, which is troublesome from NQP. Fix a bug in the harness |
13:17 | |
|
13:21
giwi left
14:27
jsut joined
14:29
mtk left
14:32
jsut_ left
14:34
mtk joined
|
|||
| Andy_ | Why am I cage cleaner? Why do I run splint and jack up the warnings in Parrot? | 14:42 | |
| "We have fixed all the warnings in Drizzle. This is something that isn't sexy work, and the only way it is justified is because cleaning up warnings fixes bugs. If you are starting a new code base let me implore upon on you the necessity of doing this from the beginning." -- krow.livejournal.com/700783.html | 14:43 | ||
|
14:48
mj41 left
14:55
plobsing left
15:06
rurban_ joined
15:09
rurban left,
rurban_ is now known as rurban
15:12
mj41 joined
15:13
plobsing joined
15:14
Psyche^ joined
15:16
Patterner left,
Psyche^ is now known as Patterner
15:19
davidfetter_ joined
15:23
davidfetter left,
davidfetter_ is now known as davidfetter
15:52
davidfetter left
16:02
woosley left
|
|||
| cotto_work | ~~ | 16:05 | |
| atrodo: piiiiiiiiiiiiing | 16:11 | ||
| atrodo | cotto_work> Have enough coffee this morning? Don't think you're excited enough | ||
| cotto_work | atrodo: piiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiing | ||
| better? | |||
| atrodo | Much better | 16:12 | |
| cotto_work | so, M0. You had some things to say about it, didn't you? | ||
| atrodo | I think so, yes | 16:13 | |
| I was trying last night to figure out which questions to ask and where I could help out | |||
| but I didn't get very far | 16:16 | ||
| cotto_work | the metadata and variables segments are pretty underdefined | ||
| atrodo | variables segment inside binary represntation? | 16:22 | |
| cotto_work | yes | 16:25 | |
|
16:28
Eduardow joined,
hercynium joined
16:34
mtk left
16:41
bluescreen left
16:42
mtk joined
16:45
alin left
|
|||
| dukeleto | ~~ | 16:49 | |
|
16:49
jsut_ joined
16:54
jsut left
17:18
bluescreen joined
17:24
mj41 left,
samwho joined
17:25
samwho left
17:26
ShaneC left
17:29
dmalcolm joined
17:46
dodathome joined
17:49
alin joined
17:52
alin left,
alin joined
17:54
PacoLinux_ joined
17:56
ShaneC joined
18:02
alin left
|
|||
| whiteknight is actually going to be at #ps toda | 18:09 | ||
| today | |||
|
18:41
mj41 joined
18:51
marcel_r left
19:07
jevin joined
19:08
bluescreen left
19:17
bluescreen joined
19:27
mj41 left
19:29
bluescreen left
|
|||
| dalek | sella: 9aff168 | Whiteknight++ | t/test1.t: remove an unneeded file |
19:30 | |
| sella: 2ae4455 | Whiteknight++ | / (6 files): fix a big bug in TestFactory, it's a wonder it was working at all. Add tests to show that TestFactory can create subclasses of TestCase |
|||
| sella: 49cbdba | Whiteknight++ | src/test/TestFactory.winxed: more cleanups, remove debugging code |
|||
| sella: c5205d7 | Whiteknight++ | t/test/TestCase.t: more tests for TestContext |
|||
| sella: e628e4a | Whiteknight++ | / (2 files): tests for Builder |
|||
| sella: c459716 | Whiteknight++ | / (3 files): last few tests about Test |
|||
| sella: 2974daa | Whiteknight++ | t/tap_harness/ (4 files): +stub test files for harness |
19:31 | ||
| sella: bde5d67 | Whiteknight++ | / (7 files): lots of tests for tap_harness, some incomplete |
|||
| sella: 65ed7b6 | Whiteknight++ | t/tap_harness/TestFile/Factory.t: + test for TestFile::Factory |
|||
|
19:35
plobsing left
19:40
plobsing joined
19:44
bluescreen joined
19:46
kid51 joined
|
|||
| cotto_work | #ps in 35 | 19:53 | |
|
19:55
PacoLinux_ left
19:56
alin joined
19:59
marcel_r joined
20:03
alin left
|
|||
| plobsing | whiteknight: have you had a look at www.sable.mcgill.ca/mclab/ for matrixy? they appear to have some interesting ideas. | 20:06 | |
|
20:19
alin joined
20:20
bluescreen left
20:21
dodathome left,
samwho joined
20:24
samwho left
|
|||
| cotto_work | #ps in 5 | 20:25 | |
|
20:28
mj41 joined
|
|||
| whiteknight | plobsing: no I haven't seen that project yet | 20:30 | |
| kid51 | #parrotsketch starting | ||
| plobsing | whiteknight: they claim to have a frontend, IR, VM with JIT (including what appears to be trace-based optimization), and fortran translator. | 20:31 | |
| whiteknight | oh, nice | ||
| plobsing: What parts of the IMCC branchwork do you think need to be abandoned? | 20:43 | ||
| I didn't think there were too many changes in there which weren't necessary | |||
| plobsing | I'm not entirely sure. But anything that occurred after the incorrect GC workaround is questionable. | 20:44 | |
| whiteknight | which incorrect GC workaround? You mean the TT #1990 stuff? | ||
| plobsing | There are a number of whiteknight/imcc* branches lying around. I'm sure we can some of that back into master. | 20:45 | |
| whiteknight | most of those are useless and need to be deleted | ||
| I've just been lazy | |||
| plobsing | whiteknight: yes. the TT #1990 workaround can be reduced to "turn of the GC for any program of consequence" | ||
| whiteknight | none of them besides imcc_compreg_pmc are mergable | ||
| plobsing | which is not an acceptable workaround | ||
| whiteknight | I'm still convinced that the new PtrObj PMC I set up on that branch for the PackFile is the correct way to do | 20:46 | |
| it's just a matter of figuring out why it doesn't seem to work. I may have messed something up | 20:47 | ||
| plobsing | but they appear to represent logically separate points on the roadmap you outlined, and it would seem to me that, at some additional cost, could be merged into master giving some of the overall benefits immediately | ||
| dalek | rrot: 7c16e69 | petdance++ | src/packfile/api.c: Pass NULL instead of 0 for null pointer |
||
| whiteknight | those branches weren't developed independently and set up to be merged. They're basically dumping grounds for me with several different parallel tasks I was working on | ||
| dalek | rrot: 6e55eea | petdance++ | src/gc/gc_ms.c: gc_ms_alloc_objects() actually does modify the mem_pools argument |
||
| whiteknight | they are all interdependent | ||
| plobsing | well they are blocking on a time sink | 20:48 | |
| I'm looking to work around that | |||
| whiteknight | what do you mean? | ||
| the imcc work is blocking mostly on a lack of motivation on my part, not for any other reason | 20:49 | ||
| what I need to do is get my sorry ass back into gear | |||
| plobsing | the GC problem is undiagnosed. I can't seem to figure out where it goes wrong. without a diagnosis, we stand no chance of fixing it. | ||
| If you think you can get that branch in order, go ahead. I know I cannot do so at the current time, so my plans were based on what I *can* do. | 20:52 | ||
| whiteknight | I think I can. I just need to sit down and do it | ||
| let's set up a timeline: If I can't make real progress on that branch by this weekend, we hammer out a plan B | 20:53 | ||
| plobsing | OK | 20:55 | |
|
20:55
PacoLinux left,
marcel_r_ joined
21:00
marcel_r left
21:01
soh_cah_toa joined,
marcel_r_ is now known as marcel_r
|
|||
| whiteknight | plobsing: while I dig, if you want to look through the code and see if you can tease apart subsets of changes to merge, that would be fine too | 21:01 | |
| no reason we can't tackle it from both angles | |||
| soh_cah_toa | marcel_r: so have you given anymore thought into what project you'd want to take on? | 21:02 | |
| marcel_r: gsoc, i mean | 21:03 | ||
|
21:03
mj41 left
|
|||
| marcel_r | soh_cah_toa: I am really inclined to work on Python-on-Parrot. | 21:03 | |
| soh_cah_toa: What about you? | |||
| plobsing | whiteknight: I'll have a look at making imcc_info_struct mergeable. If we can get that, I'm confident we can argue at least partial success on the roadmap item. | 21:04 | |
| whiteknight | okay, that's a good goal | ||
|
21:04
bluescreen joined
|
|||
| soh_cah_toa | marcel_r: i'm thinking i'd like to work on the debugger | 21:04 | |
| whiteknight | debugger is a good project idea | ||
| soh_cah_toa | yeah, it seems like it's one of the projects that need the most work | 21:05 | |
| whiteknight | marcel_r: get in touch with allison and lucian about python. Allison is a potential mentor. Lucian is another student with a similar project idea | ||
| marcel_r | whiteknight: Lucian has great ideas. I didn't have the lucky to talk to Allison here yet. | 21:07 | |
| whiteknight | marcel_r: yeah, she is busy. | ||
| soh_cah_toa | whiteknight: what about me? is there anyone in particular i should talk to about the debugger or are you the mentor? | 21:08 | |
| whiteknight | soh_cah_toa: nobody in particular. Obviously nobody has been working on the debugger yet | ||
| I suspect I'm a possible mentor for it. cotto too, maybe | |||
| lucian | marcel_r: i wouldn't call them great | ||
| whiteknight | lucian: than I shudder to think what your "great" ideas must be like | 21:09 | |
| lucian | whiteknight: :)) | ||
| marcel_r | :D | ||
| plobsing | who mentored the parrot-instrument project last year? I'd wager they are probably the most qualified. | ||
| lucian | but really, it's just what i know of compiler writing (which is very little) | ||
| whiteknight | lucian: can the python-on-parrot realm support two independant GSoC projects for the summer? | 21:10 | |
| plobsing: cotto did | |||
| lucian | whiteknight: i don't really know | ||
| there are two main parts: compiler and object system | |||
|
21:10
hudnix joined
|
|||
| marcel_r | lucian: Do you plan to work on both parts? | 21:11 | |
| lucian | marcel_r: that was the plan initially | ||
| whiteknight | I suspect that the two of those are too large to be done in a single summer by a single person | 21:12 | |
| lucian | by using the 'ast' module, the compiler ends up being rather simple | ||
| only a PIR codegen would have to be written | |||
| whiteknight | the object model is going to be tricky, because Parrot's current object model is actively broken | ||
| lucian | whiteknight: the idea was to ignore it entirely | ||
| whiteknight | lucian: right, but then you'll have to plug in your own, and the interface there isn't always pretty | 21:13 | |
| I'm just saying, there are some dragons inside Parrot that need to be killed as part of that project | |||
| lucian | hmm. can pmc be written in just pir? | 21:14 | |
| or winxed | |||
| NotFound | Targeting what? C? | 21:15 | |
| marcel_r | Beside compiler and object model, there are also runtime library. Built-ins, standard modules. | ||
| lucian | marcel_r: i was hoping to reuse someone else's | 21:16 | |
| plobsing | lucian: there is no mechanism in PIR to create non-Class pmclasses. If there were, you could. But as it stands, PIR traps you in Parrot's object system. | ||
| whiteknight | lucian: that gives me a great idea for a project | ||
| lucian | plobsing: i see | ||
| plobsing: that's sad | 21:17 | ||
| whiteknight | a compiler that could convert a pmclass written in something like winxed into C for use in Parrot | ||
|
21:17
PacoLinux joined
|
|||
| plobsing | lucian: with enough work, you can add an op for that | 21:17 | |
| whiteknight | so we could remove Pmc2c, and rewrite our core PMC types in something nicer than C | ||
| plobsing | Parrot's new motto "there's an op for that!" | ||
| lucian | whiteknight: i've been saying that for a while | ||
| whiteknight | lucian: you need to say it to me, not just to a wall somewhere | ||
| :) | |||
| lucian | heh | 21:18 | |
| you might've been lurking, dunno | |||
| roughly what i expressed was that i'd like to see a system language (winxed or similar) to target lorito, and have *everything* written in that | |||
| NotFound | I prefer to write C than trying to figure what code in other language would generate the C that I want. | ||
| That seem more reasonable. | 21:19 | ||
| marcel_r | NotFound: I agree. | ||
|
21:20
kid51 left
|
|||
| lucian | and lorito or M0 or w/e would be a textual mapping to the bytecode parrot used (pbc?) | 21:20 | |
| since that's what all successful VMs do, why not? | |||
| cotto_work | lucian: that's not far from the plan | 21:21 | |
| lucian | no what i think of it, i could implement python's object system with winxed classes, although not so efficiently | ||
| cotto_work: then i must've misunderstood the plan :) | 21:22 | ||
| i've seen a lot of focus on designing the assembly/bytecode, but none into designing the (what i believe to be vital) system langauge | |||
| whiteknight | Winxed is still missing some features, like multis. It's still a hell of a great language to use for writing Parrotish stuff | ||
| NotFound | lucian: that will help to know what features the parrot object system lacks. | 21:23 | |
| cotto_work | the plan is that once we know that M0 is viable, we'll build as much of Parrot as possible in something that compiles down to an m0 overlay | ||
| lucian | right. but how do you know M0 is appropriate for that? | ||
| cotto_work | turing-completeness and ffi | 21:24 | |
|
21:25
bluescreen left
|
|||
| lucian | sure, but then you might as well use an existing assembly that is turing-complete and has a ffi | 21:25 | |
| cotto_work | (that's hyperbole, but it doesn't matter if the compiler has to generate code that'd be a pain for a human to write) | 21:26 | |
| lucian | no, but m0 might be at the (slightly) wrong abstraction level for efficiency | ||
| looking at jvm bytecode for example, the bytecode has objects as primitives | 21:27 | ||
| cotto_work | does java support a meta-object model though? | 21:28 | |
| er, jvm | |||
| lucian | it mostly says "java objects are meta-objects" | ||
| dukeleto | this looks like an interesting book: pragprog.com/titles/vspcon/programm...on-the-jvm | 21:35 | |
| lucian | interesting. also interesting are rich hickey's clojure talks | 21:37 | |
|
21:39
marcel_r left
|
|||
| cotto_work | back | 21:46 | |
|
21:53
Andy_ left
|
|||
| allison | marcel_r: I seem to be on an odd timezone at the moment | 21:54 | |
| marcel_r: sorry to miss you so far | |||
| allison notes I missed him again | 21:55 | ||
| NotFound | Odd timezones are the same as even timezones with DST applied? | 21:56 | |
| PerlJam | NotFound: not universally. | 21:57 | |
| though I have to wonder what an "odd timezone" is :) | 21:58 | ||
| cotto_work | the sun | 21:59 | |
| PerlJam | Maybe an odd timezone is one of those that aren't an integral number of hours from UTC? | 22:00 | |
|
22:06
plobsing left
22:13
ambs left
|
|||
| bacek_at_work | ~~ | 22:14 | |
| soh_cah_toa | whiteknight: could you send me the link for parrot-instrument again? i forgot to bookmark it | 22:22 | |
| whiteknight | github.com/Whiteknight/parrot-instrument | ||
| soh_cah_toa | thanks | ||
|
22:24
plobsing joined
|
|||
| whiteknight | no problems | 22:25 | |
|
22:27
minusnine left
|
|||
| soh_cah_toa | so what's on the agenda for tonight's meeting? i've obviously never been to any before and am curious as to what goes on | 22:28 | |
| cotto_work | tonight's meeting? | 22:30 | |
| You may be disappointed if you're referring to #parrotsketch. | |||
| soh_cah_toa | yeah, why? | ||
| cotto_work | it happened 3 hours ago | 22:31 | |
| date --utc | |||
| soh_cah_toa | whoops | ||
| cotto_work | now you know | 22:32 | |
| soh_cah_toa | wow, what a noob mistake. i feel like a total idiot | 22:35 | |
| lucian | soh_cah_toa: don't feel too bad, it was a rather light meeting | 22:36 | |
| Tene | nah, s'fine. Most of us have done it before. | ||
| I've done it several times. :) | |||
| lucian | that too | 22:37 | |
| soh_cah_toa | i forget that not everybody is in the eastern time zone | 22:38 | |
|
22:38
mtk left
|
|||
| dukeleto totally forgot about #ps today | 22:40 | ||
|
22:43
Payne joined
|
|||
| Payne | hi anybody | 22:44 | |
| whiteknight | soh_cah_toa: you're eastern? Where at? | ||
| hello Payne | |||
| Payne | is here anybody from Parrot dev team? | ||
| soh_cah_toa | whiteknight: new jersey | 22:45 | |
| whiteknight | soh_cah_toa: oh wow. I'm Philly. Where in NJ? | ||
| Payne: we all are. Welcome to #parrot | |||
| Payne | ok nice | ||
| soh_cah_toa | whiteknight: north haledon. small town in passaic county | 22:46 | |
| Payne | I want to ask about GSoC | ||
| soh_cah_toa | whiteknight: i was thinking of coming out to philly for fosscon in july | ||
| whiteknight | Payne: Awesome! | ||
| soh_cah_toa | payne: me too | ||
| whiteknight | soh_cah_toa: Yeah, I've been thinking about going to fosscon too. | 22:47 | |
| Payne | I participated last year and want to p[articipate this year too | ||
| I mean last year in different project | |||
| whiteknight | Payne: oh really? What project did you work for last year? What kinds of things are you interested in? | ||
| Payne | the question is is this first year Parrot participated in GSoC? | 22:48 | |
| i worked on Gephi, gaphical visualization engine written in Java | |||
| addin support for Neo4j - graph database | |||
| I am interested in some Java stuff | |||
| and these days ANTLR seems like nice parser generator | 22:49 | ||
| ANTLR 3.0 | |||
| first question is what languages uses Parrot? | |||
| because on wikipedia there was C language | |||
| but in some proposals there were some languages specific for Parrot | 22:50 | ||
| whiteknight | This is the first year Parrot is doing GSoC individually | ||
| we used to work together with the Perl Foundation | |||
| The last few years, the Parrot Foundation and the Perl Foundation did GSoC together | |||
| Payne | ok | 22:51 | |
|
22:51
plobsing left
|
|||
| whiteknight | Payne: Perl6 is primarily on Parrot right now. We have other compilers too. Cardinal is a Ruby compiler, Pynie is a Python compiler, Partcl is a TCL compiler | 22:51 | |
| Tene | I've been so busy with work lately... I really need to carve out some time for cardinal. | 22:53 | |
| soh_cah_toa | payne: i'm a student too. if you look at the parrot gsoc wiki there are some projects that need java developers. trac.parrot.org/parrot/wiki/GSoc2011 | ||
| Tene | If I can get the metamodel working well, it will unblock a lot of other work. | ||
| Payne | soh_cah_toa: really? | 22:55 | |
| whiteknight | Tene: is metamodel work something that could could, or would want to, pawn off onto a GSoC student? | ||
| Payne | soh_cah_toa: I saw just one project | ||
| on java | 22:56 | ||
| soh_cah_toa | payne: yeah, take a look | ||
| whiteknight | Payne: that's not a limited list, it's just ideas. You can propose other projects too if you want | ||
| Tene | whiteknight: Possibly. I don't know what's appropriate or not for gsoc. | 22:57 | |
| whiteknight | Payne: Anything in particular you're interested? Something Java related? | ||
| Payne | I saw the Java project | ||
| but I am completely new to Parrot | |||
| so what does it mean to implement support for Java? | |||
|
22:58
kid51 joined
|
|||
| Payne | can you point me to some article, or write in in general? | 22:58 | |
| soh_cah_toa | payne: me too but i've found it very easy to learn. plenty of documentation | ||
| Payne | and the language implementation have to be done in what language? | ||
| perl? | |||
| I mean the result of project will be java implementation, but in what language? | 22:59 | ||
| whiteknight | Payne: let me look | ||
| Payne: ah, we want a Java compiler which targets Parrot | |||
| Payne | which means? | ||
| sorry for stupid questions | |||
| whiteknight | a "normal" java compiler would compile Java syntax down into java bytecode to run on the JVM | ||
| we want a compiler which could compile Java down to Parrot bytecode instead, and run on Parrot | 23:00 | ||
| Payne | ok clear enough | ||
| whiteknight | Payne: so there are a lot of options. You could write the compiler in one of our low-level languages (NQP, Winxed, PIR) | ||
| or, you could write the compiler in something you like, like Java. Then bootstrap | |||
| think about how a C compiler is written in C | 23:01 | ||
| Payne | hm | ||
| whiteknight | Payne: or, you could find an existing Java compiler, and create a Parrot backend to emit Parrot code instead of JVM code | ||
| lots of options, you get to pick what you think is best | |||
| the important part is this: I want to write Java code, and run it on Parrot | 23:02 | ||
| because then I can use Java libraries from Perl6, or vice-versa | |||
|
23:02
dmalcolm left
|
|||
| Payne | I made some very quick investigation and the languages don't seem like different ones | 23:03 | |
| whiteknight | what languages? | ||
| Payne | is this true, or just seems to? | ||
| NQP, Winxed, PIR | |||
|
23:04
plobsing joined
|
|||
| whiteknight | NQP is a subset of Perl6. Winxed is similar to JavaScript. PIR is like assembly languge for Parrot | 23:04 | |
| they are all similar scope (low-level), but very different syntax) | |||
|
23:06
rurban_ joined
|
|||
| whiteknight | and like I said, you can use any other language you want | 23:06 | |
| hell, write a Java compiler in Ruby if you want | |||
| or JavaScript | |||
| or Java | |||
| or, use an existing compiler | |||
|
23:09
rurban left,
rurban_ is now known as rurban
|
|||
| Payne | hm seems interesting, but I dont have much experience with implementing compilers like you write | 23:10 | |
| and what about the ANTLR project? | |||
| maybe I shoudl first ask this question | 23:11 | ||
| plobsing | there is a preference for something that is eventually parrot-hosted; either using a language that already works on Parrot, or bootstrapping $LANG in $LANG. But this is just a preference, not a rule. | ||
| Payne | what are the requirements on students? | 23:12 | |
| are there a need to have practical experience with compiler design or implementation? | |||
| or something else? | |||
| whiteknight | Payne: practical experience is not needed, but it's nice if you're familiar with the theory of whatever you are working on | 23:13 | |
| a code generator backend for a compiler does not need much theory | |||
| the ANTLR backend doesn't need much theory. All the hard work is done by ANTLER | |||
| ANTLR | |||
| plobsing | Payne: IIUC, google's objective for GSoC is to get students into programming. From that perspective, experience is of neutral to negative value. | ||
| Payne | ok definitely interested in Parrot, what documentation should I read to get more familiar with the concepts? maybe some high level description will be nice form the beginning | 23:14 | |
| soh_cah_toa | payne: there's lots of docs when you compile parrot | 23:15 | |
| whiteknight | Payne: the files in docs/pdds/ are the design documents | ||
| soh_cah_toa | payne: also see docs.parrot.org | 23:16 | |
| payne: i've been reading that non-stop for the past few days and i already feel pretty comfortable with parrot | 23:17 | ||
| lucian | Payne: i would suggest you take an existing java compiler and change the backend to target parrot | ||
| Payne: think of parrot as the jvm, but more dynamic (and 10 years less mature) | 23:18 | ||
| plobsing | lucian: but we've got DaVinci already | ||
| lucian | plobsing: sure, but davinci doesn't let languages get away without interpretation | ||
| s/without/with not doing/ | |||
|
23:18
cognominal left
|
|||
| lucian | plobsing: that's parrot's only real advantage | 23:19 | |
| (offtopic - oddly enough the jvm object system (not java's) is more dynamic than parrot's Object) | |||
| plobsing | only real current advantage. | ||
| lucian | i doubt it'll ever be faster | ||
|
23:20
hercynium left
|
|||
| lucian | the other potential advantage is running more languages, and with better interop than on the jvm | 23:20 | |
| re faster, perhaps it'll be faster if the luajit guy takes an interest :) | |||
| Payne | soh_cah_toa : you participated last year too? | 23:21 | |
| soh_cah_toa | payne: no, this is my first gsoc | ||
| plobsing | lucian: there are other aspects than speed. as for speed, we could make changes to get dynamic languages faster than on the JVM (eg: hintable JIT). | 23:22 | |
|
23:22
cognominal joined
|
|||
| lucian | plobsing: sure there are, if that's all i cared about i wouldn't be here. or using python | 23:22 | |
| i sort of doubt a dynamic lang jit will beat java's jit any time soon | 23:23 | ||
| running java, not a dynamic language that is | |||
| Tene | I'd really love to spend a month or so hacking on 6model and getting it finished and imported into parrot core, etc. | 23:24 | |
| Payne | ok thanks for useful information | 23:25 | |
| see you | |||
| soh_cah_toa | payne: bye | ||
| Payne | soh_cah_toa: and your interest< | ||
| ? | |||
| soh_cah_toa | payne: what do you mean? | ||
| lucian | Payne: btw, harmony have been looking into language agnostic vms apparently | 23:26 | |
| they might be interested in java-on-parrot | |||
| ^ apache harmony | |||
| plobsing would also like to see a JS-Harmony-on-Parrot | |||
| lucian | it would be awesome if harmony picked parrot as their main target | 23:27 | |
| soh_cah_toa | Payne: you mean which project i'd like to do? | ||
| Payne | soh_cah_toa: in parrot I mean what kind of project | ||
| soh_cah_toa | Payne: the parrot debugger. apparently, it needs a lot of work | 23:28 | |
| plobsing | lucian: probable not going to happen. they'd likely want some changes we'd be unlikely to want. | ||
| Payne | lucian: any further information about harmony and parrot cooperation? | ||
| lucian | plobsing: yeah, it's not quite realistic | ||
| Payne | ok good to know | 23:29 | |
| lucian | Payne: www.infoq.com/news/2011/03/apache-harmony it's interesting to read the ml threads it links to | ||
| i mean it's realistic to implement java on parrot | |||
| but it's not realistic that apache harmony will target parrot primarily | 23:30 | ||
| Payne | ok thanks for fast responses, most IRC I already connected were dead | 23:32 | |
| dalek | rrot/opsc_llvm: 9a0e222 | jkeenan++ | / (5 files): Add generated files to .gitignore and MANIFEST.generated. Re-run mk_manifest_and_skip.pl. Add files as needed to FLUID_FILES_2 target in config/gen/makefiles/root.in. |
||
| Payne | nice to see difference | ||
| I must go, see you all | 23:33 | ||
|
23:33
Payne left
23:36
samwho joined,
samwho left
23:38
cosimo joined
23:53
bubaflub joined
23:54
plobsing left
23:56
fperrad left
23:57
plobsing joined
|
|||