Camelia, the Perl 6 bug

IRC log for #parrot, 2011-10-13

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:05 sorear cotto: cute
00:06 sorear cotto: I think it's more a question of understanding what not to do, and there I think it doesn't quite go far enough
00:07 sorear cotto: I didn't really understand the deal with sequence points until I read a paper on the design and implementation of the Plan 9 68000 C compile
00:07 sorear cotto: it would be nice if they talked in more detail about *why* compilers like to reorder expressions
00:09 sorear tip: work out the register allocation for a = b + (c + e) and a = (c + e) + b
01:09 plobsing joined #parrot
01:24 jsut_ joined #parrot
01:36 dalek parrot: 03681b4 | jkeenan++ | lib/Parrot/Harness/Options.pm:
01:36 dalek parrot: "Repeated code is a mistake." -- MJD.  "This is Perl; when in doubt, use a hash." -- unknown
01:36 dalek parrot: (at least to google)."
01:36 dalek parrot: review: https://github.com/parrot/parrot/commit/03681b4816
01:49 dalek rakudo/nom: 3e66bdf | Coke++ | t/spectest.data:
01:49 dalek rakudo/nom: track failures, run fudges
01:49 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3e66bdf773
01:58 dalek Heuristic branch merge: pushed 1500 commits to parrot/smoke_fulltest by jkeenan
02:12 dalek parrot/smoke_fulltest: 4f133cf | jkeenan++ | config/gen/makefiles/root.in:
02:12 dalek parrot/smoke_fulltest: Restore erroneous deletions.
02:12 dalek parrot/smoke_fulltest:
02:12 dalek parrot/smoke_fulltest: Branch should now be up-to-date with master, though 'make
02:12 dalek parrot/smoke_fulltest: smolder_fulltest' still needs work.
02:12 dalek parrot/smoke_fulltest: review: https://github.com/parrot/parrot/commit/4f133cfb9d
02:18 benabik joined #parrot
02:38 Khisanth joined #parrot
03:51 TonyC joined #parrot
03:52 nopaste joined #parrot
04:47 rfw joined #parrot
06:51 PacoLinux joined #parrot
07:14 preflex_ joined #parrot
07:19 autark joined #parrot
07:34 mj41 joined #parrot
08:16 lucian joined #parrot
08:34 mj41 joined #parrot
08:48 particle joined #parrot
09:24 PacoLinux joined #parrot
09:40 tewk joined #parrot
09:46 lucian joined #parrot
10:18 PacoLinux joined #parrot
11:05 PacoLinux joined #parrot
11:19 mj41 joined #parrot
11:37 Psyche^ joined #parrot
11:40 benabik joined #parrot
11:46 benabik_ joined #parrot
11:46 particle1 joined #parrot
11:46 benabik_school joined #parrot
11:51 benabik o/ #parrot
11:51 rfw joined #parrot
11:57 nine \o benabik
11:59 benabik nine: what's happening?
12:02 dalek nqp: 15be997 | mls++ | src/HLL/Compiler.pm:
12:02 dalek nqp: Do not let control exceptions slip through. Also adds a handle-control hook.
12:02 dalek nqp: review: https://github.com/perl6/nqp/commit/15be997bb7
12:03 rfw joined #parrot
12:05 nine benabik: quiet day
12:05 benabik Early yet.
12:06 benabik (For the US, anyway.)
12:06 nine I will stay quiet today anyway. It's really about time to start studying for that exam tomorrow...
12:08 whiteknight joined #parrot
12:09 whiteknight good morning, #parrot
12:10 benabik o/ whiteknight!
12:11 nine morning, whiteknight
12:12 whiteknight good morning benabik, nine
12:12 whiteknight Apparently Dennis Ritchie died today
12:13 SHODAN joined #parrot
12:14 ligne joined #parrot
12:15 nine more like last weekend
12:15 whiteknight whenever
12:16 whiteknight the news items are filling up my rss reader today
12:16 nine still sad
12:16 whiteknight indeed
12:29 SHODAN joined #parrot
12:34 dngor joined #parrot
12:45 atrodo =~
12:47 whiteknight hello atrodo
12:47 benabik error: failed to supply regex to match against $atrodo
12:47 atrodo morning whiteknight
12:47 atrodo =~ m/\s*awake\s*/xms
12:50 mtk joined #parrot
12:53 dalek Heuristic branch merge: pushed 25 commits to parrot/green_threads by Whiteknight
12:53 whiteknight nine: that's a local copy of your green_threads branch. I'm going to try to do some testing on it
12:57 p6eval joined #parrot
13:06 benabik I really wish the Deep C slide just listed the issues with the code instead of continuing to keep up the "conversation" with idiot man and pedantic lady.
13:06 benabik It was nice at first, but gets tedious after a couple hundred slides.
13:08 awwaiid joined #parrot
13:19 whiteknight Ubuntu 11.10 seems to be getting some decent reviews
13:24 * benabik wishes Ubuntu didn't hide their release notes.
13:24 benabik I'd love a nice link of "What's New" under "Hey, there's a new version!" on the front page.
13:27 whiteknight the whats-new page I'm looking at is pretty detail-thin anyway
13:27 benabik https://wiki.ubuntu.com/OneiricOcelot/ReleaseNotes
13:27 whiteknight ah, that's more what I am looking for
13:28 benabik I found it by going to the download page, upgrade, and there was a link to the release notes.
13:30 whiteknight wow, some of these changes are pretty impressive
13:30 benabik I like the BKL is dead note.
13:30 whiteknight fallback to gnome 3.2 instead of gnome 2.3? that's a nice change
13:31 benabik Eh.  I've always used k or xubuntu.
13:32 benabik Although, really, these days I'm using ubuntu-minimal + X + wmii + whatever stuff I'm testing.
13:32 benabik The thing I _really_ love about ubuntu is how all these sub-distros are packages.
13:33 whiteknight what do you mean?
13:33 benabik On debian, you have a pile of essential and standard packages that just are.  Ubuntu has packages like "ubuntu-minimal" that depend on the bare bones.
13:34 benabik Switching from kubuntu to xubuntu is as simple as apt-get removing kubuntu and apt-get installing xubuntu.
13:34 whiteknight oh, nice
13:35 whiteknight I'm also looking forward to the new Ubuntu mono font
13:35 benabik It's _very_ nice for me because I like to mark as much as I can "auto-installed" and then use aptitude with a filter of "~i !~M !~v" (installed, not marked auto, not virtual)
13:36 benabik With debian, that's a long list of things like cron, init, etc.  With ubuntu, that's all under "ubuntu-minimal"
13:36 benabik mono font?
13:36 whiteknight yeah, they developed a new monospaced font that looks very nice on the eyes
13:37 atrodo everyone has developed a new monospaced font that's nice on the eyes
13:37 whiteknight atrodo: not true. I've seen lots of them that suck massively
13:38 atrodo Oh yes, I agree, but Apple, Microsoft, Adobe have all made fonts that aim to do exactly that, with various advantages and disadvantages
13:38 whiteknight but I don't use an operating system from Apple, Microsoft or Adobe
13:39 benabik Hm.  kubuntu-low-fat-settings is an amusing package.  And ubuntu Core is a good idea. (very minimal rootfs image)
13:39 * whiteknight just started the upgrade in his VM
13:40 whiteknight if it goes well on the VM, I'll do it on my laptop later tonight or this weekend
13:40 benabik whiteknight: http://packages.ubuntu.com/oneiric/ubuntu-minimal
13:41 whiteknight the VM, unfortunately, doesn't support Unity3D. So I can't do any real testing of UI problems before I upgrade my laptop
13:41 whiteknight and since interface problems are what I have the most of, that's always obnoxious
13:42 benabik Hmph.  packages.ubuntu.com doesn't display the metapackages category.  But you can find it in aptitude.  It's awesome.
13:42 * benabik really should get around to moving his VPS to Linode and ubuntu-server.
13:43 PacoLinux joined #parrot
13:44 PacoLinux_ joined #parrot
13:45 benabik Ah.  A full list: https://help.ubuntu.com/community/MetaPackages
13:45 * benabik is avoiding his homework.  Can you tell?
13:46 whiteknight what is the homework?
13:46 benabik I have to draw a petri net for a uber-simple network protocol.  Mostly just tedium.  Maybe I should start learning how to do complex diagrams in LaTeX.
13:47 moritz if you want fast results instead, I could recommend dia or inkscape
13:47 PerlJam inkscape++
13:47 benabik moritz: I'm more looking for "interesting".
13:48 benabik I've been poking at TikZ.
13:48 moritz in school I've had fun drawing chemical formulas with latex
13:52 benabik Did you just use the graphics[x?] package, or did you use something more designed for chemistry?
13:53 moritz the latter
13:54 moritz though I forgot the name, it's about 8 years ago :-)
13:56 benabik Well, I don't need it really, so that's fine.  :-D
13:56 benabik Sometimes LaTeX feels like Perl.  There tends to be a package for whatever you need.
13:57 schmooster joined #parrot
13:58 * moritz finds latex much less hackable, but that might be due to my lack of deep familiarity
13:58 benabik No.  It's just unfriently.
13:59 moritz there are people who say that about Perl too :-)
13:59 whiteknight I haven't used anything TeX-related since my days on wikibooks. I don't miss it
14:07 benabik No, really.  TeX is not a good programming language.  LuxTeX sounds awesome though.
14:19 simcop2387_ joined #parrot
14:23 nine benabik: openSUSE has the same: I usually install base, kde4, devel_perl, devel_C_C++. Or base and mail_server or whatever and have a very decent package selection to start with.
14:24 whiteknight nine: how soon till the zero-overhead commit?
14:25 benabik nine: Very nice.  Ubuntu uses virtual packages for some of those (mail server, etc)…  I've never been a fan of RPMs though.  apt-get converted me to Debian long long ago.
14:26 sri joined #parrot
14:32 dmalcolm joined #parrot
14:39 PacoLinux_ joined #parrot
14:41 nine whiteknight: should be done this evening
14:42 whiteknight nine: awesome! Obviously, I'm eager
14:42 nine mee too :)
14:47 whiteknight did you get that other issue sorted out, trying to manually switch tasks from a nested runloop?
14:47 nine not yet
14:48 whiteknight okay, I'm sure that will be an easy fix
14:48 whiteknight we should probably add a mechanism somewhere for querying the current runloop level, to see if we are on top or not
14:48 nine But since you are here: what exactly do I have to do to create a nested runloop?
14:49 nine whiteknight: interp->current_runloop_level?
14:49 whiteknight yeah, but add an op to make that queryable from PIR
14:49 nine ah
14:49 whiteknight or a method, or a lookup on ParrotInterpreter PMC
14:49 whiteknight basically, the PIR code should be able to ask if we are in a situation where preemption is available/possible
14:51 whiteknight that can come later, but it's something to think about
14:52 moritz there could also be a preempt_if_possible opcode or so
14:53 whiteknight right, that's basically what I'm saying
14:53 nine What I don't like about this: runloops are an implementation detail. One that I hope will vanish someday. Feels not right to embody this in the API
14:53 whiteknight some way to alert the user whether we are in a preemption situation
14:53 whiteknight nine: these wouldn't be permanent additions, just temporary workarounds
14:54 whiteknight scheduling a task, or attempting to switch tasks manually should probably return an INTVAL, 0 if failure, 1 otherwise
14:54 whiteknight obviously, this all requires some thought
14:56 whiteknight if we have working tasks, we can start talking about messages and mailboxes, or other interesting mechanisms
15:00 whiteknight and obviously lots of other cool things: suspending tasks, serializing tasks to file, etc
15:01 whiteknight and then the real work of upgrading the system to proper OS-level threading
15:01 moritz I'm curious, what's the use case for green threads?
15:02 whiteknight moritz: by themselves? not much
15:02 moritz whiteknight: ok, so they are mostly a stepping stone
15:03 whiteknight yeah, exactly. When we add OS-level threads and have a hybrid system, it will be similar to something like python's stackless threads or Erlang's actors
15:03 whiteknight or, we would have the flexibility to do other things too
15:03 nine moritz: one could for example use them to implement Signal handling. sorear thinks signals should be handled in threads instead of (mis-)using exceptions like S17 suggests and I like the idea
15:04 moritz nine: good point
15:04 whiteknight green threads basically allow you to schedule logically separate tasks, without worrying about data-sharing overhead from multiple OS threads
15:05 nine combined with async I/O they allow event based programming without the mind bending of event based programming :)
15:11 PacoLinux_ joined #parrot
15:13 whiteknight oh yes, that too. AIO is something we can seriously pursue now
15:13 whiteknight I don't think it should be too hard to offload IO requests and only pause the current task, not the current thread
15:14 whiteknight all the major target platforms support AIO at the os level, to varying degrees of suckitude. If we upgrade the scheduler with a routine that checks for IO completion and schedules a task in the current thread, we have AIO
15:14 whiteknight that's a very small step now, compared to what it would have been a few months ago
15:15 whiteknight actually, there could be a couple behaviors. Either update a status flag, or send a message to an existing task, or schedule a new task
15:15 whiteknight or just unsuspend the current task and continue like normal
15:16 whiteknight Urg. I updated to Ubuntu 11.10, and now t/pmc/alarm.t is failing on the green_threads branch
15:17 whiteknight wtf
15:17 nine whiteknight: does it fail every time?
15:21 nine With the zero overhead fix I see a 1/20 chance of the test failing. Have been running a while true ; do ./parrot t/pmc/alarm.t ; done for the last half an hour without the fix to check if it's a regression
15:22 nine Interestingly, if it fails, it's always after ok 2 - alarm 2
15:23 whiteknight oh, I was doing a parallel test run, so that might have screwed up some timing
15:23 whiteknight when I prove it normally, it works
15:24 jsut joined #parrot
15:25 nine The test uses very small timeouts. It could be that it's setting an alarm in the past in some cases.
15:25 whiteknight also, we should add an interface somewhere, like to the scheduler PMC, to change the amount of time between preemptive task switches
15:25 whiteknight setting it to 0 or somethign similar should turn off preemption
15:26 nine Yep, exposing the scheduler is on my list of future improvements
15:26 benabik Writing tests for multi-threaded code is difficult.
15:35 whiteknight The scheduler needs a hell of a lot of improvements. We should start putting together a tasklist
15:35 whiteknight Timer PMCs need to be completely rewritten. Right now they are inside-out from what they need to be
15:36 whiteknight The scheduler also needs to get it's grubby hands away from managing exception handlers
15:48 dukeleto ~~
15:48 whiteknight hello duke
15:48 dukeleto whiteknight: mornin'
15:50 sim joined #parrot
15:51 dukeleto whiteknight: the parrot-dev mailing lists has been too quiet lately
15:52 dukeleto apathy is deadly
15:53 lucian moritz: green threads tend to have a much lower scheduling overhead (less context switches, mostly). you can spawn much more before your machine dies
15:59 rblackwe joined #parrot
16:04 dalek cardinal: 3f1ad53 | dukeleto++ | t/01-stmts.t:
16:04 dalek cardinal: Add failing/exploding tests for parsing negative numbers in parens, lateau++
16:04 dalek cardinal: review: https://github.com/parrot/​cardinal/commit/3f1ad535da
16:06 PacoLinux_ joined #parrot
16:12 mj41 joined #parrot
16:16 lateau joined #parrot
16:47 mj41 joined #parrot
16:59 fperrad joined #parrot
17:01 contingencyplan joined #parrot
17:08 not_gerd joined #parrot
17:08 not_gerd hello, #parrot
17:11 dukeleto not_gerd: howdy
17:23 whiteknight hello not_gerd
17:26 bluescreen joined #parrot
17:27 bluescreen joined #parrot
17:36 lateau 404 not found on "http://docs.parrot.org/parrot/​latest/html/docs/book/pct/TODO"
17:37 Coke lateau: where was it linked to from?
17:37 lateau I founded this in "http://docs.parrot.org/parrot/latest/​html/docs/book/pct/ch04_pge.pod.html". Link name is "Assertions"
17:40 Coke interesting. the source there is L<Assertions>
17:40 Coke (and there is an Assertions section)
17:41 Coke I suspct the pod2html is tagging that with a TODO somehow.
17:41 Coke I don't see an easy fix: please send an email to tickets@parrot.org to open a trac ticket. Thanks.
17:42 lateau ok, thanks
17:43 cotto ~~
18:14 dalek TT #2197 created by Daehyub Kim <lateau@…>++: 404 not found on docs.parrot.org
18:14 dalek TT #2197: http://trac.parrot.org/parrot/ticket/2197
18:19 Elizabeth joined #parrot
18:27 Coke lateau++
18:41 lateau :)
18:47 not_gerd joined #parrot
19:11 whiteknight joined #parrot
19:38 PacoLinux joined #parrot
19:44 dalek Rosella: 65b0691 | Whiteknight++ | src/event/ (3 files):
19:44 dalek Rosella: Cleanup namespaces for Event
19:44 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/65b0691001
19:44 dalek Rosella: d1d8243 | Whiteknight++ | src/ (77 files):
19:44 dalek Rosella: Merge branch 'master' of github.com:Whiteknight/Rosella
19:44 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/d1d8243778
19:48 nine whiteknight: sorry, no commit today. Should have started earlier to study for that exam tomorrow...
19:49 whiteknight nine: that's okay. What is the exam on?
19:49 nine Mathematics
19:49 whiteknight oh, one of my favorites. Which subject, specifically?
19:51 nine Algebras, complex numbers, isomorphisms, vectors, polynominal rings. Nothing terribly difficult. But I haven't touched this stuff in months...
19:52 whiteknight okay, yeah. That kind of stuff is hard to get into if you haven't played with it in a while
19:53 nine Good thing that I have quite some overtime, so I'll just not work tomorrow and still have some time to study :)
19:56 whiteknight it's as if you planned it
20:04 schmooster joined #parrot
20:23 dukeleto ~~
20:24 dukeleto nine: what is the name of your math course?
20:29 nine dukeleto: Mathematik 1 - Algebra
20:30 nine dukeleto: I'm studying software enginnering part time at the University of Applied Sciences in Hagenberg/Austria
20:34 soh_cah_toa joined #parrot
20:34 dukeleto nine: awesome. i studied differential equations for a few years in graduate school
20:35 dukeleto nine: mostly nonlinear hyperbolic ones. I never got to actually take a class that involved rings. What kind of stuff do they cover?
20:37 Lma joined #parrot
20:38 Coke I never had to go past introdiffeq, which is good, because that's when the instructors stopped speaking english or generating comprehensible lectures.
20:38 nine dukeleto: well it's pretty much everything leading up to what you need for cryptography.
20:38 Coke (at least at RPI)
20:39 benabik Modern Algebra was an amazing class.  Tought me what math meant.
20:39 nine I would love to have more time for this...
20:40 benabik *taught.  WTH, fingers?
20:40 nine After learing what fields are, I was really amazed that finite fields do exist
20:42 nine So...off to bed now. Good night #parrot
20:46 cotto 'night nine
20:47 dukeleto benabik: yeah, modern algebra has a lot of amazing nonintuitive truths
20:48 benabik dukeleto: It helped a lot when I studied Crypto many years later.  :-D
20:59 dalek cardinal: 8152425 | (Daehyub Kim)++ | / (2 files):
20:59 dalek cardinal: Patch for issue #6
20:59 dalek cardinal: this change allows:
20:59 dalek cardinal:   * almost statments enclosed by '()'
20:59 dalek cardinal:   * some literals enclosed by '()': show t/01-stmts.t for the details
20:59 dalek cardinal: t/01-stmts.t will be failed because I added more test cases cannot be parsed on current cardinal.
20:59 dalek cardinal: review: https://github.com/parrot/​cardinal/commit/8152425d05
20:59 dalek cardinal: b1af3d9 | (Daehyub Kim)++ | t/01-stmts.t:
20:59 dalek cardinal: recover leto's commit on master: 3f1ad535da
20:59 dalek cardinal: review: https://github.com/parrot/​cardinal/commit/b1af3d9aaf
20:59 dalek cardinal: f48c28b | dukeleto++ | / (2 files):
20:59 dalek cardinal: Merge pull request #16 from lateau/lateau
20:59 dalek cardinal:
20:59 dalek cardinal: Patch for issue #6
20:59 dalek cardinal: review: https://github.com/parrot/​cardinal/commit/f48c28b776
20:59 bluescreen joined #parrot
21:01 hercynium joined #parrot
21:07 lateau left #parrot
21:12 rfw joined #parrot
21:16 mj41 joined #parrot
21:20 zpmorgan joined #parrot
21:30 mj41 joined #parrot
21:39 bluescreen joined #parrot
21:47 Lma_ joined #parrot
22:11 jevin joined #parrot
22:36 whiteknight joined #parrot
22:38 dalek rakudo/nom: ce15be4 | Coke++ | t/spectest.data:
22:38 dalek rakudo/nom: run fudged test
22:38 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ce15be4ee5
22:59 dmalcolm joined #parrot
23:09 bluescreen_ joined #parrot
23:27 Tene joined #parrot

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

Parrot | source cross referenced