Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-04-02

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:03 xenoterracide joined #perl6
00:12 frdmn joined #perl6
00:31 census joined #perl6
00:33 census_ joined #perl6
00:37 colomon joined #perl6
00:45 adu_ joined #perl6
00:45 frd|afk joined #perl6
00:51 census joined #perl6
00:53 census anybody familiar with running perl out of debian and virtual VM ?
00:54 anuby joined #perl6
01:30 adu_ joined #perl6
01:32 araujo joined #perl6
01:39 kurahaupo joined #perl6
02:02 census joined #perl6
02:09 adu_ joined #perl6
02:16 preflex joined #perl6
02:33 lustlife joined #perl6
02:57 orafu joined #perl6
03:00 preflex_ joined #perl6
03:04 preflex joined #perl6
03:10 adu_ joined #perl6
03:34 lichtkind_ joined #perl6
04:08 adu_ joined #perl6
04:22 anuby_ joined #perl6
04:23 anuby joined #perl6
04:25 anuby joined #perl6
04:26 anuby_ joined #perl6
04:55 thou joined #perl6
05:02 thou_ joined #perl6
05:23 thou joined #perl6
05:26 thou_ joined #perl6
05:44 dmol1 joined #perl6
05:46 thou joined #perl6
05:53 SamuraiJack joined #perl6
06:00 adu_ joined #perl6
06:06 rindolf joined #perl6
06:07 kaleem joined #perl6
06:07 thou_ joined #perl6
06:13 drbean joined #perl6
06:27 thou joined #perl6
06:37 FROGGS joined #perl6
06:37 SamuraiJack_ joined #perl6
06:46 SamuraiJack__ joined #perl6
06:48 thou_ joined #perl6
06:58 thou joined #perl6
07:03 domidumont joined #perl6
07:06 daxim joined #perl6
07:08 domidumont joined #perl6
07:17 moritz sorear: fwiw I've stopped people to come here for ilbot help, there's now #ilbot
07:18 jnthn morning, moritz o/
07:19 moritz \o jnthn
07:20 timotimo good day perl6ers
07:21 timotimo i feel a little like my fascination or at least excitement for perl6 is running a bit dry. anyone feel like wowing me back into full perl6 fanboy mode?
07:24 diakopter .give timotimo hype hype hype
07:24 masak morning, #perl6
07:27 timotimo or maybe hype hype hype just leaves me burnt out again more quickly and i should keep kind of a warm flame going?
07:27 moritz yes, maybe
07:27 moritz and don't forget to take pauses and vacations etc.
07:27 moritz \o masak, timotimo, diakopter, *
07:28 diakopter .give timotimo perpetual energy machine
07:29 sorear o/ moritz, jnthn, timotimo, masak
07:29 arnsholt timotimo: I think the warm flame thing is best in the long run, yeah
07:30 masak timotimo: what moritz said. pauses matter.
07:30 jnthn Indeed. :)
07:30 masak timotimo: also, Perl 6 is not a means to an end. never was.
07:30 timotimo right. it's not like all of a sudden i'll carry perl6 to 100% production readyness over a month :P
07:30 masak timotimo: all we want to do is make programming better.
07:30 * jnthn is always more motivated/productive after a break.
07:31 timotimo i suppose my frustration with not being able to handle python on a big project lead me here, so making programming better is something i like
07:33 arnsholt timotimo: I've been thinking about this iperl6 thing BTW. D'you think you could give me a quick sketch of how ipython segments things?
07:33 timotimo uh, i guess. segment on what level?
07:33 arnsholt On the one hand, having everything in one process would be really convenient, but on the other you sort of want to separate the interpreter doing the evaling from the parts doing IPC
07:34 timotimo well, in ipython itself, there is one process that does the ipc and the evaling
07:34 arnsholt Especially you don't really want the REPL code to be able to trample the IPC talking to the frontend
07:34 arnsholt Right. So with sufficient knowledge of the internals, you can craft code that does weird things to the IPC bits?
07:35 timotimo well, the kernel is doing some "i'll give you my own globals and locals" thing
07:35 timotimo but yeah, that's not a safe sandbox
07:35 timotimo on the other hand, you can *hardly* write code that tramples on the IPC by accident
07:36 arnsholt Right
07:36 timotimo and nobody would ever trust the kernel thing to safely separate user supplied code from the system
07:36 arnsholt True that
07:36 timotimo so that's not something ipython tries to do. it's not designed to be safe from manipulation, it's more like a super advanced repl that you can do awesome stuff with
07:37 arnsholt Not unreasonable
07:38 woolfy1 joined #perl6
07:39 SamuraiJack__ joined #perl6
07:52 rindolf joined #perl6
07:55 fhelmberger joined #perl6
07:55 lizmat rn: my %bar; say %bar.end
07:55 p6eval niecza v24-35-g5c06e28: OUTPUT«Unhandled exception: Unable to resolve method end in type Hash␤  at /tmp/AT1vB_nu9S line 1 (mainline @ 4) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4300 (module-CORE @ 583) ␤  at /home/p…
07:55 p6eval ..rakudo ffe441: OUTPUT«-1␤»
07:56 lizmat I'm surprised to see .end work on a hash
07:56 * masak too
07:56 arnsholt jnthn: How hard would it be to make something vaguely similar to rakudo-debugger also be implemented using Perl 6 code?
07:57 lizmat my %bar= :foo<bar>; say %bar.end
07:57 lizmat rn: my %bar= :foo<bar>; say %bar.end
07:57 p6eval niecza v24-35-g5c06e28: OUTPUT«Unhandled exception: Unable to resolve method end in type Hash␤  at /tmp/fE5JAw9x7R line 1 (mainline @ 4) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4300 (module-CORE @ 583) ␤  at /home/p…
07:57 p6eval ..rakudo ffe441: OUTPUT«0␤»
07:57 FROGGS arnsholt: pretty hard, right? because you have no access to the underlying guts
07:57 moritz .end is just tied to the listy view that a hash can also have
07:57 jnthn lizmat: It probably is dong .list.end
07:57 jnthn *dong
07:57 jnthn ...
07:57 jnthn *doing
07:57 masak :P
07:57 moritz :-)
07:57 * FROGGS .oO( ring a ding dong? )
07:57 lizmat :-)
07:57 lizmat good morning all  :-)
07:57 moritz or just .elems - 1
07:58 FROGGS morning \o/
07:58 jnthn .oO( need to re-learn typing... )
07:58 rindolf joined #perl6
07:58 moritz more like "morning /o\ " here
07:58 jnthn arnsholt: The Big Issue at the moment is that handling NQP-ish objects from Rakudo is a pain.
07:58 jnthn arnsholt: I'm gonna deal with that Very Soon, though.
07:59 timotimo jnthn: i discovered that when i tried to make ctxsave work properly for my own eval in perl6
07:59 FROGGS jnthn: I have trouble installing the v5 module :/
07:59 lizmat the only place I see .end mentioned, is in S02, and then only one line
07:59 jnthn arnsholt: Your VMArray branch needs it (and you've already done some of the hard work) and Rakudo on JVM needs it.
07:59 lizmat so at least it is underspecced  :-)
08:00 arnsholt jnthn: Yeah, I've realized that branch is wildly misleadingly named as well
08:00 lizmat rn: my %bar= :foo<bar>; say %bar.list.end
08:00 p6eval rakudo ffe441, niecza v24-35-g5c06e28: OUTPUT«0␤»
08:00 jnthn arnsholt: Well, and it may want to be multiple branches.
08:00 lizmat rn: my %bar; say %bar.elems
08:01 jnthn arnsholt: That is, one for HLL stuff, one for the VMArray and nqp::list switch.
08:01 p6eval rakudo ffe441, niecza v24-35-g5c06e28: OUTPUT«0␤»
08:01 jnthn arnsholt: Are the two fairly split up commit wise already? If so, we just rebase -i our way there... :)
08:01 lizmat fitness&
08:03 arnsholt Yeah, they're more or less separate I think
08:04 arnsholt But there's a pile of other commits as well that I think want to be reverted
08:04 arnsholt I've hacked away at the code to get NQP actually running again, but I suspect many of those changes are better handled differently
08:05 rindolf joined #perl6
08:05 arnsholt And yeah, I've been considering making a new branch and rebasing the old stuff into better shape =)
08:06 masak funny alternate timeline: http://www.dadhacker.com/blog/?p=1976
08:10 SamuraiJack joined #perl6
08:10 labster hi all
08:11 labster is that just good general advice to avoid Stallman?
08:11 masak think so.
08:11 rindolf joined #perl6
08:13 * labster files a Perl 5 bug for File::Spec while working on the P6 version.
08:13 labster some of that code for OS2/VMS/Epoc hasn't been looked at in years.
08:15 labster Is Perl 6 seriously going to target any ecosystem for Perl 6 that isn't POSIX, Win32, or Cygwin?
08:16 labster I don't want to put in a lot of effort for something that will never be used.
08:19 masak labster: I'm not aware of any OS2 Perl 6 users.
08:19 * masak invokes YAGNI
08:20 rindolf joined #perl6
08:21 nbezzala joined #perl6
08:22 nbezzala irc://irc.perl.org
08:23 dakkar joined #perl6
08:24 masak nbezzala: welcome. that's not how it works. :)
08:24 nbezzala thanks. I know now :)
08:25 masak nbezzala++
08:29 nitish joined #perl6
08:31 rindolf joined #perl6
08:38 sqirrel joined #perl6
08:39 rindolf joined #perl6
08:48 rindolf joined #perl6
08:56 dakkar joined #perl6
09:00 FROGGS labster: abandon OS2 and others...
09:01 nwc10 VMS is very active in Perl 5 land. I would have run NQP-JVM on VMS, except that the system I have access to only has Java (1.)6
09:02 nwc10 I think the key things are
09:02 nwc10 1) maintain concepts of volume, directories and filename
09:02 nwc10 2) catfile and catdir need to be different operations, even if on most platforms they are the same
09:03 nwc10 and be aware that on Win32 at least, it's a current directory per volume.
09:05 FROGGS nr: our @a = 7
09:05 p6eval niecza v24-35-g5c06e28:  ( no output )
09:05 p6eval ..rakudo ffe441: OUTPUT«No such method 'STORE' for invocant of type 'Any'␤  in block  at /tmp/0wduKWCGi5:1␤␤»
09:05 FROGGS jnthn: can you give me a hint what I need to do there?
09:06 FROGGS jnthn: because copying some code from the scope-'my' branch of sub Perl::Actions::declare_variable to 'our' doesn't help
09:08 moritz FROGGS: do you understand the underlying problem?
09:08 jnthn Wildly copy-pasting code rarely fixes deeper problems :)
09:09 FROGGS moritz: no
09:09 FROGGS that's why I ask
09:09 jnthn Well, the key probably lies in the semantics of Stash.
09:09 moritz FROGGS: the problem is that symbol tables (Stash) are just glorified hashes
09:09 moritz FROGGS: and support no type constraints
09:09 moritz FROGGS: and no defaults
09:10 jnthn Which at present don't pay any attention to the names of the things being put in them
09:10 moritz so   my @a   is actually closer to  my Positional @a := Array.new()
09:10 moritz (ok, Positional @a is wrong, but you get the idea)
09:10 masak why does everyone keep making that mistake? :)
09:10 moritz there's a type constraint of Positional, and a default of Array.new
09:11 moritz and while lexical scopes support that concept, Stash does not
09:11 moritz so 'our @a' initializes @a to Any
09:11 moritz and list assignment calls @a.STORE
09:11 jnthn I think the eventual solution is that we want Stash to have a smarter at_pos that knows how to vivify things besides scalar containers, going on sigil or so
09:12 moritz jnthn: at_key instead?
09:12 jnthn uh, yes.
09:12 jnthn But today, Array and Hash containers lack any container-y thing we can attach such whence-y behavior to.
09:12 jnthn Which is one of the things pmichaud and I have been pondering may change.
09:19 FROGGS well, sounds like a plan
09:21 FROGGS I come around that problem because this is a common Perl 5 idiom: BEGIN { unshift @INC, '.' }, and declaring+assigning to our @vars
09:21 FROGGS for @INC I can dispatch that to @*INC though
09:23 FROGGS <jnthn> Wildly copy-pasting code rarely fixes deeper problems :) <--- but if you do that you get a feeling what you can do with the current ast or not, because it can't handle instantiate_generic for exampel
09:24 jnthn FROGGS: Yeah. We have some interesting design questions here, but largely they boil down to, "how smart should stashes be"
09:24 jnthn Oh! We could say that writing "our @a" actually installs something into the appropriate Stash at compile time
09:25 jnthn We could even bind a Scalar container into it to support the type constraints
09:25 jnthn Then we always know it's already there by the time we hit compile time...
09:30 labster FROGGS: Actually, from looking at the P5 OS/2 module, I decided that Win32 could probably handle it better than OS2.pm can.  Some code seems to handle UNC paths, others ignore it.  (Not to mention the random no-op substitutions).
09:31 labster nwc10: I am aware of the per-volume cwd thing on windows, though I don't have a working Cwd module, so I haven't thought *that* much about it.
09:37 labster VMS is up next, though I suspect it might give me some trouble.  The question I wanted to deal with is whether having IO::Path split into IO::File and IO::Dir subclasses (as currently specced) makes more sense, or to deal with just IO::Path objects.
09:39 am0c joined #perl6
09:41 FROGGS would be nice if you give the user an IO::File if it actually is a file
09:41 FROGGS so a user could smartmatch against it and doesn't has to check on its own
09:43 nwc10 is "File" vs "Dir" the correct abstraction? After all, on this file system I can also have at least symlinks, named pipes and character special devices
09:43 nwc10 (to list things that non-root programs might want to interact with)
09:44 labster ~~ IO::File vs. ~~ :f?
09:44 FROGGS I'd say a symlink to a file is a file, pipes and block devices are more like a file than a dir
09:44 FROGGS hmmm
09:44 FROGGS labster: you have a point there
09:45 nwc10 yes, with that I'd agree. directories hold other files, and have a different set of operations. The others all have a similar set of operations
09:45 nwc10 *until*
09:45 nwc10 you start having systems that can do fun things such as map archive files as directories
09:45 nwc10 (stuff can behave as the union of file-like and directory like)
09:45 FROGGS ya, but there is some glue code between that
09:46 seq99 joined #perl6
09:49 labster knowing that it's a file could save a stat call (well, 2 calls, given our current implementation).  But on most systems (i.e. not VMS), you don't know if a path is a file before calling stat anyway
10:06 Gruu_ joined #perl6
10:21 stevan_ joined #perl6
10:22 kresike joined #perl6
10:22 kresike hello all you happy perl6 people
10:25 FROGGS hi kresike
10:25 kresike hello FROGGS o/
10:25 kurahaupo joined #perl6
10:27 alino2 joined #perl6
10:28 kurahaupo left #perl6
10:29 woolfy1 left #perl6
11:02 xinming joined #perl6
11:20 colomon joined #perl6
11:21 Bzek joined #perl6
11:22 census joined #perl6
11:41 shlomif joined #perl6
11:49 rindolf joined #perl6
12:15 dalek v5: bb0fa8e | (Tobias Leich)++ | lib/Perl6/P5 (2 files):
12:15 dalek v5: dispatch @INC to @*INC
12:15 dalek v5: review: https://github.com/rakudo-p5/v5/commit/bb0fa8e727
12:33 [Coke] I am dealing with java's "magically map zip files as filesystems" stuff in 1.7 now. Had to workaround their desire to slurp the file into memory before writing it out to the zip file. :P
12:33 [Coke] (so don't do that particular mistake)
12:34 masak leaky abstractions strike again.
12:37 Chandra joined #perl6
12:37 Chandra hi
12:37 Chandra hy
12:37 [Coke] hi
12:38 [Coke] Welcome to #perl6
12:38 Chandra how i can create IRC Channel?
12:38 Chandra thanks
12:38 Chandra how i can create IRC Channel?
12:39 [Coke] try to /join a channel that doesn't exist.
12:39 tadzik did you wish to create a Perl 6 channel? There already is one :)
12:39 Chandra no
12:39 Chandra i want to create IRC Channel for samp server
12:39 masak Chandra: welcome. :) it is as they say, just do "/join samp-server" or so
12:40 Chandra not create?
12:40 masak entering a nonexistent room creates it.
12:40 Chandra how?
12:41 masak that's an interesting question, though to a first approximation, that's just how IRC does it.
12:41 Chandra ,,,
12:41 Chandra ...
12:41 masak whether or not you understand the mechanics of it, that's how it is done. :)
12:41 FROGGS Chandra: klick on #samp-server
12:42 FROGGS (maybe right click)
12:42 masak oh, a webchat user.
12:42 Chandra i am join samp-server now
12:42 masak \o/
12:42 FROGGS :o)
12:42 masak FROGGS++
12:42 masak Chandra: do you live in Russia?
12:49 pmichaud good morning, #perl6
12:49 moritz good am, pm
12:51 masak pmichaud! \o/
12:54 FROGGS hi pmichaud
12:57 stevan_ joined #perl6
12:57 [Coke] how does #perl6 end up being the first place people who don't know how to use IRC come to?
12:57 [Coke] weird.
12:57 FROGGS [Coke]: no idea
12:57 moritz [Coke]: maybe some weird google karma sending people the freenode web chat when they google for IRC + something
13:00 masak maybe all channels get that to some extent.
13:00 masak or all popular (>150 users) channels, or something.
13:01 masak speaking of which, why are there always 200 nicks in here? is there an upper limit of 200?
13:01 pmichaud google "irc newcomer perl" and see what you get :-)
13:01 gtodd joined #perl6
13:03 gtodd is there a single place/page where one can find "testimonials" re: perl 6  ?
13:04 pmichaud afk, kid to school
13:05 gtodd people just use perl5 and let it speak for itself but "new" languages seemingly have marketing departments ... http://fsharp.org/testimonials/
13:06 masak gtodd: hi, I'm a satisfied Perl 6 user. what would you like to hear? :)
13:06 gtodd heheh please describe your latest "enterprise solution" or theoretical physics breakthrough haha
13:07 masak :)
13:08 fhelmberger joined #perl6
13:08 masak gtodd: I am runnning my blog on Perl 6. have been since September 2010. it is very stable and reliable. I have full control and can extend it however I want.
13:08 masak gtodd: http://strangelyconsistent.org/blog/d​og-food-with-a-distinct-perl6-flavor
13:08 masak gotta catch a train. I bet there are others in here who can give you more in terms of testimonials, however.
13:09 gtodd I have good news and bad news ... parrot and perl6 allowed me to see several quasars ... unfortunately they are headed this way and will arrive within the next 50000 years ... so there may not be time to develop perl7 ... badumdump!
13:09 gtodd masak: thanks for that
13:10 arlinius joined #perl6
13:14 tadzik gtodd: maybe not your usual testimonial, but I used to make my living on Perl 6 and I've built my entire professional career on that :)
13:14 tadzik so at least the educational value is high
13:15 bluescreen10 joined #perl6
13:17 kaare_ joined #perl6
13:18 gtodd tadzik: :) good ... I notice Microsoft technologies (and other languages too but esp. Microsoft) seem to target "molecular analysis" "genetics data" etc. etc. and areas where perl is strong and sometimes wonder if it is a concerted strategy.  Personally I just have tiny scripts that have been fun and fairly easy to convert to perl6 code so I have no career at stake :)
13:19 PacoAir joined #perl6
13:21 timotimo well, many (at least a few, didn't check in a long time) of the problems from rosalind have solutions in perl6
13:45 rindolf joined #perl6
13:57 stevan_ joined #perl6
14:09 seq99` joined #perl6
14:10 census_ joined #perl6
14:12 census joined #perl6
14:22 xalbo joined #perl6
14:23 Psyche^ joined #perl6
14:23 fhelmberger joined #perl6
14:33 daxim joined #perl6
14:34 [Coke] Hey, nwc10, you gonna help us add EBCDIC to rakudo?
14:34 * [Coke] runs.
14:38 xilo joined #perl6
14:42 mtk joined #perl6
14:52 japhb [Coke], as well you should run!
14:52 nwc10 [Coke]: I have no access to any EBCDIC platforms. Even if I did, I wouldn't help. It's a counter-productive diversion of limited resources.
14:53 mtk joined #perl6
14:54 masak ah, the old "serious reply to tongue-in-cheek question" comeback. :)
14:57 daxim I imagine he's grinning like he's wont to
14:58 nwc10 it's the polite version for a publicly logged channel
14:58 nwc10 now, please keep distracting me whilst I type my root password into the wrong window...
14:59 [Coke] nwc10: there is still ebcdic support in p5, aye?
14:59 nwc10 s/aye/sigh/
14:59 [Coke] ISTR you were nosing around ripping it out at one point.
14:59 nwc10 it was severly bitrotted
14:59 daxim user: chocolate  pw: teapot
14:59 nwc10 someone from IBM, at the 11th hour and then some
15:00 nwc10 has started actually trying to get it back to working
15:01 nwc10 but this also consumes committer time
15:01 nwc10 and it's not clear, at the end of this, whether anyone will set up a smoke server to let us know that it's still working
15:02 nwc10 meanwhile, as long as the UTF-EBCDIC code remains (not just the EBDIC vs ASCII code), the UTF-8 handling code has to be aware of EBCDIC
15:03 nwc10 which is a lot of complexity cost, for the benefit of about 0 users. "About", because it's just recently moved from 0 active to 1 active.
15:04 nwc10 after maybe 5 years of 0 contributing users.
15:04 [Coke] the web page for utf-ebcdic seems to eschew it in favor of utf-16
15:05 kresike bye folks
15:06 nwc10 I wasn't aware of that. But as far as the Perl 5 internals go, they make a massive set of assumptions that the internal character set they are dealing with is some variant where characters in the ASCII set (whether encoded as ASCII or EBCDIC) are represented as 1 octet
15:06 nwc10 so using UTF-16 on an EBCDIC platform is about as useful as using UTF-16 on a "UTF-8" platform
15:07 nwc10 anyway, the flippant answer is "no, I won't help you add it. But I'll help you remove it"
15:08 stevan_ joined #perl6
15:10 [Coke] nwc10: good answer. I only brought it up because some folks on my alum chat server were talking about ebcdic in perl earlier this morning.
15:25 dmol joined #perl6
15:27 kurahaupo joined #perl6
15:27 kurahaupo left #perl6
15:28 salv0 joined #perl6
15:28 yx joined #perl6
15:29 kurahaupo1 joined #perl6
15:31 xenoterracide joined #perl6
15:32 renormalist joined #perl6
15:33 kaleem joined #perl6
15:33 kurahaupo joined #perl6
15:36 xenoterracide joined #perl6
15:38 thou joined #perl6
16:05 dmol joined #perl6
16:15 arnsholt jnthn: A question about hllconfig stuff. On JVM things are stored in the HllConfig class, which lives in a couple of different things AFAICT. On Parrot, does it make sense to just have a HLL config hash living in the global context and fetching stuff from it with ops?
16:15 arnsholt Or did you have something different in mind?
16:21 kurahaupo joined #perl6
16:26 awwaiid joined #perl6
16:48 lizmat joined #perl6
16:50 Chillance joined #perl6
16:54 * [Coke] takes a nap while rakudo does a build and test run.
16:58 PacoAir joined #perl6
17:03 lizmat joined #perl6
17:04 FROGGS joined #perl6
17:19 jnthn arnsholt: Well, lookups of hll stuff can be hotpath-y. And doing everything with virtual calls and hash lookups is kinda a performance anti-pattern.
17:20 arnsholt That's definietly true
17:21 nwc10 but think of the poor CPU manufacturers. And their shareholders
17:21 domidumont joined #perl6
17:21 arnsholt What things in NQP/Parrot correspond to the JVM thingies we hang the configs off, though?
17:23 jnthn arnsholt: That's the bit I need to ponder a little.
17:23 jnthn Parrot already has some notion of HLL stuff.
17:23 arnsholt True, true
17:23 jnthn And we already convey current HLL that way.
17:25 arnsholt Indeed
17:26 jnthn We maybe shouldn't worry too hard on the performance angle of this, though. I mean, I suspect even if it's hot-path-ish, it'll still be swamped by stuff like Parrot's invocation overhead.
17:27 arnsholt That's a possibility as well, yeah
17:27 arnsholt In that case I'll implement it that way for now, and we can worry about refactoring once we have something measurable
17:28 jnthn *nod*
17:29 arnsholt I'm timesharing my NQP tuits with the annoying callback segfault as well
17:29 arnsholt I've no idea what's going on =(
17:29 jnthn To me, much of this work is really about getting Rakudo/NQP on Parrot sufficiently aligned with how it'll be on every other backend so we don't have to fight bugs/breakages or maintain different versions of stuff 'cus of discrepancies.
17:30 arnsholt Definitely
17:30 jnthn On the callback thing - it isn't a missing write barrier, I guess?
17:30 arnsholt That's another reason I want to set up something emmentalery for NQP and Rakudo
17:30 arnsholt Oh!
17:31 arnsholt That might be it
17:31 * masak .oO( Emmentalery, my dear Watson )
17:32 geekosaur pretty cheesy if you ask me
17:32 arnsholt (Re: Emmentalery) I suspect that with multiple backends, we really can't rely on developers testing manually to keep tabs on the state of things, which is more or less what we have ATM
17:32 dalek perl6-roast-data: 145a7c1 | coke++ | / (3 files):
17:32 dalek perl6-roast-data: today (automated commit)
17:32 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/145a7c1817
17:33 jnthn arnsholt: Yes, agree it will become very important.
17:33 thou joined #perl6
17:36 SamuraiJack joined #perl6
17:38 lizmat joined #perl6
17:43 djanatyn joined #perl6
17:57 atta_ joined #perl6
18:10 jnthn dinner &
18:11 lizmat joined #perl6
18:16 sqirrel joined #perl6
18:18 spider-mario joined #perl6
18:18 SamuraiJack joined #perl6
18:48 Tene joined #perl6
18:48 arnsholt Further continuing my testing thoughts, what I want, ideally, is something I can set up to be run as a cronjob every night on my work machine for example
18:49 masak I wonder how self-contained it could be made.
18:50 masak something that you set up once, and then it builds and tests nqp and Rakudo.
18:50 masak regularly.
18:51 [Coke] masak: kind of like perl6-roast-data? :P
18:52 arnsholt masak: Exactly! Since I'm completely Unix-brainwashed, that means cronjob =)
18:52 [Coke] (I'll definitely add rakudo-jvm once that can run the test suite.)
18:52 arnsholt And with some further hackery (and a webservice on feather), it can automatically submit the reports afterwards and we can look at them in the aggregate
18:53 arnsholt I want it to be as self-contained as at all possible, so that it's essentially fire-and-forget
18:54 arnsholt Both for one-off runs and repeated ones
18:58 masak yes, that's what I mean. essentially a package that you can download and deploy easily.
19:01 arnsholt Yup
19:02 arnsholt I think that's the only way we can expect to get non-core people to contribute sporadically
19:03 colomon I've been meaning to get a cron smoke test running myself, if someone else does the hard work I'd certainly be happy to have my Linux box run it.
19:10 raiph .oO ( p6 might be a good fit for Ubuntu Kylin )
19:11 diakopter "Another assumption has been that if we don't talk about something in these Synopses, it's the same as it is in Perl 5. Soon we plan to fill in the gaps with the Perl 5 details though." - S01   - I wonder how big this set of features is... very big at all?
19:12 diakopter [I'm sure at the time the last sentence was written, the language was thought to be more similar to Perl 5, and the Synopses were far shorter.]
19:12 masak diakopter: it almost feels like that first sentence is more for guiding language design than for explaining gaps in the synopses.
19:13 masak but yes, maybe that's an after-the-fact thought.
19:14 lizmat gong through S02, I found some places that referred to perl 5
19:15 lizmat maybe they should be improved to not mention perl 5 ?
19:16 masak mentioning Perl 5 per se isn't so bad. no-one is denying the intellectual heritage between the two languages. :)
19:17 flussence p6 has the unenviable task of specifying unspecced behaviour that people have been relying on for 2 decades, sort of like the WHATWG's work... (except nobody complained that they took over 10 years)
19:17 PerlJam masak: aye, but sentences like "Non-container types define truthiness much as Perl 5 does." could use a little less P5 IMHO
19:18 masak oh, agreed.
19:19 diakopter well "Soon" in S01 definitely needs fixed, unless the comedic effect is now intended - http://www.nntp.perl.org/group/perl.​perl6.language/2006/09/msg26170.html
19:21 PerlJam "Soon we plan", not "soon we will fill the gaps"   Maybe the plan has already been sooned :)
19:21 masak heh - "needs fixed". :)
19:25 census joined #perl6
19:28 labster good afternoon, #perl6
19:32 labster I've decided that I need to improve S05 by defining the backslash sequences somewhere, instead of just hitting man perlreref.
19:36 PerlJam labster: you mean for the character class shortcuts?  like \s and \w and such?
19:37 labster Yeah.  It also needs to mention what was taken out in S02, like \l and \u.
19:37 PerlJam I *think* backslash sequences are _only_ character class shortcuts now.
19:38 PerlJam \b is now <|w>
19:38 PerlJam (for instance)
19:38 PerlJam and yes, \l \L \u and \U are gone
19:39 FROGGS \Q and \E are gone too AFAIK
19:39 labster yeah.
19:40 labster "The \L...\E, \U...\E, and \Q...\E sequences are gone. In the rare cases that need them you can use <{ lc $regex }> etc.  The \G sequence is gone. Use :p instead"
19:40 PerlJam If that's true, then a nice section header would be  "Character class shortcuts"  :-)
19:40 labster It's tells you what's gone... just not what's present!
19:42 census labster ++
19:46 [Coke] karma bot?
19:49 timotimo oh, you can just call lc $regex? that sounds quite awesome
19:49 timotimo hm, i wonder now what kinds of manipulations one can apply to a regex in perl6
19:50 moritz you can call it
19:50 moritz you can embed it into another regex
19:51 moritz which is roughly the same that you can do with any other callable
19:51 timotimo is there any sense to wrapping a regex?
19:51 flussence .oO( regexes - boil 'em, mash 'em, stick 'em in a stew... )
19:53 timotimo :)
19:53 timotimo .o( wut's rexes eh? )
19:54 geekosaur rex regis
19:55 moritz timotimo: as in  / ^ \w+ $other_regex /
19:55 tadzik rebellis! \o/
19:55 timotimo moritz: i kind of thought about actually using the wrap method on the regex object
19:56 orafu joined #perl6
19:58 census <[Coke]> :(
19:58 lizmat rn: my Set %set= <foo bar baz>; say %set
19:58 p6eval niecza v24-35-g5c06e28: OUTPUT«Unhandled exception: Unmatched key in Hash.LISTSTORE␤  at /tmp/r0GKCNucO2 line 1 (mainline @ 2) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4300 (module-CORE @ 583) ␤  at /home/p6eval/niec…
19:58 p6eval ..rakudo ffe441: OUTPUT«Nominal type check failed for parameter '$x'; expected Set but got Str instead␤  in method STORE_AT_KEY at src/gen/CORE.setting:6796␤  in method STORE at src/gen/CORE.setting:6730␤  in block  at /tmp/moV6hgBUG5:1␤␤»
19:59 lizmat seems I miss some adverb to turn the quoted word list into a set
20:00 lizmat I know we have map, but wonder whether you can do without in Perl 6
20:00 timotimo rn: my Set $s = <foo bar baz>; say $set;
20:00 p6eval niecza v24-35-g5c06e28: OUTPUT«[31m===[0mSORRY![31​m===[0m��Variable $set is not predeclared at /tmp/T5HcagPruI line 1:�------> [32mmy Set $s = <foo bar baz>; say [33m�[31m$set;[0m��Potential difficulties:�  $s is declared but not used at /tmp/T5HcagPruI line 1:�------> [32mmy S…
20:00 p6eval ..rakudo ffe441: OUTPUT«[31m===[0mSORRY!​[31m===[0m�Variable '$set' is not declared�at /tmp/Uvw2rPniq_:1�------> [32mmy Set $s = <foo bar baz>; say $set[33m�[31m;[0m�    expecting any of:�        postfix�»
20:00 timotimo er, oops
20:00 timotimo rn: my Set $s = <foo bar baz>; say $s;
20:00 p6eval rakudo ffe441: OUTPUT«Type check failed in assignment to '$s'; expected 'Set' but got 'Parcel'␤  in block  at /tmp/yKo2E3Uixh:1␤␤»
20:00 p6eval ..niecza v24-35-g5c06e28: OUTPUT«Unhandled exception: Nominal type check failed for scalar store; got Parcel, needed Set or subtype␤  at /tmp/OWTHpEM4iV line 1 (mainline @ 2) ␤  at /home/p6eval/niecza/lib/CORE.setting line 4299 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 43…
20:00 timotimo hm, well ...
20:01 lizmat indeed, sorry for the variable mismatch  :-)
20:01 timotimo no, i made the variable mismatch
20:01 timotimo er ... or something
20:01 PerlJam r: my $s = set <foo bar baz>; say $s;
20:01 p6eval rakudo ffe441: OUTPUT«set(foo, bar, baz)␤»
20:01 lizmat aha!
20:02 leont joined #perl6
20:03 * colomon apologize for not reading at the moment someone was asking Set questions....
20:03 PerlJam colomon: that's an odd thing to apologize for  :)
20:04 colomon PerlJam: there was a lot of experimentation there doing stuff I could have answered in a moment.  :)
20:09 timotimo the solution was surprisingly obvious and should have been clear to me the moment i saw what the error message was :|
20:11 PerlJam timotimo: well, if there's one thing I've learned over the years on #perl, is that even "obvious" things sometimes aren't.  that's why the Postel Principle is so important.
20:11 PerlJam (well, one of the reasons it's important :)
20:12 lizmat rn: my $s= <foo bar baz> :set; say $s
20:12 p6eval rakudo ffe441: OUTPUT«[31m===[0mSORRY![31m===[0m�You can't adverb that�at /tmp/NkRQ2L9Gzn:1�------> [32mmy $s= <foo bar baz> :set[33m�[31m; say $s[0m�    expecting any of:�        pair value�»
20:12 p6eval ..niecza v24-35-g5c06e28: OUTPUT«[31m===[0mSORRY![​31m===[0m��You can't adverb that at /tmp/DLpGhW9nWY line 1:�------> [32mmy $s= <foo bar baz> :set[33m�[31m; say $s[0m��Unhandled exception: Check failed��  at /home/p6eval/niecza/boot/lib/CORE.setting line 1443 (die @ 5) �  at /hom…
20:12 timotimo ah, mhm.
20:12 lizmat rn: my $s= <foo bar baz>.set; say $s
20:12 p6eval rakudo ffe441, niecza v24-35-g5c06e28: OUTPUT«set(foo, bar, baz)␤»
20:12 moritz consistent error messages \o/
20:12 lizmat hehe
20:12 PerlJam (using "adverb" as a verb)++  :-)
20:13 [Coke] you mean "the Evil Postel Principle". :P
20:14 * lizmat was never any good with natural languages
20:14 timotimo moritz: the number of newlines don't match up! :o
20:15 lizmat anyway, what I wanted was a quick way to check if all elements in an array where the same
20:16 lizmat rn: my @a= <foo foo foo>; say @a.set.elems == 1
20:16 p6eval rakudo ffe441, niecza v24-35-g5c06e28: OUTPUT«True␤»
20:16 lizmat is what I winded up with in the end
20:17 timotimo r: my @a = <foo foo foo>; say all(@a) == all(@a); my @b = <foo foo foo bar>; say all(@b) == all(@b);
20:17 p6eval rakudo ffe441: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '⏏foo' (indicated by ⏏)␤  in method Numeric at src/gen/CORE.setting:10620␤  in sub infix:<==> at src/gen/CORE.setting:2919␤  in sub infix:<==> at src/gen/CORE.setting:2917␤  in s…
20:17 timotimo er, wrong comparison
20:17 timotimo r: my @a = <foo foo foo>; say all(@a) eq all(@a); my @b = <foo foo foo bar>; say all(@b) eq all(@b);
20:17 p6eval rakudo ffe441: OUTPUT«all(all(True, True, True), all(True, True, True), all(True, True, True))␤all(all(True, True, True, False), all(True, True, True, False), all(True, True, True, False), all(False, False, False, True))␤»
20:18 timotimo r: my @a = <foo foo foo>; say so all(@a) eq all(@a); my @b = <foo foo foo bar>; say so all(@b) eq all(@b);
20:18 p6eval rakudo ffe441: OUTPUT«True␤False␤»
20:18 timotimo :D
20:18 timotimo this solution is probably only 100000x slower
20:18 timotimo (for sufficiently small input lists)
20:18 PerlJam https://github.com/perlpilot/benchmark/  time them  :-)
20:20 timotimo good idea
20:20 timotimo the algorithmic complexity class for one is far below the other, though
20:21 timotimo so not only is there probably a huge constant factor due to how slow junctions are (have to be constructed at each run), but also the efficiency of using a hash will cause some major differences
20:27 timotimo 10000 may have been a bit much for such slow code :D
20:29 kurahaupo joined #perl6
20:29 sorear joined #perl6
20:34 lizmat rn: my @a= <foo> xx 10000; say @a.uniq.elems == 1
20:34 p6eval rakudo ffe441, niecza v24-35-g5c06e28: OUTPUT«True␤»
20:34 * lizmat just learned of using .uniq rather then set
20:38 [Coke] you could also use a KeySet.
20:38 [Coke] er... sorry, a Bag.
20:38 FROGGS a BagSet?
20:39 * masak .oO( $bilbo = Bag.end )
20:40 [Coke] (the bag lets you know how many foos you had, which you may not care about.)
20:51 timotimo wow, what? the difference in time for junction vs set isn't that huge. i should add more items.
20:52 gtodd in chromatic's perl6 critical agonistes (http://www.modernperlbooks.com/mt/2012/12/the​-implementation-of-perl-5-versus-perl-6.html) the LuaVM is mentioned ... is there a serious effort to make perl6 run on the LuaVM ?
20:53 rurban p2 is a serious effort to run p6 on something based on the luavm (perl11.org/p2), and fperrad uses LuaJIT also as p6 backend
20:55 gtodd cool thanks ... since I'm not a language implementor the advantages/disadvantages of parrot vs luavm vs whatever are beyond me .. I'm only interested in there being good ways to run perl6  :)
20:55 FROGGS hmmm, good way to run perl6 for are like: sudo apt-get install perl6
20:56 FROGGS I don't really care what vm it is
20:56 am0c joined #perl6
20:56 [Coke] I don't think I've ever seen someone talk about running perl6 on lua in this channel. I wonder how recent fperrad's efforts are.
20:56 gtodd (although that article seems fairly disheartening about parrot ... so much so I thought it was some kind of meta pun/joke regarding the monty python parrot sketch)
20:57 rurban I couldn't get a decent answer from chromatic, but I guess he meant pcc and m0
20:57 [Coke] gtodd: chromatic had a falling out with the perl6/parrot efforts some time back.
20:58 gtodd " Parrot's current use case. "What's it for?" he asked. "What does it do well? What is it supposed to do?" "   :-|
20:58 gtodd ah ok
20:58 grondilu joined #perl6
20:58 diakopter rurban: you've abandoned potion?
20:58 rurban He wanted to have less C, because he timed the C call overhead as major culprit
20:59 gtodd [Coke]: well hopefully everything will be all fine and modern in the future
20:59 rurban diakopter: The perl part of potion is called p2
20:59 [Coke] rurban: the context switchign between C and parrot, aye?
20:59 diakopter rurban: how does lua fit in?
20:59 rurban potion is the vm , but I changed a lot so far.
20:59 gtodd Modern Parrot ... that is
20:59 rurban diakopter: potion is based on the lua vm (with soime mixos from IO and other vms)
21:00 rurban The internal bytecode is 90% lua
21:00 diakopter I see, ok; thx
21:00 rurban Coke: Yes the context switching he was talking about
21:01 rurban Which would have been fixed with lorito
21:01 [Coke] rurban: how close are you to running, e.g. the spec test suite using this setup? (if not yet, let me know when so I can add you to the perl6-roast-data info.
21:01 PerlJam FROGGS: I used to care about the VM for Perl 6, but lately I've been more like you.  I don't care what VM is used as long as it can run Perl 6 and at least have promise of speed.
21:01 gtodd potion!?!? wasn't that a mysterious why the lucky stiff thing?
21:02 PerlJam gtodd: mysterious?  It's just another little language/VM
21:02 diakopter mysterious because he and therefore all his stuff is mysterious, I surmise
21:02 rurban gtodd: yes, unfortunately it has an dead upstream author
21:03 rurban I tried to contact home when I was in Provo, but apparently the ruby guys tortured him too much
21:03 dmol joined #perl6
21:03 rurban => contact him
21:04 gtodd mysterious as in "why the lucky stiff"  vanished || became a professional deep powder snowboarder || invented bitcoin or ....
21:04 gtodd _why had many projects
21:04 rurban syck sucks, but potion was good
21:06 dmol joined #perl6
21:06 * masak .oO( I quaffed it and it was good )
21:06 bbkr joined #perl6
21:06 FROGGS .seen pmurias
21:06 yoleaux I saw pmurias 1 Apr 2013 11:40Z in #perl6: <pmurias> http://pastie.org/7267265
21:07 timotimo masak: don't just quaff anything and everything you find on the dungeon floor!
21:08 japhb_ joined #perl6
21:08 gtodd is it somehow more possible to write/rewrite/modify/invent vm "backends" because of nqp  ? or is nqp only a layer for parrot<->perl6 ?
21:08 gtodd sorry for naïve questions ...
21:09 [Coke] gtodd: there is work to port nqp to the jvm.
21:09 [Coke] right now it is is functional on parrot, and actively being targetted to the jvm. (hopefully future backend targets will be easier due to the initial porting work by jnthn++ to the jvm)
21:09 rurban nqp is kinda stage1 bootstrap compiler for perl6, for parrot(pir), jvm, ...
21:09 timotimo yeah, and if you have a nqp that outputs bytecode on your new vm, you can crosscompile an nqp to live on that vm and then you can try to make rakudo work on top of your vm with not terribly much work
21:09 PerlJam gtodd: you could say that nqp allows for a layer of abstraction such that other VMs are possible.
21:10 japhb_ gtodd, NQP is a smaller, somewhat lower level subset of Perl 6, so easier to port it to other backends than a direct Rakudo-on-Parrot would be, and easier to write complex features in than a pure Rakudo-on-VM (any VM) would be, because the implementor can think at a higher level than the raw VM.
21:10 PerlJam gtodd: what japhb_ said  :)
21:11 masak timotimo: but my inventory is full...
21:11 gtodd ok grokked ....   since perl6/parrot seems "fast enough" for everything I do I just expected it to evolve to be fast enough for everyone ... I only have bad experience with java (but this is from more than 8 years go) and never associate per land java in the same mental space :-)
21:11 PerlJam masak: you've been eaten by a grue.
21:11 masak oh shucks.
21:14 PerlJam masak: luckily, he swallowed you whole and so you've been able to pass through his gastroinestinal tract with very little damage (save the scars on your soul), and now you're slowing exiting the grue's sphincter.
21:14 timotimo someone mentioned there's a parrot-based opengl library. is that thing still somewhere to be found and could it work? i'd like to see if i can get any decent framerate at all when displaying a few triangles or something :)
21:14 japhb_ .oO( ... you might want to find the shower on the next level )
21:15 japhb_ timotimo, it worked when I wrote it.  :-)
21:15 japhb_ But I haven't touched that code in years, and it was ripped out of Parrot's sixparrot branch a month-ish ago.
21:15 rurban but sixparrot stripped opengl
21:15 rurban it still works on current parrot and perl6 though
21:16 japhb_ It was a sad moment, but one I understand.
21:16 timotimo japhb_: do you have an intuition how hard it would be to write a binding for perl6 that parses header files or something to generate a zavolaj binding?
21:16 PerlJam speaking of sixparrot ... does anyone know off-hand how that's progressing?  Coke?
21:17 rurban There was a working cpp and c parrot language once.
21:17 japhb_ timotimo, I fake-parsed the OpenGL headers (regexes looking for easy patterns), and aside from a few things poorly supported in Parrot, it went pretty well.
21:17 japhb_ The biggest single problem was callback handling, which was really suboptimal in Parrot back then.
21:18 timotimo but it's better in zavolaj except there's a bug with the gc :D
21:18 japhb_ Also, ISTR someone is writing a C grammar, so you could probably real-parse the headers with that.
21:18 [Coke] PerlJam: I worked on it for a few weeks, and then $DAYJOB.
21:18 timotimo hm. but i don't really see where callbacks happen at all in opengl
21:18 japhb_ GC bugs: hate 'em.
21:18 [Coke] same problem with any parrot development. Just not enough tuits.
21:18 masak PerlJam: my gratitude knows no bounds.
21:18 japhb_ timotimo, the windowing library: GLUT, EGL, etc.
21:18 timotimo ah, yeah, that makes sense
21:19 japhb_ s/windowing library/windowing system interface/abstraction library/
21:19 timotimo TBH, i'd try to get SDL to work for that
21:19 japhb_ Back when I was working on that, SDL's OpenGL support was there, but LTA.  Hopefully it has improved.
21:19 timotimo when i try to do opengl in some way, i've - until now - always used SDL, Qt or (once) sfml2
21:20 timotimo if you mean SDL itself, then yeah, that support is there. if you mean the binding: all that's really needed is the OPENGL flag for creating the primary surface
21:21 FROGGS japhb_: I'm afraid but SDL's opengl stuff has not improves...
21:21 FROGGS *improved
21:22 timotimo enlighten me, what's missing?
21:22 FROGGS timotimo: well, you can pass the flags :o)
21:22 flussence I wonder if sdl2's any better...
21:22 timotimo flussence: i hear it has lots more stuff working on opengl
21:22 timotimo also, a promise for multi-mouse support, which i find pretty neat (but the last time i looked it was completely missing)
21:22 FROGGS flussence: had no chance to look at it, but will due the perl6 bindings next year or so
21:23 flussence sweet, maybe that'll motivate me to write graphics code :)
21:24 timotimo wow, "next year"? you're planning long-term!
21:24 * diakopter giggles at the use of "working" above
21:24 FROGGS timotimo: well, this year is v5 year :o)
21:24 timotimo oke
21:24 diakopter "it didn't format my hard disk!"
21:28 masak 'night, #perl6
21:29 timotimo night masak!
21:29 japhb_ o/ masak
21:30 FROGGS night masak
21:31 census goodn ight masak!
21:31 timotimo the benchmark is still running :|
21:32 timotimo i may have added too much data
21:32 lichtkind hej good advertising for perl 6 my p6 talk in berlin got great ratings
21:32 timotimo lichtkind: is there a recording?
21:32 FROGGS timotimo: not yet available
21:32 lichtkind it will be online soon
21:32 timotimo OK
21:33 timotimo i'd like to get pinged at that time if that's okay
21:34 FROGGS timotimo: will do
21:35 leont left #perl6
21:36 timotimo i hope the audio quality is sensible
21:37 Tene timotimo: years ago, I put together EFL bindings for parrot.  You could consider resurrecting EFL bindings for Perl 6.
21:37 timotimo that's the stuff from enlightenment, yes?
21:39 rindolf joined #perl6
21:39 Guest61242 joined #perl6
21:40 timotimo Tene: sell me, what's the cool stuff it allows?
21:41 census hey!  may i ask for some help with installing a p5 package into cygwin or is that 100% improper?
21:41 japhb_ improper
21:41 PerlJam census: this is still #perl6
21:42 PerlJam census: #perl _6_
21:42 diakopter that's like the 20th time
21:42 Tene timotimo: stateful 2d canvas is nice; edje is a high-level library for intelligent gui objects that react to signals from the application.  You can take a look at the half-assed game I started at http://github.com/tene/shittygame
21:42 FROGGS census: go to #win32 on irc.perl.org
21:42 sorear census: I would not object
21:42 japhb_ tene, that URL pretty much defines underselling the product ....
21:43 Tene japhb_: that url oversells its contents.
21:43 japhb_ Wow
21:43 Tene It's just half-assed screwing around.
21:43 diakopter census: I'm curious what your question is, because I'm curious how difficult it is to find the answer on google
21:44 Tene you fly this around on a field of squares: https://raw.github.com/tene​/shittygame/master/ship.png
21:44 Tene If I ever get anything fun together, I'll rename it.
21:45 FROGGS what I always miss in these repos is a screenshot of how the game looks like (even if there is not that much to see)
21:46 Tene FROGGS: install the EFL, get it running, and submit a pull request. ;)
21:46 timotimo looks like quite a bit of boilerplate, or am i just reading it wrong?
21:46 anocelot diakopter: lmgtfy?
21:47 FROGGS Tene++ # hehe, yeah
21:48 diakopter anocelot: yep, once I construct the right query
21:48 sorear I don't remember #perl6 being this *hostile*
21:49 diakopter I should be more clear. I would like to be helpful to census by imparting search engine skills
21:49 Tene timotimo: I'd think you're reading it wrong, but I'm curious how it differs from what you'd expect.  Make an object, position it, size it, display it.
21:50 Tene timotimo: I'd be interested if you could paste a snippet that looks boilerplatey to you and what you'd like an ideal API to have provided.
21:50 Tene at least some of the difference will be due to C, I suspect.
21:50 FROGGS census: http://lmgtfy.com/?q=how+to+in​stall+a+perl+module+on+cygwin
21:50 timotimo right, C probably does a lot for that
21:50 FROGGS census: the first answer (the one with the big 5 on the left) is good
21:51 FROGGS diakopter: see ----------^
21:51 timotimo i was surprised to see you build your own vector rotate function and then have a function from EFL do some rotation as well
21:51 xenoterracide joined #perl6
21:51 timotimo but i see why that's the way it is now
21:51 diakopter FROGGS: I suspect census was asking about a particular module, but maybe not
21:52 timotimo yeah you're right, it kind of does look near optimal for C code
21:52 FROGGS diakopter: ahh, mabbe, dunno :o)
21:53 grondilu guys, any idea on how to make this faster: https://gist.github.com/grondilu/5296557 ?
21:54 grondilu is $a < $x < $b slower than $a < $x and $x < $b for instance?
21:55 sorear in niecza, $a < $x < $b will be infinitesimally slower when $x is a variable, and much faster if $x isn't
21:55 diakopter perhaps infinitesimally slower to compile, I'd imagine, but not otherwise
21:55 timotimo or $x ~~ $a ^...^ $b
21:55 sorear because it stores a copy of the middle value to avoid evaluating it twice
21:55 timotimo sorear: doesn't it have to do that to comply to specs?
21:55 census FROGGS: yes it was a very specific module.  i have installed about 20 today no problem.  cannot get this last one.
21:56 grondilu then I wonder why this code is so slow.
21:56 sorear $x ~~ $a ^...^ $b is a syntax errror.  $x ~~ $a ^..^ $b is going to be rather slower because it creates a Range object on each evaluation
21:56 * grondilu has an idea
21:56 xilo joined #perl6
21:57 timotimo oke
21:58 timotimo hm, so infix:<..> isn't marked as pure. i wonder why that is.
21:58 diakopter census: does it [or one of its dependencies] fail tests?
21:58 census yes
21:58 xenoterracide joined #perl6
21:58 census so then i tried to install the dependency separately
21:58 diakopter have you looked at the platform compatibility matrix on search.cpan.org for that module/cygwin?
21:59 diakopter (because it's quite possible the maintainer just hasn't made it supported on cygwin, for any number of a thousand reasons, including that it's impossible)
21:59 census i have installed it before on active  perl without difficulty.
22:00 census i did not look for compatability matrix.
22:00 census i did not know there were compatability matrices
22:00 diakopter cygwin's entries are kinda sparse, though
22:01 bbkr joined #perl6
22:01 * grondilu tried to spare one loop:  https://gist.github.com/grondilu/5296557
22:01 diakopter activeperl falls under mswin32, along with strawberry, iiuc
22:01 census diakopter: may i ask how to find a comptability matrix?
22:02 diakopter sure; click on the link at the top of a code listing to get to the module's page
22:02 census i googled that term and did not find it for the module of interest
22:02 census i'm at the module's page
22:02 diakopter I didn't use the right words
22:02 timotimo oh, interesting
22:02 diakopter search for matrix
22:02 timotimo rn: sub bark { say "arf"; 10 }; say so 5 < bark < 10; # syntax error
22:02 p6eval rakudo ffe441: OUTPUT«[31m===[0mSORRY![31m===[0m�Unable to parse expression in quote words; couldn't find final '>'�at /tmp/s3ajonnQbE:1�------> [32m }; say so 5 < bark < 10; # syntax error[33m�[31m<EOL>[0m�    expecting any of:�        argument list�        prefix or term�     …
22:02 p6eval ..niecza v24-35-g5c06e28: OUTPUT«[31m===[0mSORRY![31m​===[0m��Preceding context expects a term, but found infix < instead at /tmp/uLlBQd9jYF line 1:�------> [32mbark { say "arf"; 10 }; say so 5 < bark [33m�[31m< 10; # syntax error[0m��Parse failed��»
22:02 census look for the word matrix on the page ?
22:02 diakopter it's on the CPAN Testers row
22:02 timotimo probably not too surprising
22:02 diakopter yes
22:03 timotimo rn: sub bark { say "arf"; 10 }; say so 5 < bark() < 10; # syntax error
22:03 p6eval rakudo ffe441, niecza v24-35-g5c06e28: OUTPUT«arf␤False␤»
22:03 census i don't see it on the page
22:03 diakopter at what url are you?
22:04 census the url of the module ...
22:04 census do you want the exact url?
22:04 diakopter yes :)
22:04 FROGGS hehe
22:04 census oh ok ... y'all won't get met?
22:04 census mad ?
22:05 FROGGS I won't, promise
22:05 diakopter pasting 1 line is almost always ok unless it's super long
22:05 census thanks FROGGS. i'm more worried about diakopter and geekosaur
22:05 census http://search.cpan.org/~mikem/Ne​t-SSLeay-1.54/lib/Net/SSLeay.pod
22:05 diakopter click the link at the top Net-SSLeay-1.54
22:06 FROGGS census: well, they'll tell you when it is time to stop I guess
22:07 census source?  thart link?
22:07 FROGGS census: Net::SSLeay is always a problem, even under strawberry sometimes... can't you use the cygwin package installer to install the prebuilt package?
22:07 census i got it working in activeperl somehow
22:07 census and even debian
22:07 dalek perl6-examples: 03a5e4f | grondilu++ | rosalind/cstr-grondilu.pl:
22:07 dalek perl6-examples: Create cstr-grondilu.pl
22:07 dalek perl6-examples:
22:07 dalek perl6-examples: (rosalind) CSTR solution.  This was almost too slow, I had to kill the program just before five minutes, hoping that enough lines had been processed.
22:07 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/03a5e4fdec
22:08 census i keep getting some warnings pertaining to C and gcc not being installed ... althoug i think i've installed them
22:08 diakopter I'd venture to suggest debian and activeperl have far more heavy perl users than cygwin, so they're more supported generally
22:08 timotimo grondilu: how many lines are there?
22:08 grondilu at most 100
22:09 timotimo mhm, ok
22:09 grondilu though what really matters is the number of letters in each line, which is at most 300
22:10 * timotimo tries to understand the code properly
22:10 grondilu in general, it really seems to me that loops in perl6 are slow, no matter what they actually do.
22:11 timotimo oh, it looks like you run .comb every time you want to access one letter
22:11 timotimo is that one comb of the line per letter?
22:11 census diakopter: so your final answer is that this is not meant to be?
22:11 timotimo oh, no it isn't
22:11 diakopter no
22:11 grondilu timotimo: good point, I should have factorized .comb indeed
22:11 diakopter census: you haven't mentioned whether you found the matrix for that distribution
22:11 timotimo this way you .comb every line once per @c. i suppose that's a bit of a loss, but shouldn't be terribly terrible
22:12 diakopter census: looks ok for cygwin, at least with the few perl versions tested
22:12 census no, i did not find the matrix.  i did not know which link you were referring to when you said click the link ..
22:13 diakopter census: there are only two links on that page with that text in them
22:13 census googling around i found these posts: http://cygwin.com/ml/cygwin/2003-12/msg00082.html http://cygwin.com/ml/cygwin/2003-12/msg00082.html
22:13 diakopter one of them is a tar.gz download link
22:13 census yes .. i asked you the link by clickikng on "source" ?
22:13 census i'm sorry if that is a bad q :(
22:14 diakopter it's not a question
22:14 census which "link" are you asking me to click on?
22:14 census you said "top of the page"
22:14 census i'm looking at the top and i saw "source"
22:14 diakopter same thing I said before: click the link at the top [whose text is] Net-SSLeay-1.54
22:15 FROGGS right above "source"
22:15 census http://search.cpan.org/~mikem/Net-SSLeay-1.54/ ?
22:15 FROGGS right
22:16 FROGGS then search for a link with "matrix" in its text
22:16 rking joined #perl6
22:16 census i don't see the word matrix on that page.
22:16 census i'm sorry. please don't be mad
22:17 FROGGS you can press ctrl+f within your browser to search for a text btw
22:17 diakopter which browser do you use? Chrome is case-insensitive when finding on a page
22:17 dalek perl6-examples: ad9ae17 | grondilu++ | rosalind/cstr-grondilu.pl:
22:17 dalek perl6-examples: Update cstr-grondilu.pl
22:17 dalek perl6-examples:
22:17 dalek perl6-examples: much faster version
22:17 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/ad9ae1705e
22:17 grondilu timotimo++
22:17 timotimo grondilu: did you measure the speed improvement?
22:18 grondilu I did not measure it because it was obviously much faster
22:18 grondilu like:  seconds against minutes
22:18 timotimo wow!
22:18 timotimo that's actually amazing.
22:18 census Froggs: yes.  i don't see the word matrix in my brower useing the find http://search.cpan.org/~mikem/Net-SSLeay-1.54/
22:18 census i'm using mozilla
22:18 diakopter search for Matrix
22:19 census oh!  it was indeed case sensitive
22:19 census i'm sorry
22:19 census http://matrix.cpantesters.​org/?dist=Net-SSLeay+1.54 !
22:19 census so that is the matrix, eh?
22:19 kurahaupo joined #perl6
22:20 diakopter yes, you took the blue pill
22:20 diakopter er.  red.
22:21 census oh ok :) http://en.wikipedia.org/wi​ki/Red_pill_and_blue_pill
22:21 stevan_ joined #perl6
22:21 census so based on that matrix, it should work in theory ?
22:21 FROGGS yes, if the dependences are met
22:21 diakopter do you have one of the versions of perl with green beside it?
22:22 FROGGS so if you see error messages about not having an compiler (gcc), that usually means something
22:22 census yes!
22:22 census that is the warning i'm getting
22:22 census about gcc
22:22 census but i thought i instaleld it!
22:22 diakopter did you install it using the cygwin package manager?
22:22 census yes
22:22 FROGGS beware that you might need to install gcc3 and not just gcc4
22:22 census but maybe the wrong one?
22:23 census i beleive i have downloaded: gcc, gcc-core, gcc-g++, gcc-mingw-ada, gcc-minwg-core, libgcc1
22:24 xenoterracide joined #perl6
22:27 dalek perl6-examples: 7168248 | grondilu++ | rosalind/cstr-grondilu.pl:
22:27 dalek perl6-examples: Update cstr-grondilu.pl
22:27 dalek perl6-examples:
22:27 dalek perl6-examples: slightly simpler code
22:27 dalek perl6-examples: review: https://github.com/perl6/perl​6-examples/commit/716824808c
22:28 census FROGGS; are you saying to do a search in the packages for gcc4 ?
22:28 timotimo that does look a lot simpler, yes
22:29 FROGGS census: no, since I think you dont need gcc4, but gcc3 if that is available
22:29 census FROGGS: do you mean then that i should be looking to install gcc3? sorry i'm not following
22:29 FROGGS census: and I would search for net-ssleay perl module within that installer
22:30 FROGGS census: right, search for gcc3 and/or net-ssleay module
22:30 census FROGGS: nothing comes up for gcc3
22:31 FROGGS k, search for ssleay
22:31 census and nothing comes up for net-ssleay or ssleay..  did i do something incorrrect?  i tried searching for those terms in the Cygwin Setup Search
22:31 census nope, nothing comes up for ssleay
22:32 census is this relevant? http://stackoverflow.com/questions/​5667364/trying-to-install-yamlsyck-​this-module-requires-a-c-compiler
22:33 FROGGS census: well, you can test that:
22:33 FROGGS type: gcc -V
22:33 FROGGS type: cc -V
22:33 FROGGS type: perl -MConfig -E'say $Config{cc}'
22:34 FROGGS and tell me if it can find gcc, if it can find cc, and what the last line gives you
22:34 census could i copy and paste the result?  or should i nopaste?
22:34 labster back on topic, which behavior is correct?
22:35 labster rn: say "foo foo" ~~ /\bfoo/; say "\b" ~~ /\b/;
22:35 p6eval rakudo ffe441: OUTPUT«#<failed match>␤「」␤␤»
22:35 p6eval ..niecza v24-35-g5c06e28: OUTPUT«[31m===[0mSORRY![31m=​==[0m��Unsupported use of \b as word boundary; in Perl 6 please use <?wb> (or either of « or ») at /tmp/n3d6VJFVbo line 1:�------> [32msay "foo foo" ~~ /\b[33m�[31mfoo/; say "\b" ~~ /\b/;[0m��Parse failed��»
22:35 timotimo census: always nopaste if it's more than one line
22:35 census it is 1 very long line ... VERY LONG
22:35 FROGGS census: come to #help-census
22:35 timotimo the irc server will cut off a big part of the line in that case
22:36 diakopter maybe. the web client might split it neatly
22:36 foofofsds joined #perl6
22:37 foofofsds left #perl6
22:37 labster would it be better to warn on the use of \b in regex (niezca), or match backspace (rakudo)?
22:37 census thanks diakopter!
22:37 diakopter yw
22:41 census and i'm so glad we got along :)
22:49 sorear std: /\b/
22:49 p6eval std 86b102f: OUTPUT«[31m===[0mSORRY![​31m===[0m�Unsupported use of \b as word boundary; in Perl 6 please use <?wb> (or either of « or ») at /tmp/QprXgzMxUr line 1:�------> [32m/\b[33m�[31m/[0m�Parse failed�FAILED 00:00 41m�»
22:49 labster std: "\b"
22:50 p6eval std 86b102f: OUTPUT«ok 00:00 41m␤»
22:50 colomon matching \b to backspace is just plain wrong, IMO.
22:51 * colomon had no idea word boundary wasn't b any more, and silently making it *something completely different* would lead to some really hard to figure out bugs...
22:52 labster like \E does now?
22:52 timotimo colomon: where's the confusion? rakudo should obviously get the error from std, or am i misunderstanding something?
22:53 labster It's just different than string semantics, that's all.  probably rakudobug.
22:54 colomon timotimo: look at labster's question about ten lines back.
22:55 timotimo oh, yes.
22:55 colomon rn: say "this is a test" ~~ /\bis\b/
22:55 p6eval niecza v24-35-g5c06e28: OUTPUT«[31m===[0mSORRY![31m=​==[0m��Unsupported use of \b as word boundary; in Perl 6 please use <?wb> (or either of « or ») at /tmp/xfCxExpPSw line 1:�------> [32msay "this is a test" ~~ /\b[33m�[31mis\b/[0m��Parse failed��»
22:55 p6eval ..rakudo ffe441: OUTPUT«#<failed match>␤»
22:55 colomon rn: say "th\bis\b is a test" ~~ /\bis\b/
22:55 p6eval rakudo ffe441: OUTPUT«「is」␤␤»
22:55 p6eval ..niecza v24-35-g5c06e28: OUTPUT«[31m===[0mSORRY![31m=​==[0m��Unsupported use of \b as word boundary; in Perl 6 please use <?wb> (or either of « or ») at /tmp/7AN48RO4Dh line 1:�------> [32msay "th\bis\b is a test" ~~ /\b[33m�[31mis\b/[0m��Parse failed��»
22:56 FROGGS LHF I'd say
22:57 labster LHF?
22:58 colomon low-hanging fruit
22:58 colomon something that's easy to fix, maybe even good for a beginner.
22:58 colomon to dip their toes into Rakudo's insides.
22:59 colomon regexes are probably on the complicated end of LHF, though.  or at least they've always been mysterious to me...
23:01 FROGGS colomon: well, you have just to many pieces that interact with each other
23:01 FROGGS and it is hard to find th place where you have to fiddle with the code
23:11 lizmat joined #perl6
23:12 tgt joined #perl6
23:19 stevan_ joined #perl6
23:26 lizmat_ joined #perl6
23:29 * labster mails a CLA.
23:30 labster You've finally convinced me.

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

Perl 6 | Reference Documentation | Rakudo