|
Parrot 3.6.0 "P�jaros del Caribe" released | parrot.org | Log: irclog.perlgeek.de/parrot/today | #parrotsketch meeting Tuesday 19:30 UTC Set by moderator on 13 August 2011. |
|||
|
00:47
RobertLJ joined
01:12
Khisanth joined
|
|||
| dalek | kudo/nom: a98e265 | Coke++ | t/spectest.data: run fudged test |
01:17 | |
|
02:04
worr joined
|
|||
| lucian | bah. 35s for build&test is annoying me a lot | 02:10 | |
| tadzik | heh, you should try developing rakudo/nom | 02:16 | |
| lucian | or not :) | 02:20 | |
| tadzik | :) | ||
| it's like 10 minutes to build and 25 to spectest | 02:21 | ||
|
02:21
woosley joined
|
|||
| lucian | wow | 02:21 | |
| sorear | better than master, last time I tried that it was 30/120 | 02:23 | |
| tadzik | but you were able to compile master on some small amount of ram, weren't you? nom needs like 1.5 GBs now | 02:24 | |
| dalek | kudo/nom: 02e5a62 | tadzik++ | src/Perl6/Actions.pm: Merge twines properly in paragraph blocks |
||
| kudo/nom: 5f145c6 | tadzik++ | lib/Pod/To/Text.pm: Implement simple FormattinCode handling in Pod::To::Text |
|||
| kudo/nom: 7810da2 | tadzik++ | src/Perl6/Actions.pm: Fix and improve merge_twines |
|||
| kudo/nom: 8da71aa | tadzik++ | src/Perl6/ (2 files): Move Pod-related methods from Actions.pm to Pod.pm |
02:25 | ||
| lucian | tadzik: yeah, i have 512mb | 02:27 | |
| uh, parrot master i mean | 02:28 | ||
|
03:24
nbrown joined
04:14
rfw joined
04:42
preflex_ joined
|
|||
| cotto | ~~ | 04:44 | |
| tadzik | ~~ | ||
|
05:09
Kulag joined
05:23
SHODAN joined
05:28
Kulag joined
05:31
nbrown joined
05:49
SHODAN joined
06:38
cotto joined
08:10
cotto joined
08:18
contingencyplan joined
08:35
cotto joined
|
|||
| cotto is watching masak++'s first talk | 08:40 | ||
| aloha, clock? | 08:41 | ||
| aloha | cotto: LAX: Mon, 01:41 PDT / CHI: Mon, 03:41 CDT / NYC: Mon, 04:41 EDT / UTC: Mon, 08:41 UTC / LON: Mon, 09:41 BST / BER: Mon, 10:41 CEST / TOK: Mon, 17:41 JST / SYD: Mon, 18:41 EST | ||
| cotto isn't entirely sure that finding out what time his brain should think it should be was a good idea | |||
|
09:13
jaffa4 joined
|
|||
| jaffa4 | hi | 09:14 | |
| what is .lex in pir? | |||
| cotto | jaffa4, it's a lexical variable | 09:18 | |
| jaffa4 | ok. .sub 'a' :outer('foo')? will a inherit all lexicals in foo? | 09:20 | |
| cotto | jaffa4, something like that. | ||
| jaffa4 | but .local would not be accessable, right? | 09:21 | |
| cotto | .local is just a register | 09:25 | |
| so no | |||
|
10:09
M_o_C joined
10:44
cotto joined
11:26
Kulag joined
11:29
|newbie| joined
12:00
JimmyZ joined
12:09
RobertLJ joined
12:15
whiteknight joined
12:21
cottoo joined
|
|||
| whiteknight | good morning, #parrot | 12:23 | |
| cottoo | hio whiteknight | 12:35 | |
| cottoo isn't used to being ahead of whiteknight wrt timezones | |||
| hio whiteknight | |||
| silly conf wifi | |||
| whiteknight | hello | 12:36 | |
| what conference are you at? | |||
| cottoo | yapc::eu | ||
| riga, latvia | |||
| whiteknight | oh nice | 12:37 | |
| cottoo | great perl6 hacker population here | ||
| I got to spend dinner with jnthn, masak and pmichaud last night. | |||
| whiteknight | very cool | 12:38 | |
| whiteknight is envious | |||
| atrodo | =~ | 12:40 | |
| whiteknight | talking about anything cool or important? | ||
| cottoo | jnthn had an excellent talk about recent Rakudo stuff | ||
| I'm pretty sure it was recorded | |||
|
12:41
bluescreen joined
|
|||
| cottoo | whiteknight, some important questions regarding how type information will flow from HLL down to M0 | 12:41 | |
| whiteknight | I could get started on the 6model port as early as this week. soh_cah_toa is spearheading the project to get improved debugging information into packfiles. Try to get as much feedback or direction as you can get about either of those two projects as you possibly can | 12:43 | |
| cotto | I need to read up on type systems. | 12:44 | |
| whiteknight | general changes to packfiles as well, would always be appreciated | ||
| since I'm doing so much work relating to them | |||
| cotto | Do you have any specific 6model questions I could relay to jnthn? | 12:45 | |
| whiteknight | I don't think so, no. I've been in contact with him | ||
| cotto | ok | ||
| whiteknight | Oh, one thing I really want more input on, and I'm going to need it from you too, is the idea that IMCC should do less building of stuff magically. Things like MultiSubs, Classes, and NameSpaces should be built explicitly at program startup, not built magically by the packfile loader and other bootstrapping mechanisms | 12:46 | |
| 6model does that for class definitions, but I want to extend out to MultiSub and NameSpace as well | 12:47 | ||
| the packfile loader building all those things automatically is a huge mess, and a big hit to startup performance | |||
|
12:49
dafrito joined
|
|||
| whiteknight | of course, that change is going to cause a hell of a lot of necessary changes to PIR and IMCC, which is where we need input and agreement from pmichaud and jnthn, etc | 12:50 | |
| cotto | That sounds like the opposite of what jnthn was talking about (merging the compile-time model of the code and runtime model), though it's sensible for imcc. | ||
| whiteknight | well, sort of. Right now, we specify all sorts of relations with PIR flags like :multi, :method, :nsentry, :anon, etc. The packfile loader loads up subs and jams them all into auto-created namespaces | 12:51 | |
| the namespaces sort them out depending on flag. Ignoring :anon, making :method invisible, etc | |||
| If we stop the packfile loader from auto-jamming things into namespaces, we can get rid of all those flags | 12:52 | ||
| Then, we can either create and serialize things we want on the compiler side, or we can generate ":init :load" subs to create things at runtime | |||
| either solution is preferable to the packfile loader automatically inserting every Sub into a namespace, and having huge wads of logic in NameSpace PMC to sort it all out | 12:53 | ||
| In jnthns view, I think, Creating constants at compile-time and deserializing them fully-formed at runtime is preferrable | 12:55 | ||
| I can't imagine he wants IMCC to have any more weird magic | |||
| or the packfile loader | |||
| cotto | likely enough | 12:56 | |
| whiteknight | Anyway, All these changes are going to represent a major upheaval of PIR syntax, and I want to make sure the p6 movers and shakers are on board with that before pushing the idea ahead | 12:57 | |
| I suspect they aren't using NameSpace or MultiSub anyway, so it's probably not going to phase them too much | 12:58 | ||
| cotto | jnthn made a point of mentioning that Rakudo doesn't have any PIR code. | ||
| not that updating nqp will necessarily be easy | |||
| whiteknight | the Rakudo source may not contain any hand-written PIR code, but somewhere along the line they are generating swaths of it | 13:01 | |
| I don't think they have the ability to generate pbc directly yet | 13:02 | ||
| cotto | definitely | ||
| I'm just saying that Rakudo itself won't need to care. | |||
| whiteknight | I need to make sure they are cool with having to generate different PIR, if what they are currently generating uses *any* MultiSub or NameSpace features | ||
| cotto | nqp and PCT will | ||
| whiteknight | right | ||
| I don't really differentiate between "Rakudo" and "The parts of the Rakudo toolchain maintained by Rakudo hackers" | 13:04 | ||
| cotto | They live as separate projects but the hackers are the same. | 13:05 | |
| well, nqp has a subset of Rakudo's hackers | |||
| whiteknight | they're all cogs of the greater Rakudo machine | 13:20 | |
| cotto | it's a pretty cool machine | 13:21 | |
| msg soh_cah_toa search.cpan.org/~book/System-Comman...Command.pm might be handy | 13:29 | ||
| aloha | OK. I'll deliver the message. | ||
| cotto | that might not be as helpful at this stage though | 13:30 | |
| bubaflub | ~ | 13:38 | |
|
13:44
lucian joined
13:53
mj41 joined
13:54
ambs joined
14:09
M_o_C joined
14:12
M_o_C joined
|
|||
| cotto | A gci student is giving a lightning talk. This is pretty cool. | 14:13 | |
| wesjdj | 14:14 | ||
| tadzik++ is giving one now | 14:15 | ||
| dalek | kudo/nom: 9e8adcc | (Solomon Foster)++ | src/core/ (4 files): cotan and acotan. |
14:19 | |
| kudo/nom: 4ace1ce | (Solomon Foster)++ | src/core/ (5 files): sinh and asinh. |
|||
| kudo/nom: ed58a59 | (Solomon Foster)++ | t/spectest.data: Turn on cotan.t and sinh.t. |
|||
|
14:38
ambs joined
|
|||
| dalek | kudo/nom: c468ac6 | jonathan++ | src/Perl6/Actions.pm: Fix up an outer lexical link. |
15:05 | |
| kudo/nom: a802b66 | jonathan++ | src/Perl6/SymbolTable.pm: Cut down on code generated for setting natively typed attrs in deserialization (saves about 800KB off the generated PIR for the setting). |
|||
|
15:06
dmalcolm joined
|
|||
| dalek | kudo/nom: 89a2cda | Coke++ | t/spectest.data: track failure modes |
15:19 | |
| kudo/nom: 9802d3e | (Solomon Foster)++ | src/core/ (4 files): cosh and acosh. |
15:32 | ||
| kudo/nom: e8a10fb | (Solomon Foster)++ | src/core/ (4 files): tanh and atanh. |
|||
| kudo/nom: 342e6d9 | (Solomon Foster)++ | src/core/ (5 files): sech and asech, slightly reorder the methods in Real. |
|||
| kudo/nom: 4a2f261 | (Solomon Foster)++ | t/spectest.data: Turn on cosh.t, tanh. and sech.t. |
|||
|
15:59
TonyC joined
16:03
snarkyboojum_ joined
16:04
rdesfo joined,
nopaste joined
16:21
davidfetter joined
16:42
theory joined
|
|||
| dalek | kudo/nom: a61f7d4 | (Solomon Foster)++ | src/core/ (5 files): cosech and acosech. |
16:49 | |
| kudo/nom: df103f0 | (Solomon Foster)++ | src/core/ (5 files): cotanh and acotanh. |
|||
| kudo/nom: 96ba89b | (Solomon Foster)++ | t/spectest.data: Turn on cosech.t and cotanh.t. |
|||
|
17:00
mj41 joined
|
|||
| moritz | smolder? | 17:13 | |
| whiteknight | aloha smolder? | ||
| aloha | whiteknight: smolder is not automatic, but smolder clients can be | ||
| whiteknight | awesome | ||
| moritz | aloha: smolder results? | ||
| aloha | moritz: Search me, bub. | ||
| moritz | aloha: smolder results is at smolder.parrot.org/ | 17:16 | |
| aloha | moritz: Okay. | ||
|
17:21
lucian joined
|
|||
| benabik | o/ | 17:25 | |
|
17:29
jevin joined
|
|||
| whiteknight | hello benabik | 17:35 | |
| benabik | whiteknight: What's happening? | ||
| whiteknight | benabik: nothing much. you? | 17:36 | |
| benabik | whiteknight: Morning jiu-jitsu ran long… Going to dig into a few bits of documentation today. | 17:37 | |
| whiteknight | awesome | 17:38 | |
| benabik | Part of which will be a list of "yeah, this could probably use work" | 17:40 | |
| whiteknight | yeah, it's an important list | 17:43 | |
| benabik | A long list. | ||
| sorear | Who did kid51 send PaFo invites to? | 17:50 | |
|
17:53
jsut joined
18:07
rdesfo joined
|
|||
| sorear | I got a message for parrot-legal@, probably Bcc'd, a couple days ago | 18:15 | |
| I don't *think* I'm subscribed to parrot-legal@ | |||
| dafrito | sorear, I got a PaFo invite a couple days ago which I replied to | 18:32 | |
|
18:37
Coke joined
19:00
bluescreen joined
|
|||
| moritz | sorear: to people that appear in the commit log, apparently | 19:18 | |
| Coke | moritz: not everyone, surely. | 19:31 | |
|
19:35
cotto joined
|
|||
| cotto | ~~ | 19:36 | |
| dafrito, ping | 19:39 | ||
| aloha, clock? | |||
| aloha | cotto: LAX: Mon, 12:39 PDT / CHI: Mon, 14:39 CDT / NYC: Mon, 15:39 EDT / UTC: Mon, 19:39 UTC / LON: Mon, 20:39 BST / BER: Mon, 21:39 CEST / TOK: Tue, 04:39 JST / SYD: Tue, 05:39 EST | ||
|
19:39
bluescreen joined
|
|||
| lucian | is there anything in winxed/rosella for debug traces? | 19:56 | |
| whiteknight | what do you mean? | ||
| lucian | i guess a nice logger | 19:57 | |
| to replace some say()s | |||
| whiteknight | This is the closest that Rosella provides: github.com/Whiteknight/Rosella/blo...rot.winxed | ||
| get_backtrace_strings() returns a string containing the backtrace at the current location. get_backtrace_ex_strings() returns the backtrace string for an Exception | 19:58 | ||
| try_report executes a function, and prints a proper backtrace if there's an unhandled exception | |||
| lucian | hmm. might be useful | ||
| lucian looks for some general logging bits | 19:59 | ||
| whiteknight | those are just the few things I needed. I can probably put together more stuff if you have specific requests | ||
| lucian | whiteknight: i just want a replacement for say() that only prints in some sort of debug mode | ||
| whiteknight | oh. I don't have that yet but it would be trivial for me to put together tonight | 20:00 | |
| lucian | i could write one myself, but i'd rather not reinvent things | ||
| benabik | Also, a ready function that prints to STDERR is handy. | ||
| whiteknight | Winxed has a cry() builtin | ||
| it's like say(), but tattle-tales to stderr | |||
| benabik | NotFound++ | ||
| lucian | whiteknight: hmm. is that stderr? | ||
| whiteknight | lucian: yeah, I think so | ||
| lucian | right, cool. whiteknight++ NotFound++ | ||
| thanks | |||
| whiteknight | NotFound++ indeed | ||
| benabik | Hm. A logging system in Parrot isn't a bad idea, although the real trick is making it as low cost as possible when turned off. | 20:01 | |
| lucian | i'll just use that for now, even though it's semantically incorrect | ||
| benabik: if it's integrated with winxed, it could be 0cost | |||
| benabik | lucian: Only if it's compile-time on/off. | 20:02 | |
| whiteknight | I've tried before to get NotFound to implement some kind of debugging mode | ||
| lucian | benabik: yes | ||
| but i'm not particularly worried about such overhead | |||
| whiteknight | Something like #ifdef DEBUG ... #endif, but with better syntax that could be controlled by a flag | ||
| benabik | lucian: I was thinking of something like log4j. | ||
| debug { /* code that's only run if compiled with --debug */ } | 20:03 | ||
| whiteknight | benabik: yeah, exactly | ||
| lucian | benabik: log4j is ok | ||
| benabik | Or DEBUGGING { } to make it obvious. | ||
| lucian | or even better, static if (debug) { } | ||
| benabik | (static if)++ | ||
| whiteknight | I could hack together something like that tonight. | ||
| lucian likes D's static if | |||
| whiteknight | of course, it's up to NotFound to accept the pull request or not | ||
|
20:03
cotto joined
|
|||
| whiteknight | I am not familiar with D. I'll have to look at the static if construct | 20:04 | |
| lucian | whiteknight: it's compile-time if | ||
| whiteknight | I know Winxed will do some basic dead code elimination if we have constant expressions in a condition. If we had a way to insert a symbolic constant "DEBUG", the rest should work itself out | 20:05 | |
| *if* the dead code eliminator is smart enough, as I think it is | |||
| lucian | right, that'd work too | ||
| if(__debug__) | 20:06 | ||
| where __debug__ gets defined by some compile switch | |||
| whiteknight | In terms of the Winxed parser, it's probably easiest to implement something like DEBUG <BLOCK> | ||
| lucian | right. that's ok too | 20:07 | |
| benabik | A __debug__ symbol that parses as 0/1 depending on flag would work, iff it will realize it's dead code. | ||
| dalek | kudo/nom: 7128da1 | moritz++ | NOMMAP.markdown: note a known segfault |
||
| whiteknight | I'll dig through the winxed source and see what I can come up with. NotFound is away, or I would ask him about syntax first | ||
|
20:07
rdesfo joined
|
|||
| benabik | (If it doesn't remove the unneeded test "if 1" in debug mode, that's not too bad, but if it won't pull out the whole block on if(0) that's a problem.) | 20:08 | |
| whiteknight | I was playing with a Contract library in Rosella a while back that would do basically a bunch of runtime assertions | ||
| but if a global flag were turned off, the library did nothing. Not zero cost, but very cheap | |||
| What about a syntax like DEBUG: <statement> | 20:10 | ||
| because that could be a single statement or a block | |||
| lucian | whiteknight: i don't particularly like that option | 20:11 | |
| whiteknight | well, it doesn't particularly like you | 20:12 | |
| so neener, neener | |||
| :) | |||
| I can look into a static if also, and maybe some functionality to define symbolic constants on the commandline | |||
| lucian | a static if is more general, which is why i brought it up | 20:15 | |
| whiteknight | I like the idea, I just don't know if the winxed compiler is going to be amenable to the idea of global symbolic constants | ||
| lucian | essentially, it's just better syntax for #ifdef | 20:19 | |
|
20:20
mj41 joined
|
|||
| whiteknight | right | 20:22 | |
| What I did like about the C preprocessor syntax, if anything, was that it was set aside from the normal code and visually distinct | |||
| lucian shrugs | 20:23 | ||
| i find "static" distinct enough i guess | |||
|
20:24
cotto joined
|
|||
| whiteknight | if you have a good syntax highligher, that problem mostly goes away by itself | 20:25 | |
| I suspect Notfound is going to object to the "static if" syntax, because of the dead code elimination optimizations | |||
| lucian | right | ||
| whiteknight | you could probably do something like this yourself in Winxed, Do a "const int DEBUG = 1" at the top of the file, and then "if (DEBUG) { ... }" | 20:26 | |
| you would probably need to do that for each file | |||
| lucian | yeah, doing it for every file doesn't sound great | 20:29 | |
| since my setup.winxed concats files anyway, might be able to do it there | |||
| whiteknight | ah yeah, that's a good point | ||
| lucian | parrot really needs a module system | ||
| ingy | last -h | ||
| whiteknight | lucian: Suggestions and designs welcome | 20:30 | |
| benabik | Wasn't there something called plumage? | ||
| whiteknight | benabik: yeah | ||
| whiteknight has to sign off and go now. Will be on later to chat more | |||
| lucian | benabik: afaict it's a package manager | ||
| Tene_ | That's right. | 20:32 | |
|
20:40
RobertLJ joined
|
|||
| dafrito | cotto, late pong | 21:02 | |
| cotto | dafrito, when looking at Pod::Simple, did you think about figuring out which version what we have is based on and looking at the diff based on that? | 21:04 | |
| dafrito | cotto, I could. Doing a grep shows a few versions, namely 2.02, 1.01, 3.04. I'll check what they're referring to, specifically; 2.02 looks to be the consensus, though | 21:17 | |
| cotto | dafrito, sigh | 21:22 | |
| dafrito | cotto, I generated a patch for the version parts from parrot to head: fpaste.org/rETZ/ | ||
| it's mostly 2.02, with some stuff backported, I believe | 21:23 | ||
| Generating a fake branch of merged changes should shake any Parrot-specific changes out, and it's kind-of fun to do. At least for me, anyway :) | 21:26 | ||
|
21:26
rdesfo joined
21:27
rdesfo left
|
|||
| cotto | dafrito, I'm glad you enjoy it. | 21:34 | |
|
21:42
theory joined
|
|||
| tcurtis | ~~ | 21:42 | |
|
21:50
Psyche^ joined
22:03
rfw joined
22:30
nbrown joined
|
|||
| Coke ponders trying to cut a release from windows. | 22:48 | ||
|
22:51
kid51 joined
|
|||
| lucian wants if-let in winxed! | 22:55 | ||
| or at least ?. | 22:56 | ||
|
23:21
preflex joined
23:22
whiteknight joined
|
|||
| whiteknight | good evening, #parrot | 23:23 | |
| lucian | whiteknight: evening | 23:26 | |
| whiteknight | hello lucian. How are you doing since I last saw you? | 23:27 | |
| lucian | alright, i guess | ||
| i'm getting most test passing again, without a fundamentally flawed design | 23:28 | ||
| so if i fix the bugs now, i should be left with a fully correct (albeit incomplete) python object model | |||
| whiteknight | awesome. Correctness is always a good milestone | 23:31 | |
| lucian | meh. way too late | 23:33 | |
| i should've pestered john more about 6model | |||
| sorear | jnthn__? | 23:34 | |
| lucian | yes | ||
| whiteknight | lucian: make sure to learn the lesson. Spend the rest of your life pestering everybody | 23:35 | |
| lucian | whiteknight: that might annoy said everybody | 23:38 | |
| whiteknight | unfortunately the timing just didn't work out. Next summer we should have 6model in core parrot, so our next crop of gsoc students will reap the benefits | ||
| lucian | yep. i suck at timing | 23:39 | |
| whiteknight | I don't know when NotFound gets back | 23:42 | |
| I would really like to talk to him about some debug stuff before I go blinding implementing things | |||
| blindly | 23:46 | ||
| dalek | nxed/lambda_syntax: cec5954 | Whiteknight++ | / (2 files): Merge branch 'nf_master' into lambda_syntax |
||
| lucian | whiteknight: i have a makeshift solution for now: less | 23:48 | |
| whiteknight | still, it's a feature that I believe the language should have | 23:49 | |
| lucian | i comment out cries i don't care about | ||
| and less can hide stderr with R | |||
| whiteknight | conditional compilation is a very useful tool, and having debugging diagnostics is an important tool | ||
| dalek | nxed/multi_syntax: c23371e | Whiteknight++ | / (2 files): Merge branch 'nf_master' into multi_syntax |
||
|
23:55
RobertLJ_ joined
|
|||