Camelia, the Perl 6 bug

IRC log for #parrot, 2012-05-25

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:09 kid51 joined #parrot
00:24 dalek nqp/qbootstrap: f8878e7 | jnthn++ | src/ops/nqp.ops:
00:24 dalek nqp/qbootstrap: Fix an off-by-1.
00:24 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/f8878e7e44
00:24 dalek nqp/qbootstrap: 9e36c01 | jnthn++ | / (3 files):
00:24 dalek nqp/qbootstrap: Start loading the new regex lib so userspace code can do things like regex interpolation. Add a temporary flag for during the build - can go away once the bootstrap update is done. Gets another test file largely passing.
00:24 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/9e36c01ab6
00:24 dalek nqp/qbootstrap: 4b39917 | jnthn++ | t/nqp/50-regex.t:
00:24 dalek nqp/qbootstrap: Update a test for new cursor object name. All pass, getting us down to a handful of failures in a couple of test files, probably with one root cause.
00:24 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/4b39917370
00:39 dalek nqp/qbootstrap: eb98cba | jnthn++ | tools/build/Makefile.in:
00:39 dalek nqp/qbootstrap: Stop building the now-unrequired PIR-based regex engine in stage 2, just to be sure it's not required any more.
00:39 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/eb98cba35b
00:40 kurahaupo joined #parrot
01:00 dalek Heuristic branch merge: pushed 368 commits to rakudo/str-numeric by japhb
01:25 dalek parrot/whiteknight/io_cleanup1: 257784b | Whiteknight++ | / (9 files):
01:25 dalek parrot/whiteknight/io_cleanup1: Start implementing per-type vtables. Add two new files, one for pipes and one for user-defined types. Start cannibalizing existing IO api routines to fill in the vtables.
01:25 dalek parrot/whiteknight/io_cleanup1: review: https://github.com/parrot/parrot/commit/257784b58c
01:37 kid51 joined #parrot
02:02 nopaste "kid51" at 70.85.31.226 pasted "make testr error: t/compilers/imcc/syn/clash.t" (26 lines) at http://nopaste.snit.ch/142519
02:03 kid51 It's very uncommon for us to get a failure in just one of the alternate runcore tests.
02:03 kid51 Can anyone take a look?
02:04 kid51 This *probably* emerged since the release.
02:20 alvis cotto: I need some guidance. Our pdds comport with the standards set out in 'docs/pdds/pdd_template.pod', but 'pdd_template' does not comport with the requirements of 't/codingstd/pod_description.t'.
02:20 alvis cotto: Specifically, 'pdd_template.pod' tells folks to use '=head2 Description' and 'pod_description.t' is looking for a '=head1 DESCRIPTION\n\nParagraph...\n' (because it pulls from 'Pod::Simple::PullParser's 'get_description' method'). How do you want me to resolve this? Update 'pdd_template.pod' to use '=head1' command paragraphs? Or ... other?
02:20 alvis cotto: Please note: Updating 'pdd_template.pod' will also require me to update the '=head2' command paragraphs to '=head1's, which I'm willing to do. I just need a go'ahead from you for a change like this
02:22 alvis cotto: Update the command paragragphs for *all* of the pdds, that is.
02:30 cotto alvis, I don't know if there's a good reason to care which type of section header the description is found in.  If you can make the test test that it exists without caring about =head1 vs =head2, that'd be a good solution.
02:35 alvis That'll mean not using 'Pod::Simple::PullParser's 'get_description' method and substituting our own test. You're okay with that then?
02:36 alvis Or, alternatively, subclassing 'Pod::Simple::PullParser' to use a different (our own) method. Whichever you prefer.
02:40 cotto hmmm
02:43 cotto is there an easy way to get all the section headers and check that something like "description" is in the list?
02:45 alvis Sure. There's no reason why we must use Pod::Simple::PullParser's method. It's just, apparently, what we've done. Either way wfm.
02:46 kid51 msg whiteknight 0083dc25e244 (Wed May 16) appears to be cause of failure of 'perl t/harness -r t/compilers/imcc/syn/clash.t'
02:46 aloha OK. I'll deliver the message.
02:46 japhb joined #parrot
02:48 cotto ok.  Thanks for looking into that issue.
02:48 alvis cotto: I'll look at it more closely. Come up with an option or two and, then, if the solution isn't obvious, get back with you for your decision.
02:49 cotto alvis++
03:15 alester_ joined #parrot
03:46 contingencyplan joined #parrot
04:12 kurahaupo joined #parrot
04:28 nbrown joined #parrot
04:30 alvis cotto: What do you think about excluding pdds from 't/codingstd/pod_description.t' because 't/codingstd/pdd_format.t' already checks whether or not the pdds comport with the specifications laid out in 'docs/pdds/pdd_template.pod', to include a '=head2 Description' command paragraph?
04:39 fperrad joined #parrot
04:41 cotto alvis, so pod_description doesn't add anything useful?
04:42 alvis cotto: Not as to the pdds. 'pdd_format.t' is the main test, and it tests to ensure the pdds comport with what's laid down in 'pdd_template.pod'.
04:43 alvis 'pdd_template.pod' specifies a '=head2 Description' command paragraph and 'pdd_format.t' tests for that. If it's not there, it fails.
04:46 cotto ah.  excepting the pdds is great
04:46 cotto sorry.  trying to do 3 things at once
04:46 cotto as with most of today
04:47 alvis cotto: I certainly understand that! Ok, I'll except them and include a very specific note about why we're doing so. Thanks.
05:07 dalek Heuristic branch merge: pushed 16 commits to parrot/ayardley/pod_DESCRIPTIONS by ayardley
07:08 brrt joined #parrot
08:01 dalek m1: daf91cd | (kj, kjs)++ | m1_instr.c:
08:01 dalek m1: add write instructions
08:01 dalek m1: review: https://github.com/parrot/m1/commit/daf91cda2c
08:04 dalek m1: 825cb31 | (kj, kjs)++ | m1_gencode.c:
08:04 dalek m1: some fixes to get things running
08:04 dalek m1: review: https://github.com/parrot/m1/commit/825cb31caf
08:04 dalek m1: f4ee116 | (kj, kjs)++ | m1_ast.h:
08:04 dalek m1: add a symbol table to m1_chunk
08:05 dalek m1: review: https://github.com/parrot/m1/commit/f4ee116131
08:18 dalek m1: 7f1b9c2 | (kj, kjs)++ | m1_gencode.c:
08:18 dalek m1: fix code generator for const expressions
08:18 dalek m1: review: https://github.com/parrot/m1/commit/7f1b9c223f
08:22 lucian joined #parrot
09:04 dalek rakudo/str-numeric: 1143b27 | moritz++ | src/core/Str.pm:
09:04 dalek rakudo/str-numeric: make Str.Numeric throw typed exceptions
09:04 dalek rakudo/str-numeric: review: https://github.com/rakudo/rakudo/commit/1143b27ed9
09:04 diginet joined #parrot
09:08 diginet I know this is kind of a nebulous question, but I've been wanting to experiment with designing my own language for fun and I was wondering what the state of the libraries for languages targetted to parrot is?  I would be looking for things like SDL, OpenGL, etc
09:09 brrt dunno, but we do have NCI
09:09 brrt http://docs.parrot.org/parrot/devel/html/d​ocs/pdds/draft/pdd16_native_call.pod.html
09:10 diginet what is nci?
09:10 brrt native call interface
09:11 brrt a way for parrot to call arbitray routines from (dynamic) libraries
09:11 brrt not entirely arbitrary, but mostly anyway
09:11 diginet Ah okay
09:12 brrt so yeah, if it has a C api and a dynamic library, chances are you can use it :-)
09:12 diginet Is perl 5 available on parrot? If so, would that mean I could use CPAN code with my language?
09:13 brrt not.... really
09:13 Timbus and down the rabbit hole you go
09:15 diginet gotcha
09:15 Timbus simply embed libperl into your language and make it available as some custom parrot opcodes :v
09:15 nine Really...how hard can it be to embed a Perl interpreter into Parrot? :)
09:15 tadzik well, blizkost did work at some point in time
09:15 moritz diginet: there's a parrot <-> perl 5 bridge called 'blizkost', but I suspect it has bitrotted
09:15 diginet moritz, thanks, Ill check it out
09:18 brrt left #parrot
09:18 brrt joined #parrot
09:21 kjs joined #parrot
09:31 dalek m1: 55e5daf | (kj, kjs)++ | m1_stack. (2 files):
09:31 dalek m1: add stack module. needs testing
09:31 dalek m1: review: https://github.com/parrot/m1/commit/55e5dafda7
09:33 dalek Heuristic branch merge: pushed 19 commits to rakudo/nom by moritz
09:33 dalek m1: 3af46b0 | (kj, kjs)++ | Makefile:
09:33 dalek m1: add stack to makefile
09:33 dalek m1: review: https://github.com/parrot/m1/commit/3af46b0b8d
09:36 diginet would nci be suitable for calling Tk?
09:36 dalek m1: bc4fa88 | (kj, kjs)++ | m1_compiler.h:
09:36 dalek m1: add stack to compiler and remove a magic number
09:36 dalek m1: review: https://github.com/parrot/m1/commit/bc4fa88604
09:40 brrt i have no knowledge of tk
09:41 moritz diginet: if the NCI supports callbacks, yes
09:46 dalek m1: a209b40 | (kj, kjs)++ | m1_gencode.c:
09:46 dalek m1: handle types in binexpr
09:46 dalek m1: review: https://github.com/parrot/m1/commit/a209b401ad
09:50 brrt NCI does do callbacks
10:04 fperrad joined #parrot
10:12 dalek nqp/qbootstrap: 2c90c5d | moritz++ | src/QHLL/CommandLine.pm:
10:12 dalek nqp/qbootstrap: copy changes to src/HLL/ over to src/QHLL
10:12 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/2c90c5da82
10:40 dalek m1: 80917e7 | (kj, kjs)++ | m1_gencode.c:
10:40 dalek m1: implement break statement
10:40 dalek m1: review: https://github.com/parrot/m1/commit/80917e7350
11:04 brrt left #parrot
11:22 kid51 joined #parrot
11:37 dalek nqp: 64c1b3c | moritz++ | src/HLL/Compiler.pm:
11:37 dalek nqp: [HLL::Compiler] expose the program name to the user
11:38 dalek nqp: review: https://github.com/perl6/nqp/commit/64c1b3c96d
11:39 dalek rakudo/nom: 5274a37 | moritz++ | / (2 files):
11:39 dalek rakudo/nom: fix $*PROGRAM_NAME for one-liners
11:39 dalek rakudo/nom:
11:39 dalek rakudo/nom: Closes RT #113078
11:39 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5274a376c6
11:54 dalek nqp/qbootstrap: f135d3f | jnthn++ | tools/build/Makefile.in:
11:54 dalek nqp/qbootstrap: Fix up make install for qbootstrap.
11:54 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/f135d3f384
12:07 whiteknight joined #parrot
12:07 whiteknight good morning, #parrot
12:16 JimmyZ joined #parrot
12:19 Coke (embed perl5 in parrot) also check out the dead horse "ponie"
12:20 moritz oh, that one is so dead that it's hard to find reliable information on
12:20 moritz I think I looked for the source code some years ago, and only found links to expired domains
12:20 brrt joined #parrot
12:24 woosley joined #parrot
12:26 kjs joined #parrot
12:42 dalek Rosella/separate_compile: 2ac28bf | Whiteknight++ | s (9 files):
12:42 dalek Rosella/separate_compile: Quick experiment to break up compilation of individual .winxed files and use pbc_merge to combine them (with correct annotations et al.). Does not work. pbc_merge fails trying to load sys_ops dyoplib
12:42 dalek Rosella/separate_compile: review: https://github.com/Whiteknig​ht/Rosella/commit/2ac28bf93e
13:00 kjs whiteknight: howdy
13:01 kjs how did you implement $include in winxed?
13:01 whiteknight hello kjs
13:01 kjs the $include statement or directive
13:01 kjs (looking for candidate solutions for m1)
13:04 dalek nqp/qbootstrap: 19e3d85 | jnthn++ | tools/build/Makefile.in:
13:04 dalek nqp/qbootstrap: Update bootstrap-files target.
13:04 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/19e3d859ca
13:04 dalek nqp/qbootstrap: 127134a | jnthn++ | src/NQPQ/Actions.pm:
13:04 dalek nqp/qbootstrap: Move loading of NQPP6QRegex within --no-regex-lib guard.
13:04 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/127134aa3e
13:04 dalek nqp/qbootstrap: d559989 | jnthn++ | src/how/NQPClassHOW.pm:
13:04 dalek nqp/qbootstrap: Temporarily change the way we do NFA caching so we don't end up with SC refs between levels of the bootstrap.
13:04 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/d55998900b
13:06 PacoAir joined #parrot
13:07 whiteknight kjs: That was NotFound. I think it's just basic text inclusion like the #define from C
13:07 Psyche^ joined #parrot
13:08 kjs ok, thanks.
13:13 fperrad joined #parrot
13:27 JimmyZ_ joined #parrot
13:51 dalek m1: 579e0c7 | (kj, kjs)++ | m1 (2 files):
13:51 dalek m1: refactor; main in separate file
13:51 dalek m1: review: https://github.com/parrot/m1/commit/579e0c7136
13:51 dalek m1: 672d6cc | (kj, kjs)++ | m1_ (2 files):
13:51 dalek m1: various improvements
13:51 dalek m1: review: https://github.com/parrot/m1/commit/672d6cc850
13:51 dalek m1: 9bb3d18 | (kj, kjs)++ | Makefile:
13:51 dalek m1: update makefile
13:51 dalek m1: review: https://github.com/parrot/m1/commit/9bb3d18ea1
13:52 dalek m1: 9d13d9f | (kj, kjs)++ | m1_gencode.c:
13:52 dalek m1: updates
13:52 dalek m1: review: https://github.com/parrot/m1/commit/9d13d9faa6
14:04 JimmyZ kjs++
14:05 Coke karma kj?
14:05 aloha kj has karma of 0.
14:05 Coke karma kjs?
14:05 aloha kjs has karma of 8.
14:05 Coke karam (kj, kjs)
14:05 Coke karma (kj, kjs)
14:05 aloha (kj, kjs) has karma of 0.
14:06 moritz karma kj, kjs
14:06 aloha kj, kjs has karma of 0.
14:09 tadzik where did all this karma go?
14:09 brrt karma brrt
14:09 aloha brrt has karma of 6.
14:09 whiteknight aloha: account for yourself
14:10 Coke karma coke?
14:10 aloha coke has karma of 593.
14:10 whiteknight karma Coke
14:10 aloha Coke has karma of 593.
14:10 whiteknight okay, it's case- and questionmark-insensitive
14:16 kjs true karma is when you do it without expectations :-)
14:17 whiteknight I keep telling people, get to 10,000 karma and you get a free donut
14:17 whiteknight of course, donuts come in packs of 6, so you need at least 60,000 to collect
14:17 kjs :-)
14:18 whiteknight but still, that's not a bad deal.
14:18 kjs it's the journey, not the donut.
14:18 whiteknight yes, and that would be one epic journy
14:19 dalek winxed: 5a54311 | NotFound++ | winxedst1.winxed:
14:19 dalek winxed: don't use namespaces in stage 1 compiler
14:19 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/5a543115e2
14:19 dalek winxed: 382ebb9 | NotFound++ | winxedst0.cpp:
14:19 dalek winxed: drop namespace support from stage 0
14:19 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/382ebb901c
14:19 dalek winxed: 3527a1e | NotFound++ | winxedst0.cpp:
14:19 dalek winxed: drop some remanants of namespace support in stage 0
14:19 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/3527a1e76c
14:19 dalek winxed: 24c1ee2 | NotFound++ | winxedst0.cpp:
14:19 dalek winxed: drop a few optiizations from stage 0
14:19 dalek winxed: and delete old commented-out debug statements
14:19 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/24c1ee2cca
14:19 dalek winxed: 65668f8 | NotFound++ | winxedst (2 files):
14:19 dalek winxed: drop operator '%' from stage 0
14:19 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/65668f8da0
14:32 dalek winxed: a152df6 | NotFound++ | winxedst (2 files):
14:32 dalek winxed: delete some unused variables
14:32 dalek winxed: no functional changes
14:32 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/a152df6f15
14:49 crab2313 joined #parrot
15:09 dmalcolm joined #parrot
15:10 dalek winxed: 957bb86 | NotFound++ | winxedst2.winxed:
15:10 dalek winxed: improve OpEqualExpr optimization
15:10 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/957bb866b2
15:10 dalek m1: 1cd1da7 | (kj, kjs)++ | m1. (2 files):
15:10 dalek m1: add boolean as a type and reclassify bool expr
15:10 dalek m1: review: https://github.com/parrot/m1/commit/1cd1da7c60
15:21 brrt left #parrot
15:26 dalek winxed: 339ed0a | NotFound++ | winxedst1.winxed:
15:26 dalek winxed: drop operator '%%' from stage 1
15:26 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/339ed0a16c
15:27 cotto ~~
15:33 whiteknight hello cotto
15:35 plobsing joined #parrot
15:38 dalek winxed: 74cff55 | NotFound++ | winxedst1.winxed:
15:38 dalek winxed: drop operators '*=', '/=' and '%=' from stage 1
15:38 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/74cff55715
15:38 whiteknight NotFound++ # Slash and burn
15:47 kjs joined #parrot
15:57 dalek winxed: 9f5c263 | NotFound++ | winxedst1.winxed:
15:57 dalek winxed: backport minor changes and fixes in string quoting to stage 1
15:57 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/9f5c263ca3
16:01 kurahaupo joined #parrot
16:09 dalek winxed: 182fb42 | NotFound++ | winxedst1.winxed:
16:09 dalek winxed: drop tailcall optimization from stage 1
16:09 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/182fb4266d
16:21 dalek parrot: 18d0f30 | jkeenan++ | frontend/parrot2/prt0.pir:
16:21 dalek parrot: Update copyright to 2012.
16:21 dalek parrot: review: https://github.com/parrot/parrot/commit/18d0f30c31
16:28 kurahaupo joined #parrot
16:29 woosley left #parrot
16:48 kjs joined #parrot
16:55 kjs joined #parrot
17:15 dalek winxed: d15e66f | NotFound++ | winxedst2.winxed:
17:15 dalek winxed: simplify parsing of numeric literals
17:15 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/d15e66fd7b
17:17 dalek nqp/qbootstrap: 5b5063b | jnthn++ | src/PASTRegex.pir:
17:17 dalek nqp/qbootstrap: PASTRegex module needs to take care of exporting PAST namespace now that NQPRegex is going away.
17:17 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/5b5063bc99
17:17 dalek nqp/qbootstrap: 191ac25 | jnthn++ | src/NQPQ/Compiler.pm:
17:17 dalek nqp/qbootstrap: Be sure that we still always have the PAST stuff available for the moment.
17:17 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/191ac25416
17:17 dalek nqp/qbootstrap: 30c0341 | jnthn++ | src/QRegex/NFA.nqp:
17:17 dalek nqp/qbootstrap: Refactor/harden the rulename existence check in mergesubrules.
17:17 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/30c03410f1
17:17 dalek nqp/qbootstrap: 49ef826 | jnthn++ | src/NQPQ/Grammar.pm:
17:17 dalek nqp/qbootstrap: Workaround for <?{ ... }> parsing issue; should be able to clear this up post-bootstrap, when only the new NFA implementation of LTM need care. This gets all tests passing in t/nqp again.
17:17 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/49ef826bcb
17:31 dalek nqp/qbootstrap: d18b0c4 | jnthn++ | / (11 files):
17:31 dalek nqp/qbootstrap: Update the bootstrap, using the QRegex engine. This eliminates the dependency on the old PIR-based regex engine.
17:31 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/d18b0c40ec
17:31 dalek nqp/qbootstrap: 4fd22b2 | jnthn++ | t/nqp/29-make.t:
17:31 dalek nqp/qbootstrap: Update a test that used the old regex engine's Match object.
17:31 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/4fd22b2648
17:31 dalek nqp/qbootstrap: 5a14467 | jnthn++ | src/stage0/ (8 files):
17:31 dalek nqp/qbootstrap: Go around the bootstrap loop once more, to (hopefully) fully eliminate mentions of the old NQPRegex library. Things work, aside from a regex interpolation issue that needs looking in to (and that was broken last time around too).
17:31 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/5a14467201
17:48 dalek nqp/qbootstrap: 4b5e511 | jnthn++ | tools/build/Makefile.in:
17:48 dalek nqp/qbootstrap: Start to clear up the Makefile, removing things we no longer use.
17:48 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/4b5e511349
17:48 dalek nqp/qbootstrap: 2fb39d8 | jnthn++ | src/Regex (10 files):
17:48 dalek nqp/qbootstrap: Remove most of the old Regex engine; a constants.pir is still referenced, but everything else goes.
17:48 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/2fb39d86d1
17:48 dalek nqp/qbootstrap: 1fa3e21 | jnthn++ | / (4 files):
17:48 dalek nqp/qbootstrap: Remove the old PIR-based regex compiler.
17:48 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/1fa3e21b2a
17:54 PacoAir joined #parrot
17:57 dalek nqp/qbootstrap: fea45a0 | jnthn++ | / (9 files):
17:57 dalek nqp/qbootstrap: Collapse QHLL back into HLL.
17:57 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/fea45a0b23
17:58 dalek nqp/qbootstrap: a57eda0 | jnthn++ | / (9 files):
17:58 dalek nqp/qbootstrap: Collapse NQPQ back into NQP.
17:58 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/a57eda0a6b
17:58 lucian joined #parrot
17:58 dalek winxed: f7d57a1 | NotFound++ | winxedst0.cpp:
17:58 dalek winxed: minor cleanup of FunctionParameter, no functional changes
17:58 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/f7d57a1cf7
18:00 dalek rakudo/world-rethrow: f211159 | moritz++ | src/Perl6/World.pm:
18:00 dalek rakudo/world-rethrow: [World] refactor exception handling and rethrowing into a separate method
18:00 dalek rakudo/world-rethrow: review: https://github.com/rakudo/rakudo/commit/f211159f15
18:00 dalek rakudo/world-rethrow: 6d6e154 | moritz++ | src/Perl6/World.pm:
18:00 dalek rakudo/world-rethrow: oops, fix method name
18:00 dalek rakudo/world-rethrow: review: https://github.com/rakudo/rakudo/commit/6d6e154165
18:05 contingencyplan joined #parrot
18:07 dalek rakudo/qbootstrap: 436e5de | jnthn++ | src/Perl6/Pod.pm:
18:07 dalek rakudo/qbootstrap: Update Pod.pm to new sep syntax. Now NQP on qbootstrap can compile it.
18:08 dalek rakudo/qbootstrap: review: https://github.com/rakudo/rakudo/commit/436e5dedce
18:14 zby_home joined #parrot
18:15 dalek rakudo/qbootstrap: a4ff26a | jnthn++ | src/Perl6/Grammar.pm:
18:15 dalek rakudo/qbootstrap: Load the QRegex version of P6Regex. Now we at least start compiling Grammar.pm.
18:15 dalek rakudo/qbootstrap: review: https://github.com/rakudo/rakudo/commit/a4ff26aa23
18:15 dalek rakudo/qbootstrap: 2fabe67 | jnthn++ | src/Perl6/Grammar.pm:
18:15 dalek rakudo/qbootstrap: Update ** usage to % in Grammar.pm; now we survive building it at least.
18:15 dalek rakudo/qbootstrap: review: https://github.com/rakudo/rakudo/commit/2fabe6792d
18:15 dalek rakudo/qbootstrap: e375fc3 | jnthn++ | src/Perl6/ (3 files):
18:15 dalek rakudo/qbootstrap: Few more 'use' statement updates; we now get all the way to trying to build main.nqp before failing.
18:15 dalek rakudo/qbootstrap: review: https://github.com/rakudo/rakudo/commit/e375fc3c74
18:16 dalek rakudo/nom: c663f0f | moritz++ | src/ (2 files):
18:16 dalek rakudo/nom: provide file and line number for method redeclaration errors
18:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c663f0fa34
18:16 dalek rakudo/nom: f211159 | moritz++ | src/Perl6/World.pm:
18:16 dalek rakudo/nom: [World] refactor exception handling and rethrowing into a separate method
18:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f211159f15
18:16 dalek rakudo/nom: 6d6e154 | moritz++ | src/Perl6/World.pm:
18:16 dalek rakudo/nom: oops, fix method name
18:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6d6e154165
18:16 dalek rakudo/nom: ecf355f | moritz++ | src/ (2 files):
18:16 dalek rakudo/nom: Merge branch 'world-rethrow' into nom
18:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ecf355fa54
18:16 dalek rakudo/nom: 4904b02 | moritz++ | docs/ChangeLog:
18:16 dalek rakudo/nom: note exception stuff in ChangeLog
18:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4904b021fb
18:22 dalek rakudo/qbootstrap: 8810de2 | jnthn++ | src/Perl6/Actions.pm:
18:22 dalek rakudo/qbootstrap: Make sure we get PAST nodes loaded. This gets us up to trying to compile the setting...which is immediate fail.
18:22 dalek rakudo/qbootstrap: review: https://github.com/rakudo/rakudo/commit/8810de23b8
18:24 dalek m1: 809d800 | (kj, kjs)++ | m1. (2 files):
18:24 dalek m1: add import statement. only allow bool expr in conditions. and some other stuff
18:24 dalek m1: review: https://github.com/parrot/m1/commit/809d800302
18:27 mtk joined #parrot
18:30 dalek rakudo/qbootstrap: 55c9f1c | jnthn++ | src/Perl6/ (2 files):
18:30 dalek rakudo/qbootstrap: Update some references to the old regex engine's Cursor and Match types. Now we make a bit of progress with parsing CORE.setting (up to line 106).
18:30 dalek rakudo/qbootstrap: review: https://github.com/rakudo/rakudo/commit/55c9f1cd2f
18:46 Khisanth joined #parrot
18:56 dalek winxed: a260555 | NotFound++ | winxedst2.winxed:
18:56 dalek winxed: fix const initialization from different type
18:56 dalek winxed: review: https://github.com/NotFoun​d/winxed/commit/a26055591e
19:04 whiteknight joined #parrot
19:09 dukeleto joined #parrot
19:09 dukeleto ~~
19:17 whiteknight good afternoon, #parrot
19:19 dalek m1: 2626b29 | (kj, kjs)++ | m1 (6 files):
19:19 dalek m1: simple assignments work, kinda
19:19 dalek m1: review: https://github.com/parrot/m1/commit/2626b29120
19:22 dukeleto whiteknight: howdy
19:23 dukeleto It is pretty awesome to see M1 commits flying by.
19:24 dukeleto whiteknight: somebody is asking me why we are writing parrot-lapack instead of parrot-atlas. Do you have a good answer for them?
19:24 dukeleto whiteknight: i have vague memories of you talking about atlas bindings for matrixy
19:24 whiteknight PLA already binds to ATLAS
19:24 whiteknight ATLAS is just a particular implementation of BLAS
19:24 whiteknight the LAPACK bindings are to build on top of our existing ATLAS bindings
19:24 dukeleto whiteknight: i.e. the fastest :)
19:25 whiteknight I think ATLAS comes with a handful of common LAPACK functions built-in, but not all of them
19:25 dukeleto whiteknight: ok, so they are complementary libraries
19:25 whiteknight Actually, I would not say ATLAS is the fastest. Goto BLAS is pretty darn quick and some of the implementation-specific guys are speedy too
19:25 whiteknight right
19:26 dukeleto whiteknight: maybe you could drop a knowledge bomb on https://github.com/leto/parrot-lapack/issues/1 ?
19:31 rurban left #parrot
19:32 dalek m1: cb765cd | dukeleto++ | README.md:
19:32 dalek m1: Add a link to the m0 branch in the readme
19:32 dalek m1: review: https://github.com/parrot/m1/commit/cb765cd5ee
19:36 PacoAir joined #parrot
19:53 plobsing joined #parrot
20:13 dalek m1: d83f43b | (kj, kjs)++ | m1 (9 files):
20:13 dalek m1: fix assignments hopefully
20:13 dalek m1: review: https://github.com/parrot/m1/commit/d83f43b6ef
20:13 dalek m1: 9e63184 | (kj, kjs)++ | README.md:
20:13 dalek m1: Merge branch 'master' of github.com:parrot/m1
20:13 lucian joined #parrot
20:13 dalek m1: review: https://github.com/parrot/m1/commit/9e63184e34
20:19 dukeleto kjs: ping
20:19 kjs dukeleto: poing
20:20 dukeleto kjs: just clarifying, is it cool if I add an artistic 2.0 license and CREDITS file to m1.git ?
20:20 kjs sure
20:20 kjs no prob
20:20 dukeleto kjs: awesome
20:20 dukeleto kjs: it is really nice to see you working on m1!
20:21 kjs :-) it is addictive i must say
20:21 dukeleto kjs: i have had a lack of tuits lately for hacking in general, but that has changed and I am diving back in
20:21 dukeleto kjs: please let me know how I can help with m1
20:21 kjs i could walk you through the source at some point
20:21 kjs (have to leave in a few min now)
20:21 kjs and then you could see what you want to do
20:21 Coke star: use Beer;
20:22 p6eval star 2012.04: OUTPUT«===SORRY!===␤Could not find Beer in any of: /home/p6eval/.perl6/lib, /home/p6eval/star/lib/parrot​/4.3.0/languages/perl6/lib, .␤»
20:22 Coke star: say "oh hey, wrong window."
20:22 p6eval star 2012.04: OUTPUT«oh hey, wrong window.␤»
20:22 kjs i havent really properly refactored stuff, so here and there it gets slightly messy
20:23 dalek m1: c6df014 | (kj, kjs)++ | TODO.txt:
20:23 dalek m1: update todo list
20:23 dalek m1: review: https://github.com/parrot/m1/commit/c6df0141f5
20:23 Coke kjs: were you the one who put pirc together?
20:23 kjs yes
20:24 kjs Coke:  hi
20:24 cotto kjs, would you  be happy with a cmp op?
20:24 kjs yes that was me. a lot of experience from that is now useful
20:24 Coke sounds like m1 is getting more traction. kjs++
20:24 cotto kjs++ indeed
20:24 kjs cotto: i think for now that would help. if we find out later that it can be done without a cmp, then fine
20:24 dalek m1: 0eaf8f2 | dukeleto++ | LICENSE:
20:24 dalek m1: Add artistic 2.0 license
20:24 dalek m1: review: https://github.com/parrot/m1/commit/0eaf8f2cdf
20:24 dalek m1: 8cf53a8 | dukeleto++ | CREDITS:
20:24 dalek m1: Add a credits file
20:24 dalek m1: review: https://github.com/parrot/m1/commit/8cf53a86e1
20:24 kjs but we need some way to find out whihch side of 0 you are, when doing a comparison
20:25 cotto right.  cmp says which of a > b, a == b, a < b is true
20:26 cotto like perl's operator of the same name
20:26 kjs -1 is lt
20:26 kjs 0 is eq
20:26 cotto either that or <=>
20:26 kjs and +1 is gt
20:26 kjs cmp <result>, <a>, <b>
20:26 dalek m1: 3e48274 | dukeleto++ | README.md:
20:26 dalek m1: Mention license in the readme
20:26 dalek m1: review: https://github.com/parrot/m1/commit/3e48274cac
20:27 dukeleto star: say "Is this thing on?"
20:27 p6eval star 2012.04: OUTPUT«Is this thing on?␤»
20:27 moritz oh, that's still the old star
20:27 dukeleto moritz: it is new to me :)
20:27 * dukeleto has been in a cave
20:27 dalek nqp/toqast: 9e3e240 | masak++ | / (2 files):
20:27 dalek nqp/toqast: [QAST::Block] implement .symbol
20:27 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/9e3e240014
20:28 elmex joined #parrot
20:28 moritz star: say 'oh hai'
20:29 p6eval star 2012.05: OUTPUT«oh hai␤»
20:29 moritz ok, updated to new version
20:29 moritz dukeleto++
20:29 elmex joined #parrot
20:31 kjs dukeleto: thanks for credits etc.
20:31 kjs dukeleto++
20:32 kjs dukeleto: i can walk you through source code some time if you want
20:32 dukeleto kjs: sure!
20:32 dukeleto kjs: are you planning on adding some kind of test suite?
20:33 dukeleto kjs: ah, i see some t*.m1 files
20:34 kjs well that's thep lan but at this point tehre's little to test
20:34 kjs it's v incomplete
20:34 kjs but got assignments working i think
20:34 kjs so that's a big step
20:34 kjs once we have enough working, we can write tests in M1
20:35 kjs run them through M1, then perl m0)assembler.pl and ./m0
20:36 kid51 joined #parrot
20:36 dukeleto kjs: i am very interested in data-driven tests. Such as, having a yaml file with pairs of (M0,M1) source code
20:37 dukeleto kjs: and then we verify that each m0 gives the corresponding m1 generated code
20:37 kjs m1->m0 i think you mean?
20:37 dukeleto kjs: yes :)
20:37 kjs if we wrote it in prolog it wouldn't matter :-)
20:38 kjs yes sounds good. we can chat next time to see what's needed for that
20:38 kjs meanwhile i'm still figuring out M0 language. Its very easy to make mistakes
20:39 dukeleto kjs: indeed.
20:40 dukeleto kjs: it is on my docket to write a few more non-trivial m0 programs, to prove that m0 is indeed viable and as examples for people like you :)
20:40 kjs what would be intersting is to understand better how function calls work
20:40 dukeleto kjs: i think the last time me and cotto++ talked we agreed that CRC-(16|32) in M0 would be a good example
20:40 kjs what's CRC?
20:41 dukeleto kjs: cyclical redundancy check, iirc
20:41 dukeleto kjs: a checksum
20:41 dukeleto kjs: one of the most common and standard checksums is CRC. It is used in TCP and all over the place
20:41 kjs oh right
20:41 kjs as an example
20:42 dukeleto kjs: yes. We *think* m0 is turing complete, but I want to be sure :)
20:42 kjs the most difficult to get right is assignments, in my experience
20:42 kjs while, if, and allthe other control stuff is easy
20:42 kjs assignments, and then function calls. those are always tricky
20:42 kjs objects seem easy, with gc_alloc
20:43 dukeleto kjs: the m0 spec is still getting refined. please tell us if something is suboptimal or ambiguous
20:44 kjs there is ambiguity about the size of regs
20:44 kjs 4 or 8
20:44 aloha 12
20:45 kjs for int registers i think
20:45 kjs it says that it's either 4 or 8 depending on platform
20:45 kjs but elsewhere it says that all regs are 8 bytes
20:45 dukeleto kjs: interesting
20:46 dukeleto kjs: the spec evolved in places, but not others :)
20:47 dukeleto kjs: i think originally we said all are 8, but that seemed like an unduly penalty to small embedded systems, so it can be up to the platform/implementation
20:47 kjs also i found some examples a bit confusing. it sems that any register can hold any value
20:47 kjs also, pointers to local variables wont work i think
20:47 kjs so i'm thinking of doing a reference style a la java
20:47 dukeleto kjs: pretty much. the prefix of registers are mostly for the convenience of the reader of m0
20:47 dukeleto kjs: why wont pointers to local variables work?
20:47 kjs ok but what convenience does it bring if it's confusing? :-)
20:48 kjs because local vars are in fact just aliases to regs
20:48 kjs and you cant take an address of a reg
20:48 kjs right?
20:48 kjs i seem to remember many years ago a discussion like that when dan was still around
20:48 dukeleto kjs: i would ask cotto++ for now. My m0-spec-fu is still rusty right now
20:48 kjs pointers to regs is not possible i think. will be an obstacle to JIT perhaps?
20:49 kjs ok well not a big deal because you shouldnt have poiners to local vars anyway
20:49 kjs only objecs
20:49 kjs pointers to primitive types is complex code, and we want to prevent complex code :-)
20:49 dukeleto kjs: agreed
20:49 kjs i want to make it as foolproof as possible
20:49 dalek nqp/toqast: b0b24cf | masak++ | / (2 files):
20:49 dalek nqp/toqast: [QAST::Block] only create hashes when .symbol sets
20:49 dalek nqp/toqast:
20:49 dalek nqp/toqast: When the getter variant of .symbol is used, it now returns an
20:49 dalek nqp/toqast: undefined value, rather than autovivify a hash for it.
20:49 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/b0b24cfd57
20:51 kjs at the moment, a blocker for me is to figure out which sequence of instructions i need to generate for each type of statement
20:51 tadzik 11 or 12
20:51 aloha 15
20:51 tadzik :)
20:52 kjs that's a painful process. for instance, how do functions return, that kind of stuff.
20:53 kjs have to go now. good evening, happy hacking all
20:53 cotto 'night
20:54 dukeleto cotto: so you are working at a shiny new startup these days? How is it?
20:56 dalek parrot/whiteknight/io_cleanup1: d3d94e2 | Whiteknight++ | / (8 files):
20:56 dalek parrot/whiteknight/io_cleanup1: Complete a first pass through src/io/api.c. Convert most functions to use the new architecture. Move some functions and some bare logic to other files where they belong. Leave several TODO notes with C++ // comments so they will be caught by codetest long before we try to merge anything
20:56 dalek parrot/whiteknight/io_cleanup1: review: https://github.com/parrot/parrot/commit/d3d94e29ef
20:57 Coke 25 or 624
20:57 aloha 633
21:06 cotto dukeleto, pretty crazy.  We've got an apartment we're working out of and I don't think I've gone home before 10:30 so far (apart from previous engagements).
21:07 cotto definitely living the dream
21:07 cotto dukeleto, did you see register name aliases in M0?
21:07 cotto not sure if you were still around when I added them a couple weeks ago
21:08 cotto they should make m0 code much more readable
21:21 dalek rakudo/qbootstrap: ffe62f6 | jnthn++ | src/Perl6/Grammar.pm:
21:21 dalek rakudo/qbootstrap: Remove a check we hopefully don't need with proper LTM, and that prevented circumfix from getting its proper declarative prefix.
21:21 dalek rakudo/qbootstrap: review: https://github.com/rakudo/rakudo/commit/ffe62f6dd0
21:21 dalek rakudo/qbootstrap: 2dc246d | jnthn++ | src/Perl6/Grammar.pm:
21:21 dalek rakudo/qbootstrap: Fix copyO for new regex engine. Gets us to just past line 1400.
21:21 dalek rakudo/qbootstrap: review: https://github.com/rakudo/rakudo/commit/2dc246d714
21:28 Coke anyone here talk to c h r o m a t i c recently?
21:29 tadzik cool obfuscation bro
21:29 Coke wouldn't want to piss him off. Won't fool google, i'm sure.
21:34 cotto not recently
21:35 cotto though he seems to have effective ways of knowing when something interesting is happening here
21:35 Coke google. ;)
21:36 Coke or, hell, I used to have a perl script that would poke me if I was offline and someone said my name.
22:13 dalek rakudo/qbootstrap: 137b998 | jnthn++ | src/Perl6/Grammar.pm:
22:13 dalek rakudo/qbootstrap: Avoid issue with <?[ ) \] ]> generating non-zerowidth matching. Gets us well beyond line 3000.
22:13 dalek rakudo/qbootstrap: review: https://github.com/rakudo/rakudo/commit/137b998881
22:18 dukeleto cotto: i am catching up on m0 stuff now.
22:18 cotto cool
22:19 cotto I was pretty naive in my expectation of free time post-startup
22:26 dukeleto cotto: https://github.com/parrot/parrot/c​ommit/e80bf446c2d8bd1ee51e5d140f13​7ecf3d893b3d#commitcomment-1378861
22:30 cotto dukeleto, replied
22:30 cotto and thanks
22:30 cotto apparently I can edit your comments now.  I wonder if that's a bug
22:31 benabik I think you can edit comments in your own repos, and since you're a member of the parrot org, you "own" that repo.
22:31 dukeleto benabik++
22:31 cotto that mostly makes sense.  istr it being otherwise in the past, but I've never cared to try.
22:32 dukeleto github has been changing fast these days
22:32 benabik I've edited several comments in old tickets just to fix formatting.
22:32 cotto wfm
22:32 cotto anyone who's an admin probably shouldn't be malicious
22:44 bluescreen joined #parrot
22:49 dalek nqp/qbootstrap: 30b8951 | jnthn++ | src/QRegex/ (2 files):
22:49 dalek nqp/qbootstrap: Special-case <before ...> to be declarative for LTM purposes. Fixes reduction parsing (and maybe other things) in Rakudo on qbootstrap.
22:49 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/30b8951453
22:52 kurahaupo joined #parrot
22:57 dalek rakudo/qbootstrap: 5b42a4c | jnthn++ | src/Perl6/Grammar.pm:
22:57 dalek rakudo/qbootstrap: Some more copyO and copyOPER fixing. With this and the <before ...> patch in NQP we now get up to line 9976 in CORE.setting.
22:57 dalek rakudo/qbootstrap: review: https://github.com/rakudo/rakudo/commit/5b42a4c944
23:03 particle1 joined #parrot
23:08 particle joined #parrot
23:15 dalek parrot/m0: c654de6 | dukeleto++ | src/m0/perl5/m0_assembler.pl:
23:15 dalek parrot/m0: Disallow the redefinition of a register name alias
23:15 dalek parrot/m0: review: https://github.com/parrot/parrot/commit/c654de6da1
23:15 dalek parrot/m0: c565eaf | dukeleto++ | t/m0/ (2 files):
23:15 dalek parrot/m0: Add an m0 test for the illegal redefinitino of an alias
23:15 dalek parrot/m0: review: https://github.com/parrot/parrot/commit/c565eafbdd
23:15 dalek parrot/m0: fe3f4c0 | dukeleto++ | .gitignore:
23:15 dalek parrot/m0: Git ignore the compiled m0 C implementation
23:15 dalek parrot/m0: review: https://github.com/parrot/parrot/commit/fe3f4c01a8
23:38 ingy hi dukeleto
23:46 dalek nqp/qbootstrap: c4cc06a | moritz++ | src/HLL/Compiler.pm:
23:46 dalek nqp/qbootstrap: expose parsed command line options and arguments to the user
23:46 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/c4cc06a1f9
23:46 dalek nqp/qbootstrap: 64c1b3c | moritz++ | src/HLL/Compiler.pm:
23:46 dalek nqp/qbootstrap: [HLL::Compiler] expose the program name to the user
23:46 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/64c1b3c96d
23:46 dalek nqp/qbootstrap: b77e472 | jnthn++ | src/NQP/Grammar.pm:
23:46 dalek nqp/qbootstrap: Canonicalize name installed in %*RX<name> properly, so we call the correct action method.
23:46 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/b77e472e0b
23:46 dalek nqp/qbootstrap: 62c44da | jnthn++ | src/HLL/Compiler.pm:
23:46 dalek nqp/qbootstrap: Merge prog-name handling from master.
23:46 dalek nqp/qbootstrap: review: https://github.com/perl6/nqp/commit/62c44daf66

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

Parrot | source cross referenced