|
Parrot 4.0.0 "Hyperstasis" | parrot.org | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC Set by moderator on 18 January 2012. |
|||
|
00:18
benabik_ joined
|
|||
| dukeleto | whiteknight: part of the problem is testing that feature requires a file system boundary | 00:44 | |
| whiteknight | among other problems | ||
| sorear | I do not support making rename transparently attempt to paper over EXDEV. (Not that you necessarily care what I think.) | 01:03 | |
| Tene_ | Use a higher-level library if you want transparent cross-device copies, IMO | 01:14 | |
| dukeleto | Tene_: people will be trying to write higher-level libraries with Parrot, which doesn't support this out of the box | 01:18 | |
| Tene_: which means lots of wheel-reinventing in HLLs/libs because we don't provide this | 01:19 | ||
| sorear | imo, you're REMOVING functionality. | ||
| Tene_ | My initial inclination is "don't take away rename()", but I honestly can't think of a situation where I'd prefer to distinguish between these cases. | ||
| sorear | right now Parrot has a fail-safe atomic rename | ||
| dukeleto | sorear: that won't go away | ||
| Tene_ | Maybe it's a failure of creativity on my part, though. | ||
| dukeleto | sorear: we could make the current rename default and create a new function that attempts to do renames across FS boundaries | 01:20 | |
| people who deal with NFS a lot will have the strongest opinions about this | |||
| just as a data point, git does not go across FS boundaries unless you set an env var | 01:21 | ||
| sorear | dukeleto: cool. are you planning to implement this at the PIR or C level? | ||
| Tene_ | As long as a cross-device move is being added in addition to rename, I can't see any problems. | ||
| sorear | as a data point, Perl 5 has a rename() builtin which emulates the rename() system call, and File::Copy::move which emulates the mv utility | 01:22 | |
|
01:41
woosley joined
|
|||
| whiteknight | The OS PMC .rename() method should do what it says: wrap the rename() function | 01:49 | |
| we can add a .move() or .mv() method to do more magical crap | |||
| I personally prefer ".move", but there seems to be a pattern in that PMC of following the obscure naming conventions of the posix API and stdlibc | 01:51 | ||
| we have a relatively powerful and full-featured string handling subsystem and good ICU bindings, and we still have methods named .cwd(), .rm() and .chroot() | 01:53 | ||
| If we keep all the bytes we save in a jar, eventually we might be able to save up enough for something good, like half of a small bitmap image | 01:54 | ||
|
02:01
jsut_ joined
|
|||
| cotto | ~~ | 02:19 | |
| whiteknight++ | 02:20 | ||
| whiteknight | hello cotto | ||
| cotto | howdy whiteknight | 02:23 | |
| whiteknight | what's the fallback supposed to be if rename fails? bytewise copy then delete the original? | 02:28 | |
| sorear | yes | 02:29 | |
| recursive if directory | |||
| whiteknight: ICU bindings? are you suggesting replacing .rm with .⦠or something? :D | 02:30 | ||
| whiteknight | That's something that we don't need a new C-level method for. Rosella already does all those operations in pure parrot | ||
| Tene_ | it would also be unfortunate if that silently changed or dropped permissions, ACLs, etc. | ||
| whiteknight | sorear: I'm simply saying, we can do better than "rm" | 02:31 | |
| Tene_ | Seems a bit inaccurate to call posix conventions "obscure", to me. | 02:33 | |
| whiteknight | obscure might not be the right word. "unnecessarily terse" is better | ||
| And considering Parrot aims to provide a much higher level of abstraction than libc does, it doesn't make a lot of sense (to me) to follow all the same exact APIs and same naming conventions | 02:34 | ||
| Tene_ | Yeah, that seems better to me. | 02:35 | |
| sorear | "rm" isn't the POSIX name or the C name | 02:36 | |
| those are "unlink" and "remove" respectively | |||
| "rm" is the shell name... which is quite silly for Parrot to be using | |||
| whiteknight | oh, thats the shell name | ||
| right, even worse | |||
| sorear | a low-level wrapper around unlink should probably be called unlink | ||
| whiteknight | or ".delete_the_damn_file" | ||
| sorear | that's a bit much to type IMO :p | 02:37 | |
| whiteknight | on win32, it isn't a wrapper around unlink | ||
| so calling it "unlink" is already not accurate | 02:38 | ||
| sorear | opbots trust sri | 02:39 | |
| slavorg | Ok | ||
| whiteknight | .delete() makes the most sense to me, but it's hardly worth the rename at this point | ||
| sorear | opbots trust awwaiid | ||
| slavorg | Ok | ||
| sorear | opbots trust cxreg | ||
| slavorg | Ok | ||
| sorear | opbots trust jjore | ||
| slavorg | Ok | ||
| sorear | opbots trust Khisanth | ||
| slavorg | Ok | ||
| whiteknight | Tene_: yes, mucking with ACLs and security settings is a bit of an extra hassle | 02:48 | |
| Parrot doesn't really deal with those things at all in any of its current operations | 02:52 | ||
| not that we couldn't or shouldn't, of course | |||
|
03:03
benabik joined
05:37
JimmyZ joined
|
|||
| moritz | fwiw the exceptions thrown from rename are fine | 05:42 | |
|
06:02
Psyche^ joined
06:22
alvis joined
|
|||
| dukeleto | ~~ | 06:31 | |
| sorear | !~~ | 06:32 | |
| jjore | silly sorear, trust jjore? Shoot... | 06:49 | |
| sorear | sure | 07:03 | |
| you can LOSE my trust if you want to | |||
| but you haven't yet | |||
| dalek | kudo/nom: 6ed624d | moritz++ | src/Perl6/Actions.pm: Throw one more typed exception |
||
| jjore | Oh, I'm not rude enough for that. | 07:13 | |
| dukeleto is, sometimes | 07:22 | ||
| jjore | "Show me your polymorphic inline cache." | 07:29 | |
| dalek | kudo/nom: a2792b9 | moritz++ | src/ (2 files): typed exceptions for things that must be known at compile time |
07:55 | |
|
08:45
mj41 joined
09:12
woosley left
09:22
lucian joined
09:23
lucian joined
|
|||
| dalek | p: 19f1639 | moritz++ | / (2 files): [bigint] fix detection of negative numbers from binary ops This should fix RT #109740 |
09:43 | |
|
10:06
Psyche^ joined
10:22
Psyche^ joined
|
|||
| dalek | kudo/nom: 0a3ee96 | moritz++ | tools/build/NQP_REVISION: bump NQP revision to get RT #109740 fix |
10:35 | |
|
10:55
mj41 joined
11:02
seme joined
|
|||
| seme | hey guys... could anyone give me a hand... I just built parrot-4.0.0 on my mac (intel 11.2.0) but when I run parrot I get this error, PARROT VM: Could not initialize new interpreter | 11:29 | |
| I also get that error when I run the setup.pir that is generated from the mk_language_shell.pl script | 11:30 | ||
| hrm.... hold on... I think that my previous install of parrot was interacting with the new one | 11:34 | ||
|
12:42
benabik joined
12:46
mtk joined
|
|||
| benabik | o/ #parrot | 12:51 | |
| msg seme re parrot/mac problem: Sounds like a common problem. If libparrot is installed, trying to run a new parrot can go very badly. Best to remove the old one before building the new. | 12:53 | ||
| aloha | OK. I'll deliver the message. | ||
|
12:57
bluescreen joined
|
|||
| Coke | which, btw, is horrible. someday someone will fix that. ;) | 13:52 | |
| benabik | Coke: I don't think there's a simple way to do it, sadly. | 13:54 | |
| I suppose fixing the testing part is possible, since the Makefile could set the LD_* env variables. But allowing the user to run non-installed with an installed lib is tricky. | 13:55 | ||
| I dislike long lines in commit messages. git.git has spoiled me with high quality messages. | 14:01 | ||
| dalek | kudo/nom: 15dc125 | moritz++ | src/core/Exception (2 files): eliminate X::Base It is replaced by Exception as a base class, and by X::AdHoc for die with non-Exception arguments |
14:15 | |
| benabik | It occurs to me that people working on rakudo get double karma. Once in #perl6, once here. | 14:17 | |
| Not that I care, just kinda interesting. | 14:19 | ||
| masak | in the end, there's a risk that people get twice the recognition they should've got. | ||
| leading to a kind of "recognition inflation". | |||
| and the risk of collapse of the entire karma system. | 14:20 | ||
| benabik | Yeah. With this kind of inflation, it's no wonder the karma to dollar exchange rate is so low. ;-) | 14:21 | |
| masak | benabik: back in the Pugs days, people got one ++ per *line* of commit comment. :) | 14:22 | |
|
14:22
jwilliams joined
|
|||
| benabik | I guess that's one way to encourage people to write detailed commit messages. | 14:22 | |
|
14:33
PacoAir joined
15:07
jwilliams left
15:43
Psyche^ joined
|
|||
| dalek | kudo/nom: ef61a32 | moritz++ | src/core/Exception.pm: experiment a bit with backtrace printing inpsired by a discussion with masak++, [Coke]++ and a few others |
15:47 | |
|
15:54
fperrad joined
16:03
seme joined
|
|||
| seme | hey guys... does rosella work with parrot 4? I installed parrot and then tried to build rosella but it failed with the following error when trying to build core.pbc | 17:08 | |
| error:imcc:syntax error, unexpected PREG, expecting '(' ('$P3') | |||
| benabik | seme: I think it should, but I'll check. | 17:18 | |
| seme | cool thanks | 17:20 | |
| benabik | Hm. Builds fine here. Perhaps you need to make clean or get a newer version? | ||
| seme | are you downloading from git or the download link on the web site? | 17:21 | |
| benabik | git | ||
| seme | ok let me try that | ||
| benabik | Although the tar ball from the website appears to just grab the latest from git. | ||
| msg whiteknight You appear to have a markup problem with the Rosella home page. "plumage install rosella</pre>" is unlikely to be a useful command. | 17:23 | ||
| aloha | OK. I'll deliver the message. | ||
| seme | hrm... I just downloaded it from git and had the same issue... here is the complete error pastebin.com/t3jqFCmV | 17:24 | |
| benabik | Hmmmmm... | 17:27 | |
| What is line 1228 of core.pir? ( sed -ne '1228p' rosella/core.pir ) | 17:28 | ||
| seme | get_context $P3 | 17:29 | |
| benabik | Hm. I'm guessing IMCC doesn't know about the get_context op for some reason. | ||
| hmmmm.... | 17:30 | ||
| seme | what are you running? I'm wondering if it could be environmental? | ||
| I'm running on a mac pro intel x64 box | |||
| benabik | MacBook Pro. | 17:31 | |
| Running parrot master rather than a release though. | |||
| seme | aah... I'm running the 4.0.0 release | ||
| benabik | get_context was added after 4.0.0 | ||
| seme | I see | ||
| benabik | Your winxed shouldn't be generating it, I think. | 17:32 | |
| seme | doesn't rosella come with parrot? or is that just winxed that comes with parrot? | ||
| benabik | Winxed comes with parrot, Rosella doesn't. | ||
| seme | aah ok | ||
| well I'll forget about rosella for the moment... :) | 17:33 | ||
| I'm still reading through the tutorials and examples so I can understand puffin and pynie :) | |||
| benabik | I'm somewhat confused how you have a winxed that knows get_context and an IMCC that doesn't. | ||
| seme | I have no idea :) | ||
| I just cleaned my system today and did a fresh install of parrot | 17:34 | ||
| benabik | Ohhhhhhhh.... | ||
| Rosella's been updated to use get_context. | |||
| seme | I was going to try to install rosella too but that was where I hit a snag | ||
| benabik | Rosella master seems to require parrot master. | ||
| Try Rosella 4d6d1fab9f5568d1ecfd89131a09fd15358b77b8 | |||
| seme | right.... it would be nice if there were releases of rosella that coinsided with the parrot releases... | 17:35 | |
| ok let me try and grab that | |||
| I just do a git checkout 4d6d1fab9f5568d1ecfd89131a09fd15358b77b8 right? | 17:36 | ||
| benabik | Yeah. | ||
| seme | cool... it is building now | 17:37 | |
| benabik | \\o/ | ||
| seme | looks like that did the trick | ||
|
17:41
dmalcolm joined
|
|||
| dukeleto | seme: welcome, I haven't seen you around before | 17:45 | |
| seme | thanks dukeleto I'm new | 17:48 | |
| I've been trying to learn more about language design, compilers, etc. and I found parrot.. I've been reading for days now, trying to get an understanding of thigns | 17:49 | ||
| pretty cool stuff | |||
|
17:53
zby_home joined
|
|||
| dukeleto | seme: awesome! I am the parrot community dude, so if you have questions, feel free to ask. | 17:54 | |
| looks like some cardinal tests are failing on Parrot 4.0.0 | 17:55 | ||
| i don't think anybody has been running "make allhlltest" | |||
| seme | thanks... I appreciate it... for a newbie it is definitely a steep learning curve | ||
| dukeleto | seme: yes, we are trying to make it better | ||
| seme: parrot.github.com is a new site that lists docs for every version of parrot, which might help | |||
| tadzik | dukeleto: some that didn't fail before? | ||
| dukeleto | seme: newcomers are often confused by old/wrong documentation/blogs/etc | 17:56 | |
| seme | is that the same as docs.parrot.org | ||
| dukeleto | tadzik: not sure. I thought they all passed last time I checked, but I am pretty good at lying to myself | ||
| tadzik | :) | ||
| dukeleto | seme: not quite. parrot.github.com is going to eventually replace docs.parrot.org | ||
| tadzik | I haven't looked at Cardinal in a while | ||
| Tene_ | dukeleto: Remember a year ago, when you told me to expect automated HLL testing "Real Soon Now" and I was pessimistic? | ||
| seme | ooh so forget about docs.parrot.org? | ||
| dukeleto | seme: not quite. Both sites are useful | 17:57 | |
| benabik | Is there anything on docs that isn't on github? | ||
| dukeleto | Tene_: pessimism isn't very useful to me | ||
| Tene_: i prefer action and optimism | |||
| Tene_: and since then, we have "make allhlltest" and now we run the parrot test suite on every commit via Travis CI | 17:58 | ||
| tadzik | I have a feeling that both setup.pir and setup.winxed are broken in cardinal. Do we need them, having Rakefile? | ||
| dukeleto | benabik: ayardley is the captain of our documentation refactor. Not sure. I think docs.parrot.org does indeed have info parrot.github.com does not have | ||
| tadzik: having 3 build systems does seem a bit freaking ridiculous. Keeping them all in sync really sucks. | 17:59 | ||
| NotFound | ~~ | ||
| tadzik | if( (req[0] > sys[0]) || (req[1] > sys[1]) || (req[2] > sys[2]) ) { | 18:00 | |
| dukeleto | tadzik: would you mind sending an email to parrot-dev asking people what to do about cardinals multiple-build-system disorder? | ||
| tadzik | no wonder that fails against 3.8.0 vs 4.0.0 | ||
| dukeleto: nope, can do that | |||
| dukeleto | tadzik++ | ||
| NotFound: wazzup | |||
| NotFound | dukeleto: not much, I'm busy these days | 18:01 | |
| dukeleto | tadzik: i am trying to merge this github.com/parrot/cardinal/pull/20 | 18:03 | |
| tadzik: but then ran into failing tests | |||
| tadzik: and merging new code with an already failing test suite makes me sad | |||
| tadzik | no wonder | ||
| I'm fixing setup.winxed now | |||
| dukeleto | tadzik++ | ||
| NotFound | tadzik: that setup.pir in hand written or is generated from setup.winxed? | 18:04 | |
| tadzik | NotFound: no idea, but it gives diferent results | 18:06 | |
| seems to be hand-written | 18:07 | ||
| NotFound | I suggest to kill it. | ||
| tadzik | that should be painless, now that we have winxed in Parrot | ||
| bundled, I mean | |||
| dukeleto: and yes, tests fail | 18:09 | ||
| dukeleto: btw, maybe it should go to github issues rather than parrot-dev? | |||
| dukeleto | tadzik: both, either, whatevs :) | 18:10 | |
| +1 to killing the hand-written setup.pir. That is archaic | 18:11 | ||
| and is from before winxed came with parrot | |||
| tadzik | some of those failing tests are more suitable for something like eval_dies_ok | ||
| that's it ends up with Dubious, test returned 1 | |||
|
18:18
bluescreen joined
|
|||
| dalek | rdinal: b675f75 | tadzik++ | setup.winxed: Fix setup.winxed |
18:20 | |
| rdinal: d4f22c4 | tadzik++ | setup.pir: Remove setup.pir. No need to have both setup.winxed and setup.pir while winxed in bundled with Parrot |
|||
| kudo/usage-prints-WHY: 0683298 | moritz++ | src/ (2 files): more typed exceptions |
18:41 | ||
| kudo/usage-prints-WHY: 5fcfed5 | moritz++ | src/Perl6/Actions.pm: fix thinko |
|||
| kudo/usage-prints-WHY: cb00ad1 | moritz++ | src/ (2 files): typed exceptions for "my $!foo" |
|||
| kudo/usage-prints-WHY: 683a387 | jnthn++ | src/core/ (2 files): Enumerations should .gist to just the key, not including the full package name. |
|||
| tadzik | oh, crap | ||
| dalek | kudo/usage-prints-WHY: ef22e37 | jnthn++ | src/core/Str.pm: Forbid :8(non-Str-here), as per spec. |
||
| kudo/usage-prints-WHY: ce5ccae | moritz++ | tools/build/NQP_REVISION: bump NQP revision to get option handling and charclass fixes |
|||
| kudo/usage-prints-WHY: 6b62395 | jnthn++ | tools/build/NQP_REVISION: Bump to latest NQP to get <!> fix. |
|||
| kudo/usage-prints-WHY: acbec86 | moritz++ | tools/build/NQP_REVISION: fix NQP_REVISION |
|||
| kudo/usage-prints-WHY: 6a17a5e | moritz++ | src/core/Match.pm: implement Match.make |
|||
| kudo/usage-prints-WHY: a47a56a | jnthn++ | src/ (2 files): Improve error reporting for nextsame and friends when they are used with no dispatcher in the dynamic scope; TimToady++. |
|||
| kudo/usage-prints-WHY: a177364 | tadzik++ | / (2 files): Remove trailing whitespace in declarator blocks |
|||
| kudo/usage-prints-WHY: 6bcd7b6 | tadzik++ | / (18 files): Merge branch 'nom' into usage-prints-WHY |
|||
| kudo/nom: 2251cbb | tadzik++ | src/core/Main.pm: Make default USAGE print .WHY for the documented candidates |
|||
|
18:42
mj41 joined
|
|||
| benabik | Heh. dalek just helped me notice I was on the wrong end of a net split on free node. :-D | 18:43 | |
|
18:56
trey joined
19:07
Khisanth joined
19:58
lucian joined
21:56
jsut joined
22:01
jsut_ joined
22:05
benabik_ joined
22:30
awwaiid joined
22:38
dmalcolm joined
|
|||
| dalek | kudo/stdinit: f3058c8 | jnthn++ | src/Perl6/Actions.pm: Small refactor to bind_op/assign_op to prepare for initializer changes. |
23:23 | |
| kudo/stdinit: 95a255a | jnthn++ | src/Perl6/ (2 files): First round of changes to parse variable initializers as part of variable_declarator. Basically works, though doesn't yet handle the attribute initializer case yet. |
|||
|
23:31
trey joined
23:36
benabik joined
|
|||
| dalek | kudo/stdinit: b0a9d14 | jnthn++ | src/Perl6/Actions.pm: Re-work attribute initializer handling, getting rid of the nasty action at a distance stuff. Also a bit more robust. |
23:37 | |
|
23:49
TonyC joined
23:51
nopaste joined
|
|||