Camelia, the Perl 6 bug

IRC log for #parrot, 2012-01-23

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
01:07 dalek parrot/240/fix_cond_eval: dd05f0d | jkeenan++ | lib/Parrot/Configure/Compiler.pm:
01:07 dalek parrot/240/fix_cond_eval: Delete commented-out code.
01:07 dalek parrot/240/fix_cond_eval: review: https://github.com/parrot/parrot/commit/dd05f0d073
01:26 dalek Rosella: 3704e3f | Whiteknight++ | s (7 files):
01:26 dalek Rosella: Add in a basic matcher functionality for the Test library, so we can do more complex assertions
01:26 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/3704e3fda6
01:26 dalek Rosella: f0287af | Whiteknight++ | / (3 files):
01:26 dalek Rosella: Add in the ability to have an initialization routine in Test.test and friends. Update the winxed test templates to use a setup function.
01:26 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/f0287af586
01:26 dalek Rosella: 8c2ddf5 | Whiteknight++ | / (4 files):
01:26 dalek Rosella: test initializers take the context not the suite, since the suite really is not configurable. Cleanup the initialization code a little.
01:26 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/8c2ddf5289
01:26 dalek Rosella: 3e8eef2 | Whiteknight++ | / (3 files):
01:26 dalek Rosella: small cleanups to the test templates and docs for Test namespace
01:26 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/3e8eef2bbf
01:26 dalek Rosella: d47c6ba | Whiteknight++ | src/test/Test.winxed:
01:26 dalek Rosella: Check that the initializer is not null, since the key always exists
01:26 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/d47c6bac3f
01:56 dalek parrot/240/fix_cond_eval: 60cce76 | jkeenan++ | t/myharness:
01:56 dalek parrot/240/fix_cond_eval: Delete spurious file.
01:56 dalek parrot/240/fix_cond_eval: review: https://github.com/parrot/parrot/commit/60cce765ae
02:08 dalek parrot/240/fix_cond_eval: 965d4b3 | jkeenan++ | lib/Parrot/Configure/Compiler.pm:
02:08 dalek parrot/240/fix_cond_eval: Parens are not metacharacters inside bracketed character classes.
02:09 dalek parrot/240/fix_cond_eval: review: https://github.com/parrot/parrot/commit/965d4b3605
02:11 dukeleto anybody use chef?
02:22 dalek parrot/240/fix_cond_eval: dc7e0d8 | jkeenan++ | / (2 files):
02:22 dalek parrot/240/fix_cond_eval: Refactor code into Parrot::Configure::Compile​r::_set_file_type_option() and then test that subroutine.
02:22 dalek parrot/240/fix_cond_eval: review: https://github.com/parrot/parrot/commit/dc7e0d8e65
02:22 dalek parrot/240/fix_cond_eval: 3544348 | jkeenan++ | lib/Parrot/Configure/Compiler.pm:
02:22 dalek parrot/240/fix_cond_eval: Merge branch '240/fix_cond_eval' of git@github.com:parrot/parrot into 240/fix_cond_eval
02:22 dalek parrot/240/fix_cond_eval: review: https://github.com/parrot/parrot/commit/35443488ac
03:04 schmooster joined #parrot
03:38 Psyche^ joined #parrot
05:05 jjore joined #parrot
07:10 dukeleto ~~
08:30 dalek rakudo/nom: 63663bd | moritz++ | docs/release_guide.pod:
08:30 dalek rakudo/nom: correct release date and copyright in release_guide.pod
08:30 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/63663bd35d
08:40 mj41 joined #parrot
09:17 lucian joined #parrot
10:14 benabik_ joined #parrot
10:14 arnsholt joined #parrot
10:14 perlite joined #parrot
10:15 dalek joined #parrot
10:15 Timbus joined #parrot
10:16 wagle joined #parrot
10:21 ehiggs joined #parrot
12:02 dalek rakudo/nom: 3ddd2fb | moritz++ | src/ (2 files):
12:02 dalek rakudo/nom: throw typed exception on illegal use of placeholder parameters
12:02 dalek rakudo/nom:
12:02 dalek rakudo/nom: also catches  class A { $^x }, which used to live errornously
12:02 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3ddd2fb51c
13:34 mtk joined #parrot
13:52 not_gerd joined #parrot
13:59 dalek rakudo/nom: 2c3f642 | moritz++ | src/ (2 files):
13:59 dalek rakudo/nom: include parameter name in error message
13:59 dalek rakudo/nom:
13:59 dalek rakudo/nom: also more awesome error message stolen from STD and niecza
13:59 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2c3f6421ad
14:02 not_gerd could someone pull https://github.com/parrot/parrot/pull/704 into a branch so testing with NQP becomes easier?
14:02 not_gerd (off again)
14:02 not_gerd left #parrot
14:06 aloha (parrot/parrot) Issues opened : 704 (cleanup and auto::sizes refactor) by gerdr : https://github.com/parrot/parrot/issues/704
14:08 dalek rakudo/nom: bb2f072 | moritz++ | src/core/Exceptions.pm:
14:08 dalek rakudo/nom: fix error message, lumi++
14:09 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/bb2f072f9d
14:10 dalek rakudo/nom: 355430c | moritz++ | src/core/Exceptions.pm:
14:10 dalek rakudo/nom: another spelling fix, kboga++ moritz--
14:10 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/355430c064
14:39 PacoAir joined #parrot
15:36 not_gerd joined #parrot
15:41 dmalcolm joined #parrot
16:02 dalek parrot/auto-sizes: 3149464 | (Gerhard R)++ | config/gen/config_h/config_h.in:
16:02 dalek parrot/auto-sizes: char is allowed to be unsigned, so explictily request signed type
16:02 dalek parrot/auto-sizes: review: https://github.com/parrot/parrot/commit/314946463b
16:02 dalek parrot/auto-sizes: d69401e | (Gerhard R)++ | / (3 files):
16:02 dalek parrot/auto-sizes: remove unnecessary type ptrcast_t
16:02 dalek parrot/auto-sizes: review: https://github.com/parrot/parrot/commit/d69401e91c
16:02 dalek parrot/auto-sizes: 23acc8c | (Gerhard R)++ | / (2 files):
16:02 dalek parrot/auto-sizes: remove _set_ptrcast() from auto::memalign
16:02 dalek parrot/auto-sizes: review: https://github.com/parrot/parrot/commit/23acc8c7f9
16:02 dalek parrot/auto-sizes: 368b18f | (Gerhard R)++ | config/auto/sizes/test_c.in:
16:02 dalek parrot/auto-sizes: fix misuse of %u to printf values of type size_t
16:02 dalek parrot/auto-sizes: review: https://github.com/parrot/parrot/commit/368b18fc32
16:02 dalek parrot/auto-sizes: f5bb182 | (Gerhard R)++ | src/runcore/subprof.c:
16:02 dalek parrot/auto-sizes: remove needless inclusion of stdint.h
16:02 dalek parrot/auto-sizes: review: https://github.com/parrot/parrot/commit/f5bb1820ce
16:02 dalek parrot/auto-sizes: 19dc8fb | (Gerhard R)++ | / (2 files):
16:02 dalek parrot/auto-sizes: re-introduce ptrcast_t and use it where actually appropriate
16:02 dalek parrot/auto-sizes: review: https://github.com/parrot/parrot/commit/19dc8fb870
16:02 dalek parrot/auto-sizes: 1457f9e | (Gerhard R)++ | config/auto/sizes.pm:
16:02 dalek parrot/auto-sizes: re-factor auto::sizes
16:02 dalek parrot/auto-sizes: review: https://github.com/parrot/parrot/commit/1457f9e787
16:02 dalek parrot/auto-sizes: b8ea67c | (Gerhard R)++ | / (3 files):
16:02 dalek parrot/auto-sizes: Merge branch 'master' into gerdr/cleanup
16:02 dalek parrot/auto-sizes: review: https://github.com/parrot/parrot/commit/b8ea67cd09
16:34 contingencyplan joined #parrot
16:55 alester joined #parrot
18:02 fperrad joined #parrot
18:04 admiral0 joined #parrot
18:04 admiral0 hello
18:04 admiral0 i am following the tutorial
18:05 admiral0 and not getting expected results
18:05 admiral0 what .annotate 'line', 1 means in pir?
18:06 moritz admiral0: it adds a so-called annotation with key 'line' and value 1
18:06 admiral0 i get that
18:06 moritz admiral0: compilers use that identify the location in the source file
18:06 admiral0 it should be an assignment
18:06 moritz so that they can produce backtraces with the correct line numbers
18:06 moritz assignment to what?
18:07 admiral0 no, my bad
18:07 moritz afk
18:07 admiral0 code gets parsed but not executed...
18:18 aloha (parrot/parrot) Issues opened : 705 (Build breaks is sizeof (INTVAL) != sizeof (opcode_t), inter::types discards --opcode) by gerdr : https://github.com/parrot/parrot/issues/705
18:22 dmalcolm joined #parrot
18:45 dalek rakudo/nom: d469892 | moritz++ | t/spectest.data:
18:45 dalek rakudo/nom: enable kv.t, [Coke]++
18:45 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d469892deb
18:57 dalek rakudo/nom: 268e0c9 | moritz++ | NOMMAP.markdown:
18:57 dalek rakudo/nom: nom will not become master. [Coke]++
18:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/268e0c93c9
19:02 dalek Rosella: b70b45a | Whiteknight++ | t/test/Assertions.t:
19:02 dalek Rosella: Add in a few quick tests for Array and Hash matchers
19:02 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/b70b45a7c3
19:02 dalek Rosella: e175ca8 | Whiteknight++ | src/test/ (4 files):
19:02 dalek Rosella: Add in two experimental new matchers. Change the matcher factory to not use type/role information for the first arg, and instead ask each matcher if the values can be accepted.
19:02 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/e175ca817b
19:08 cotto ~~
19:09 lucian joined #parrot
19:44 senf_statt_oel joined #parrot
19:45 alester Why are there still issues in the GitHub issues queue?
19:45 alester I thought when I converted all the issues over from Trac, everything would get fixed.
19:45 alester Slackers.
19:46 dalek rakudo/nom: d83a1c0 | moritz++ | src/ (2 files):
19:46 dalek rakudo/nom: typed Redeclaration errors
19:46 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d83a1c0f81
19:48 alester I've been tagging issues here and there when I'm bored.  Not sure if that'll help anything, but I figure it can't hurt.
19:48 benabik alester++
19:54 aloha (parrot/parrot) Issues closed : 645 (This product has only a moose, not a pony) by petdance : https://github.com/parrot/parrot/issues/645
20:03 senf_statt_oel left #parrot
20:14 dukeleto ~~
20:15 dukeleto alester: will you take a pull request to ack if I add in *.winxed as a default extension ?
20:15 alester for what?
20:15 dukeleto alester: i want ack to look in *.winxed files by default
20:15 dukeleto alester: too much to ask?
20:15 alester You mean --winxcd=*.winxcd?
20:15 alester What is winxcd?
20:16 dukeleto alester: winxed.org
20:16 dukeleto alester: the language that comes with parrot
20:16 dukeleto alester: http://whiteknight.github.co​m/Rosella/winxed/index.html
20:17 alester A user base of how many?
20:17 alester Two? Three? :-)
20:18 dukeleto alester: whiteknight, NotFound, bubaflub, Benabik, me, for starters
20:18 alester So, five.
20:18 alester I really don't want to add every new language.  As much as I love Parrot and y'all.
20:18 dukeleto alester: and nontrivial projects that are outside of core that use it: https://github.com/letolabs/parrot-libgit2
20:19 dukeleto alester: ok, so i have to add some config metadata to make it work?
20:19 dukeleto alester: how do I tell ack to look in *.winxed files by default?
20:19 alester --type-add=winxed=*.winxed
20:19 benabik dukeleto: echo "--type-set=winxed=.winxed" >> ~/.ackrc  # is what I did
20:19 alester put that in your ACK_OPTIONS
20:19 dukeleto benabik++
20:19 alester in this case, --type-add and --type-set are the same.
20:20 alester oh yeah, no *.  benabik is right.
20:20 benabik It seems to have been working for me, so I'd hope so.  :-D
20:21 dukeleto alester: does that just give me ack --winxed support, or do I need something else for "ack foo" to look in *.winxed files?
20:21 alester both
20:21 alester you have it all.
20:21 alester ack 1.x only searches files it knows about by default.
20:21 alester Telling it about --winxed means it now knows what *.winxed files are, sot hey get searched.
20:22 benabik My .ackrc: https://gist.github.com/1665348
20:22 dukeleto benabik++
20:22 dukeleto alester: thanks for hitting me with the clue stick
20:22 benabik alester++
20:22 dukeleto benabik: looks like the wrong gist url
20:23 benabik dukeleto: WFM?
20:23 alester ack2 will also let you have global /etc/ackrc
20:23 alester and per-project ackrc.
20:23 benabik And a pony?
20:23 alester Biggest damn pony you ever sw.
20:24 * dukeleto .wants("pony")
20:30 alester It's interesting that people don't realize how flexible ack is.
20:30 alester I need to tell that story better.
20:32 masak benabik++ # sharing his .ackrc
20:33 benabik Although I wonder why I added .pbc to --parrot
20:33 benabik That's not a useful thing to ack.
20:34 alester @hoelzro and I are making the configging much more flexible.
20:34 alester and the diagnostics will tell you exactly what's getting searched and why.
20:42 mj41 joined #parrot
20:48 dalek rakudo/nom: 00e5547 | moritz++ | src/ (2 files):
20:48 dalek rakudo/nom: throw X::Phaser::Once exceptions when two CATCH or CONTROL blocks appear in a block
20:48 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/00e55472ae
20:48 dalek rakudo/nom: ef67fd4 | moritz++ | src/ (2 files):
20:48 dalek rakudo/nom: more typed redeclaration exceptions
20:48 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ef67fd4fa0
21:12 mtk joined #parrot
21:12 dalek Heuristic branch merge: pushed 28 commits to nqp/qbootstrap by jnthn
21:21 dalek rakudo/nom: 71225d3 | jnthn++ | docs/ROADMAP:
21:21 dalek rakudo/nom: A few difficulty estimates.
21:21 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/71225d3253
21:21 dalek rakudo/nom: ccd75fa | jnthn++ | src/Perl6/Metamodel/AttributeContainer.pm:
21:21 dalek rakudo/nom: Catch case of a class that does 'has $.x; has @.x'.
21:21 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ccd75fab95
21:21 dalek rakudo/nom: 4ffbd61 | jnthn++ | src/Perl6/Metamodel/AttributeContainer.pm:
21:21 dalek rakudo/nom: Allow an explicit method to resolve an attribute accessor conflict.
21:21 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4ffbd614a1
21:24 robertle joined #parrot
21:25 not_gerd left #parrot
21:38 robertle hi folks, I have a quite off-topic thing I would like to run past you. stop me if you think this is the wrong place. but you might find it amusing or interesting.
21:38 robertle I am trying to cook up a VM for toy MUD server, partially inspired by parrot and the lua vm
21:39 robertle it is a register-based 3-address machine, dynamically typed and has a few built-in tyupes
21:39 robertle the usual primitives: int, float, bool, nil
21:40 robertle it also has strings. these are immutable, which I think works really nice.
21:40 benabik Immutable data structures are excellent.
21:41 robertle it also has maps and lists, and this is where my problems start: I don't know if these whoudl also be immutable or not!
21:41 robertle I can see positive points: not needing to copy prior to passing, easier conceptual operatione etc
21:41 robertle but there is one major drawback that you don't have with strings: making changes in a deeply nested structure is really difficult
21:42 robertle because you essentially need to cascade your modification all the way up
21:42 robertle so I was wondering: have other VMs used immutable lists/maps before? or have they not but wish they had?
21:42 robertle any views on it?
21:43 benabik Immutable vs mutable really depends on your programming style.
21:43 benabik Functional programming handles immutable structures very well.
21:43 benabik Because you had to recurse down to that level anyway, so you can rebuild the structures on your way up.
21:44 benabik (As far as complex data structures go, anyway.)
21:45 robertle hmm. I am thinking about a fairly imperative language. but I would have thought that a low-level VM would be programmable in both styles, depending on the compiler
21:48 robertle I was thinking that I might need some sort of support for doing that kind of operation, but can't really think of a clean way
21:49 robertle anyway, you can't immediately think of any terrible drawbacks?
21:52 benabik Often changing immutable structures generate a lot of intermediate objects.
21:54 benabik That's about the only low-level technical drawback I can think of.  Which type of structure is "better" really depends on what you're doing with it.
21:55 benabik Really it's most useful if you support both.
22:00 robertle I thought about that, but then you need a way to convert between them, and more importantly your compiler needs to be pretty smart to figure out which to use when
22:14 benabik Not really.  Which kind of structure is more useful depends on what you're doing with it.  Some algorithms will use one, some would use the other.  Trying to convert on the fly is not a good idea.
22:14 benabik Or, rather, trying to convert transparently isn't a good idea.
22:24 robertle I see what you mean
22:24 robertle I guess I'll see where I get with immutables
22:25 robertle one thing i definitely want to do is some optimization in the vm, that avoids teh copy if the target register is the same as the source
22:25 robertle I think that can quite neatly be utilised by the compiler
22:25 robertle if you don't need it anymore overwrite it immediately :)
22:25 benabik There are lots of good optimizations that can be done.  :-D
22:26 robertle I have an interesting one, can't wait to find out what it does!
22:27 robertle my types are tagged unions, and I need the full 8 bytes for some (int, float)
22:27 robertle so in memory they will > 8 bytes
22:27 robertle with alignment and all 12 or 16 bytes
22:28 robertle -> tremendous waste and cache churn
22:29 robertle so you could re-arrange them so that you have less waste, still proper alignment and still the tag on teh same cacheline as the union
22:29 robertle e.g. tag1,tag2,tag3,tag4,union1,​union2,union3,union4,waste
22:29 robertle number of them in each "block" of course depends on the size of the cahce lines
22:29 robertle talk about premature optimizations :P
22:30 benabik Bleck.
22:30 robertle on this machine it would be 7 per cahce line. ofd all numbers...
22:32 benabik Optimizing based on the cache sizes per machine makes porting difficult at best.
22:32 robertle yeah, it would need to figure that out at runtime
22:32 robertle anyway, i am far away from stuff like that
22:32 robertle if only stealing bits from a float wasn't so hard, i wouldn't need tagged unions
22:33 robertle if the int isn't full 64 bits, that would be fine
22:33 robertle and the rest are handles anyway...
22:36 dalek nqp/bs: 1d0b7f2 | jnthn++ | src/6model/sixmodelobject.h:
22:36 dalek nqp/bs: Give STables a slot for marking them with an SC.
22:36 dalek nqp/bs: review: https://github.com/perl6/nqp/commit/1d0b7f2593
22:36 dalek nqp/bs: 8071678 | jnthn++ | src/6model/knowhow_bootstrapper.c:
22:37 dalek nqp/bs: Mark STables created during bootstrap with the bootstrap SC also.
22:37 dalek nqp/bs: review: https://github.com/perl6/nqp/commit/8071678c8d
23:14 dukeleto ~~
23:18 whiteknight joined #parrot
23:28 whiteknight good evening, #parrot
23:44 dukeleto whiteknight: wazzup
23:44 dukeleto whiteknight: i have started to ride the crazy train of attempting to buy a house. I am glad I read about your trials+tribulations first :)
23:49 kid51 joined #parrot
23:54 whiteknight dukeleto: I think my experiences were much worse than average
23:54 whiteknight so, do your best not to approach them asypmtotically
23:55 dukeleto whiteknight: 10-4
23:58 dukeleto aloha: how do I make another one of you?

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

Parrot | source cross referenced