Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2012-03-30

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:06 timotimo there are no tests on resumable exceptions yet?
00:07 sorear goood * #perl6
00:08 fgomez joined #perl6
00:12 benabik joined #perl6
00:20 fgomez joined #perl6
00:22 benabik joined #perl6
00:23 libertyprime joined #perl6
00:37 localhost joined #perl6
00:39 skipper joined #perl6
00:40 libertyprime joined #perl6
00:47 vlixes left #perl6
01:02 jerome_ joined #perl6
01:08 libertyprime joined #perl6
01:18 wolfman2000 joined #perl6
01:22 overrosy joined #perl6
01:37 liuchong joined #perl6
02:13 tokuhiro_ joined #perl6
02:50 ponbiki joined #perl6
03:04 orafu joined #perl6
03:27 cirne100 joined #perl6
03:28 cirne100 joined #perl6
03:48 wooden joined #perl6
03:49 wooden joined #perl6
04:23 thou joined #perl6
04:33 japhb sorear, How do you make use of niecza's 'make aot'-created .so files?
04:40 sorear They should be used automatically
04:43 japhb :-/
04:44 japhb They don't seem to make more than a marginal difference in niecza's scores in perl6-bench.
04:45 japhb I was hoping to speed up startup time (because right now that's dominant for several of the tests), but no such luck that I could see.
04:45 sorear Is perl6-bench a startup time benchmark?
04:45 japhb https://github.com/japhb/perl6-bench
04:45 sorear are you using sgen?
04:46 japhb The first several tests end up dominated by startup for niecza, because they are trivial tests.  But even when runtime starts to be visible, as a percentage of total time, startup is still a fair percentage.
04:46 japhb yes, running it as 'mono-sgen run/Niecza.exe'
04:48 japhb It takes ~2s on my box to do: mono-sgen run/Niecza.exe -e ''
04:48 sorear How did you run make aot?
04:48 japhb As literally that: make aot
04:48 japhb After having done just 'make' last night.
04:48 sorear sgen/not changes code generation; aot .so files created by "mono" are not usable by "mono-sgen" or vice versa
04:49 japhb OH!
04:49 sorear IME sgen+aot doesn't work very well in general - I blame the fact that corlib.dll.so is generated for non-sgen
04:49 japhb hmmm, how do I make it so Niecza always compiles and runs with sgen then?
04:49 sorear non-sgen will usually start faster
04:50 sorear export MONO_ENV_OPTIONS=--gc=sgen
04:50 japhb and then 'make clean; make; make aot' ?
04:52 * japhb goes ahead and tries it/
04:52 sorear yea
04:57 kaleem joined #perl6
05:03 japhb That did help, cutting ~ .5s off startup, right now at 1.58s for -e ''
05:04 japhb For comparison, Rakudo is currently running at 0.40s for the same test ... and perl5 is 3-4ms.  :-)
05:05 japhb I must say, it really is quite astonishing how fast perl5 starts up.
05:05 sorear the comparison was more favorable before jnthn committed a bunch of BS changes...
05:06 japhb I thought niecza had BS as well at this point?  Or is that still in the design phase?
05:06 sorear japhb: I think you mean, it really is quite astonishing how slow all the current p6es are
05:06 sorear yes, niecza has had BS for a while
05:09 NamelessTee joined #perl6
05:10 japhb Well, yes, the p6's do have crazy-slow startup ... but I really did mean I was astonished by the startup of perl5.  It's not exactly a small language, and yet the total number of CPU cycles to spawn, startup, and exit a perl5 process can't be more than 6-7 million cycles.  And on an old 32-bit CPU, that's *maybe* 10 million instructions.  Way better than I expected, when I think about everything that has to happen to result in a full Perl
05:10 japhb 5 environment.
05:11 sorear perl 5 is written in C
05:11 sorear perl 5 doesn't have a setting
05:12 sorear perl 5 uses a yacc, which seems to be a much better choice for speed than anything based on p6rules can ever hope to be
05:19 birdwindupbird joined #perl6
05:19 japhb Let me turn this around -- if you think about the time to start one of the other dynamic languages from the same "generation" as perl5, they take much longer to start up.  For example, python takes about 10x as long as perl5 to run a null program, and even ruby takes 2.5-3x as long.
05:20 sorear I usually consider ruby as a member of our generation
05:20 * japhb shrugs -- call it a half generation.
05:21 japhb Point being, perl5 is no slouch in the speed department.  And this box is even running an old 5.10.1.
05:22 japhb But guiding this back to a current topic, anything else I can do (from the "outside") to get niecza startup faster?
05:22 moritz o/
05:23 sorear o/ moritz
05:23 sorear japhb: faster cpu?  games with undump/cryopid?  :D
05:24 japhb :-P
05:24 japhb Out of curiosity, do you happen to know how much of that time is just mono itself launching a new "session"?
05:25 sorear mono seems to initialize itself lazily - a "hello world" program which touches very little of corlib loads very quickyl
05:26 sorear I suspect that there are some major bottlenecks in niecza's thaw routines, but niecza's thaw routines are a single recursion SCC and the mono profile is useless with mutually recursive functions
05:30 havenn joined #perl6
05:35 japhb sorear, do you mean that mono is exceedingly slow and/or space-wasteful at handling mutual recursion?
05:41 sorear japhb: I mean that the mono profiler produces useless data when the program is mutually recursive
05:48 bonsaikitten japhb: python has a pretty sucky startup that does ~1k stat() (afair)
05:48 bonsaikitten it's a good example how not to do things
05:51 moritz b: say $*PERL
05:51 p6eval b 1b7dd1: OUTPUT«name   rakudo␤version  2011.07-2-g1b7dd12␤␤»
05:56 cardcha joined #perl6
05:56 cardcha Hi
05:56 tadzik hello
05:56 cardcha Anybody wanna see my irc bot
05:57 moritz is it written in Perl 6? what does it do?
05:57 cardcha I write it in perl and then ported it to python
05:57 cardcha It annoys you basically
05:57 moritz then I don't want to see it
05:57 LOLSOME joined #perl6
05:58 cardcha awww
05:58 LOLSOME LOLOLOL That's what she said LOLOLOLOL
05:58 cardcha It wont log in
05:58 LOLSOME LOLOLOL That's what she said LOLOLOLOL
05:58 moritz cardcha: please remove it right now
05:58 LOLSOME LOLOLOL That's what she said LOLOLOLOL
05:58 cardcha I guess it knows that somebody from this ip is already logged in
05:58 LOLSOME LOLOLOL That's what she said LOLOLOLOL
05:58 cardcha OMG
05:58 LOLSOME LOLOLOL That's what she said LOLOLOLOL
05:58 cardcha it worked
05:58 LOLSOME LOLOLOL That's what she said LOLOLOLOL
05:58 cardcha its super annoying
05:58 LOLSOME LOLOLOL That's what she said LOLOLOLOL
05:58 LOLSOME was kicked by moritz: cardcha
05:58 tadzik :/
05:58 cardcha was kicked by moritz: cardcha
06:00 moritz and I thought purl was annoying
06:01 sorear *sigh*
06:02 derrazo criminy
06:14 wtw joined #perl6
06:16 moritz n: :16(12)
06:16 p6eval niecza v16-8-gb4b916a: OUTPUT«Unhandled exception: Numbers may not be passed :base(); if you wanted to render the number in the given base, use $number.base($radix); if you want to treat the number as a string, explicitly coerce it first␤  at /home/p6eval/niecza/lib/CORE.setting line 13…
06:31 moritz r: my $x = 'foo'; say ":{$x}()"
06:31 p6eval rakudo 018b27: OUTPUT«:foo()␤»
06:41 dalek niecza: e08dd76 | sorear++ | lib/ (3 files):
06:41 dalek niecza: Implement universal hashing for niecza hashes
06:41 dalek niecza:
06:41 dalek niecza: It appears to be a few percent slower than the builtin string.GetHashCode,
06:41 dalek niecza: but proof against hash-based algorithmic complexity attacks is hard to
06:41 dalek niecza: replace...
06:41 dalek niecza: review: https://github.com/sorear/niecza/commit/e08dd76336
06:45 sorear has anyone proven a collision probability bound for Parrot's hashes? :>
06:52 japhb bonsaikitten, ouch (re: ~1k stats at python startup)
06:52 japhb sorear, understood (re: mono profiler fail)
06:52 bonsaikitten japhb: the module system ... it causes multiple hits
06:53 bonsaikitten japhb: does foo exist in SITEDIR, local dir etc.? does foo.pyc / .pyo exist? timestamp?
06:53 bonsaikitten that and the sucky stdlib behaviour cause >200 module loads with this rather stupid startup hit
06:57 sorear I think Unix would really benefit from a multistat() system call
06:57 sorear pass a list of 1000 names into the kernel
06:58 japhb bonsaikitten, Ah, I was about to ask if even an empty program would load a bunch of implicitly required modules ...
06:58 moritz p6: say :16('0d')
06:58 japhb sorear, not a bad idea, that.
06:58 p6eval rakudo c24b2f: OUTPUT«missing digits after radix prefix␤  in method gist at src/gen/CORE.setting:8137␤  in sub say at src/gen/CORE.setting:6240␤  in block <anon> at /tmp/rNOVqmWYT5:1␤␤»
06:58 p6eval ..pugs, niecza v16-8-gb4b916a: OUTPUT«13␤»
06:58 sorear only incur syscall overhead once... the underlying namei calls are probably pretty cheap, especially if they hit on the dentry cache
06:58 moritz eeks
06:58 bonsaikitten japhb: I think you could shrink that down, but no one cared enough yet
06:58 japhb Though it might encourage even worse behavior by developers that think stats are free ...
06:59 moritz p6: say :16(('0d10')
06:59 p6eval niecza v16-8-gb4b916a: OUTPUT«[31m===[0mSORRY![31m===[0m��Unable to parse parenthesized expression at /tmp/6fkVMV00dX line 1:�------> [32msay :16([33m�[31m('0d10')[0m�Couldn't find final ')'; gave up at /tmp/6fkVMV00dX line 1 (EOF):�------> [32msay :16(('0d10')[33m�[31m<EOL>…
06:59 p6eval ..pugs: OUTPUT«*** ␤    Unexpected ":16"␤    expecting "::"␤    at /tmp/mVakSkGA1L line 1, column 5␤»
06:59 p6eval ..rakudo c24b2f: OUTPUT«===SORRY!===␤Malformed radix number␤at /tmp/GoXvHtMRLa:1␤»
06:59 moritz p6: say :16('0d10')
06:59 p6eval pugs, niecza v16-8-gb4b916a: OUTPUT«3344␤»
06:59 p6eval ..rakudo c24b2f: OUTPUT«10␤»
07:00 moritz rakudo is ETOOMAGIC
07:00 moritz it recognizes 0d as a prefix for 'decimal'
07:03 * sorear really likes the correctness proof for the hash algorithm ey just used
07:16 moritz sorear: now you just need to proof that you actually implemented that algorithm :-)
07:17 sorear moritz: I don't have time to prove the denotational semantics of C# under mono/mcs
07:17 sorear :D
07:19 moritz :-)
07:23 * moritz is now fixing LWP::Simple
07:26 tadzik ++moritz
07:27 moritz t/getstore.t hangs and t/parse-url.t exposes the same problem that I TODOed in URI.pm
07:27 moritz apart from that, all else is fixed
07:29 tadzik nice
07:29 tadzik on what does getstore hang, writing to a file?
07:29 moritz no, reading the file :(
07:29 tadzik if so, it may be that it's just terribly slow :) Panda needs eons to copy itself from location to location too
07:29 tadzik ah, that's different
07:30 moritz $ wc tmp-getstore-17939  25   84 1054 tmp-getstore-17939
07:30 moritz so, it's ridicolously small
07:30 moritz and still it hangs
07:30 tadzik not that big, indeed
07:31 jerome_ joined #perl6
07:33 moritz oh
07:33 moritz seems that   for $fh.lines  hangs if the $fh is not terminated by \n
07:36 fglock joined #perl6
07:38 moritz ok, TODOed the last failing test
07:38 moritz but all in all, LWP::Simple seems to work again. \o/
07:38 tadzik yay!
07:38 moritz (that is, if you use my copy of URI.pm; pull request to the official one sent)
07:39 moritz oh, and you can't use the precompiled URI/Escape.pir
07:39 moritz if you do, it tries to call method capture on a Method
07:39 moritz no idea why :(
07:40 moritz eeks
07:41 pernatiy joined #perl6
07:41 tadzik still better than SVG::Plot :)
07:41 tadzik this one segfaults when used precompiled
07:41 tadzik there's something wrong with modules precompilation
07:41 moritz https://gist.github.com/2248944 # that's eeeks
07:43 moritz why does it FAIL TO OPEN THE FILE if the file doesn't have a trailing newline?
07:43 tadzik eek
07:43 tadzik wtf
07:43 tadzik and if it does, why does slurp() work?
07:44 moritz hm
07:44 moritz I guess it doesn't really fail to open the file, but it fails at error reporting
07:44 tadzik cannot reproduce, btw
07:44 moritz if you look closely at the backtrace, you see that method 'get' calls method 'open'
07:45 moritz so it tries to re-open the file (?) and fails. It's not the first open() that fails
07:45 tadzik yeah, it fails only when I add .say
07:52 sorear moritz: Will rakudo build on a 1G 32-bit machine?
07:52 moritz sorear: I think so
07:52 sorear yay
07:53 moritz sorear: building the setting takes about 1.2G on 64bit
07:53 sorear tomorrow I'll get a working rakudo here for testying
07:53 moritz \o/
07:56 lestrrat joined #perl6
07:56 dolmen joined #perl6
07:57 * sorear -> sleep
07:57 xinming_ joined #perl6
07:57 cosimo joined #perl6
07:57 alvis``` joined #perl6
07:57 broquaint joined #perl6
07:57 fglock joined #perl6
07:58 mj41 joined #perl6
08:00 tadzik g'night sorear
08:00 _dolmen_ joined #perl6
08:01 dolmen left #perl6
08:02 dolmen joined #perl6
08:04 dolmen joined #perl6
08:09 daxim joined #perl6
08:27 mcero joined #perl6
08:29 dalek roast: 1fa3c37 | moritz++ | S16-filehandles/io.t:
08:29 dalek roast: $fh.lines if the file has no trailing newline (RT #112130)
08:29 dalek roast: review: https://github.com/perl6/roast/commit/1fa3c3797f
09:27 mj41 joined #perl6
09:49 mj41 joined #perl6
09:49 jerome_ joined #perl6
10:07 bacek_ joined #perl6
10:09 Trashlord joined #perl6
10:19 havenn joined #perl6
10:35 lestrrat joined #perl6
10:35 NamelessTee joined #perl6
10:51 tarch joined #perl6
10:58 araujo joined #perl6
10:58 araujo joined #perl6
11:27 cirne100 joined #perl6
11:28 daxim joined #perl6
11:32 stef___ joined #perl6
11:35 stef___ joined #perl6
11:46 fhelmberger joined #perl6
11:49 colomon joined #perl6
12:03 derrazo joined #perl6
12:05 stef___ joined #perl6
12:16 leprevost joined #perl6
12:20 stef___ joined #perl6
12:25 icwiener joined #perl6
12:28 sftp joined #perl6
12:31 pmichaud perl6:  say +:8("0d10")
12:31 phenny pmichaud: 29 Mar 07:12Z <moritz> ask pmichaud to please change the hostname of the notification URLs of the rakudo/rakudo and rakudo/star repos to feather3.perl6.nl
12:31 p6eval rakudo 3d7cc4: OUTPUT«malformed radix number, expecting '>' after the body␤  in method Numeric at src/gen/CORE.setting:8130␤  in sub prefix:<+> at src/gen/CORE.setting:2148␤  in block <anon> at /tmp/2UZPwOMecO:1␤␤»
12:31 p6eval ..niecza v16-9-ge08dd76: OUTPUT«10␤»
12:31 p6eval ..pugs: OUTPUT«840␤»
12:32 moritz perl6: say :8<d>
12:33 p6eval pugs: OUTPUT«13␤»
12:33 p6eval ..niecza v16-9-ge08dd76: OUTPUT«Unhandled exception: Digit <d> too large for radix 8␤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1366 (die @ 3) ␤  at /home/p6eval/niecza/src/NieczaActions.pm6 line 142 (from_base @ 15) ␤  at /home/p6eval/niecza/src/NieczaActions.pm6 line 183 (Niecz…
12:33 p6eval ..rakudo 3d7cc4: OUTPUT«===SORRY!===␤Invalid character 'D' in number literal␤»
12:33 moritz that's the proper response (from rakudo and niecza)
12:33 pmichaud we need to put some of the magic back, though.
12:33 moritz pmichaud: I'm not sure we need to
12:33 pmichaud :8("0d10") should be 10
12:33 moritz no, that's totally insane
12:33 pmichaud at least according to current S02
12:34 moritz then S02 needs to change
12:34 pmichaud I'm sure that change needs to be reviewed with TimToady++ then
12:34 moritz it would mean that :16('0d10') is either ambiguous, or behaves quite differently from :08('0d10')
12:34 pmichaud it behaves differently, yes.  S02 explicitly says so.
12:35 moritz if one wants 0d to mean decimal, .Numeric works fine
12:35 pmichaud one might not know the content of the string beforehand, though.
12:36 moritz right. That's why it's important for the :base() forms to behave consistently
12:36 pmichaud S02:3313
12:37 moritz this looks like a fossil to me
12:37 pmichaud why is that?
12:37 moritz because that's what p5's hex() function does
12:37 moritz wait
12:37 moritz no
12:38 [Coke] ho, pmichaud.
12:38 * moritz re-reads the whole paragraph
12:38 moritz wait, is :16 special-cased?
12:38 pmichaud yes.
12:38 moritz so :17('0d10') returns 10?
12:38 moritz or does the spec forbid any bases except 2, 8, 10, 16?
12:39 moritz p6: say :17('ab')
12:39 p6eval pugs, rakudo 3d7cc4, niecza v16-9-ge08dd76: OUTPUT«181␤»
12:39 moritz p6: say :17('0d10')
12:39 p6eval pugs, rakudo 3d7cc4, niecza v16-9-ge08dd76: OUTPUT«3774␤»
12:39 pmichaud std:  say :17('0d10')
12:39 p6eval std 5740094: OUTPUT«ok 00:01 109m␤»
12:39 moritz anyway, my primary reason for changing that was a very real-world bug
12:40 pmichaud I agree that Rakudo had the :16 case wrong.
12:40 moritz LWP::Simple used :16() for converting hex chunk lengths
12:40 moritz *uses
12:40 moritz and that would barf when the hex string started with 0d
12:40 pmichaud Yes, that was a Rakudo bug.
12:40 moritz but specialcasing 16 also feels Very Wrong
12:41 pmichaud But the other forms (at least :2, :8, and :10) should still allow the "0x" forms.
12:41 pmichaud at least as the spec is written today.
12:41 GlitchMr joined #perl6
12:41 moritz well, I can see two possible solutions that make sense to me:
12:42 moritz 1) we allow '0x', '0b' etc. for bases < 10
12:42 pmichaud well, <= 10
12:42 moritz 2) we remove the magic entirely, and rely on .Numeric for that kind of magic
12:42 moritz pmichaud: right
12:42 moritz the current wording is just insane
12:43 pmichaud although I can argue that 0x  should still work even for :16
12:43 pmichaud and 0o also.
12:43 pmichaud 3) '0x' etc work as long as the second character isn't a valid digit in the default base
12:44 moritz 4) we allow a default :$base on Str.Numeric
12:44 pmichaud I don't see how 4 departs from what we have now, though.
12:45 moritz 4) would be the addition to 2) to make the feature available for those who want it
12:45 pmichaud oh, then :$base on Str.Numeric would force a base, not set a default.
12:46 pmichaud perl6:  say +"0x10"
12:46 p6eval pugs, rakudo 3d7cc4, niecza v16-9-ge08dd76: OUTPUT«16␤»
12:46 pmichaud perl6:  say "0x10".Numeric
12:46 p6eval rakudo 3d7cc4, niecza v16-9-ge08dd76: OUTPUT«16␤»
12:46 p6eval ..pugs: OUTPUT«*** No such method in class Str: "&Numeric"␤    at /tmp/6i6UdAcGhx line 1, column 5 - line 2, column 1␤»
12:47 dalek roast: 3dab5c0 | moritz++ | S32-exceptions/misc.t:
12:47 dalek roast: RT #112056
12:47 dalek roast: review: https://github.com/perl6/roast/commit/3dab5c0ca6
12:47 moritz I'll go with 1) now, because it's easy and mostly compatible with the wording of the spec
12:48 pmichaud be sure to review the spec change with TimToady++, too :)
12:48 moritz ok
12:49 moritz pmichaud: have you already changed the post-commit hook URLs on github.com/rakudo/* ?
12:49 pmichaud not yet, will do that momentarily
12:49 moritz great
12:50 pmichaud which url should I change?  there are three.
12:51 moritz those that have host04.appflux.net (or so) as the host name
12:51 moritz I don't have admin access, so I don't even know what kind of post-commit hooks we have :-)
12:52 pmichaud currently we have
12:52 pmichaud http://host04.appflux.net:5000/dal​ek?t=freenode,perl6+magnet,parrot
12:53 pmichaud http://timtowtdi.org:3333/
12:53 pmichaud http://new.leto.net:3000/hook/
12:53 moritz the first one should change to http://feather3.perl6.nl:5000/dal​ek?t=freenode,perl6+magnet,parrot
12:53 moritz the second can be removed, the domain doesn't exist anymore
12:54 pmichaud okay, changed the rakudo repo
12:54 pmichaud changed the star repo to:  http://feather3.perl6.nl:5​000/dalek?t=freenode,perl6
12:55 moritz pmichaud++
12:55 pmichaud (star repo had only one hook)
12:59 kaleem_ joined #perl6
13:04 stef___ joined #perl6
13:20 moritz wow, http://qconlondon.com/dl/qcon-londo​n-2012/slides/SimonRitter_TheFuture​OfTheJavaPlatformJavaSE8Beyond.pdf mentions a Meta Object Protocol as an idea for JDK 9
13:21 [Coke] we're still struggling to roll out 7 here. ;)
13:31 skids joined #perl6
13:32 PacoAir joined #perl6
13:34 dalek rakudo/nom: dab5893 | moritz++ | src/core/Str.pm:
13:34 dalek rakudo/nom: make unbase moderately magic again
13:34 dalek rakudo/nom:
13:34 dalek rakudo/nom: This now allows 0x and 0o in :16(), but 0d is correctly interpreted as
13:34 dalek rakudo/nom: a hex byte, not a prefix for decimal. pmichaud++
13:34 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/dab5893e3d
13:34 dalek roast: 6b41ab3 | moritz++ | S02-literals/radix.t:
13:34 dalek roast: test :16("0d...")
13:34 dalek roast: review: https://github.com/perl6/roast/commit/6b41ab3e2a
13:36 tarch_ joined #perl6
13:59 fsergot joined #perl6
13:59 fsergot left #perl6
13:59 fsergot joined #perl6
13:59 fsergot Hi #perl6 o/
14:00 moritz \o fsergot
14:00 tadzik o/
14:09 tokuhiro_ joined #perl6
14:09 stef__ joined #perl6
14:11 moritz nom: sub f { ... 'foo' }; say f
14:11 p6eval rakudo dab589: OUTPUT«foo␤  in method gist at src/gen/CORE.setting:8140␤  in sub say at src/gen/CORE.setting:6244␤  in block <anon> at /tmp/PJ8cD_HUAT:1␤␤»
14:11 moritz nom: sub f { !!! 'foo' }; say f
14:11 p6eval rakudo dab589: OUTPUT«foo␤  in sub f at /tmp/dGSFsdyhdi:1␤  in block <anon> at /tmp/dGSFsdyhdi:1␤␤»
14:11 moritz nom: sub f { ??? 'foo' }; say f
14:11 p6eval rakudo dab589: OUTPUT«foo␤0␤»
14:12 moritz \o/ we can close the third oldest ticket in RT once we write tests for them
14:17 dalek roast: 903dffc | moritz++ | S32-exceptions/misc.t:
14:17 dalek roast: test that stubby exception generators can take an argument
14:17 dalek roast: review: https://github.com/perl6/roast/commit/903dffc1c1
14:19 moritz r: macro doit($w) { quasi { say $w, $w } }; doit 'foo'
14:19 p6eval rakudo dab589: OUTPUT«AST.new()AST.new()␤»
14:19 moritz I'd need hole for that, right?
14:21 moritz r: enum A <b c d>; say A(1)
14:21 p6eval rakudo dab589: OUTPUT«c␤»
14:23 moritz r: role A { has $.io handles <say> }; class B does A { }; A.new(io => $*OUT).say: 'foo'
14:23 p6eval rakudo dab589: OUTPUT«foo␤»
14:25 tadzik hole?
14:25 tadzik I assume you'll need say {{{$w}}}, {{{$w}}}
14:25 moritz yes, that's what I mean by holes
14:25 tadzik right. That's how I understand it
14:36 dalek roast: 931b743 | moritz++ | S12-enums/thorough.t:
14:36 dalek roast: clean up enum tests a big, refudge for rakudo
14:36 dalek roast: review: https://github.com/perl6/roast/commit/931b743663
14:37 dalek rakudo/nom: 5793035 | moritz++ | t/spectest.data:
14:37 dalek rakudo/nom: run t/spec/S12-enums/thorough.t
14:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/579303592a
14:41 kaare_ joined #perl6
14:51 thou joined #perl6
15:01 havenn joined #perl6
15:04 fhelmberger joined #perl6
15:05 birdwindupbird joined #perl6
15:06 BruceZu joined #perl6
15:12 havenn joined #perl6
15:17 tokuhiro_ joined #perl6
15:20 MayDaniel joined #perl6
15:20 timotimo does ($a, $b) .= reverse work because reverse has the arguments set to "is rw"? same thing for @a[1, 2] .= reverse?
15:23 havenn joined #perl6
15:28 tokuhiro_ joined #perl6
15:35 havenn joined #perl6
15:36 bbkr jnthn: i've managed to connect to libGeoIP with NativeCall :) the only issue is that I have to provide full path to dylib - is native('/opt/local/lib/libGeoIP.dylib') - because it search for .bundle without that
15:37 icwiener joined #perl6
15:37 tyatpi joined #perl6
15:39 NamelessTee joined #perl6
15:42 moritz timotimo: ($a, $b) .= reverse  desugars to  ($a, $b) = ($a, $b).reverse
15:43 moritz timotimo: so reverse is really not special, and the = does ordinary list assignment
15:43 moritz timotimo: @a[1, 2] requires .[ ] to mark the return values as rw though
15:43 sjohnson perl6: say "happy pig".reverse
15:44 p6eval pugs: OUTPUT«gip yppah␤»
15:44 p6eval ..rakudo 579303: OUTPUT«happy pig␤»
15:44 p6eval ..niecza v16-9-ge08dd76: OUTPUT«Unhandled exception: Unable to resolve method reverse in class Str␤  at /tmp/bqct8eiWyY line 1 (mainline @ 2) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3838 (ANON @ 3) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3839 (module-CORE @ 65) ␤  at /home…
15:44 sjohnson that's nice
15:44 sjohnson no need for taht 'scalar' thing like in p5
15:44 sjohnson hmm.. how come it didn't reverse on rakudo?
15:46 havenn joined #perl6
15:47 Psyche^ joined #perl6
15:49 [Coke] perl6: say "happy pig".flip
15:49 p6eval pugs: OUTPUT«*** No such method in class Str: "&flip"␤    at /tmp/78Wt0AATKo line 1, column 5 - line 2, column 1␤»
15:49 p6eval ..rakudo 579303, niecza v16-9-ge08dd76: OUTPUT«gip yppah␤»
15:50 [Coke] because that's one of the changes from p5.
15:50 [Coke] reverse is for lists, flip is for strings.
15:58 tarch_ joined #perl6
16:03 havenn joined #perl6
16:12 TimToady and hyper flip is for lists of strings :)
16:13 moritz p6: say <happy pig>».flip
16:13 p6eval rakudo 579303, niecza v16-9-ge08dd76: OUTPUT«yppah gip␤»
16:13 p6eval ..pugs: OUTPUT«*** No such method in class Array: "&>>flip"␤    at /tmp/2tfyMS3N00 line 1, column 5 - line 2, column 1␤»
16:20 sjohnson what does the >> do?
16:20 sjohnson p6: say <cow pig chicken>.WHAT
16:20 p6eval rakudo 579303, niecza v16-9-ge08dd76: OUTPUT«Parcel()␤»
16:20 p6eval ..pugs: OUTPUT«Array␤»
16:20 sjohnson ahh i get it
16:21 sjohnson 6: say <happy pig>.flip
16:21 sjohnson p6: say <happy pig>.flip
16:21 p6eval rakudo 579303, niecza v16-9-ge08dd76: OUTPUT«gip yppah␤»
16:21 p6eval ..pugs: OUTPUT«*** No such method in class Array: "&flip"␤    at /tmp/Vxc_s0xqXI line 1, column 5 - line 2, column 1␤»
16:21 sjohnson p6: say <happy pig>».WHAT
16:21 p6eval niecza v16-9-ge08dd76: OUTPUT«Str() Str()␤»
16:21 p6eval ..rakudo 579303: OUTPUT«Parcel()␤»
16:21 p6eval ..pugs: OUTPUT«StrStr␤»
16:21 sjohnson mindblowing technology!
16:25 sjohnson once perl6 becomes installed on Ubuntu systems by default, I'll have a lot of p6 learning to do
16:26 sjn sjohnson: try learning it earlier, and help make it happen that perl6 becomes installed on Ubuntu systems by default :)
16:27 sjn sjohnson: you know to solve that particular chicken & egg problem
16:27 sjohnson still learning a lot of stuff about p5 !
16:38 lichtkind joined #perl6
16:42 derrazo joined #perl6
16:45 moritz rakudo: enum A <a b c>; enum B <a b c>; say c.perl
16:45 p6eval rakudo 579303: OUTPUT«B::c␤»
16:46 moritz r: say Int()
16:46 p6eval rakudo 579303: OUTPUT«0␤»
16:49 zipf joined #perl6
16:54 icwiener joined #perl6
16:57 spider-mario joined #perl6
17:00 fsergot joined #perl6
17:00 dalek joined #perl6
17:16 dalek roast: aa81a8b | moritz++ | S13-type-casting/methods.t:
17:16 dalek roast: RT #72834
17:16 dalek roast: review: https://github.com/perl6/roast/commit/aa81a8b4d0
17:18 moritz rakudo: say 0xFFFFFFFFFFFFFFFF
17:18 p6eval rakudo 579303: OUTPUT«18446744073709551615␤»
17:20 hugme joined #perl6
17:20 dalek roast: 0954436 | moritz++ | S02-types/num.t:
17:20 dalek roast:  RT #73238: 0xFFFFFFFFFFFFFFFF overflowed to -1
17:20 dalek roast: review: https://github.com/perl6/roast/commit/0954436f18
17:22 moritz rakudo: 0 but last
17:22 p6eval rakudo 579303: OUTPUT«last without loop construct␤  in block <anon> at src/gen/CORE.setting:303␤  in block <anon> at src/gen/CORE.setting:359␤  in block <anon> at /tmp/PVHJSBPf6h:1␤␤»
17:29 icwiener joined #perl6
17:31 Vlavv` joined #perl6
17:37 icwiener joined #perl6
17:51 birdwindupbird joined #perl6
17:56 mj41 joined #perl6
18:04 Chillance joined #perl6
18:04 d4l3k_ joined #perl6
18:05 Juerd joined #perl6
18:06 hugme joined #perl6
18:12 colomon joined #perl6
18:16 sorear good * #perl6
18:18 snearch joined #perl6
18:20 diakopter o/
18:20 sjohnson sorear: hi
18:20 sjohnson diakopter: :)
18:24 sorear o/ diakopter , sjohnson
18:25 sjohnson perl's been rocking my world as of late
18:25 fgomez joined #perl6
18:27 icwiener joined #perl6
18:28 * moritz discovers  less -R
18:32 sjohnson sjohnson@web1:~/http$ type -a less
18:32 sjohnson less is aliased to `less -i -R'
18:32 sjohnson i forgot what that did back then, but now I remember:  colours!
18:36 * sjohnson doesn't use less much anymore, vim -R -
18:37 sorear I have export LESS=FRSX in my rc files
18:37 fgomez -c 'set ft=man'
18:45 bbkr joined #perl6
18:51 thou joined #perl6
18:53 alester joined #perl6
19:06 * masak is back home
19:06 masak I bring you peace, hugs, and autopuns.
19:06 sjohnson ... :3
19:06 * moritz wants the latter two
19:06 * sjohnson cashes in on the hugs
19:06 moritz I need them after tracking down a nasty rakudobug
19:06 moritz well, golfing it, really
19:07 * masak hugs sjohnson! :3
19:07 sjohnson haha
19:07 masak as to the autopuns...
19:07 masak I don't know if the UDP joke ever made it from Twitter to here.
19:08 masak "I would tell you a UDP joke but you might not get it."
19:08 moritz I thought the first line was the autopun :-)
19:08 masak actually, that one is half autopun, half actual pun.
19:08 moritz 21:07 < masak> I don't know if the UDP joke ever made it from Twitter to here.
19:08 masak moritz: ;)
19:08 masak as for the other one, hm, let me dig up the exact wording...
19:09 moritz but the second one, I knew that
19:09 moritz so I think you or TimToady++ brought it here already
19:10 masak ah, yes. this one has a slightly funny shape, even though it's still just the regular old use/mention mixup.
19:10 masak "The touble with quotes on the Internet is that it's difficult to discern whether or not they're genuine." -- Abraham Lincoln
19:10 masak trouble*
19:11 moritz :-)
19:11 sorear MASAK
19:11 masak SOREAR
19:11 masak we meet again.
19:11 * masak fingers holster nervously
19:11 flussence .oO( "Did you hear the TCP joke? Did you hear the TCP joke? Did you hear the TCP joke? Did you hear the TCP joke? ..." )
19:12 masak flussence: you can say that again.
19:12 flussence I think I'll give it a RST for now
19:12 moritz flussence: NACK
19:12 moritz today's rakudobug: https://rt.perl.org/rt3/Tic​ket/Display.html?id=112148
19:12 moritz found while debugging URI.pm
19:13 moritz maybe known in some form or another already, but nasty enough to reported again in any case :-/
19:13 tadzik But you might not get it. I have a UDP joke
19:14 masak tadzik: you have to make that "but it might not arrive in the right order. I have a UDP joke" for it to be an autopun.
19:15 moritz and it's still only half as funny as the one about multithreading
19:18 moritz but do you remember the one about time travel which I'll tell you tomorrow?
19:18 masak I like the one about multithreading. I like autopuns which also remix older jokes.
19:18 masak maybe I should go looking for those.
19:18 moritz aye
19:18 moritz like the 10 types of people jokes
19:19 moritz and the "some people, when faced with a problem"
19:19 s1n joined #perl6
19:19 masak the multithreading one is of the latter kind.
19:24 arnsholt Idle thought while rebuilding Rakudo: Has anyone thought about making nqp/ and parrot/ git submodules?
19:25 masak what would be the benefit of that?
19:25 LylePerl joined #perl6
19:26 sorear masak: automatic handling of NQP_VERSION
19:27 flussence 1 `git pull` for everything, and the SCM does the job of those PARROT_REVISION files
19:27 masak I see.
19:27 sorear is the best rakudo branch still "nom"?
19:27 moritz sorear: yes
19:27 sorear flussence: I thought you also had to do `git submodule update`
19:27 arnsholt Yeah, primarily killing off *_REVISION
19:27 moritz flussence: but we have to handle PARROT_REVISION for non-git checkouts (tarballs) anyway
19:28 arnsholt The submodule bits are arcane, even for git though
19:28 flussence hm, you both probably know better than I do there :)
19:28 moritz I've never used git submodules
19:28 * flussence has only ever done this sort of fancy stuff with svn repos at $dayjob
19:30 arnsholt IIRC SVN's handling of this is a bit more user-friendly
19:32 arnsholt Arglebargle. Something goes wrong when compiling Parrot
19:33 arnsholt Something with my installed ICU, I think
19:35 birdwindupbird joined #perl6
19:43 tyatpi joined #perl6
19:45 dalek rakudo/nom: edb1989 | moritz++ | t/spectest.data:
19:45 dalek rakudo/nom: we pass another test. Just like this.
19:45 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/edb1989eee
19:45 dalek rakudo/nom: 3f7d5c2 | moritz++ | t/spectest.data:
19:45 dalek rakudo/nom: we pass some more macro tests
19:45 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3f7d5c2e07
19:55 dalek roast: 6fb747c | moritz++ | S11-modules/importing.t:
19:55 dalek roast: clean up importing.t, refudge for rakudo
19:55 dalek roast: review: https://github.com/perl6/roast/commit/6fb747c54c
19:55 sorear wheeee rakudo build succeeded
19:56 moritz \o/
19:57 dalek rakudo/nom: 431a3fa | moritz++ | t/spectest.data:
19:57 dalek rakudo/nom: run another test file
19:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/431a3fac76
20:00 dalek roast: db209e0 | moritz++ | S05-metasyntax/assertions.t:
20:00 dalek roast: fix S05-metasyntax/assertions.t
20:00 dalek roast: review: https://github.com/perl6/roast/commit/db209e0728
20:01 dalek rakudo/nom: 2e851f2 | moritz++ | t/spectest.data:
20:01 dalek rakudo/nom: run S05-metasyntax/assertions.t
20:01 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2e851f23f3
20:03 moritz p6: my $*a = 42; foo; sub foo { say $*a; my $*a }
20:03 p6eval rakudo 579303, niecza v16-9-ge08dd76: OUTPUT«Any()␤»
20:03 p6eval ..pugs: OUTPUT«␤»
20:03 moritz p6: my $a = 42; foo; sub foo { say $a; my $a }
20:03 p6eval niecza v16-9-ge08dd76: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Lexical symbol '$a' is already bound to an outer symbol (see line 1);â�¤  the implicit outer binding at line 1 must be rewritten as $aâ�¤  before you can unambiguously declare a new '$a' in this scope at /tmp/sV42Sm4S1e line 1:â�¤-…
20:03 p6eval ..pugs: OUTPUT«*** ␤    Unexpected "}"␤    expecting "?", "!", trait, "=" or infix assignment␤    Redeclaration of "$a" conflicts with earlier OUTER references in the same scope␤    at /tmp/ahKrRvAgek line 1, column 42␤»
20:03 p6eval ..rakudo 3f7d5c: OUTPUT«Any()␤»
20:04 moritz p6: sub foo() { return 1,2,:c<3> }; say foo().perl
20:04 p6eval niecza v16-9-ge08dd76: OUTPUT«Unhandled exception: Excess arguments to return, unused named c␤  at /home/p6eval/niecza/lib/CORE.setting line 0 (return @ 1) ␤  at /tmp/di_ZE0R6C5 line 1 (foo @ 3) ␤  at /tmp/di_ZE0R6C5 line 1 (mainline @ 2) ␤  at /home/p6eval/niecza/lib/CORE.setting line …
20:04 p6eval ..rakudo 3f7d5c: OUTPUT«(1, 2, "c" => Mu)␤»
20:04 p6eval ..pugs: OUTPUT«(1, 2, ("c" => "3"))␤»
20:05 moritz pugs++
20:06 moritz wow, https://rt.perl.org/rt3/Ti​cket/Display.html?id=75174 now segfaults
20:15 havenn joined #perl6
20:15 masak an oldie-but-goodie.
20:21 moritz anyway, today I closed our third-oldest open ticket
20:22 moritz of course jnthn++ did most of the work :-)
20:25 masak yeah, I saw a lot of closages in my mail feed. moritz++
20:32 thou joined #perl6
20:37 moritz r: say (defined "a" => 5).perl'
20:37 p6eval rakudo 2e851f: OUTPUT«===SORRY!===␤Confused␤at /tmp/BUaF2LPnA7:1␤»
20:38 moritz r: say (defined "a" => 5).perl
20:38 p6eval rakudo 2e851f: OUTPUT«Bool::True => 5␤»
20:38 moritz ah, that's because defined is a prefix op, which happens to be tighter than infix:<=>>
20:39 sorear in Rakudo
20:39 sorear in STD/niecza, defined is a listop which is looser than &&
20:39 sorear we need consistency :|
20:40 moritz I'm all for making it a listop
20:41 moritz I'd also say that abs should be a listop, not a prefix
20:42 moritz I don't see why it should be more special-cased than, say, uc
20:44 xinming joined #perl6
20:44 masak listops++
20:45 masak +1 on making both defined and abs listops.
20:45 masak we don't want to actively create lists-of-exceptions-you-have-to-learn.
20:48 sorear std: "foo @$bar"
20:48 p6eval std 5740094: OUTPUT«[31m===[0mSORRY![31m===[0m�Variable $bar is not predeclared at /tmp/Rec9b1zWOC line 1:�------> [32m"foo @[33m�[31m$bar"[0m�Check failed�FAILED 00:01 109m�»
20:49 fgomez is there a way to declare a sub which takes an array with a single element?
20:50 sorear question doesn't fully make sense - Perl 6 doesn't have sub declarations
20:51 sorear furthermore, Perl 6 array types do not typologically encode size
20:51 sorear my best guess for what you want is signature unpacking - 'sub foo([$x]) { ... use $x ... }'
20:52 sorear however, as far as the outside world cares, foo might as well have been declared sub foo(@x) { ... }
20:53 y3llow_ joined #perl6
20:53 dalek joined #perl6
20:53 bruges_ joined #perl6
20:54 Juerd joined #perl6
20:54 tadzik joined #perl6
20:57 hugme joined #perl6
20:58 masak joined #perl6
20:58 PerlJam joined #perl6
20:58 pmichaud joined #perl6
20:58 [Coke] joined #perl6
20:58 Util joined #perl6
20:59 masak ...netsplit much?
21:00 sorear masak: not a netsplit
21:00 sorear feathersplit
21:02 sorear except for y3llow and bruges, who are dialing in from the same Taiwanese IP
21:02 sorear all the rest are *.perl6.nl
21:04 fgomez sorear: something to differentiate ([$a, *@as]) vs ([$a])
21:09 dalek joined #perl6
21:12 moritz erm, no
21:12 moritz r: sub f([$x]) { }; my @a = 1, 2; say f @a
21:12 p6eval rakudo 2e851f: OUTPUT«Too many positional parameters passed; got 2 but expected 1 in sub-signature␤  in sub f at /tmp/kOfUnasXcj:1␤  in block <anon> at /tmp/kOfUnasXcj:1␤␤»
21:12 fgomez r: sub abc ([$a, *@as]) { }; &abc.signature
21:12 p6eval rakudo 2e851f:  ( no output )
21:13 moritz r: sub f([$x, *@as]) { }; my @a = 1, 2; say f @a
21:13 p6eval rakudo 2e851f: OUTPUT«Nil␤»
21:13 moritz there's the difference.
21:15 fgomez r: multi abc ([$a]) {$a}; multi abc ([$a, *@as]) { "$a : [{@as}]" }; say abc [1,2,3]
21:15 p6eval rakudo 2e851f: OUTPUT«1 : [2 3]␤»
21:15 fgomez r: multi abc ([$a]) {$a}; multi abc ([$a, *@as]) { "$a : [{@as}]" }; say abc [1]
21:15 p6eval rakudo 2e851f: OUTPUT«Ambiguous call to 'abc'; these signatures all match:␤:()␤:()␤␤  in block <anon> at /tmp/mKLcHLHA5r:1␤␤»
21:15 Util joined #perl6
21:15 PerlJam joined #perl6
21:15 orafu joined #perl6
21:16 pmichaud joined #perl6
21:16 moritz r: multi abc ([$a]) {$a}; multi abc ([$a, *@as where *.elems]) { "$a : [@as[]]" }; say abc [1]
21:16 p6eval rakudo 2e851f: OUTPUT«1␤»
21:16 moritz r: multi abc ([$a]) {$a}; multi abc ([$a, *@as where *.elems]) { "$a : [@as[]]" }; say abc [1, 2, 3]
21:16 p6eval rakudo 2e851f: OUTPUT«1 : [2 3]␤»
21:16 fgomez oh that's great
21:16 tadzik joined #perl6
21:17 fgomez how is the * working there?
21:19 moritz it creates a closure that calls .elems on its argument
21:19 moritz ie the same as -> $x { $x.elems }
21:19 moritz r: multi abc ([$a]) {$a}; multi abc ([$a, *@as where @as]) { "$a : [@as[]]" }; say abc [1, 2, 3]
21:19 p6eval rakudo 2e851f: OUTPUT«1 : [2 3]␤»
21:19 moritz r: multi abc ([$a]) {$a}; multi abc ([$a, *@as where @as]) { "$a : [@as[]]" }; say abc [1]
21:19 p6eval rakudo 2e851f: OUTPUT«Ambiguous call to 'abc'; these signatures all match:␤:()␤:()␤␤  in block <anon> at /tmp/vibpL3UnCh:1␤␤»
21:19 moritz eeks
21:20 [Coke] joined #perl6
21:20 masak joined #perl6
21:24 hugme joined #perl6
21:25 fgomez moritz: I was trying to use '!' for the *@as but found out it doesn't work
21:26 fgomez is that dumb of me to try that? Don't really understand it well
21:26 fsergot 'night o/
21:28 birdwindupbird joined #perl6
21:38 Juerd joined #perl6
21:47 masak fgomez: what, you mean like *@as! ?
21:49 masak yeah, I don't really see what the ! would add in that case.
21:56 masak 'night, #perl6
21:56 sorear bye masak
21:56 tadzik gnight
22:27 alester joined #perl6
22:30 lichtkind joined #perl6
22:35 timotimo how do i mark the return value of a function rw? sub yoink($a is rw) is rw { $a += 1; return $a; } perhaps?
22:36 sorear you might need to use return-rw, or just $a
22:36 lichtkind why do you want that, i can understand a rw parameter
22:37 sorear lichtkind: accessors
22:37 sorear $foo.bar = 5; # requires bar() to be rw
22:37 timotimo i got that from the explanation of why @a[1, 2] .= reverse can work
22:38 timotimo return-rw is a keyword just like return?
22:39 sorear s/keyword/builtin
22:41 lestrrat joined #perl6
22:47 timotimo oh, that's fun. you can define a state variable, return-rw it and set it from outside
22:52 fgomez joined #perl6
23:01 whiteknight joined #perl6
23:07 lichtkind rakudo seems to miss the true operator
23:07 lichtkind ? 4 works but not the wordy lower precedence alternative
23:07 sorear rakudo: say so 4
23:07 p6eval rakudo 2e851f: OUTPUT«True␤»
23:07 lichtkind or was it halted during i was away
23:08 lichtkind so?
23:08 lichtkind what is so?
23:08 timotimo turns things into a boolean i believe
23:08 lichtkind nobody told me so :)
23:09 lichtkind so true went into so
23:09 lichtkind timotimo: thank you
23:09 lichtkind timotimo: your not a newbe?
23:12 timotimo i'm very new actually
23:13 lichtkind but how do you know that?
23:13 lichtkind im part of the fixture and missed that :)
23:13 timotimo haha. i pick up a few good bits every now and then
23:14 timotimo i'm very interested, you see, but i can hardly write anything in perl6 yet
23:14 Gothmog_ joined #perl6
23:15 lichtkind i just care to find help in the work i do and thats almost without any coding :)
23:18 fgomez r: ([[1,2,3],[4,5,6]] »*« [[1,2,3],[4,5,6]]).perl
23:18 p6eval rakudo 2e851f:  ( no output )
23:18 sorear I blame English language hegemony
23:18 fgomez r: say ([[1,2,3],[4,5,6]] »*« [[1,2,3],[4,5,6]]).perl
23:18 p6eval rakudo 2e851f: OUTPUT«([1, 4, 9], [16, 25, 36]).list␤»
23:18 fgomez that is really neat
23:19 lichtkind timotimo: but i suppos your not very interested in writing docs :)
23:20 fgomez r: say ([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]] »*« [[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]]).perl
23:20 p6eval rakudo 2e851f: OUTPUT«([[1, 4, 9], [16, 25, 36]], [[49, 64, 81], [100, 121, 144]]).list␤»
23:25 timotimo lichtkind: not yet able to
23:25 timotimo i did contribute a few bits to the perl6 book, though
23:26 timotimo i was considering coming up with a better example than the YMCA dance for the introduction of higher order functions, but i've got nothing
23:26 lichtkind timotimo: wanted do that too but ya know with more than 4 clones my dns gets shaky
23:26 lichtkind timotimo: just reading can help , my approach is more systematic than in the book
23:29 lichtkind so any error can be spotted easy
23:29 timotimo your dns gets shaky from cloning? but dns contains error-correcting mechanisms ...
23:32 lichtkind was just supposed to be funny version of the thing that even i i would be 4 person i could not do what i like
23:33 timotimo :)
23:34 timotimo i was just being a wise-ass ;)
23:34 lichtkind thats allright
23:34 lichtkind honestly i dont believe all this DNA thing
23:36 lichtkind if people bang their heads like this evolution vs creationism thing you know both are wrong :)
23:39 alester joined #perl6
23:40 timotimo yeah, evolution and atheism is just a load of bull and creationism is as dumb as the other thing. i'm all for intelligent design nowadays.
23:49 lichtkind i tend to think there is a sort of evolution just recent science clearly shows that dna is not the reliable information carriere the want to believe, but as the so often mistranslates sokrates quote: i know what i do not know and i dont pretend to know what i dont know, which most people just shorten to i know that i know nothing
23:51 lichtkind and even following jewish orthodox teaching to take literal that earth is 6000 years is only first level of bible study (read: not very evolved :))
23:52 timotimo i don't think i understand you :|
23:52 lichtkind which part?
23:53 timotimo how does dna not being a "reliable information carrier" cause evolution not to work? - don't know about the mistranslation thing with socrates - what do you mean with "only first level of bible study"?
23:55 timotimo also: are people going to get mad at us for going violently off topic?

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

Perl 6 | Reference Documentation | Rakudo