Camelia, the Perl 6 bug

IRC log for #parrot, 2009-08-04

Parrot | source cross referenced

| Channels | #parrot index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:07 davidfetter joined #parrot
00:27 theory joined #parrot
00:32 AndyA joined #parrot
00:50 TiMBuS joined #parrot
00:56 patspam joined #parrot
00:59 nillo joined #parrot
01:06 wayland76 joined #parrot
01:14 bkuhn joined #parrot
01:44 * Coke gets YA bizarre PIR error.
01:45 * Coke does not like that macros screw up lines numbers in reporting.
01:52 treed +1
01:52 purl 1
02:06 theory joined #parrot
02:09 nopaste "Coke" at 72.228.52.192 pasted "guess which line the error is actually on." (6 lines) at http://nopaste.snit.ch/17464
02:09 Coke (line 708 of runtime/builtin/string.pir)
02:09 chromatic I guess... line 708?
02:11 Coke ... *THWAP*
02:12 Coke the line is         len = length the_string
02:13 Coke where len is defined as 'int', and the_string is a 'string'. I'm stumped.
02:15 chromatic NO idea.
02:17 Coke cleaning up remaining errors first, we'll see what's left.
02:21 Coke ah. ".local int length"
02:21 Coke (*#&$@#>
02:22 Coke known issue, IIRC.
02:22 chromatic Ah.
02:23 Coke I was converting a bunch of helper .Subs into a big switch; the .local int length was ok in the one sub, but infected the single large compilation unit.
02:25 Coke IWBNI macro line # reporting could tell the difference between code in the macro and code passed into the macro.
02:26 chromatic That's... tricky.
02:33 Coke ayup.
02:34 Coke wtf. I did a 'git commit' and quit out. but now 'git diff' shows nothing.
02:35 janus joined #parrot
02:37 Coke git diff -cached is now showing that diff is pending a push, too.
02:38 Coke good thing I can edit that commit message. :P
02:38 Coke msg cotto tcl does not yet do hll annotations, help welcome. =-)
02:38 purl Message for cotto stored.
02:39 chromatic You have to git svn dcommit to push to an SVN repo.
02:43 Coke yes, I get that. I have a bunch of commits that don't have any commit messages in the local git repo. I'd like to edit them before I push them back.
02:43 Coke is that possible? (apparently just aborting out of the 'git commit' vi session was not sufficient to abort the commit.)
02:44 chromatic Yes, it is.  I don't remember how though.
02:46 chromatic git commit --amend, I believe.
02:47 Coke that shows me a commit that is, I think, 3 commits ago.
02:49 Coke ... but it doesn't show me the commit that had no message.
02:49 Coke git log shows me everything but that last commit with no message.
02:49 Coke (but the diff is in 'git diff --cached', not 'git diff') .... *cry*
02:50 chromatic No idea.
02:51 Coke ... back to svk it is. :P
02:51 kid51 But Coke, this year all the *cool* kids are using git ...
02:52 chromatic You're tempting the git experts here to tell you what you did wrong.  Nice.
02:52 kid51 ... svk is so 2006!
02:52 Coke chromatic: first thing I did wrong was try to use git!
02:52 * kid51 bid $95 to get the git book in the auction at YAPC.
02:52 * kid51 aspires to be cool some day, too.
02:58 Coke GAH. it squashed 4 commits into a single commit.
02:58 Coke WTF.
02:58 Coke msg tene something to cover in your tutorial: - 'git commit' doesn't let you abort out by quitting the commit message like 'svn commit' does.
02:58 purl Message for tene stored.
02:59 Coke msg tene - nice to know how to edit commits locally before pushing them back.
02:59 purl Message for tene stored.
02:59 Coke msg tene - helpful to know that the default seems to be to squash all local commits into a single commit back to the svn repo.
02:59 purl Message for tene stored.
02:59 Coke git--
03:00 dalek partcl: r567 | coke++ | trunk/ (13 files):
03:00 dalek partcl: PerlJam++ suggests using the .gitignore file for this
03:00 dalek partcl: review: http://code.google.com/p/p​artcl/source/detail?r=567
03:08 wayland76 Hmm.  I'm sure my git commit message *claimed* that it would abort if the file was unedited
03:08 wayland76 But I've never tested it
03:08 wayland76 (I'm not a big git fan, but it seems to be unavoidable these days)
03:09 wayland76 Btw, for those who aspire to be git people and aren't there yet, the best thing I've seen is the diagram in http://osteele.com/archive​s/2008/05/my-git-workflow
03:11 JimmyZ joined #parrot
03:21 TonyC joined #parrot
03:25 cotto Coke, I was asking because they'll come in real handy when profiling is ready.
03:26 Andy joined #parrot
03:41 cotto chromatic, ping
03:44 chromatic pong
03:44 cotto what's happening with pluggable_runcore?
03:45 chromatic Refactoring is in progress.  Mostly I need time to sit down and Just Code It.
03:45 cotto eta?
03:45 purl eta is estimated time of arrival or Euskadi Ta Askatasuna, or like the Basque PLO
03:46 chromatic If I get down to it, the next day or two.  Are you starting to block?
03:48 cotto no.  I won't block for a while, but it'd be nice to start having something to commit.
03:49 chromatic I'd like to get it out of my head and into code too.  It's partly there.  I'll push on it to make it a priority.
03:49 cotto *to commit to
03:49 cotto Thanks!
03:49 cotto I thought I had the callgrind convertor working, but I just realized that one of my assumptions was broken.
03:50 chromatic Oh>
03:50 chromatic ?
03:51 cotto just a detail that means a moderate amount of rewriting.  nothing fundamental
03:51 chromatic Do we have sufficient information for the transformation?
03:51 cotto Yup.
03:51 chromatic Excellent.
03:54 cotto http://mksig.org/parrot/callgrind_parrot.png
03:55 chromatic That's the ticket.
03:55 nopaste "cotto" at 74.61.2.46 pasted "the pir used to generate the above screenshot" (58 lines) at http://nopaste.snit.ch/17465
03:55 cotto Yup.  Just need to get the numbers right.
03:55 bacek_at_work cotto++ # yay! profiling!
03:56 chromatic Are they not right?
03:56 dukeleto joined #parrot
03:57 cotto The percentages are wrong.
03:58 chromatic The call chains look right.
03:59 cotto Yeah.  I just goofed some cost calculations.
03:59 cotto I'm excited.
04:02 mj41_ joined #parrot
04:07 dukeleto joined #parrot
04:19 theory joined #parrot
04:29 cotto Yay!  It works correctly now!
04:29 cotto Now all I have to do is get the code to the point where I'm not embarrassed for people to see it.
04:33 bacek_at_work cotto: it compiles? Ship it!
04:36 wayland76 Nonono, he's got to make the code also appear like an ASCII graphic of a spiral :)
04:38 bacek_at_work Dolphin! RSA dolphin! :)
04:41 cotto My current code hijacks the slow runloop, so committing it probably wouldn't be a good idea.
04:47 bacek_at_work cotto: is it in branch?
04:47 bacek_at_work ship it! :)
04:47 * bacek_at_work departing to next meeting...
04:50 cotto bacek_at_work, no branch atm.  I'm waiting for pluggable_runcore to be ready.
04:56 dukeleto i am trying to make "eval" work in parrot_debugger. halp?
05:02 dalek TT #901 created by dukeleto++: eval is broken in parrot_debugger
05:02 chromatic You could check it into the branch as a separate runcore and I'll refactor it in place, if you like.
05:04 chromatic I should have things ready soon though.
05:06 cotto That sounds like a good idea.
05:07 chromatic No real preference here.
05:11 cotto chromatic, at what point did you read through all the core PMCs?
05:13 eternaleye Coke: git commit aborts if the commit message being edited has no non-comment non-whitespace text
05:15 chromatic Christmas 2007, I think.
05:16 dukeleto is there a document that describes what parrot commit messages should look like?
05:17 chromatic [subsystem] Report
05:20 theory joined #parrot
05:20 eternaleye chromatic: BTW, nice ModernPerl post. I really like the posts you make there, keep it up!
05:20 dukeleto chromatic: many people use [TT #] and [cage] as well. or [branchname]. just wondering if there was a canonical description somewhere
05:20 * eternaleye is hoping for modernization of P5 to become the norm
05:27 davidfetter where's the modernperl post?
05:29 chromatic http://www.modernperlbooks.com/mt/2009/​08/reduce-complexity-prevent-bugs.html
05:32 * davidfetter reads
05:49 dukeleto good stuff
05:58 uniejo joined #parrot
06:03 * davidfetter wonders to what extent, if any, this approach was inspired by postgresql's memory contexts
06:05 davidfetter http://www.postgresql.org/docs/​current/static/spi-memory.html
06:25 chromatic I haven't looked at them, so no inspiration there from me!
06:27 davidfetter heh
06:40 davidfetter http://anoncvs.postgresql.org/cvsweb.cgi/pg​sql/src/backend/utils/mmgr/README?rev=1.15
06:41 davidfetter i know, i know. we're moving to git. it's probably going to take another year 'til we're done :(
07:08 dalek rakudo: 24b26a0 | pmichaud++ | docs/spectest-progress.csv:
07:08 dalek rakudo: spectest-progress.csv update: 426 files, 12179 passing, 8 failing
07:08 dalek rakudo: Failure summary:
07:08 dalek rakudo:     S12-enums/basic.rakudo aborted 2 test(s)
07:08 dalek rakudo:     S12-introspection/walk.t aborted 6 test(s)
07:08 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/2​4b26a0e5319646877f9cdfa5976062e1a02b95a
07:23 NotFound joined #parrot
07:23 NotFound hi
07:23 purl bonjour, NotFound.
07:26 HG` joined #parrot
08:32 cotto Nice.  Some dude's car alarm just spend the last 3 minutes going off.
08:33 cotto I imagine he's not happy about having that happen at 0130.
08:33 dukeleto probably not
08:35 dukeleto cotto: i just made some small tweaks to parrot_debugger as well as adding some tests, a quick look over from you would be nice, if you can spare a few minutes
08:36 dalek parrot: r40395 | dukeleto++ | trunk (3 files):
08:36 dalek parrot: [parrot_debugger] Improve error checking of eval, add tests and untodo-ify tests relating to TT#889
08:36 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40395/
08:36 NotFound dukeleto: see my comment on TT #901
08:37 dukeleto NotFound: interesting
08:38 dukeleto i saw that ticket before, but totally forgot about it
08:39 dukeleto NotFound: shall I get rid of PDB_compile, or is that still up in the air?
08:40 NotFound dukeleto: I'd like to hear some comments before. I'll ask on parrotsketch
08:40 dukeleto NotFound: sounds good
08:40 dukeleto NotFound: can eval be implemented with some other compiler that is working?
08:41 dukeleto or does that still need to be written?
08:42 NotFound dukeleto: I'm not sure that regularly compiling is a good idea in current parrot state. For example, if you eval I0 = 0, calling a compiled sub doesn't anything useful.
08:43 cotto dukeleto, I'd be glad to look over your changes, but why me?
08:44 dukeleto cotto: they are very basic, mostly just looking for a "code review" to make sure I am not doing something against the grain. it was r40395 :)
08:45 dukeleto so if your tests pass in r40395, that is the majority of it
08:46 dukeleto NotFound: i guess what I am after is, what is the simplest possible implementation for a working eval in parrot_debugger ?
08:46 NotFound dukeleto: If I had an idea about that, I've implemented it ;)
08:47 dukeleto NotFound: should eval look at the AST of the given code to determine if it should be compiled? does that even make sense?
08:49 dukeleto NotFound: isn't there an Eval PMC?
08:49 NotFound dukeleto: What  AST?
08:49 purl i guess AST is Abstract Syntax Tree or Atlantic Standard Time or Andrew S. Tanenbaum
08:50 cotto dukeleto, I don't trust my evaluative skills at 0150.  I'll take a look at it tomorrow morning.
08:51 dukeleto NotFound: one could build one for the given command, no? perhaps my rakudo-land thinking is getting me in trouble here
08:51 dukeleto cotto: sounds good to me. I am about to hit the sack as well
08:51 dukeleto NotFound: I don't think I understand all the parameters of the problem yet, so I will invariably be asking some really dumb questions
08:53 NotFound dukeleto: no one fully understand parrot debugger or how to improve it. That's the reason it's so stalled.
08:53 NotFound IMO
08:53 chromatic One problem is that the PIR compiler is essentially IMCC, which has no connection to PCT/NQP.
08:54 chromatic There *is* an AST, but not in the PCT sense, and not introspectable from PIR.
08:54 chromatic ... without the use of some grotty NCI that no one should write.
08:54 dukeleto NotFound: that is at least comforting :) I must say, it took me 2 weeks of reading the perl 5 debugger source to make a one line fix, while I have been able to write over 30 tests and fix a few bugs in the parrot_debugger in a few days. That has gotta say something about it
08:55 NotFound dukeleto: be content you don't looked at it before I doed some cleaning and improvements some monts ago ;)
08:55 chromatic For one thing, I'm not putting my PhD in evilology to good use.
08:55 dukeleto NotFound: touché
08:58 dukeleto chromatic: do you have any ideas about implementing PDB_eval in something close to Parrot's current state? or will it require some large changes?
08:58 nopaste "mikehh" at 90.208.192.110 pasted "PATCH for codetest failures in r40394" (26 lines) at http://nopaste.snit.ch/17466
08:59 chromatic We'd have to get a self-hosted PIR compiler working better first.
08:59 chromatic That's not likely to happen in the next couple of months.
09:00 NotFound dukeleto: I think that the most practical way in the current state is to forget fully eval and implement things like assigning values to registers.
09:00 lnostdal joined #parrot
09:00 mikehh src/gc/mark_sweep,c fails two subtests in t/codingstd/c_parens.t - if( and space before trailing parems
09:00 dukeleto chromatic: ok, good to know. i will divert my attention elsewhere until I have the tuits to attack it
09:01 dukeleto NotFound: that sounds like something I could accomplish
09:01 cotto chromatic, this may be a bad idea that I'm too tired to filter out, but what if instead of having a profiling runcore, we had hooks in the right places so that we could profile with any runcore?
09:01 NotFound dukeleto: will be useful feature IMO
09:01 dukeleto NotFound: do you have a preference for the debugger command name used to assign registers? perhaps 'assign' ? which could have the useful one character "a" as a shortcut
09:02 NotFound dukeleto: just pick any name and document it as 'experimental' in DEPRECATED
09:02 dukeleto something like: (pdb) a I0 42
09:04 NotFound dukeleto: looks good
09:04 AndyA joined #parrot
09:04 dukeleto NotFound: sounds good, I will start a-hackin' on that
09:05 NotFound In fact the full parrot_debugger is experimental, but some parts are more experimental than others ;)
09:07 chromatic cotto, that sounds like how DTrace works.  How would that work here though?
09:08 cotto I'll need to think if it could work.
09:09 chromatic mikehh thanks, applied.
09:09 chromatic Have you sent in a CLA, by the way?
09:09 cotto good night
09:09 NotFound dukeleto: BTW your last commit looks good and builds fine
09:10 dalek parrot: r40396 | chromatic++ | trunk (2 files):
09:10 dalek parrot: [codingstd] Fixed some coding standard mishaps in recent commits (patch mostly
09:10 dalek parrot: by Michael Hind).
09:10 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40396/
09:10 dukeleto NotFound: good to hear, thanks!
09:10 mikehh chromatic: still got to get my printer working - I was hoping to send it today or tomorrow
09:11 chromatic Okay.  I want to get you a commit bit so you can fix these things directly.  You know what you're doing, you know the lecture about not breaking things, so on and so forth.
09:12 dukeleto i smell fresh blood ;)
09:12 NotFound mikehh: you can go to Lisbon and give it by hand to somenone ;)
09:12 moritz let's summon the piranhas :-)
09:12 moritz NotFound: then it still needs to be printed :)
09:13 chromatic I give him a week before he slaps Whiteknight's fingers for consistently missing that space between 'if' and '('.
09:16 moritz hah, if Whiteknight wants to write Perl 6 he can't write 'if(' anyway
09:16 moritz because that's parsed as sub call
09:16 moritz and if there's a { after 'if(...)' it's parsed as a syntax error :-)
09:17 wayland76 joined #parrot
09:17 chromatic Our rules aren't arbitrary.  They're this way for a reason!
09:18 chromatic That reason *is* to pick on Whiteknight, but that makes it no less a reason.
09:18 NotFound I'm considering writing a language whose reserved words are in klingon characters, and user names in Tolkien's runes. That way they never conflict.
09:19 chromatic And Guido thought he had it right with Python.
09:21 mikehh aion't no strict in Python
09:21 mikehh s/aoin't/ain't/
09:21 mikehh whatever
09:24 wayland76 s/ain't/There is/
09:25 wayland76 NotFound: You could even do function names in runes, and variables in greek letters
09:26 mikehh just make them in the appropriate unicode codespace - different ones of course
09:27 moritz .oO( double width latin characters for keywords, normal latin characters for user defined stuff )
09:30 NotFound wayland76: greek letter gives less geek points than klingon ones.
09:31 mikehh a totally DWIMmy input for the coder
09:31 wayland76 NotFound: Maybe, but more alphabets gives more Unicode geek points :)
09:32 wayland76 moritz: Don't be so evil :)
09:32 NotFound And as a bonus, you can do talks about the language in Star Trek conventions.
09:32 wayland76 Oh yeah, throw in Hebrew too.
09:33 wayland76 Then you could do your talks at both Star Trek and Bible conventions :)
09:33 moritz rtl scripts embedded in ltr scripts - now we're approaching real evil
09:34 wayland76 Υαυ!  Αλλ κινδσ οφ כומ ׳ק בםוךג ישהק ׳ןאי איןד, Ψαν´τ ςε
09:34 chromatic That's an interesting way to transition between potentially ambiguous states in the parser.
09:34 wayland76 Hmm.  My IRC client seems to have trouble with it :)
09:34 * moritz recognises one character in there, and is happy
09:34 wayland76 Actually, it's 50% Greek, 50% Hebrew
09:35 NotFound Looks good, even if slightly funny, here.
09:35 wayland76 And 100% looking at the english letters on my keys
09:35 wayland76 (So I should've said 50% greek letters, 50% hebrew letters, but not actual Greek or Hebrew)
09:36 mokurai wayland76: Do you have the fonts installed?
09:36 NotFound Use hebrew and greek for operators, and the language starts to looks like an algebra book.
09:36 wayland76 My actual Greek is limited to saying this like "Ιχθος τεκνον" (fish technology or something)
09:36 mokurai It's been done. APL.
09:36 wayland76 No, use APL for the operators :)
09:36 wayland76 There's an APL section in Unicode
09:37 mokurai Actually, the APL characters are scattered over six blocks.
09:37 wayland76 And it's important not to confuse "APL Symbol alpha" with "Greek letter alpha" (they look identical)
09:37 mokurai Joey Tuttle made an APL font, and I redid it in Unicode.
09:37 NotFound Let's use both for completely different operations.
09:37 wayland76 mokurai: Yeah, I knew they weren't all together.  I was using "Unicode" in the broadest possible sense
09:37 chromatic ichthos teknon, that's basically "Fish Technology"
09:38 moritz fishing technologoy? :-)
09:38 payload joined #parrot
09:38 mokurai Actually, all you have to do is encode UnLambda in 0O1l, or even better in WhiteSpace.
09:39 chromatic I don't *think* ichthos can decline to gerund form, but I don't know my Greek declensions.
09:39 mokurai Epi tes dotheisis eutheias peperasmene, trigonon isopleuron sustesasthai.
09:39 wayland76 I have two keyboards, one for English, and one for Greek/Hebrew/APL :)
09:39 moritz whitespace shouldn't be a programming language, it should be a transport encoding format :-)
09:39 moritz then I could write Perl 6 in whitespace
09:40 mokurai A gerund is in a verb conjugation, not a noun declension.
09:40 chromatic Yes, but ichthos is not a verb.
09:41 mokurai Right, so it doesn't have a gerund.
09:41 NotFound moritz: in fact it is, but it encodes only brainfuck.
09:42 wayland76 Shouldn't "fish" in "fish technology" be in the genitive?
09:42 mokurai No, that would be technology that fish use.
09:43 chromatic For "decline to" read "take the root of, verbify it, then conjugate"... sort of a linguist pun.
09:43 chromatic Like most linguist puns, it suffers everywhere but the mind of the creator.
09:43 mokurai Oh, well, in that case, we'll quantify it instead. Take the square root of the probability in conjugate phase space, and...
09:44 mokurai There's definitely something fishy about that.
09:44 NotFound We can steal a thing from brainfuck for our brand new language: everything written in comprehensible characters is a comment.
09:44 wayland76 Ok, so what is "cat technology"?  I mean, is it technology that cats use, or something else? :)
09:45 mokurai LOL
09:45 mikehh linguist puns? linguist is redundant
09:45 wayland76 LOLfish?
09:45 chromatic Technology that cats ignore, except to sleep on.
09:45 chromatic or shed on
09:45 chromatic or knock off of horizontal surfaces onto lower horizontal surfaces
09:45 payload joined #parrot
09:45 chromatic Gravity is a cat technology.
09:46 wayland76 Especially if the cat has a piece of buttered toast strapped to its back
09:46 mokurai "Gravity is just another option." Icanhazcheeseburgerz
09:48 bacek joined #parrot
09:48 bacek o hai
09:48 mikehh welcome
09:48 wayland76 o/ bacek
09:49 wayland76 ασπαζομαι σε
09:49 moritz somehow this language and script thing is getting scary :-)
09:50 bacek wayland76: it's Greet, not Cyrillic :)
09:50 mokurai actually icanhascheezburger
09:51 mokurai I hesitate to bring this up, but we do in fact have a LOLparrot.
09:51 JimmyZ joined #parrot
09:51 moritz and Lorita is in planning
09:51 moritz that's only one character away from beginning with lol
09:52 chromatic Lorita or Lorito?
09:52 moritz erm, o
09:52 wayland76 bacek: If you backlog, you'll see why I used Greek
09:52 NotFound We can have both, and start a family
09:52 wayland76 I don't have a Cyrillic keyboard layout handy
09:53 mikehh Universal Unicode Keyboard :-}
09:54 mikehh get that one with the LED keys and switch languages with one keystroke
09:54 NotFound Three are nice japanese keyboards with several thousands keys.
09:54 NotFound s/Three/There
09:54 moritz hey, would about a 16k keyboard, and a switch for the Unicode plane? :-)
09:55 NotFound They had mechanic typewritters with such keyboards.
09:56 NotFound moritz: better use an hexadecimal keyboard, and keep in your memory all character's codes.
09:56 moritz NotFound: that's so web-1.0
09:57 NotFound I think is Web Negative NaN
09:58 mikehh they used to have card punches with al twelve keys that you punched the characters - one at a time pushing the necessary keys
09:58 bacek chromatic: there _is_ PIR parser in PCT :) It just need some love to became compiler
09:59 NotFound Platonic love?
09:59 uniejo joined #parrot
09:59 mikehh very Tender Loving Care
10:00 bacek NotFound: hardcore coding and CS stuff
10:00 NotFound I'd like better Wii Sports.
10:01 pjcj joined #parrot
10:05 wayland76 "That one with the LED keys" = Optimus Maximus, made by Art Lebdev
10:06 donaldh joined #parrot
10:06 wayland76 I've already spent $300 on keyboard-related items this year, I'm not going there :)
10:06 NotFound I said several thousand keys, not several thousands dollars.
10:07 wayland76 NotFound: That's a little exaggerated -- the Optimus Maximus is between $1000 and $2000
10:07 wayland76 (That was in response to mikehh, btw)
10:07 wayland76 Have you got a link to a picture of the Japanese keyboard?
10:07 NotFound wayland76: no, I have it on magazine from the '80
10:08 NotFound An article about japanese word processors.
10:09 wayland76 Hmm.  Google images didn't come up with anything.  Oh well :)
10:09 NotFound For the youngs here: Yes, we had word processores in the '80 ;)
10:10 dalek close: r89 | Austin++ | trunk/ (6 files):
10:10 dalek close: Grammar refactoring checkpoint. Visitor works a little.
10:10 dalek close: review: http://code.google.com/p/close/source/detail?r=89
10:11 wayland76 And even in the '70s, although I didn't have access to a computer until 84/85
10:12 NotFound Well, the magazine is from the very early '80, so I guess the machine was from the '70
10:13 baest joined #parrot
10:13 NotFound I got a ZX-81 shortly after, wich has a little less keys ;)
10:16 mokurai NotFound: Was that the Xerox JStar?
10:17 NotFound mokurai: It can be, don't have the magazine at hand now.
10:18 mokurai mikehh: Check out the XO-2 design, with dual multitouch haptic screens, one used for either typing or music keyboard.
10:18 uniejo joined #parrot
10:19 NotFound The article mainly talked about two comepting techologies: full keyboard, and syllabic keyboard with assisted translation to kanji, or something like that.
10:20 mokurai NotFound: The JStar was the first Japanese word processor with Kana-to-kanji conversion.
10:20 mokurai The 8010 Star line was Xerox's attempt to commercialize Smalltalk.
10:21 NotFound mokurai: then it can't be the machine with the big keyboard, I guess.
10:21 mokurai NotFound: I have seen a Japanese typesetter with a glass plate containing several thousands characters to be lined up one at a time.
10:22 mokurai NotFound: When I was in the Peace Corps in Korea, we had a typesetting service that used a Linotype with about 2,000 keys.
10:23 mokurai NotFound: There have been several hundred systems for typing hanzi/kanji.
10:24 NotFound And some people here doesn't even like keyboards with just 102 keys... ;)
10:25 mokurai NotFound: IBM once had a very nice chord keyboard with just 15 keys, and over 4,000 possible combinations.
10:25 NotFound mokurai: surely the need to build such machines was a good motivation to become good manufacturers ;)
10:27 mokurai NotFound: Kitteh likez keybored.
10:28 mokurai left #parrot
10:49 JimmyZ joined #parrot
10:53 uniejo joined #parrot
11:21 donaldh joined #parrot
11:21 bacek Is parrot-dev available via nntp?
11:27 bacek nm. I found "Reply-to maillist" addon for thunderbird
11:30 TonyC joined #parrot
12:00 dalek lua: f9c9ea7 | fperrad++ | src/pmc/lua (7 files):
12:00 dalek lua: clean up PMC (see TT #895)
12:00 dalek lua: review: http://github.com/fperrad/lua/commit/f9​c9ea7318f8163eae45b61f37171837a7251244
12:08 ruoso joined #parrot
12:23 whiteknight joined #parrot
12:24 whiteknight good morning #parrot
12:24 cono hiya
12:31 quek joined #parrot
12:35 MoC joined #parrot
12:55 Patterner Is it normal that after a "make" a 2nd "make" still does stuff?
12:59 bacek Patterner: it "doesn't". make just checks various subtargets in subdirectories.
13:01 Patterner It does. It compiles .c files.
13:02 Patterner after the forth invocation it is satisfied and needs only a second to check that it has nothing to do.
13:02 bacek hrm...
13:03 bacek Are you sure that your system clock isn't screwed? Because this behaviour is weird...
13:03 moritz Patterner: it always compiles xx.o for me
13:04 * bacek summon masak to file parrot-bug
13:04 Patterner bacek: quite sure.
13:04 * Patterner is running "fulltest" now...
13:05 bacek Patterner: do you mean "make" or "make fulltest"?
13:05 Patterner make
13:06 Patterner I don't expect "fulltest" to run in a second :)
13:06 bacek :)
13:06 bacek Can you nopaste output from second make?
13:07 bacek nopaste?
13:07 purl nopaste is at http://nopaste.snit.ch/ (ask TonyC for new channels) or http://poundperl.pastebin.com/ or http://paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at http://www.extpaste.com/ or http://paste.scsys.co.uk (for #catalyst, #dbix-class, #moose  and others) or http://gist.github.com/ or paste or gtfo
13:08 bacek (Side question: do you run parallel make? E.g. "make -j3" or MAKEFLAGS="-j3" make)
13:08 Patterner no parallel. old powerbook...
13:09 Patterner paste after the test
13:09 nopaste "moritz" at 132.187.31.74 pasted "second make run" (36 lines) at http://nopaste.snit.ch/17467
13:10 bacek moritz: thanks
13:10 bacek there is no "real" make.
13:10 bacek It's just checking subtargets
13:11 moritz it compiles xx.c
13:11 dalek parrot: r40397 | NotFound++ | trunk/src/pmc/exception.pmc:
13:11 dalek parrot: [pmc] clean up and some refactoring of the Exception PMC
13:11 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40397/
13:11 bacek "ccache gcc ..." line is just information about how c can be compiled
13:11 moritz oh
13:11 Patterner I have more stuff than that...
13:11 moritz Patterner: did you do a realclean before the build?
13:11 bacek Patterner: nopaste welcome! :)
13:11 Patterner github is dead...
13:12 Patterner moritz: hmmm... maybe... maybe not...
13:12 Patterner Is "realclean" still necessary?
13:12 moritz sometimes, yes
13:12 bacek sometimes
13:12 purl sometimes I think you're off your rocker.
13:23 * bacek departing to bed
13:24 bacek Patterner: feel free to open TT ticket for make shenanigans. Log from second make will be very helpful
13:25 Patterner bacek: ack.
13:30 * Patterner added it to OmniFocus :)
13:34 Coke msg cotto I have no idea how to get line number information out of PGE.
13:34 purl Message for cotto stored.
13:43 * Coke finds 'git stash'
13:44 moritz balm for the tormented svn user
13:47 Patterner realclean + Configure.PL + make + make  == WIN
13:47 Patterner (on my linux system)
13:47 Patterner the 2nd make makes nothing but xx.o
13:48 quek left #parrot
13:48 moritz great
13:49 Patterner and "make" is a symlink to "gmake"...
13:53 Coke so, git-users... how can I use git-svn to keep my commits back to svn separate?
13:53 quek joined #parrot
13:56 cono Coke: dcommit?
13:56 purl dcommit is very pick =P
13:56 Patterner either t/compilers/pge/pge_examples takes a long long time or it hung...
13:57 Coke cono; last time I did that, my 4 'git commit's that I had done locally wound up as a single commit to svn when dcommit'ting.
13:57 Coke cono: Probably because I didn't do the right then when I did 'git commit'.
13:57 Coke but I'm a git-newbie.
13:57 cono did not catch "separate" :D
13:57 Coke (if I run git-log, I only see one commit, but I ran 'git commit' multiple times)
13:59 cono Coke: git dcommit rebased your commits
13:59 Patterner How long should t/compilers/pge/pge_examples_2.pir run?
13:59 cono i guess
14:00 cono Coke: man git-svn /dcommit -> --no-rebase, dunno if it will help
14:07 Patterner great... if you kill pge_examples_2 it is still OK...
14:07 particle re perl #68164: why should 'end' be an unexpected parrot_op?
14:07 particle http://rt.perl.org/rt3/Tic​ket/Display.html?id=68164
14:07 particle end is a valid parrot op still, innit?
14:08 Coke cono: that says "after committing..."
14:08 cono yup
14:08 Coke so that doesn't read like what I want.
14:09 donaldh joined #parrot
14:09 Andy joined #parrot
14:18 JimmyZ joined #parrot
14:20 Coke hurm. I think the problem was because when I did a 'git commit' earlier, I
14:20 Coke aborted out of the editor; after that, it looked like the commit was combined
14:20 Coke in the local git repo. Trying it again, being sure to enter a message after
14:20 Coke each 'git commit -a', it seems to work as expected.
14:22 quek left #parrot
14:23 dalek partcl: r568 | coke++ | trunk/README:
14:23 dalek partcl: Slight wording cleanup
14:23 dalek partcl: review: http://code.google.com/p/p​artcl/source/detail?r=568
14:23 dalek partcl: r569 | coke++ | trunk/runtime/builtin/string.pir:
14:23 dalek partcl: use hllmacros
14:23 dalek partcl: review: http://code.google.com/p/p​artcl/source/detail?r=569
14:34 Coke so, that's better.
14:34 Coke git++
14:40 theory joined #parrot
14:43 jimka joined #parrot
14:52 Psyche^ joined #parrot
14:57 MoC` joined #parrot
14:58 chromatic joined #parrot
15:09 quek joined #parrot
15:13 quek left #parrot
15:20 donaldh joined #parrot
15:31 satrac joined #parrot
15:34 satrac buildbot status
15:50 satrac joined #parrot
16:01 kj joined #parrot
16:03 nillo joined #parrot
16:16 moritz is there a #parrotsketch today?
16:17 pmichaud I probably won't be there.
16:17 pmichaud I guess I could post a report.
16:23 chromatic Reporting is good.
16:29 Coke ooh. packy has a perl script that digs through your git log, and runs git rebase -i with all the items not dcommitted, letting you reorg, squash, etc.
16:34 Patterner URL? :)
16:36 Tene Coke: Um, no, it really doesn't do that.  If your commits were all squashed together, you're doing something very very wrong.
16:37 Tene Coke: if you could tell me what you were doing to produce that behavior, it would help a log.
16:41 chromatic That poor, helpless log.
16:42 particle By BLAMMO!
16:42 gaurav joined #parrot
16:43 Tene >< typing fail
16:44 * particle yawns while waiting for search.cpan.org to load
16:44 Tene Coke: can you copy that section of your history?  or from .bash_history?
16:45 moritz whom can I ask to find out if a particular CLA already arrived (TPF, not parrot foundation)?
16:49 Coke moritz: I'd hit the contact us section on the TPF site... but allison might work.
16:50 moritz Coke: thanks
16:50 Coke tene: checking, but 1) it seems to be working now. and 2) I think it had to do with trying to abort out of a git commit.
16:51 Coke tene: do you have an account on feather?
16:56 Tene I do.
16:57 Coke enjoy. =-)
16:57 Coke thanks for looking; I'm not sure you'll find anything helpful there.
16:57 Tene Coke: if you bail out of the edit, it won't make a new commit.  So if you kept bailing out, you would have just kept adding to the same commit.
16:57 Coke tene: that's what I would have expected to happen, yes.
16:58 Coke so I probably did something else. whatever it was didn't happen with the next set of commits/dcommit I tgried.
17:06 packy joined #parrot
17:07 Coke packy, hey.
17:07 packy Hey, Will.
17:08 Coke I was picking up git-svn for partcl - there's a wiki page on the parrot trac site, wondering if you'd mind posting your rebase script there.
17:08 packy Sure!
17:08 Coke (might help those git-svn newbies clean things up before their dcommit.)
17:08 Coke tene's the one that's doing the docs so far, btw.
17:09 Coke https://trac.parrot.org/pa​rrot/wiki/git-svn-tutorial
17:10 dalek cardinal: 70c9913 | (Joeri Samson)++ | t/01-stmts.t:
17:10 dalek cardinal: Test gave the wrong result, fixed + added todo with appropriate issue number
17:10 dalek cardinal: Signed-off-by: Ted Reed <ted.reed@gmail.com>
17:10 dalek cardinal: review: http://github.com/cardinal/cardinal/commit​/70c9913412c940a26b43c2530eced49b9fede1d1
17:10 dalek cardinal: eec770a | (Joeri Samson)++ | t/11-slurpy.t:
17:11 dalek cardinal: Test used perlism .WHAT instead of .class, still fails though
17:11 dalek cardinal: Signed-off-by: Ted Reed <ted.reed@gmail.com>
17:11 dalek cardinal: review: http://github.com/cardinal/cardinal/commit​/eec770adbae39cd3c4017951a5aef34ccbb9a876
17:11 dalek cardinal: 9bd11c5 | (Joeri Samson)++ | t/integer/cmp.t:
17:11 dalek cardinal: Use true and false in test now that they are available
17:11 dalek cardinal: Also correctly grossly misleading use of the string 'true' as false
17:11 dalek cardinal: Signed-off-by: Ted Reed <ted.reed@gmail.com>
17:11 dalek cardinal: review: http://github.com/cardinal/cardinal/commit​/9bd11c5e45fa5d6bddf7770ee57017d7b10cd49b
17:14 Tene Shouldn't the wiki page that talks about the new #ps format be in the #ps topic?
17:14 Tene I fixed it!
17:15 Tene Um, should HLL devs also be reporting in #ps?
17:15 treed I'm just there to watch.
17:16 Tene NO!  YOU NEED TO REPORT!
17:16 Tene DO IT NOW!
17:16 treed I can if it's wanted.
17:17 * treed shrugs.
17:17 Tene I think it would be good.
17:18 dalek tracwiki: packy++ | gsquash attached to git-svn-tutorial
17:18 dalek tracwiki: script to automatically perform an interactive rebase on commits not dcommited to SVN
17:18 dalek tracwiki: https://trac.parrot.org/parrot/attachment/wi​ki/git-svn-tutorial/gsquash&amp;action=diff
17:19 treed I haven't done much in the last week, but I can discuss cardinal in the general sense.
17:19 joeri joined #parrot
17:20 Tene treed: Look at item 2 in the link in the topic of #ps.  Especially point out if there's anything in Parrot that you're blocking on.
17:20 treed "free tuits"?
17:20 treed Is that like round tuits?
17:21 nillo what's a tuit?
17:21 purl here, have a round tuit.
17:21 Tene Yes.
17:21 Tene If you have tuits of any other shape, feel free to report those as well, but we're mostly interested in the round kind.
17:22 treed As far as blocking, it's hard to say whether stuff I experience is Parrot breaking, or Cardinal being stupid.
17:22 treed Other than maybe the issue that you referred me to pmichaud about.
17:23 nillo nevermind
17:23 treed nillo: "When are you going to do X?" "When I get a round tuit."
17:24 nillo Yes, google knows all!  :)
17:27 payload joined #parrot
17:34 davidfetter joined #parrot
17:36 packy Ok, I've added my squashing script and a little tutorial on squashing.
17:36 dalek tracwiki: v4 | packy++ | git-svn-tutorial
17:36 dalek tracwiki: https://trac.parrot.org/parrot/wiki/git​-svn-tutorial?version=4&amp;action=diff
17:37 janus joined #parrot
17:37 packy I've got some info on branching I could add, but IME git branching is less collaborative when everybody's communicating through a SVN back end.
17:40 mokurai joined #parrot
17:43 Tene A bit. :)
17:43 PerlJam Tene++ for parrot IO
17:44 dalek tracwiki: v5 | packy++ | git-svn-tutorial
17:44 dalek tracwiki: https://trac.parrot.org/parrot/wiki/git​-svn-tutorial?version=5&amp;action=diff
17:59 Coke packy++
18:00 * nillo spews forth more ignorance...
18:00 nillo What's with the '++'?
18:00 dalek cardinal: c23a004 | treed++ | Rakefile:
18:00 dalek cardinal: Adjust what Rake tests use to determine if the parser's been changed.
18:00 dalek cardinal: review: http://github.com/cardinal/cardinal/commit​/c23a0047cd25b62e9f3b467a02b81f64780b506b
18:02 treed nillo: Increases karma.
18:03 treed One of the bots here tracks karma.
18:03 treed Unsure how to check it.
18:03 NotFound treed?
18:03 purl i guess treed is the guy I'm trying to con into working on cardinal for me. :)
18:03 NotFound karma treed
18:03 purl treed has karma of 23
18:04 nillo ok, thanks
18:04 treed Ah.
18:04 nillo karma nillo
18:04 purl nillo has neutral karma
18:04 treed purl: treed is the guy who's been conned into workingon cardinal for tene
18:04 purl treed: i haven't a clue
18:04 treed Hm.
18:04 NotFound purl: good bot, have a cookie
18:04 purl thanks NotFound :)
18:11 allison joined #parrot
18:18 jan joined #parrot
18:21 * davidfetter pictures allison doing ./configure; make visa; $EDITOR;./configure...
18:21 allison :)
18:22 preflex joined #parrot
18:24 hercynium joined #parrot
18:26 Hunger joined #parrot
18:30 pfig joined #parrot
18:41 GeJ Good morning everyone
18:42 treed 'lo
18:43 davidfetter mornin'
18:44 Hunger joined #parrot
18:52 cotto kj, how is pirc's test coverage?
18:52 kj cotto: not very good i think
18:52 kj not all the syntax is tested
18:53 kj basics should be tested i think
18:53 kj (from what i rmemeber)
18:53 chromatic We were going to move t/compilers/imcc to something else.
18:53 kj but i just found this week that the new "new" syntax, wiht using [ ] for types doesn't work
18:53 chromatic Less IMCC specific.
18:53 kj like, pf = new ['Packfile']
18:53 kj as it thinks the [ ] part is a key
18:53 cotto ok.  I'm thinking about that because a well-tested compiler is much easier to modify with confidence.
18:54 kj you're absolutely right in that
18:58 einstein joined #parrot
19:04 whiteknight I expect a lot of thread-related issues will be worked out during the AIO stuff
19:05 whiteknight since Im sure the one will use the other in some capacity
19:05 dalek tracwiki: v90 | kjs++ | WikiStart
19:05 dalek tracwiki: https://trac.parrot.org/parrot/wiki/​WikiStart?version=90&amp;action=diff
19:05 dalek tracwiki: v1 | kjs++ | PIRCDevelopment
19:05 dalek tracwiki: https://trac.parrot.org/parrot/wiki/PIR​CDevelopment?version=1&amp;action=diff
19:17 iblechbot joined #parrot
19:17 dalek cardinal: 57e210d | (Joeri Samson)++ | Rakefile:
19:17 dalek cardinal: Make parameters of two Rakefile constants
19:17 dalek cardinal: constants changed: ruby command used, and debug modus
19:17 dalek cardinal: review: http://github.com/cardinal/cardinal/commit​/57e210d1d5a4866d990443879a5fe5061541f5ce
19:17 dalek cardinal: 126a7e9 | (Joeri Samson)++ | t/file/dir.t:
19:18 dalek cardinal: Fix 'true?' to false in test, add failing tests for incorrect branch
19:18 dalek cardinal: review: http://github.com/cardinal/cardinal/commit​/126a7e9e6ec5094f0d98819873373b0b4d2298a1
19:20 donaldh joined #parrot
19:26 payload joined #parrot
19:27 gerd joined #parrot
19:31 gerd Hello Patrick
19:31 gerd are you listen?
19:33 moritz gerd: chances are that pmichaud is absorbed by YAPC::EU and related activities... maybe you should write him an e-mail
19:35 gerd Hallo Moritz, schön von Dir zu hören, ich weiß nicht, ob wir hier deutsch miteinander kommunizieren dürfen
19:35 moritz gerd: English is preferred here
19:36 moritz but of course you're free to /msg me
19:36 gerd My English is not good enough for ICCD
19:36 gerd My English is not good enough for IRC
19:37 gerd Hast Du interresse noch etwas für die Broschüre zu schreiben
19:38 gerd Ich hätte gerne ein zwei gute Kapitel über Perl 6 in der Broschüre damit es kein Ladenhüter wird
19:38 Andy ping literal
19:38 purl I can't find literal in the DNS.
19:40 gerd Hallo Moritz, gebe mir bitte eine Antwort auch wenn diese negativ sein sollte
19:40 moritz gerd: sorry, I answered by private message
19:41 moritz gerd: the answer is not "I'd love to, but I don't have enough time"
19:42 gerd Okay thank you, I understand it is difficult for me too.
19:42 moritz gerd: but if write something and need another review, I can do that
19:43 moritz that's usually much less work
19:43 gerd But another think there is a bug in the PGE of Parrot 1.4.0
19:44 Topic for #parrotis now http://www.parrot.org/ | Parrot 1.4.0 "Mundo Cani" Released! | For 1.5: Remove Deprecated Features | Planet Parrot http://planet.parrotcode.org/
19:46 gerd Bye
19:46 Coke cotto: there's a ticket to make the pir compiler switchable between imcc and pirc, so you could share a test suite.
19:47 chromatic We could move the IMCC test suite to something less IMCC-specific too.
19:47 dalek tracwiki: v6 | packy++ | git-svn-tutorial
19:47 dalek tracwiki: https://trac.parrot.org/parrot/wiki/git​-svn-tutorial?version=6&amp;action=diff
19:47 cotto Coke, good idea.  I'd expect it to fail a lot of tests, but we could at least confirm a lack of new test failures.
19:47 Coke you could even update the tests to todo based on selected pir compiler.
19:47 Coke (ala the perl6 suite/rakudo)
19:48 cotto Mmmmm.  Fudge.
19:48 chromatic There are IMCC-specific errors in there we could improve.
19:48 kj chromatic: regarding pirc dev wiki page; it's there but info needs to be filled in. will do later. dinner time here + visitors.
19:49 chromatic Thanks, kj.
19:50 Andy kj?
19:50 purl kj is Klaas-Jan Stol or mailto:parrotcode@gmail.com
19:51 Andy Didn't think it was Kirsten Jones.
19:51 NotFound whiteknight: Have you seen the last patch in TT #895 ?
19:51 whiteknight no
19:52 NotFound Maybe it has enough pmc to make some meaningful benchmarking
19:52 * Coke misses parrotsketch due to a lovely trip to a park on the hudson river with his kids. (one of whom has a broken arm.)
19:53 * Tene attended parrotsketch at the office in the company of his coworkers, one of whom has a broken finger.
19:53 * whiteknight attended from work where he has a broken spirit
19:53 particle which park has a broken arm?
19:54 Andy You know what/
19:54 Andy I don't mind tar's goofy parameters.
19:54 Andy And I'm not ashamed to say it.
19:54 particle tar stfu
19:54 Coke you tar^Wgoof ball.
19:55 Tene at least it's better than cpio
19:55 Andy No lie, man, I was always an R2-D2 fan.
19:55 chromatic They're both better than the PAX SOLARI
20:02 satrac joined #parrot
20:19 jdv79 Coke: where?
20:50 dalek tracwiki: v7 | japhb++ | Deprecation
20:50 dalek tracwiki: https://trac.parrot.org/parrot/wiki/D​eprecation?version=7&amp;action=diff
20:50 NotFound chromatic: I've tested the change to put the attr size new member at the end of the vtable struct, is pretty easy.
20:51 chromatic Wherever it makes the most sense is fine with me.
20:51 Coke jdv79: ?
20:52 Coke jdv79?
20:52 purl jdv79 is a purl hater
20:53 NotFound It doesn't more or less sense to me in any way. I think that several macros related to relative position and size of the vtable slots are completely unused.
20:53 chromatic You're probably right.
20:53 dalek parrot: r40398 | japhb++ | trunk (3 files):
20:53 dalek parrot: [library/NCI] remove deprecated call_toolkit_init.pir
20:53 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40398/
20:54 NotFound japhb: there was a mention of that file in the pod of some file, maybe the opengl lib. Has that been fixed?
20:55 japhb NotFound: checking
20:55 cotto win: http://www.catonmat.net/blo​g/vim-plugins-surround-vim/
20:56 NotFound runtime/parrot/library/OpenGL.pir
20:56 japhb NotFound: good catch, fixing
20:58 japhb NotFound: fixed, thanks.
21:00 dalek parrot: r40399 | japhb++ | trunk/runtime/parrot/library/OpenGL.pir:
21:00 dalek parrot: [library] Fix POD referring to removed NCI/call_toolkit_init.pbc
21:00 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40399/
21:02 joeri left #parrot
21:03 japhb OK, my one deprecated feature has been removed, as per 1.5 release goal.  Now back to standard library discussion, once allison weighs in ...
21:03 dalek TT #753 closed by japhb++: Deprecate NCI/call_toolkit_init.* in favor of NCI/Utils.*
21:05 Whiteknight joined #parrot
21:23 * Coke lobs a segfault over the wall to... cotto.
21:23 japhb Another implementation of Scorched Earth?
21:25 cotto hot potato
21:26 dalek TT #902 created by coke++: segfault with macro
21:45 Tene japhb: any idea what the deprecation policy is for changing stuff like MD5.pir ?
21:46 japhb Tene: looking
21:49 japhb Wow, MD5.pir is ancient!
21:49 Tene hehe
21:49 japhb r7673 | leo | 2005-03-22
21:53 moritz and touched only 20 times since then
21:53 japhb Tene: It looks to me that it would have to go through a deprecation cycle before the old namespace could be killed off, though we could probably refactor and just have the old namespace alias stuff in the new namespace until deprecation point passes, then kill the aliases.
21:54 Tene kk
21:54 Tene we need to write a guide for PIR library standards
21:54 Tene s/we/I/ probably
21:54 Tene I might do that tonight, I guess.
21:55 japhb Tene: Good on ya!
21:58 chromatic Hm, we should be able to remove interp's binop_mmd_funcs.
22:00 cotto joined #parrot
22:00 davidfetter chromatic, parrot foundation question
22:00 chromatic Go ahead.
22:01 davidfetter given my awful lack of C skills, i'd like to do something to help get "sandboxing" in. i also have limited funds
22:01 bacek joined #parrot
22:01 davidfetter what i do have is a scary pointy-haired ability to inspire people to write code if i can get them something for it
22:02 Tene I've got an empty bottle I can put up for it.
22:02 davidfetter so what's to do about getting parrot foundation funds?
22:02 Tene and a plastic fork (slightly used).
22:02 chromatic Funds *from* the PaFo or funds *to* the PaFo?
22:02 davidfetter Tene, these are intensely helpful things when sandboxes are concerned
22:02 chromatic Choose your preposition wisely.
22:02 davidfetter from
22:02 chromatic Unfortunately, first PaFo needs *to* get funds.
22:03 chromatic However, sandboxing could use a really good set of use cases.
22:03 chromatic If you can help drive a specification, we can divvy it up into tasks.
22:13 davidfetter i'm not quite sure i get what you mean by use cases. i guess i figured those were pretty obvious: web browser, mobile device, execution environments (postgresql, e.g.) that can't have attached machines just arbitrarily doing stuff that they control
22:13 chromatic We need to figure out what's allowed and what's forbidden.
22:13 chromatic What will people do with them?
22:14 chromatic What should be allowed and where and what should be forbidden?
22:14 chromatic What resources do they have?
22:14 Tene how do these vary between your use cases?
22:15 Tene how should the embedding program be able to choose what's available?
22:15 chromatic Or is it someone else's responsibility?
22:17 davidfetter thanks!
22:18 chromatic Crypto?
22:18 purl Cryptography is about making the cost of retrieving information higher than the value of the information itself. or not necessarily the value, but perhaps the computational projected power (modulo advances)
22:20 davidfetter hrm. i hadn't really thought too much about code obfuscation as part of a sandbox
22:20 Whiteknight chromatic: making the PObj allocator lazy is turning out to be significantly less easy then the little fixed-size allocator was
22:20 davidfetter or as part of anything else, really. it's pretty much a misfeature
22:21 chromatic How so?
22:21 eternaleye davidfetter: crypto != obfu
22:22 eternaleye davidfetter: Crypto is stuff like using digital signature schemes to manage permissions and access controls.
22:26 MoC joined #parrot
22:32 cognominal joined #parrot
22:38 particle joined #parrot
22:38 rg1 joined #parrot
22:45 davidfetter eternaleye, so more along the lines of secure hashing than crypto, then?
22:46 chromatic Or signing.
22:46 purl signing is probably much more important than encryption in DrMath's life
23:00 bacek joined #parrot
23:00 bacek Good morning
23:00 purl And good moroning to you, bacek.
23:06 tetragon joined #parrot
23:10 GeJ G'Day bacek
23:10 bacek G'day GeJ, howizgoin?
23:13 GeJ Well, nightmare-ish. Trying to get "inspiration" from a barely-competent-monkey-coded C# app to make a bridge between a Win32 app to a barely-competent-monkey-coded PHP site.
23:14 bacek yak...
23:14 GeJ The only good thing about this mess is that I was able to pick the implementation language.
23:14 bacek Which version of C#?
23:15 eternaleye davidfetter: 'crypto' is a superset of (encryption( public & private key), signing, and hashing). It can also include such things as e-cash algorithms. None of the things fitting under the 'crypto' header have anything to do with code obfu - that's more a 'security by obscurity' thing (and security by obscurity is largely considered worthless)
23:16 * davidfetter drafts eternaleye do do the crypto part of the sandbox spec
23:16 GeJ bacek: No idea. I'm not fluent enough in C# to tell.
23:17 eternaleye davidfetter: I don't know crypto well enough to code it - plus, the first rule of crypto is 'don't roll your own'
23:18 davidfetter eternaleye, i'm not talking about coding it. specifying it :)
23:18 japhb eternaleye, davidfetter: For the actual crypto primitives, I have suggested we rely on a common library such as OpenSSL.  But that still leaves the problem of using those primitives properly ....
23:19 eternaleye davidfetter: For sandboxing, http://en.wikipedia.org/wik​i/Capability-based_security is probably a good place to start - separate out functionality into capabilities (potentially a tree - like, IO might be a capability, with subcaps for 'network' 'file' and 'IPC')
23:20 eternaleye davidfetter: 'don't roll your own' usually applies to both the spec and the implementation - if you roll your own spec, you are _forced_ to roll your own implementation
23:20 japhb And then there's the question of being up to date with current events in the crypto world (SHA-128 is *stronger* than SHA-256, because the latter has a horrid key schedule.  But most people would use SHA-256 because of the rule of thumb to use more bits for more security ...)
23:20 donaldh joined #parrot
23:21 eternaleye japhb: No worries, SHA-3 should be done soon enough for us! ;P
23:21 japhb heh
23:22 davidfetter eternaleye, perhaps "spec" is too, um, specific. there needs to be some kind of target
23:22 * japhb is hoping Schneier's chin ... er, I mean, Skein ... wins.
23:22 bacek $dayjob time.
23:22 davidfetter signed apps, auth of various kind...
23:22 bacek see you
23:22 davidfetter l8r bacek
23:23 davidfetter so, "there should be a facility for signing apps,"
23:23 chromatic Yes.
23:23 davidfetter or "there needs to be a capability-based system for sandboxing"
23:24 eternaleye japhb: Keccac and Grøstl are nice (though, if the latter becomes SHA-3, people with US keyboards will weep)
23:24 japhb heh
23:24 eternaleye japhb: I agree though, skein is really cool
23:25 eternaleye I'd suggest that the 'signing apps' thing be web-of-trust based - it fits much better with Open-Source, decentralized mechanics than a CA system does. Although, I may be biased due to it fitting really well with :auth<CPAN:foobar>
23:26 eternaleye japhb: I assume from the 'chin' comment you've seen the Bruce Schneier Facts site? ;D
23:27 japhb nodnod
23:27 japhb And seriously, I'd put much more faith in his chin than my crypto skills when it comes to protecting my data. ;-)
23:29 eternaleye Well, the first thing for a caps-based security system would probably be to set up a really rough outline blocking potentially unsafe stuff - maybe a list of PMCs that are 'known safe' and the rest are considered insecure by default? after that we could classify the type of control they give the user, classify the PMCs, and then classify the individual VTABLE methods they have. Default-deny is probably the best way to go about
23:29 eternaleye it
23:31 eternaleye After that, maybe we can implementsome form of tainting system. Together, those would be pretty powerful - block classes of functionality, and ensure non-manipulable input to potentially insecure code
23:36 jtal joined #parrot
23:37 jtal can someone tell me, in PAST::Op.new()... pdd 26 says sub in :name will be called
23:37 jtal I'm wondering where that subroutine must be defined?
23:38 treed In the global namespace?
23:38 treed I make mine in src/builtins
23:39 patspam joined #parrot
23:39 jtal ahh
23:39 treed Defined in PIR.
23:39 jtal has to be pir?
23:39 treed Or something that can compile to PIR, I suppose.
23:40 jtal thanks
23:40 treed $bridi.push(PAST::Op.new( :name("zo'e"), :pasttype('call') ));
23:40 treed Is how I call in mekso.
23:40 treed .sub "zo'e" $P0 = new 'Undef' .return ($P0)
23:41 treed .end
23:41 treed Then that's the PIR.
23:41 jtal the example say is in say.pir
23:41 jtal does it matter?
23:41 jtal lojban huh?
23:41 treed Nope, as long as it all ends up in the same .pbc at the end.
23:41 treed Yeah.
23:42 treed mekso is a language I made using the math portions of Lojban
23:42 treed Before I got involved with cardinal.
23:43 jtal cool I will peak at the code for both :>
23:43 jtal I'll peek too
23:44 jtal why do people want python, ruby, etc on parrot?
23:47 eternaleye jtal: So they can share libraries with each other, mainly
23:47 jtal ah
23:47 eternaleye rakudo perl6 can do stuff like use Rails:from<cardinal>
23:47 eternaleye (or at least, is planned to)
23:48 GeJ or, say an application embeds parrot, one would be able to extend such application using his language of choice.
23:49 jtal I see
23:49 treed It can already... nevermind.
23:49 GeJ did I say something wrong?
23:50 treed maybe he accidently clicked the x
23:50 treed or had to run
23:51 GeJ in regard to chromatic's latest post, I was wondering : 1) Is vtable.tbl the right place to list all the vtable functions? and 2) Does http://docs.parrot.org/parrot/latest/html/pmc.html list all the Core PMCs?

| Channels | #parrot index | Today | | Search | Google Search | Plain-Text | summary

Parrot | source cross referenced