»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend! Set by moritz on 22 December 2015. |
|||
AlexDaniel | .oO( maybe I should try out the REPL one day… ) |
00:07 | |
“You may want to `panda install Readline` or `panda install Linenoise` or use rlwrap for a line editor” – ok, so Readline or Linenoise? | |||
sortiz | AlexDaniel, if in linux, i prefer Readline, Linenoise is broken with unicode input. | 00:08 | |
00:11
Raj_ left,
huggable left
00:12
huggable joined
|
|||
sortiz | BrokenRobot, And yes, the change is the logic in github.com/rakudo/rakudo/blob/nom/...PL.pm#L370 | 00:13 | |
00:13
stmuk joined
|
|||
sortiz | So output only to STDERR or no output at all, the result is now printed. | 00:14 | |
00:15
stmuk_ left
00:16
RabidGravy left
|
|||
dalek | c: 5c3e5d1 | (Tom Browder)++ | doc/Programs/00-running.pod: fix target option table |
00:26 | |
c: f73ad98 | (Tom Browder)++ | doc/Programs/00-running.pod: Merge pull request #610 from tbrowder/p6-debug fix target option table |
|||
00:36
BenGoldberg joined
|
|||
AlexDaniel | L<doc.perl6.org/language.html|https:...e.html> | 00:40 | |
:) | |||
00:41
atweiden left
00:44
atweiden joined
|
|||
ShimmerFairy | AlexDaniel: any explanation for that? :) | 00:45 | |
00:46
abruanese left
00:47
atweiden left
|
|||
AlexDaniel | ShimmerFairy: well, why not just L<doc.perl6.org/language.html> ? I find it funny that somebody bothered to write it twice instead of giving some readable text, which is what it is made for :) | 00:47 | |
unless I am missing something | |||
ShimmerFairy | AlexDaniel: yeah, so I'm wondering what someone did that for :P | ||
BrokenRobot | The person wasn't intimately familiar with L<> formats? | 00:50 | |
00:51
johndau joined
|
|||
ShimmerFairy | that would be my guess. For example, IIRC mediawiki will default to a [1] style external link if you don't provide text for it. | 00:52 | |
00:52
jameslenz joined
00:57
jameslenz left
|
|||
dalek | atures: 57ddc65 | (Zoffix Znet)++ | template.html: Use protocol agnostic asset URLS Closes #5 |
00:58 | |
01:00
cdg left
01:01
cdg joined
|
|||
dalek | c: a085296 | (Tom Browder)++ | doc/Programs/00-running.pod: use a code block for options until the p6 pod table bug is fixed |
01:02 | |
c: 4c4d0e2 | (Tom Browder)++ | doc/Programs/00-running.pod: Merge pull request #614 from tbrowder/p6-opt-table use a code block for options until the p6 pod table bug is fixed |
|||
01:03
vike left
|
|||
BrokenRobot | tbrowder: ping | 01:03 | |
AlexDaniel | BrokenRobot: actually, it's interesting. See this for example: github.com/h5bp/html5-boilerplate/...07101f5043 | 01:05 | |
01:06
cdg left
|
|||
BrokenRobot | AlexDaniel: well :) You have access to the repo, don't you? :) | 01:07 | |
AlexDaniel | BrokenRobot: no | ||
:P | |||
01:08
ssotka left
|
|||
AlexDaniel runs away | 01:08 | ||
01:08
ssotka joined
|
|||
BrokenRobot | AlexDaniel: untested, but some JS will cry when it tries to do Async over different protocol (CORS and what not). We really should have an auto-redirect for HTTP -> HTTPS | 01:08 | |
tbrowder | g'night #perl6 | ||
BrokenRobot is doing too many things at once | |||
tbrowder: \o | 01:09 | ||
AlexDaniel | is it actually going to complain if you try to access something https-y from http link? I thought that it is only true other way round | ||
but yeah, +1 for redirecting | 01:10 | ||
BrokenRobot | AlexDaniel: but it's completely different addresses. | ||
You may as well be trying to run from foobar.com/ | 01:11 | ||
ShimmerFairy | timotimo: I forget where exactly SUPERNOVA was (just that I was in the middle of writing table parsing), but I was thinking just now that depending on its state we should look towards integrating it into rakudo when appropriate (some kind of 6.d branch, of course) | 01:14 | |
AlexDaniel | BrokenRobot: anyway, thank you for fixing it so quickly | ||
01:16
noganex_ joined
01:17
vike joined
|
|||
raiph | .tell cognominal I've posted some questions about your slang proposal at gist.github.com/cognominal/d181082...af6d51a42d | 01:19 | |
yoleaux | raiph: I'll pass your message to cognominal. | ||
BrokenRobot | tbrowder: pmichaud: yeah, if you can attempt to fix the pod table bug, that'd be great. I fixed half of it but now I'm stuck :) Here's how far I got and the improved test I'm using: github.com/perl6/doc/pull/614#issu...-227315310 | ||
01:19
noganex left
|
|||
ShimmerFairy | oh, BrokenRobot, are you working with Pod stuff? If so, you might be interested in my currently-dormant SUPERNOVA project (meant to eventually replace Rakudo's existing Pod parsing and handling). | 01:21 | |
01:21
bbkr left
|
|||
BrokenRobot | I was. I passed the buck :P | 01:24 | |
ShimmerFairy | Ah :P | 01:26 | |
I'm sure pmichaud would be interested too, perhaps, and whoever else :) . | |||
01:30
kid51 joined
01:45
ilbot3 left
01:48
ilbot3 joined
01:51
kid511 joined
01:55
kid51 left
02:04
kerframil left
02:20
noganex joined
02:22
lizmat joined
02:23
noganex_ left
02:26
addison left
|
|||
BrokenRobot | AlexDaniel: actually, I'm misremembering. It's doing Ajax over https? that makes it cry, not loading scripts | 02:26 | |
AlexDaniel | huggable: dunno | ||
huggable | AlexDaniel, ¯\_(ツ)_/¯ | ||
raiph | m: class c { has $!foo = 42; method FALLBACK($name) { self.^add_method($name, method { }); self.^compose(); } }; c.new.baz; c.new.baz; | ||
camelia | rakudo-moar ee663c: OUTPUT«P6opaque: no such attribute '$!foo' in type c when trying to check if it's initialized in block <unit> at <tmp> line 1» | ||
02:26
ssotka left
|
|||
raiph | .tell stevieb9 golf'd somewhat at irclog.perlgeek.de/perl6/2016-06-21#i_12701797 | 02:28 | |
yoleaux | raiph: I'll pass your message to stevieb9. | ||
dalek | atures: de466a5 | (Zoffix Znet)++ | template.html: Use HTTPS whenever we can |
02:29 | |
02:34
kid511 left
|
|||
sortiz | m: m: class c { has $!foo = 42; method FALLBACK($name) { self.WHAT.^add_method($name, method { say "in $name" }); self.WHAT.^compose(); say "created $name"; self."$name"() } }; c.new.baz; c.new.baz; # stevieb9, raiph, use ^add_method on the type. | 02:42 | |
camelia | rakudo-moar ee663c: OUTPUT«created bazin bazin baz» | ||
02:46
AlexDaniel left
|
|||
raiph | sortiz: can you eli8 explain why that works? (i don't expect a 7 year old to necessarily grok it ...) | 02:56 | |
Xliff | .seen FROGGS | 02:57 | |
yoleaux | I saw FROGGS 19 Jun 2016 19:29Z in #perl6: <FROGGS> arnsholt: awesome :D | ||
Xliff | Ohhh... | 02:59 | |
You want ^add_method on the type object and not the instance. | |||
sortiz | raiph, When you call an undefined method, the FALLBACK is called, in it add_method is called on _the_ class and the class recomposed, so the next call for the same method simply succeeds | ||
Xliff | Nifty | 03:00 | |
sortiz | Yep, ^add_method should be called on the type, not one instance. | ||
raiph | ah, the recomposed class doesn't affect the attributes of the object that's already been instantiated. got it. thanks. | 03:01 | |
and the error message is spot on | |||
.tell stevieb9 see sortiz's explanation after my golf | 03:02 | ||
yoleaux | raiph: I'll pass your message to stevieb9. | ||
sortiz | m: class c { has $!foo = 42; method FALLBACK($name) { ::?CLASS.^add_method($name, method { say "in $name" }); ::?CLASS.^compose(); self."$name"() } }; c.new.baz; c.new.baz; # Other example, may be more "explicit" | 03:03 | |
camelia | rakudo-moar ee663c: OUTPUT«in bazin baz» | ||
03:08
fhorck left
|
|||
raiph | Hmm. I thought I understood the problem and the error message but that moment has passed. Hopefully stevieb9 gets it or can at least see that others do. :) | 03:10 | |
03:13
raiph left,
raiph joined
|
|||
sortiz | raiph, OTOH, FALLBACK can only execute the required code, not necessarily create a new method "on demand" | 03:15 | |
lizmat | PSA: I just realised that I'm really too tired to do the Perl 6 Weekly atm | 03:16 | |
raiph | which is what stevieb9 wanted (create new methods on demand) | ||
lizmat | PSA: so I'm going to have a go at it tomorrow morning, in about 10 hours from now | ||
sortiz | raiph, Yep I understand that, but in stevieb9's case I think that create them in a BEGIN block is a better idea. | 03:19 | |
raiph | sortiz: Right. So don't use FALLBACK to do that sort of thing unless you're using prototype OO, not class based? | 03:22 | |
03:27
aindilis joined
|
|||
sortiz | Yep, or need a class that can handle arbitrary method calls. | 03:28 | |
dinner& | |||
03:29
Grrrr left,
Grrrr joined
03:40
atweiden joined
03:42
rgrinberg left
|
|||
TEttinger | lizmat: a ten hour delay? scandalous. to be a proper enterprise language, perl 6 needs delays of at least half a year (see: java 9) | 03:44 | |
although one could argue that with pugs, parrot, etc. it has been a bit more than that :) | |||
03:46
skids left
04:05
Cabanossi left
04:07
Cabanossi joined
04:11
TeamBlast joined,
huggable left,
ssotka joined
04:12
huggable joined
04:19
khw left
04:40
buharin joined
05:00
atweiden left
05:03
Cabanossi left,
Cabanossi joined
|
|||
buharin | I am not very good to understand the difference between is raw and is rw | 05:12 | |
both can modify parameter | |||
like throw the reference | |||
05:14
sno left
|
|||
raiph | buharin: aiui raw means if it's a container (variable), it stays a container, if not (ie it's a regular value), it stays not; rw means if it's a value, stick it in a container (variable) | 05:22 | |
buharin | so raw is mostly used for specify container parameter | 05:23 | |
? | |||
raiph | m: sub foo ($a is rw, $b is raw) { say ++$a; say ++$b }; foo($,$); foo(2,$); foo($,2) | 05:24 | |
camelia | rakudo-moar 57f8f8: OUTPUT«11Parameter '$a' expected a writable container, but got Int value in sub foo at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
raiph | m: sub foo ($a is rw, $b is raw) { say ++$a; say ++$b }; foo($,$); foo($,2); foo(2,$); | ||
camelia | rakudo-moar 57f8f8: OUTPUT«111Cannot resolve caller prefix:<++>(Int); none of these signatures match: (Mu:D $a is rw) (Mu:U $a is rw) (Int:D $a is rw) (int $a is rw) (Bool $a is rw) (Num:D $a is rw) (Num:U $a is rw) (num $a is…» | ||
raiph | Give me a few minutes. (I'm still trying to recover from watching damian's mesmerizing (understatement) "Perl 6 for beginners".) | 05:26 | |
buharin | in my compiler I got Parameter '$a' expected a writable container, but got Int value | 05:28 | |
for foo(2, $) | |||
raiph | that would come from passing an arg that is not a container for a parameter that requires a container (i.e. a parameter that is rw) | 05:31 | |
m: sub foo ($a is rw) { say ++$a }; foo(2) # compiler should reject this | |||
camelia | rakudo-moar 57f8f8: OUTPUT«Parameter '$a' expected a writable container, but got Int value in sub foo at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
raiph | gah, let me say that more correctly | 05:33 | |
m: sub foo ($a is rw) { say ++$a }; foo(2) # rejects this at run-time at arg/parameter bind time (may one day reject at compile time) | |||
camelia | rakudo-moar 57f8f8: OUTPUT«Parameter '$a' expected a writable container, but got Int value in sub foo at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
raiph | m: sub foo ($a is raw) { say ++$a }; foo(2) # rejects this at run-time at ++$a instruction | 05:34 | |
camelia | rakudo-moar 57f8f8: OUTPUT«Cannot resolve caller prefix:<++>(Int); none of these signatures match: (Mu:D $a is rw) (Mu:U $a is rw) (Int:D $a is rw) (int $a is rw) (Bool $a is rw) (Num:D $a is rw) (Num:U $a is rw) (num $a is rw) in …» | ||
raiph | buharin: am I right in saying the is rw works as you would expect? | 05:35 | |
buharin | raiph, little mess in my head ;-) | ||
05:36
BenGoldberg left
|
|||
raiph | buharin: sorry about my confusing attempt at explanation | 05:37 | |
05:37
sortiz left
|
|||
buharin | raiph, thats okay | 05:37 | |
I am just trying to figure the use case of raw and rw | 05:38 | ||
raiph | buharin: do you think you understand the use case for is rw? | ||
(rw means read/write) | |||
buharin | yeah if I pass a variable to routine it is read by default | 05:39 | |
05:39
bbkr joined
|
|||
raiph | correct | 05:39 | |
buharin | because routine can modify it | ||
outside | |||
so overtime if I want to do something like func(int& a) ;D I use rw | |||
but raw is kind of magic | |||
raiph | forget raw for a moment; let's make sure we agree on is rw | 05:43 | |
buharin: I'm a bit confused by "because routine can modify it ... outside" | 05:44 | ||
buharin | raiph, I mean rw is pass by reference | 05:46 | |
05:51
woolfy left
|
|||
raiph | buharin: i'd say `is rw` is "must be passed a container" | 05:51 | |
05:51
lizmat left
|
|||
buharin | what do you mean by container list arrays? | 05:52 | |
raiph | m: just think of a container in the real world; something you put things in | 05:53 | |
camelia | rakudo-moar 57f8f8: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Undeclared routines: a used at line 1 container used at line 1 in used at line 1 just used at line 1 of used at line 1 real used at line 1 something used at line 1…» | ||
raiph | oops :) | ||
m: $ # <--- a Scalar, a container holding one thing | 05:54 | ||
camelia | rakudo-moar 57f8f8: OUTPUT«WARNINGS for <tmp>:Useless use of unnamed $ variable in sink context (line 1)» | ||
buharin | raiph, oh okay | 05:55 | |
;D | |||
raiph | m: say my $ = 1 # puts the Int 1 inside an anonymous Scalar container and say it. A reference to a Scalar yields the value it contains | 05:56 | |
camelia | rakudo-moar 57f8f8: OUTPUT«1» | ||
05:56
Woodi joined
|
|||
buharin | is class also a container? | 05:58 | |
or \ reference type | 05:59 | ||
raiph | m: say my @ = 1,2 # puts the Int 1 in first anonymous Scalar inside anonymous Array container, 2 in second anonymous Scalar. Then saying it pulls the Int values out of the two anonymous Scalar containers inside the anonymous Array | ||
camelia | rakudo-moar 57f8f8: OUTPUT«[1 2]» | ||
06:00
krakan left
|
|||
raiph | Some classes act as containers: Scalar, Array, Hash, for starters | 06:01 | |
The vast majority do not | |||
06:04
sno joined
|
|||
raiph | buharin: Or rather an *instance* of a Scalar, Array, etc. acts as a container | 06:05 | |
buharin | okay ;-) | 06:06 | |
I think I get it | |||
06:08
woolfy joined
|
|||
raiph | buharin: have you read doc.perl6.org/language/containers ? | 06:09 | |
buharin | yeah I read it | ||
06:13
domidumont joined
06:17
domidumont left,
domidumont joined
|
|||
sammers | good afternoon from Japan | 06:18 | |
06:19
krakan joined
|
|||
raiph | hi sammers | 06:19 | |
sammers | hi raiph | 06:20 | |
raiph | I need to go to sleep soon. 2:20am US east coast | ||
06:20
firstdayonthejob joined
|
|||
sammers | good morning | 06:20 | |
raiph | sammers: have you see the video of damian's "Perl 6 for beginners" keynote? | 06:21 | |
06:22
CIAvash joined
|
|||
sammers | raiph, not yet, is it online yet? | 06:23 | |
06:23
Zero_Dogg left,
Zero_Dogg joined
|
|||
buharin | I read somewhere in doc | 06:24 | |
that default class declaration without my | |||
is not lexical scope | |||
raiph | www.youtube.com/watch?annotation_i...q2HkAYbG5o | ||
buharin | but while I am trying to use it in my test | ||
I need export it | |||
what's a difference between my class and class? | 06:25 | ||
nine | buharin: that sounds odd. The docs should be correct there so there may be something about your code that breaks it. | ||
buharin | nine, doc.perl6.org/language/modules | 06:26 | |
# Packages like classes can be exported too | |||
class MyClass is export {}; | |||
sammers | thanks, raiph, I will check it out | ||
raiph | goodnight #perl6 | ||
buharin | and he export it ;d | ||
raiph, goodnight | |||
nine | buharin: I think that's for cases like: unit class Foo; class Bar is export { }; | 06:27 | |
llfourn | you can also do my class Bar is export {} | 06:28 | |
so you only get it if you 'use' rather than need | |||
sammers | night | 06:29 | |
llfourn | although packages within packages will be there anwyway under Foo::Bar (assuming you have Foo) even if you make it 'my' | 06:30 | |
06:31
rurban joined
06:39
cur8or left
06:40
firstdayonthejob left
|
|||
buharin | so class by default is Module scoped? | 06:43 | |
06:50
dwarring left
06:51
redhands98100 joined
06:58
ssotka left
|
|||
llfourn | buharin: yeah. But if your not inside a module it goes into GLBOAL. We call this "our" scoped. | 06:59 | |
when a module is loaded via "need" or "use" the loading module will merge all the GLOBAL symbols from the loaded module into it's own GLOBAL. | 07:00 | ||
if you don't want it to be merged from global you can use "my" | |||
and then you can use "is export" so that the symbols are merged when importing symbols with "use" | 07:01 | ||
importing symbols and merging from GLOBAL are two seperate things | |||
07:02
John[Lisbeth] joined
|
|||
llfourn goes for a walk | 07:03 | ||
John[Lisbeth] is considering whether to learn perl or perl6 | |||
nine | John[Lisbeth]: why make it an either/or? | 07:04 | |
John[Lisbeth] | I am a bit of an elitist with my own personal choices though I respect others' choice not to have elitist attitudes. | 07:05 | |
moritz | ... and you also equate elitism with focus, not broadness | 07:08 | |
ah well, to each their own | 07:09 | ||
John[Lisbeth] | I'm just curious about perl but the choice of which one to start with vexes me | 07:12 | |
stmuk | what do you want to do with the lang? | 07:13 | |
moritz | John[Lisbeth]: if you want to tinker with an interesting language, and build small tools for personal use, learn Perl 6. If you want to go to as quickly as possible to production and/or making money, learn Perl 5 | 07:14 | |
buharin | llfourn, thanks thats quite better explanation | 07:15 | |
;) | |||
07:16
buharin left,
stevieb9 left,
rindolf joined
07:17
stevieb left
|
|||
ShimmerFairy | John[Lisbeth]: I'd say Perl 5 is currently more useful if you need to work with P5 scripts or want to get a job with it, whereas P6 might be better suited if you just have time to kill to learn some language (disclaimer: I don't know P5). | 07:17 | |
07:18
darutoko joined
|
|||
masak | oh, another first that I did yesterday: use a contextual in a loop, like so: `for find("Scripts/", /".js" $/) -> $*file { ... }` | 07:19 | |
07:21
aries_liuxueyang left
|
|||
ShimmerFairy | masak: oh, before I forget again, have you done anything with hexslide? I know I haven't :P . | 07:22 | |
masak | ShimmerFairy: I know I had a fairly evolved, fairly realistic plan to go forward. but no, I haven't realized it. | 07:25 | |
07:26
aries_liuxueyang joined,
baest joined
|
|||
ShimmerFairy | masak: I really need to 'publish' the stuff I did on figuring out the number of possible boards for a 1D version of the game, which is as far as I ever got (spoiler: tribonnaci sequence) | 07:26 | |
masak | ShimmerFairy: sounds like a neat blog post, yes. | 07:27 | |
07:27
wamba joined
|
|||
masak | ShimmerFairy: and if I'm not mistaken, that also accords/weaves into my approach for solving the whole thing. | 07:27 | |
ShimmerFairy | The next step I never got around to finishing was to figure out the number of boards in a 2D game, and then work on solveability. (I do recall coming across a graph theory thing at one point relating to the 2D version) | ||
07:28
baest_ left
|
|||
ShimmerFairy | masak: I last touched it years ago, but that doesn't keep it from popping up in my head every so often :) . But I should definitely make that blog post soon. | 07:29 | |
07:30
cpage_ left
07:34
pdcawley joined
|
|||
masak | +1 | 07:35 | |
07:38
TeamBlast left
07:39
_mg_ joined
07:43
dakkar joined
07:44
TeamBlast joined
07:49
abraxxa joined
|
|||
ShimmerFairy | masak: ooh, in case you don't know, hexslide is usually known as "Klotski" or "Rush Hour", apparently :) | 07:53 | |
I think Rush Hour is closer to this type of puzzle than klotski | 07:54 | ||
masak | url? | 07:56 | |
ShimmerFairy | en.wikipedia.org/wiki/Rush_Hour_%2...rd_game%29 | 07:57 | |
07:59
RabidGravy joined
|
|||
ShimmerFairy | And here's a picture of Rush Hour: imgur.com/V3Z4l2R | 08:00 | |
08:08
cpage_ joined
|
|||
masak | aw, but that's square, not hexagonal | 08:08 | |
ShimmerFairy | masak: yeah, but I'm sure the hex version was derived from that :) . And I did catch one or two mentions of math-paper-style work done on the game, have to search for that more later. | 08:10 | |
08:11
huggable left
08:12
huggable joined
08:16
ocbtec joined
08:23
rurban_ joined
08:31
Praise left
08:35
cognominal joined
08:36
user9 left,
user9 joined
08:38
TeamBlast left
08:44
vytas left
08:53
TeamBlast joined
09:14
donaldh joined
09:23
domidumont left
09:39
vytas joined
09:45
TEttinger left
09:47
rurban left
09:50
nowan left
09:52
nowan joined
|
|||
llfourn | m: say $?FILE | 09:57 | |
camelia | rakudo-moar 57f8f8: OUTPUT«<tmp>» | ||
09:57
ocbtec left
|
|||
llfourn | seems like $?FILE has been corrupted accidentally with precomp | 09:58 | |
I get: /Users/llfourn/tmp/p6/bug/lib/GoofedFile.pm6 (GoofedFile) | |||
for $?FILE when it is precompiled | |||
echo 'say $?FILE' > Goof.pm6; perl6 -I. -e 'use Goof;' | 10:01 | ||
10:04
Emeric joined
|
|||
llfourn | nine: RT #128442 # I think relevant to your interests :) | 10:07 | |
synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=128442 | ||
10:09
Emeric left
|
|||
nine | llfourn: surprise, surprise, quick hacks do have side effects :/ | 10:10 | |
10:10
Emeric joined
|
|||
llfourn | yes, but difficult to know where they will be :) | 10:10 | |
sorta suprised we don't have a test for it | 10:11 | ||
$?FILE is used a lot in roast but never in a module it seems :\ | 10:13 | ||
10:17
rurban joined
|
|||
yanmc | that's not an adverb, perl 6, it's an added verb :) | 10:19 | |
10:23
johndau left
10:29
ufobat joined
10:31
Zero_Dogg left
10:32
Zero_Dogg joined
10:37
ocbtec joined
|
|||
grondilu | it seems that a talk from Damian Conway in this year YAPC::NA is already online | 10:48 | |
www.youtube.com/watch?v=Nq2HkAYbG5o | |||
"On the shoulders of giants" | |||
llfourn | I just watched it. It was great! | 10:49 | |
10:53
iH2O joined,
mre_ left
10:54
kid51 joined,
domidumont joined
|
|||
grondilu | wow his example of the Bernouilli numbers is very good at showing why using rational numbers makes sense. | 11:00 | |
11:02
mre joined
|
|||
iH2O | grondilu: prove now that pi isnt a rational number | 11:04 | |
11:05
_mg_ left
|
|||
grondilu | not sure what you mean. I've never known that proof. I know about sqrt(2), but not pi. | 11:06 | |
iH2O | pi = 22/7 right? | ||
grondilu | I personally prefer 355/113 | ||
grondilu hopes he remembered it well | |||
iH2O | i've seen a long list of those rational number on wikipedia | ||
grondilu | m: say (355/113 - pi)/pi; | 11:07 | |
camelia | rakudo-moar 57f8f8: OUTPUT«8.49136787674061e-08» | ||
iH2O | *of those rational fractions | ||
theres a wikipedia page on that. let me find it... | |||
11:08
ppant joined
|
|||
iH2O | pi=245850922/78256779 | 11:10 | |
llfourn | m: say pi ~~ Rat # proves pi isn't Rat | 11:11 | |
camelia | rakudo-moar 57f8f8: OUTPUT«False» | ||
11:13
domidumont left
|
|||
iH2O | theres no end of increasingly better rational/fractional approximations of pi. perl6 is well equipped to handle them | 11:14 | |
grondilu | wow Damian's quicksort in lisp-style is pretty cool. | 11:16 | |
iH2O | choose merge sort, its stable and more predictable | ||
11:16
stevieb joined
|
|||
iH2O | its O(log n) in the worst case | 11:17 | |
O(n log n) | |||
quicksort is O(2^n) in the worst case :( | |||
moritz | iH2O: I think this is an educational exercise | ||
nobody[tm] implements their own sort algorithms anymore :-) | |||
iH2O | implement bucket/bin sort in perl6, moritz | 11:18 | |
its O(n) in every case | |||
bhm | Except for Damians "sleep sort". | 11:19 | |
iH2O | what about random sort? | ||
jk, i just invented that | |||
:-P | |||
yet, humans if asked to sort a pile of documents mostly do that | |||
11:20
kaare_ joined
|
|||
iH2O | to sort documents by hand | 11:20 | |
moritz | yes, typically some mixture between insertion sort and bucket sorting | ||
or sometimes a form of n-bucket-quicksort-like | 11:21 | ||
iH2O | heres a pile of 10000 documents to insert and bucket sort.. | ||
moritz | typically folks would sort by first letter first | 11:22 | |
then sort each bucket | |||
and then join | |||
sorting each bucket is likely an insertion sort kinda thing | 11:23 | ||
tadzik | humans typically optimize for numbers of move operations rather than number of comparisons, I figure | ||
because we can compare in bulks, like when sorting cards | |||
iH2O | if i had to sort 10000 documents, id make a 1st pass in which id insert each document in the pack at a position depending on its 1st letter | 11:24 | |
moritz | there's an implicit binary search in the pre-sorted list going on | ||
iH2O | then indeed id use bucket sort | ||
moritz | iH2O: if I had enough space, I'd have a separate pile for each first letter | ||
instead of inserting it in one big pile in the right place | 11:25 | ||
iH2O | yeah, but the letter q has about 50 times less entry than the letter l | 11:26 | |
the packs have different lenghts | |||
*fewer entries | |||
make 16 pcks instead of 26 packs | 11:27 | ||
moritz | depends on what your sort | ||
iH2O | so you have 4 x 4 packs in front of you, of approximately the length, with the 1st letters n and q together, the letters i j k together, etc | 11:32 | |
its handy t sort with your hands | |||
26 packs in front of you is not handy to sort | |||
literal | m: perl6 -e'my @ar = ({:a<a b c>}, {:a<x y z>}); say |@ar»<a>' | ||
camelia | rakudo-moar 57f8f8: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Variable '@ar' is not declaredat <tmp>:1------> 3perl6 -e'my 7⏏5@ar = ({:a<a b c>}, {:a<x y z>}); say |@» | ||
iH2O | *the same length | ||
literal | m: my @ar = ({:a<a b c>}, {:a<x y z>}); say |@ar»<a> | 11:33 | |
camelia | rakudo-moar 57f8f8: OUTPUT«(a b c)(x y z)» | ||
literal | can I do deeper flattening than this, using a hyperop instead of a map? | ||
iH2O | *oops the letters p and q together | ||
11:33
donaldh left
|
|||
timotimo | aha! someone seems to be telling damian about "with" | 11:35 | |
during the turing machine example | |||
but he's of course not using the with operator in the slides now, because for that he'd have to be changing all his slides i suppose | 11:36 | ||
11:36
domidumont joined
|
|||
iH2O | perl6 is as powerful as sed which is as powerful as a TM | 11:37 | |
perl6 is exactly as powerful as sed | |||
dont know if thats good news | |||
timotimo | it lets you express your stuff a bit more concisely, though | ||
iH2O | thlol | 11:38 | |
lol | |||
nine | a tiny bit ;) | ||
timotimo | saving a few bytes here and there | 11:39 | |
it adds up! | |||
11:41
kurahaupo joined,
aries_liuxueyang left
11:43
aries_liuxueyang joined
11:44
kid51 left
11:45
ppant left
11:46
brrt joined
11:48
g4 joined
11:56
lizmat joined
|
|||
dalek | c: 2185a35 | Altai-ch++ | doc/Language/ (6 files): Fixes for hard linking |
11:57 | |
c: 47ba223 | RabidGravy++ | doc/Language/ (6 files): Merge pull request #617 from Altai-man/master Fixes for hard linking |
|||
iH2O | given that the universe is seemlingly expanding forever(even accelerating), it has a potentially infinite tape. so a self-replicating computer running perl6 is indeed as powerful as a TM with an *infinite* tape | 12:00 | |
brrt | energy | 12:01 | |
iH2O | matter? | ||
brrt | but it's a nice idea :-) | ||
moritz | iH2O: there might be infinite *space* in the universe, but the tape needs material/energy | ||
and that's still limited | |||
iH2O | :( | ||
moritz | and, in fact, ever more limited the more the universe expands | 12:02 | |
iH2O | its all swallowed by black holes indeed | ||
moritz | because when the Universe expands faster, things that move away from you faster than the speed of light are outside of your event horizon | ||
not all of it :-) | |||
iH2O | that may apply only to things that are on the *other side of the Big Bang" | 12:03 | |
brrt | if the pace of it is acclerating, then eventually, all of it........ hey waitaminute | ||
iH2O | which is 1/2 the stuff in the universe | ||
brrt | how can things be moving away faster than the speed of light | ||
iH2O | *1/2* is a fixed value,, so that doesnt affect my argument | ||
moritz | iH2O: I recommend www.youtube.com/watch?v=jDF-N3A60DE (and indeed the whole "crash course astronomy" series on youtube) | ||
iH2O | I watched a crash course on politics recently, isnt that good enough? | 12:04 | |
:) | |||
moritz | iH2O: more, more, more, you always need more! | ||
brrt | moritz: i'm not sure the universe is moving beyond our event horizon; isn't it more like fading into background radiation | 12:05 | |
(because of the redshift) | 12:06 | ||
iH2O | physics' vacuum is apparently able to create energy out of nothing, and energy= matter (E=mc2) | ||
theres the solution to all our energy needs | 12:07 | ||
better than perpetual motion | |||
12:07
tomboy64 left
|
|||
brrt | hey, we're not discussing perl again, look at that :-) | 12:08 | |
timotimo | cool | ||
12:08
rurban left
|
|||
BrokenRobot | Are emails snet to [email@hidden.address] supposed to show up on RT website? It's the second time in the past 2 days now that I see an email sent but nothing is on the site. | 12:08 | |
s/see an email sent/receive an email sent to that address/; | 12:09 | ||
12:11
huggable left
12:12
huggable joined
12:13
aries_liuxueyang left,
aries_liuxueyang joined
12:15
rurban_ left
|
|||
masak | one of my disfavorite things in Perl 6: can't smartmatch inside an action method which has $/ as a parameter | 12:16 | |
brrt | uhm.. why not? because $/ can't be assigned to? | 12:17 | |
12:17
iH2O left
|
|||
masak | right, because it's read-only | 12:18 | |
because it's a parameter | |||
jnthn | Then call the parameter something else | ||
brrt | oot | ||
and we can't shadow it? | |||
(regrets that comment already) | |||
masak | jnthn: yes, that's probably the workaround | ||
jnthn | Calling it $/ is only a common convention 'cus you get to write $<foo> instead of $m<foo> | 12:19 | |
masak | nodnod | ||
jnthn | I'm kinda glad that it doesn't just silently let you "get away with it" tbh, 'cus it's way too easy to be confused. | ||
masak | jnthn: and @<foo> instead of @($m<foo>) | ||
jnthn: yes, point | |||
jnthn | Also, why are you doing multi-pass parsing? ;P | 12:20 | |
timotimo | of course you can "is copy" it, too | ||
that'll silently let you get away with it and break everything | |||
12:21
andreoss joined
|
|||
andreoss | tadzik: have you considered my PR so far? | 12:21 | |
tadzik: also, within rakudo-star panda tries to contact remote servers, i wonder if it's a panda issue or rakodo-star's rather | 12:22 | ||
nine | I dare say rakudo-star shouldn't even use panda | 12:23 | |
BrokenRobot | What should it use? | 12:25 | |
12:25
rgrinberg joined
|
|||
masak | jnthn: hm :) | 12:25 | |
nine | BrokenRobot: a beefed up tools/install-dist.pl that only does the installation part but not the whole dependency tracking/downloading part. | 12:28 | |
BrokenRobot | nine: why? An awesome module installer should be one of the top features of R*. Otherwise, one may as well compile from sauce | 12:30 | |
tadzik | andreoss: oh, I may have missed it, let me take a look | ||
BrokenRobot | I'd go with zef install of panda though. Although, I've not used panda for some time now. | ||
nine | BrokenRobot: note that I said "use" not "ship". | ||
BrokenRobot | Ah, ok. | 12:31 | |
nine | BrokenRobot: of course it should come with an installer | ||
timotimo | that would include Build.pm? | ||
12:31
_mg_ joined
|
|||
BrokenRobot | *zef instead of | 12:31 | |
nine | timotimo: Build.pm is what's missing from install-dist.pl. I do hope that I can start working with ugexe and probably others who are interested on a declarative replacement rather soon. | 12:32 | |
tadzik | andreoss: hmm, I'm a bit reluctant about it; it's adding another dependency to panda (which would need to be added to git submodules too), and is only used in the rare circumstance where the existing solution fails (I've never actually seen it happen). We increase the runtime code size and complexity for a very unlikely scenario | 12:33 | |
nine | Oh my it's the time of the year again when I should really start organizing my YAPC trip | 12:34 | |
tadzik | regarding the discussion, shipping zef instead of panda with R* may be a good idea, with zef being much more actively maintained | ||
andreoss | tadzik: as i see the dependency on File::Which already present in other files | 12:37 | |
tadzik | oh, it is? | 12:45 | |
hm | |||
12:45
donaldh joined
|
|||
tadzik | I don't have it here :) | 12:46 | |
12:47
andreoss left
12:52
telex left
12:53
stevieb left
12:54
telex joined
|
|||
dalek | c: 38f6ccd | Altai-man++ | doc/Language/ (5 files): Hard links were removed |
12:59 | |
c: cae8d91 | Altai-man++ | doc/ (2 files): Same values in some links for a source and name were fixed |
|||
13:00
grassass left
13:06
stevieb joined
13:07
lizmat left
13:10
sufrostico joined
|
|||
yanmc | m: my $string = "There is more than one way to do it"; say [~] ($string.words.map: *.comb(/./)[0].uc) | 13:11 | |
camelia | rakudo-moar 7cff42: OUTPUT«TIMTOWTDI» | ||
13:12
grassass joined
|
|||
yanmc | what's a better way to index a string? e.g. something like $string[0], which doesn't work | 13:12 | |
BrokenRobot | yanmc: $string.comb[0] | ||
moritz | $string.substr(0, 1) | 13:13 | |
BrokenRobot | But that sounds like you may be doing something silly. | ||
yanmc | getting initials is not that silly? | ||
moritz | m: say uc "There is more than one way to do it".words.map(*.substr(0, 1)).join | ||
camelia | rakudo-moar 7cff42: OUTPUT«TIMTOWTDI» | ||
masak | m: say uc "There is more than one way to do it".words».substr(0, 1).join | 13:14 | |
camelia | rakudo-moar 7cff42: OUTPUT«TIMTOWTDI» | ||
BrokenRobot | yanmc: sorry, I didn't read far enough back. It's just more than once I saw people treat strings as arrays of characters doing all sorts of bizzare algos :) | ||
yanmc | np, I'm just experimenting ;) | ||
moritz | say uc "There is more than one way to do it".words>>.flip>>.chop.join | 13:15 | |
m: say uc "There is more than one way to do it".words>>.flip>>.chop.join | |||
camelia | rakudo-moar 7cff42: OUTPUT«EREHSERONAHENYAOOT» | ||
masak .oO( as usual, the annual "Most Meta" award was handed out -- to itself ) | |||
BrokenRobot | m: say uc join "", "There is more than one way to do it" ~~ m:g/<<./ | ||
camelia | rakudo-moar 7cff42: OUTPUT«TIMTOWTDI» | ||
moritz | urgs, chop returns the remaining, not the last character | ||
masak | :P | 13:16 | |
yanmc | moritz: haha, that's something I tried as well | ||
moritz | in p5, it returns the last chracter, but modifies in place | ||
13:16
Emeric1 joined
|
|||
psch | m: say uc join "There is more than one way to do it" ~~ m:g/<<./ : | 13:16 | |
camelia | rakudo-moar 7cff42: OUTPUT«TIMTOWTDI» | ||
13:17
Emeric left
|
|||
BrokenRobot | m: "There is more than one way to do it".subst(/<<.<(.+<</, "", :g).uc.say | 13:18 | |
camelia | rakudo-moar 7cff42: OUTPUT«TIT» | ||
BrokenRobot | umm... | 13:19 | |
13:19
Emeric1 is now known as Emeric
|
|||
BrokenRobot | m: "There is more than one way to do it".subst(/<<.<(.+?<</, "", :g).uc.say | 13:19 | |
camelia | rakudo-moar 7cff42: OUTPUT«TIMTOWTDIT» | ||
13:19
Emeric left
13:20
brrt left
|
|||
psch | m: say ~($ = "There is more than one way to do it".words>>.tc) ~~ tr/a..z // | 13:20 | |
camelia | rakudo-moar 7cff42: OUTPUT«Cannot modify an immutable Str in block <unit> at <tmp> line 1» | ||
psch | aww | ||
moritz | psch: try without the leading ~ | 13:21 | |
psch | moritz: then we get the .perl of StrDistance :/ | ||
moritz | it might have too tight a precdence | ||
psch | m: say ($ = "There is more than one way to do it".words>>.tc) ~~ tr:c/a..z // | ||
camelia | rakudo-moar 7cff42: OUTPUT«StrDistance.new(before => "There Is More Than One Way To Do It", after => "TIMTOWTDI")» | ||
psch | m: put ($ = "There is more than one way to do it".words>>.tc) ~~ tr:c/a..z // | ||
camelia | rakudo-moar 7cff42: OUTPUT«StrDistance<53391648>» | ||
psch | ...what happened to the Str method of StrDistance | ||
moritz | m: say ~($ = "There is more than one way to do it".words>>.tc) ~~ tr:c/a..z // | 13:22 | |
camelia | rakudo-moar 7cff42: OUTPUT«Cannot modify an immutable Str in block <unit> at <tmp> line 1» | ||
BrokenRobot | m: say ~(($ = "There is more than one way to do it".words>>.tc) ~~tr:c/a..z //) | ||
camelia | rakudo-moar 7cff42: OUTPUT«StrDistance<84381344>» | ||
moritz | m: say ~($ = "There is more than one way to do it".words>>.tc) ~~ tr:c/a..z // ) | ||
camelia | rakudo-moar 7cff42: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Unexpected closing bracketat <tmp>:1------> 3y to do it".words>>.tc) ~~ tr:c/a..z // 7⏏5)» | ||
moritz | m: say ~(($ = "There is more than one way to do it".words>>.tc) ~~ tr:c/a..z // ) | ||
camelia | rakudo-moar 7cff42: OUTPUT«StrDistance<70002032>» | ||
moritz | urks. | ||
psch | oh, also don't really need :c there | ||
13:22
Sgeo left
|
|||
BrokenRobot | m: "There is more than one way to do it".comb(/<<./).join.uc.say | 13:22 | |
camelia | rakudo-moar 7cff42: OUTPUT«TIMTOWTDI» | ||
13:23
sherwool joined
|
|||
psch | m: $_ = "foo"; say tr/o/u/ | 13:23 | |
camelia | rakudo-moar 7cff42: OUTPUT«StrDistance.new(before => "foo", after => "fuu")» | ||
moritz | m: say 'There is more than one way to do it".words>>.tc.join.comb(/<:Lu>/).join | ||
camelia | rakudo-moar 7cff42: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Unable to parse expression in single quotes; couldn't find final "'" at <tmp>:1------> 3o it".words>>.tc.join.comb(/<:Lu>/).join7⏏5<EOL> expecting any of: argument list …» | ||
moritz | m: say "There is more than one way to do it".words>>.tc.join.comb(/<:Lu>/).join | ||
psch | i think that should probably have a .Str that gives $!after..? | ||
camelia | rakudo-moar 7cff42: OUTPUT«TIMTOWTDI» | ||
moritz | psch: +1 | ||
m: say "There is more than one way to do it".words>>.tccomb(/<:Lu>/).join | 13:24 | ||
camelia | rakudo-moar 7cff42: OUTPUT«Method 'tccomb' not found for invocant of class 'Str' in block <unit> at <tmp> line 1» | ||
moritz | m: say "There is more than one way to do it".words>>.tc.comb(/<:Lu>/).join | ||
camelia | rakudo-moar 7cff42: OUTPUT«TIMTOWTDI» | ||
CIAvash | m: say "There is more than one way to do it".comb(/<<./).join.uc | ||
camelia | rakudo-moar 7cff42: OUTPUT«TIMTOWTDI» | ||
[Coke] sees Quantum::Computation has not yet been released. :( | 13:25 | ||
CIAvash | m: say "There is more than one way to do it".words».comb».[0].join.uc | ||
camelia | rakudo-moar 7cff42: OUTPUT«TIMTOWTDI» | ||
moritz | [Coke]: is that TensorFlow for Perl? | 13:26 | |
BrokenRobot | m: "There is more than one way to do it".wordcase.comb(/<:Lu>/).join.say | ||
camelia | rakudo-moar 7cff42: OUTPUT«TIMTOWTDI» | ||
[Coke] | moritz: from Damian's keynote | ||
psch | oh, right, wordcase was what i was looking for earlier | ||
instead of .words>>.tc | |||
m: $_ = "foo"; tr:d/a..z/A..Z/; .say # i also think :d is kind of weird | 13:28 | ||
camelia | rakudo-moar 7cff42: OUTPUT«FOO» | ||
psch | as in, it doesn't actually delete, if it gets a replacement part... | ||
13:28
Emeric joined
|
|||
psch | should it? | 13:28 | |
BrokenRobot | IIRC that's meant to delete stuff without replacements | ||
13:28
lizmat joined
|
|||
BrokenRobot | m: $_ = "fooz"; tr:d/a..x/A..x/; | 13:28 | |
camelia | ( no output ) | ||
BrokenRobot | m: $_ = "fooz"; tr:d/a..x/A..x/; .say | 13:29 | |
camelia | rakudo-moar 7cff42: OUTPUT«FOOz» | ||
BrokenRobot | oh :/ | ||
13:29
AlexDaniel joined
|
|||
AlexDaniel | m: say split ‘b’, ‘aba’, NaN | 13:29 | |
camelia | rakudo-moar 7cff42: OUTPUT«Type check failed in split ($limit argument); expected "any Real type (non-NaN) or Whatever" but got "NaN" in block <unit> at <tmp> line 1» | ||
13:29
skids joined
|
|||
AlexDaniel | wtf is $limit | 13:29 | |
m: say split ‘b’, ‘aba’, Inf | 13:30 | ||
camelia | rakudo-moar 7cff42: OUTPUT«(a a)» | ||
moritz | m: say split 'b', 'abababac', 2 | ||
camelia | rakudo-moar 7cff42: OUTPUT«(a ababac)» | ||
BrokenRobot | AlexDaniel: the limit you're specifying. | ||
psch | m: $_ = "foo"; tr:c/o/u/; .say # this also seems broken..? :/ | ||
camelia | rakudo-moar 7cff42: OUTPUT«fuu» | ||
moritz | limit is the third, optional argument to split | ||
BrokenRobot | Maybe it shouldn't have the sigil to avoid confusion | ||
AlexDaniel | it shouldn't, I think | ||
moritz | why not? | 13:31 | |
the other args typically do | |||
BrokenRobot | AlexDaniel │ wtf is $limit | ||
lizmat | BrokenRobot: shouldn't have the sigil ? | ||
BrokenRobot | Well, it makes one think there's a $limit var in their code | ||
AlexDaniel | it's like one of these “bla-bla-bla $a” kind of LTA warnings | ||
m: my $limit = 42; say split ‘b’, ‘aba’, NaN; say $limit | |||
camelia | rakudo-moar 7cff42: OUTPUT«Type check failed in split ($limit argument); expected "any Real type (non-NaN) or Whatever" but got "NaN" in block <unit> at <tmp> line 1» | ||
AlexDaniel | well, it says “in split”, so it's not too bad, hm… | 13:32 | |
moritz | m: sub f(Int $x) { 42 }; f <foo bar> | ||
camelia | rakudo-moar 7cff42: OUTPUT«Type check failed in binding $x; expected Int but got List ($("foo", "bar")) in sub f at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
BrokenRobot takes the blame for writing that error text | |||
13:32
Emeric left
|
|||
AlexDaniel | moritz: if $x is in my code then there's no problem, sure | 13:32 | |
moritz | AlexDaniel: it typically isn't | 13:33 | |
m: say sin(Mu) | |||
camelia | rakudo-moar 7cff42: OUTPUT«Type check failed in binding <anon>; expected Any but got Mu (Mu) in block <unit> at <tmp> line 1» | ||
moritz | bad example here, since it's anon | ||
AlexDaniel | BrokenRobot: anyway, thanks for your work on the ticket | 13:34 | |
BrokenRobot | To me it feels there should be some subclass of X::TypeCheck for use specifically when you're checking argument sanity outside of the signature. | ||
AlexDaniel | Zoffix++ lizmat++ | ||
BrokenRobot | AlexDaniel: lizmat++ fixed it, not I. | ||
AlexDaniel | BrokenRobot: you wrote the test | ||
masak | m: say 847377847987846873.comb(/../)>>.chr.join | 13:35 | |
camelia | rakudo-moar 7cff42: OUTPUT«TIMTOWTDI» | ||
moritz | BrokenRobot: it would be even nicer if we had a syntax like sub limit(..., Real $limit where { $_ !=== NaN } throws { more descriptive error here } | ||
13:36
g4 left
|
|||
moritz | well, the syntax isn't good | 13:36 | |
BrokenRobot | Subset::Helper :P | ||
13:36
pmurias joined
|
|||
moritz | but having a declarative syntax for better error messages on subtype failures | 13:36 | |
BrokenRobot | Yeah that would be nice. | 13:37 | |
dalek | ake: 5b005a2 | (Pawel Murias)++ | t/indent.t: Test indenting in weird ways works. |
||
ake: c555b37 | (Pawel Murias)++ | src/Snake/Grammar.nqp: Support floating points literals of the form "123." and "13.". |
|||
AlexDaniel | m: sub limit($limit where { $_ !=== NaN or fail ‘more descriptive error here’ }) {}; limit(42) | ||
camelia | ( no output ) | ||
AlexDaniel | m: sub limit($limit where { $_ !=== NaN or fail ‘more descriptive error here’ }) {}; limit(NaN) | ||
camelia | rakudo-moar 7cff42: OUTPUT«more descriptive error here in any at /home/camelia/rakudo-m-inst-1/share/perl6/runtime/CORE.setting.moarvm line 1 in sub limit at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
moritz | oh, TIL | ||
BrokenRobot | OTOH, the where stuff is run multiple times. If you want some expensive check, that's far from ideal | ||
AlexDaniel | well, the line number is a bit off, but it kinda works | ||
BrokenRobot | Subset::Helper is a real thing BTW :) | 13:38 | |
subset Positive of Int where subset-is * > 0, 'Value must be above zero'; | |||
moritz | but not on modules.perl6.org, is it? | ||
13:38
rurban joined
|
|||
BrokenRobot | 'tis there: modules.perl6.org/repo/Subset::Helper | 13:38 | |
13:39
Emeric joined
|
|||
moritz | huh, I somehow managed to miss it while searching | 13:39 | |
BrokenRobot wishes the docs did not use "seems" [ "to work like ..." | "do this " | "etc. " ] | 13:41 | ||
Makes it sound like it's a guessing game and whoever wrote it doesn't have a clue | 13:42 | ||
13:42
Emeric1 joined
|
|||
dalek | c: 2062ac2 | (Zoffix Znet)++ | doc/Language/5to6-perlfunc.pod: Reword |
13:43 | |
13:44
Emeric left,
Emeric1 is now known as Emeric
13:46
tadzik left
|
|||
moritz | good technical writing is hard. | 13:46 | |
staying motivated to do good technical writing is also hard :-) | |||
13:47
M-matthew left
13:48
M-Illandan left
|
|||
AlexDaniel | BrokenRobot: github.com/perl6/doc/issues/619 :) | 13:48 | |
“The main difference in Perl 6 seems to be that you can now call methods on …” – yeah, the documentation screams “we have no clue!” | 13:49 | ||
hmmm, perhaps we should have “low-hanging fruit” tag in doc/issues | 13:50 | ||
13:50
bbkr left
13:52
nebg joined
|
|||
nebg | hello everyone... does perl6 has a cpan ? or can i use cpan modules of perl for perl6 ? | 13:52 | |
moritz | nebg: it has modules.perl6.org/, and two alternative module installers (zef and panda) | 13:53 | |
nebg: and you can use Perl 5 modules from CPAN through Inline::Perl5 | |||
nebg | moritz, ohh ok so we still have the advantage of perl5 of having a massive number of modules right ? | ||
moritz | nebg: right | 13:54 | |
nebg: and also python modules through Inline::Python | |||
nebg | moritz ?! really ???what ?? | ||
and we can use from python perl modules ? | |||
moritz, do i need a JVM to run perl6 ? | 13:55 | ||
BrokenRobot | nebg: and C libraries :) | ||
moritz | nebg: no, use MoarVM (which the rakudo installer will build for you) | ||
nebg | BrokenRobot, what about perl5 or python ? for example can i load python modules from perl5 or can i load perl5 and perl6 modules from python ? | ||
BrokenRobot | nebg: no. It can run on JVM, but that's a bit broken ATM. MoarVM is the best thing right now | ||
nebg | BrokenRobot, why perl5 didn't need an virtual machine ? | 13:56 | |
BrokenRobot | nebg: I don't know about from Perl 5. But from Perl 6 you can use most of Perl 5 and Python modules | ||
AlexDaniel | is Altai-man here? | ||
moritz | nebg: for example doc.perl6.org/ has syntax hilighting which is done by python's pygmentize module, but the build script for all the HTML is perl 6 | ||
BrokenRobot | nebg: it does. You just never heard of it :) | ||
nebg | BrokenRobot, which is the virtual machine of perl5 then ? | 13:57 | |
ilmari | nebg: the perl5 vm | ||
moritz | github.com/perl6/doc/blob/master/h...#L875-L888 is the code that does it | ||
ilmari | it's built-in and inseparable | ||
which is why you haven't heard of it | |||
BrokenRobot | :) | ||
nebg | BrokenRobot, soany interpreted language has its own virtual machine ? | ||
BrokenRobot | nebg: no idea | 13:58 | |
geekosaur | in some sense, almost yes (things like shells often interpret from source instead of an AST or precompiled bytecode) | 13:59 | |
grondilu is surprised by how many people have an Apple laptop at YAPC::NA | 14:00 | ||
moritz | grondilu: many developers seem to be on Mac, regardless of their language | 14:01 | |
geekosaur | if you're running from an AST or bytecode, then you have a virtual machine running it. not necessarily a complete virtual machine like JVM/CLR/moar, though (ghc's bytecode and perl 5 being examples of incomplete virtual machines) | ||
moritz | a very simple question you can ask is: How is memory managed? | 14:02 | |
If it's done implicitly (by refcounting or GC), then you have at least some form of a limited VM underneath | |||
mspo | perl5 wasn't "interpreted" | 14:04 | |
it was compiled on the fly | |||
timotimo | shared pointers in Cpp are not implicit to you, right? | ||
makes sense, though | 14:05 | ||
nebg | mspo, so which is at this point the difference between compiled and interpreted languages ? since it seems that even interpreted languages are compiled for a virtual machine or on the fly | 14:06 | |
how is perl6 in terms of performance with respect to java/perl5/python ? | |||
14:06
domidumont left
|
|||
BrokenRobot | nebg: it sucks | 14:07 | |
mspo | nebg: shell scripts are interpreted | ||
nebg: in the sense that you are thinking about | |||
nebg: awk too, I think | |||
14:08
domidumont joined
|
|||
nebg | BrokenRobot, so bad performances ? | 14:08 | |
BrokenRobot | nebg: it just got release last Christmas and now the work is being done to improve performance. We're doing well. Here are performance fixes for last release of the compiler: github.com/rakudo/rakudo/blob/nom/...ngeLog#L18 | ||
AlexDaniel | nebg: well, these graphs may tell you something tux.nl/Talks/CSV6/speed4.html | 14:09 | |
mspo | nebg: the main difference is probably the amount of native code generated by compilation and the scope of the virtual machine | ||
BrokenRobot | nebg: it also depends on what you're doing. bare perl -e '' is a completely different beast than bare perl6 -e '' since in Perl 6 you get something akin to Moose + List module + all tons of other stuff | ||
AlexDaniel | nebg: in other words, it is improving really fast, but we're not very fast yet | ||
14:10
cdg joined
|
|||
BrokenRobot | nebg: we have more detailed answer in FAQ: docs.perl6.org/language/faq#Is_Perl..._for_me%3F | 14:10 | |
AlexDaniel | BrokenRobot: oh, right! | ||
BrokenRobot | m: sleep 1 for ^4 .race: :1batch; say now - INIT now; | ||
camelia | rakudo-moar 2c61fd: OUTPUT«1.00752769» | ||
mspo | when runtime passes into virtual machine :) | 14:11 | |
BrokenRobot | nebg: ^ the above sleeps for 4 seconds but runs for just one. So the easiness of concurrency can bring your code faster than other more established languages | ||
nebg: oh, I also have this article: perl6.party/post/Perl-6-Is-Slower-T...-Fat-Momma | 14:12 | ||
BrokenRobot stops spamming nebg :P | |||
nebg | ok thanks a lot BrokenRobot | 14:13 | |
14:16
girafe joined
|
|||
mst starts pondering how to craft a +b line that'll force zoffix to stick to one fracking nick | 14:17 | ||
[Coke] | -1 on nick freezing. | ||
AlexDaniel | .seen Zoffix | 14:18 | |
yoleaux | I saw Zoffix 20 Jun 2016 23:05Z in #perl6: <Zoffix> stevieb9, why not show the full code? | ||
AlexDaniel | .seen ZoffixWin | ||
yoleaux | I saw ZoffixWin 14 May 2016 02:36Z in #perl6: <ZoffixWin> (it's just now I know what it'll be, and I'll probably churn it out tomorrow) | ||
AlexDaniel | .seen sexy-coder-girl | ||
yoleaux | I saw sexy-coder-girl 16 Jun 2016 00:29Z in #perl6: <sexy-coder-girl> :) | ||
BrokenRobot | .seen ZoffixMobile | 14:20 | |
yoleaux | I saw ZoffixMobile 13 Jun 2016 20:35Z in #perl6: <ZoffixMobile> cool | ||
14:22
_mg_ left
|
|||
mst | [Coke]: I fail to understand how you can be '-1' on a joke. | 14:22 | |
BrokenRobot | mst: ban /unaffiliated/zoffix and give me ops :P | 14:24 | |
Oh wait. that doesn't fix the nick thing | |||
Unless you can give ops by nick!blash@host :P | |||
mst | you can | 14:25 | |
BrokenRobot | \o/ | ||
mst | but then you could unban yourself | ||
I think there's a way to do a ban override | |||
14:25
kurahaupo left
|
|||
mst | so I could do an override for zoffix!*@unfellated/zoffix | 14:25 | |
and then ban *!*@ to kill the rest | 14:26 | ||
but I'm fairly sure that would still let you /nick to an alt | |||
it'd just stop you /nick-ing *back* or speaking afterwards | |||
AlexDaniel | .seen sena_kun | ||
yoleaux | I saw sena_kun 20 Jun 2016 17:30Z in #perl6: <sena_kun> BrokenRobot, trying it in actual regex now... | ||
BrokenRobot | unfellated? Fraudian slip, eh? | ||
mst | which would be kinda hilarious but not quite what I had in mind | ||
I typo'ed unaffiliated three times in a row and figured if I was going to be wrong, I might as well be creatively wrong | 14:27 | ||
BrokenRobot | heh :) | ||
mst | I have enough trouble getting it right when I'm setting cloaks | 14:28 | |
14:31
tadzik joined
|
|||
pmurias | mst: wouldn't -1 on a joke mean it's unfunny | 14:32 | |
mst | pmurias: my response was meant to indicate I suspected I was being taken seriously | 14:34 | |
awwaiid | BrokenRobot / REPL-interested people, I put in rt.perl.org/Ticket/Display.html?id...ac29b71018 to improve REPL output (though RT messed with my formatting) | ||
DrForr_ | Btw the Perl 6 beginner's track is almost SRO, f nobodys mentioned it. | 14:36 | |
It is SRO for values of S meaning 'sitting' :) | |||
awwaiid | What are the R and O for? | 14:40 | |
DrForr_ | 'room only' | ||
awwaiid | ah | ||
14:44
M-matthew joined,
M-Illandan joined
14:46
rurban_ joined
14:50
kurahaupo joined
14:53
pdcawley left
|
|||
lizmat | And another Perl 6 weekly hits the Net: p6weekly.wordpress.com/2016/06/21/...m-orlando/ | 14:55 | |
dj_goku | lizmat++++++++ | ||
lizmat | off to see Dave Rolsky talk about objects in Perl 6 | 14:56 | |
hoelzro | lizmat++ # p6weekly | 14:57 | |
Zoffix++ # release | |||
moritz | ... and submitted to reddit: www.reddit.com/r/perl6/comments/4p...hanges_in/ | 14:58 | |
15:00
pdcawley joined
15:01
cdg left
15:02
cdg joined
|
|||
BrokenRobot | lizmat++ # good weekly | 15:02 | |
15:02
|2321 joined
|
|||
sjn | lizmat++ # love the weekly reports :D | 15:03 | |
pmichaud | what's the canonical mechanism for a Perl 6 shebang line on a Mac? | 15:05 | |
ufobat | ola :) | 15:06 | |
15:08
exodist_ is now known as exodist
|
|||
lizmat | pmichaud: good question | 15:08 | |
pmichaud | (I'm not a mac person; someone here at YAPC is asking) | 15:09 | |
moritz | iirc #!/usr/bin/env perl6 should work | 15:10 | |
but I'm not a mac person either | |||
15:10
cognominal left
|
|||
lizmat | pmichaud: confirmed that moritz suggestion works on Mac | 15:11 | |
moritz++ | |||
pmichaud | I wonder if that's on doc.perl.org somewhere, or in a faq | ||
lizmat | not sure | ||
stevieb | lizmat: ++ for keeping us up to date, and +2 for posting links to the vids | 15:12 | |
15:12
khw joined
15:17
atweiden joined
15:19
ssotka joined
|
|||
BrokenRobot | A while back I saw slides by jnthn++ ... they were called "Hacking on a Perl 6 compiler" or something like this. I think this was for a course. Anyone know a link? | 15:22 | |
BrokenRobot doesn't see anything on www.jnthn.net/articles.shtml | 15:23 | ||
zostay | m: sub x(Int $x --> Int) { $x + 1 }; my &y := &x.assuming(4); &x.of.say; &y.of.say; | 15:25 | |
camelia | rakudo-moar 2c61fd: OUTPUT«(Int)(Mu)» | ||
BrokenRobot | Oh god! Larry! :D docs.google.com/presentation/d/1JV...d1402_0_46 | ||
15:25
girafe left
|
|||
zostay | i would expect .assuming to preserve the return type | 15:26 | |
stevieb | BrokenRobot: is this what you're looking for? www.jnthn.net/papers/2010-osdc.fr-rakudo.pdf | ||
psch | zostay: probably just NYI. .assuming is quite hairy, and getting it to the current state already took quite a bit of effort | 15:27 | |
BrokenRobot | stevieb: just found it: edumentab.github.io/rakudo-and-nqp-...ls-course/ | 15:28 | |
zostay | yeah, i was looking at the implementation... i was wondering if i was brave enough to patch it ;) | ||
BrokenRobot | Guess I was wrong about the title.. It has neither "hacking" nor "compiler" nor "on" or "the" in it :P | 15:29 | |
15:30
grondilu left
|
|||
AlexDaniel | when Damian said that in Perl 6 it is possible to interpolate blocks of code in strings I was like pffft | 15:32 | |
mst | timotimo: wrt your question as to talks, yesterday's have started to upload | ||
AlexDaniel | perl -E 'say "But it is obvious in Perl 5! Look: @{[sub{ cos(69) }->()]}"' | ||
mst | AlexDaniel: say "Look: ${\cos(69)}"; | ||
AlexDaniel | oh | ||
that's how you do it properly | |||
mst | AlexDaniel: say "Look: ${\do { warn q{I am a block}; cos(69) }}"; | ||
AlexDaniel: see shadow.cat/blog/matt-s-trout/madnes...h-methods/ | 15:33 | ||
AlexDaniel | mst: is it some kind of new feature or? | ||
BrokenRobot | use Quote::Code; | ||
say qc"2 + 2 = {2 + 2}"; | |||
mst | AlexDaniel: no, that's baseline perl5 | ||
BrokenRobot | AlexDaniel: no, it just uses a scalar ref instead of your arrayref | ||
mst | AlexDaniel: you just did it the ugly hard way | ||
AlexDaniel | okay | ||
BrokenRobot | blogs.perl.org/users/mauke/2016/06/...erl-5.html | ||
AlexDaniel | cool | 15:34 | |
geekosaur | this is more a case of "p5 can do it, p6 makes it sane" | 15:35 | |
BrokenRobot | Looks more a case of "we have module for this" to me | 15:36 | |
CIAvash | lizmat: maybe the football link should be changed to my blog post? I didn't mention it because I thought it wasn't interesting enough to be mentioned in the weekly, since it wasn't about Perl 6 itself. blog.ciavash.name/2016/05/12/new-p...tball.html | ||
BrokenRobot | Oh, unless you're talking about interpolation and not the stuff in the blog :P | ||
CIAvash | also lizmat++ | ||
mst | geekosaur: "p5 can do it, p6 provides special syntax to make it prettier" | ||
(not that that isn't a good thing, mind) | |||
geekosaur | well, I count not having to deal with the whole list vs scalar context mess as part of the sanity, even though it's not specifically part of the syntax | 15:37 | |
lizmat | CIAvash: link updated, thanks! | ||
geekosaur | hm, nnot phrased right, since it is p[art of the p5 syntax.. | ||
mst | actually, it isn't part of the p5 syntax | 15:38 | |
there's no context involved there at all | |||
geekosaur | something the programmer shouldn't have to worry about but is forced to by perl5 | ||
mst | but, yes, 'perl6 makes most of the things that are hateful about scalar/list context and etc. go away' is definitely a true thing | ||
just that's a completely seperate reason perl6 is awesome, to my mind | |||
CIAvash | lizmat: thanks | 15:39 | |
15:39
kurahaupo left
|
|||
psch | ooc, does perl5 do q-lang switches inside a given string literal? | 15:39 | |
mst | not even sure what that means | 15:40 | |
psch | m: say 'foo \qq[{++($ = 'bay')}]' | ||
camelia | rakudo-moar 2c61fd: OUTPUT«foo baz» | ||
psch | ...contrived example, yes | ||
m: $_ = "bar"; say 'foo\qq[$_]' | |||
camelia | rakudo-moar 2c61fd: OUTPUT«foobar» | ||
mst | ... no, no it doesn't | ||
BrokenRobot | TIL | ||
15:40
grondilu joined
|
|||
mst | like, the whole point of single quotes is that nothing clever happens inside them | 15:41 | |
BrokenRobot | m: $_ = "bar"; say q/foo\qq[$_]/ | ||
camelia | rakudo-moar 2c61fd: OUTPUT«foobar» | ||
psch | m: $_ = "bar"; say "foo\q[$_]" | ||
mst | I, er, can't say I consider "actually, your single quoted string may turn out to be something completely different" to be that good an idea, at first glance | ||
camelia | rakudo-moar 2c61fd: OUTPUT«foo$_» | ||
psch | mst: it works both ways vOv | 15:42 | |
AlexDaniel | m: say “hello “{“wor” ~ “ld”}”” | ||
camelia | rakudo-moar 2c61fd: OUTPUT«hello “world”» | ||
BrokenRobot | Is there some sort of adverb to disable this? | ||
mst | psch: being able to do that inside "" kinda makes sense, doing it in '' scares me | ||
psch | BrokenRobot: Q// doesn't do that | ||
mst | it may turn out my fears are totally unfounded | ||
BrokenRobot | Thanks. | ||
mst | but ... *twitch* | ||
psch | m: say Q/\qq[{ 2 + 2 }]/ | ||
camelia | rakudo-moar 2c61fd: OUTPUT«\qq[{ 2 + 2 }]» | ||
mst | anyway, I should try and make it to the office before 5pm | ||
& | |||
BrokenRobot | :) | ||
psch | mst: way i see it, '' is "mostly no magic", and Q// is "absolutely no magic" | 15:43 | |
AlexDaniel | m: say 'foo \qq[{++($ = 'bay')}]' | ||
camelia | rakudo-moar 2c61fd: OUTPUT«foo baz» | ||
AlexDaniel | m: say 「foo \qq[{++($ = 'bay')}]」 | ||
camelia | rakudo-moar 2c61fd: OUTPUT«foo \qq[{++($ = 'bay')}]» | ||
AlexDaniel | BrokenRobot: use 「」 ! | ||
jast | \qq is a surprising amount of magic for '' IMO | ||
psch | jast: it's exactly one escape hatch | ||
jast | at any rate it's not something I can't live with | 15:44 | |
psch | i mean, i was surprised when i found it, granted | 15:45 | |
and "absolutely no magic" might even be better | |||
but i figure it's been put there by people who thought more about it than i did, and it's not really high on my list of things to think about... vOv | 15:46 | ||
BrokenRobot | Well, Unicode 9.0 got release. 🦋 should now be the text-version camelia :D | 15:47 | |
[Coke] | mst: I had no idea it was a joke, which is how. | ||
BrokenRobot | emojipedia.org/butterfly/ | ||
.u 🦋 | 15:48 | ||
yoleaux | No characters found | ||
15:49
rurban1 joined,
kid51 joined
15:50
rurban2 joined
|
|||
AlexDaniel | BrokenRobot: yoleaux is old anyway | 15:50 | |
15:52
rurban left
|
|||
lizmat | I guess next release of MoarVM will have 9.0 :-) | 15:52 | |
jnthn | Hopefully. I think this may be one of the updates where it's a bit more work than "just run the script". I'll have to check the relesae notes. :) | ||
BrokenRobot | AlexDaniel: oh well, at least it works in the browser imgur.com/zDHEMgf | 15:53 | |
AlexDaniel | oh wow | ||
what font is able to render that | |||
15:53
rurban1 left
|
|||
BrokenRobot | The GulibTroll Sans-Serif :P | 15:54 | |
[Coke] | I could see the irc logs catching that character in particular and subbing the svg for it. :| | 15:55 | |
AlexDaniel | BrokenRobot: oh right. Although it actually renders as a text character here, not an image: files.progarm.org/2016-06-21-18560..._scrot.png | 15:56 | |
BrokenRobot | AlexDaniel++ touché :P | 15:57 | |
15:57
donaldh left
|
|||
AlexDaniel | BrokenRobot: actually, I didn't even notice that it's not some generic butterfly, but camelia /o\ | 15:58 | |
15:59
setty1 joined
16:01
cognominal joined
|
|||
lizmat | lunch& | 16:05 | |
16:05
lizmat left
16:07
domidumont left
16:11
huggable left
16:12
rurban joined,
rurban1 joined
16:13
rurban3 joined
|
|||
[Coke] | ooh, it is lunchtime! hey, I'm in the same timezone as lizmat++! | 16:13 | |
if the irclog doesn't automatically do that, btw, we're missing out. :) | |||
16:13
rurban4 joined
16:16
rurban2 left
16:17
rurban1 left,
rurban left,
rurban3 left
16:23
rurban4 left
|
|||
mst | [Coke]: IRC humour. Same as Zoffix's part message is 'K-lined by mst' :D | 16:26 | |
BrokenRobot: oh, hey, you could use 'nick frozen by mst' too :D | 16:27 | ||
(that might succesfully troll my fellow opers as well ;) | |||
16:31
setty1 left
16:32
sno left,
abraxxa left
16:33
captain-adequate joined
16:36
Praise joined,
Praise left,
Praise joined
16:40
redhands98101 joined
16:42
redhands98100 left
16:43
ocbtec left
16:44
rurban joined,
rurban left
16:50
ocbtec joined
|
|||
dalek | k-simple: 3446e18 | finanalyst++ | / (3 files): Add logo and add adjust method to scale widget, modify example 04 to demonstrate |
16:55 | |
k-simple: ce23d99 | RabidGravy++ | / (3 files): Merge pull request #52 from finanalyst/master Add logo and add adjust to Scale |
|||
16:57
rurban_ left
16:58
kid51 left
16:59
domidumont joined
17:02
kid51 joined
17:06
bbkr joined
17:07
eugen joined
|
|||
mspo | github.com/vurtun/nuklear | 17:08 | |
17:08
ocbtec left
17:09
dakkar left
17:10
LonelyGM joined,
bbkr left
17:12
spider-mario joined,
LonelyGM left
17:15
redhands98101 left,
buharin joined
17:16
redhands98100 joined
|
|||
Xliff | mspo: Neat. Another Nativecall target, I suppose. | 17:25 | |
17:27
dha joined
17:28
ocbtec joined
17:30
lizmat joined
|
|||
yanmc | two things hard to search for, 1) is \~ an operator (what does it do)? | 17:32 | |
2) what is := exactly (something with forcing list context? but that's a perl 5 thing?) | 17:33 | ||
mspo | Xliff: yeah just thought of it because I saw gtk | ||
Xliff: but nuklear is much much smaller :) | |||
psch | yanmc: for your 2): doc.perl6.org/routine/:= | ||
yanmc: your 1) probably means [\~] instead of \~, which would be triangle reduce stringification | 17:34 | ||
yanmc: if it's not that and you found it in the docs somewhere, please link that | |||
17:35
kurahaupo joined
|
|||
mspo | Xliff: a really really small gui lib + a really cool language like perl6 + some kind of static compilation could make some cool stuff | 17:35 | |
psch | mspo: static compilation? | 17:37 | |
i'd guess that might mean "linking" instead? | |||
mspo | yes | ||
psch | that lib does look pretty great at a glance, yeah | 17:38 | |
mspo | I guess you'd still need something like sdl to open an actual window | 17:40 | |
psch | yeah, looks like each example depends on a specific way of getting a window | 17:43 | |
still, interesting project | |||
and it does seem to fit pretty well into the unix philosophy, afaict | |||
17:44
molaf joined
|
|||
geekosaur | yanmc, := is binding as opposed to assignment. if you think of a variable as a Scalar (or Array, etc.) container with a value inside it, = replaces the value inside the container and := replaces the container itself | 17:46 | |
yanmc | so := binds, is that the same thing that happens when doing my $scalar = @list | 17:47 | |
geekosaur: thanks, was just typing the above ^ | |||
geekosaur | you're not replacing the container there, you're setting the value to what perl 5 would call an arrayref. (but perl 6 implicitly creates and dereferences these references for you) | 17:49 | |
Xliff | Wow! Busy week for Perl6. lizmat++ | 17:50 | |
I guess I should rakudobrew. | |||
geekosaur | the difference here is that = gives you a reference to a new array stored within $scalar's container, so changes to the values will not affect @list. if you use :=, you will actually be modifying @list itself by making changes via $scalar because the container for $scalar is now the same as the container for @list | 17:51 | |
17:52
pullphinger joined
|
|||
geekosaur | m: my $scalar: dd $scalar.VAR | 17:53 | |
camelia | rakudo-moar 2c61fd: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Confusedat <tmp>:1------> 3my $scalar:7⏏5 dd $scalar.VAR expecting any of: colon pair» | ||
geekosaur | whoops | 17:54 | |
m: my $scalar; dd $scalar.VAR | |||
camelia | rakudo-moar 2c61fd: OUTPUT«Invocant requires an instance of type Any, but a type object was passed. Did you forget a .new? in block <unit> at <tmp> line 1» | ||
geekosaur | meh. not fully awake today :/ | ||
17:54
rgrinberg left
|
|||
yanmc | geekosaur: are you sure about that, because if I remember correctly in my testing I saw the latter behaviour with `=' | 17:54 | |
geekosaur | there's a way to see the actual container instead of its contents as you normally would. understanding that there's this double level of containers with values inside of them is key to understanding := vs. = | 17:55 | |
dha | Eek. I've got a test failing in rakudo | ||
FWIW, it's t/04-nativecall/13-union.t Are we aware of this? (OS X 10.10.5) | 17:56 | ||
timotimo | 32bit, perchance? | ||
geekosaur | not absolutely certain, see above. I think I forgott o account fpr @list being a container with an array reference within it too, and it's that that is assigned | ||
dha | don't think so, no | ||
geekosaur | why would there be a 32 bit build on 10.10? | ||
dha | Yeah, I don't think that would be in any way likely? | 17:57 | |
17:58
fhorck joined
|
|||
dha | For my current purposes, however, I just need to know if I can ignore it. | 17:58 | |
Xliff | m: my @a = ^3; my $l = @a; $l[1] = 4; say $l; say @a | 17:59 | |
camelia | rakudo-moar 2c61fd: OUTPUT«[0 4 2][0 4 2]» | ||
lizmat | dha: building, will check in a mo | ||
dha | thanks | ||
17:59
kid51 left
18:00
sno joined
|
|||
Xliff | dha: "t/04-nativecall/13-union.t ............... ok" | 18:01 | |
This is from latest git. | |||
I'm not on OSX thop. | |||
dha | I can try building again... | ||
18:02
eugen left
|
|||
lizmat | dha: seems related to is_approx -> is-approx: just pushed a patch | 18:02 | |
psch | assigning @a to $x means $x is a container that contains @a | ||
binding @a to $x means $x is an alternative name for @a | |||
m: my @a = ^3; my $x = @a; my $y := @a; say $x.VAR.name; say $y.VAR.name | 18:03 | ||
camelia | rakudo-moar 2c61fd: OUTPUT«$x@a» | ||
psch | ^^^ as demonstrated there | ||
lizmat | dha: it appears to be a flapper | 18:04 | |
geekosaur | yanmc, anyway the difference is subtle (more subtle than I am currently, it seems... sigh) but can be crucial. it's not a matter of context though, it's a matter of what kind of container you have bound. $variables have a Scalar container by default; you can't change this with = (although you can store a reference to an Array container in it) but you can change the type of container with := | ||
lizmat | dha: I think *you* can safely ignore it :-) | ||
dha | ok, i'll pull and try again. and then I'll probably ignore it. :-) | ||
18:05
iH2O joined
|
|||
lizmat | it fails for me about 1/5 times | 18:06 | |
dha | It failed for me twice in a row. :-/ | 18:07 | |
mst | maybe it likes lizmat better than you | ||
iH2O | how much does it fail for u mst? | 18:09 | |
dha | mst - that's entirely possible. | ||
BrokenRobot | doesn't fail at all on debian. | 18:11 | |
Obviously the problem is you're using teh wrong OS :P | |||
dha | :-p | ||
mst | don't make me break out the excuse server | 18:12 | |
18:13
araujo joined,
zoosha joined
|
|||
iH2O | if it failed twice in a row for dha the probability it will fail again next time is (n+1)/(n+2) with n = 3 which is 3/5 en.wikipedia.org/wiki/Sunrise_problem sunrise problem | 18:14 | |
oops 4/5 | 18:15 | ||
lizmat | www.youtube.com/watch?v=W1iTkACkbcM # 2016 - Introducing Prancer, a Web Framework for Perl 6 - DrForr | 18:16 | |
18:16
rgrinberg joined
|
|||
dha | ok, ,did it again. Failed once, passed on second attempt. | 18:16 | |
BrokenRobot | DrForr_++ | ||
lizmat | www.youtube.com/watch?v=Jw657US719s # 2016 - Perl 6 - Why did they do *that*? - Bruce Gray | ||
dha installs while he's ahead | |||
lizmat | www.youtube.com/watch?v=73-XQEn6HfI # 2016 - Perl 6 and the Zen of Erlang - Ben Tyler | 18:17 | |
www.youtube.com/watch?v=-8oTgdnP-y4 # 2016 - Utiaji: Building an Application Specific Web Server in Perl6 - Brian Duggan | |||
BrokenRobot | lots of Perl 6 stuff \o/ | ||
iH2O | good luck dha, keep us informed of your progress | ||
if any | 18:18 | ||
dha | Yeah, chances are it won't affect me greatly. But if it does, I'll give a shout. :-) | ||
lizmat | dha++ | 18:19 | |
iH2O | dha++++ | ||
im not even sure its legal perl6 | |||
dha | Well, I'm sure it *could* be. | ||
18:19
addison joined
|
|||
lizmat | m: my $a; $a++++ | 18:19 | |
camelia | rakudo-moar 580181: OUTPUT«Cannot resolve caller postfix:<++>(Int); none of these signatures match: (Mu:D $a is rw) (Mu:U $a is rw) (Int:D $a is rw) (int $a is rw) (Bool:U $a is rw) (Bool:D $a is rw) (Num:D $a is rw) (Num:U $a is rw)…» | ||
iH2O | :( | ||
BrokenRobot | m: sub postfix:<++++> { $^a + 2 }; my \dha = 'dha'; dha++++ | ||
camelia | rakudo-moar 580181: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5dha' (indicated by ⏏) in sub postfix:<++++> at <tmp> line 1 in block <unit> at <tmp> line 1Actually thrown at: in sub postfix:<++++> at <tmp…» | 18:20 | |
BrokenRobot | wat | ||
oh | |||
m: sub postfix:<++++> { $^a x 2 }; my \dha = 'dha'; say dha++++ | |||
camelia | rakudo-moar 580181: OUTPUT«dhadha» | ||
BrokenRobot | \o/ | ||
dha | :-) | ||
lizmat | m: sub postfix:<++++>($a) { my $current = $a; $a++; $a++; $current }; my $a = 42; say $a++++; say $a | ||
camelia | rakudo-moar 580181: OUTPUT«Cannot resolve caller postfix:<++>(Int); none of these signatures match: (Mu:D $a is rw) (Mu:U $a is rw) (Int:D $a is rw) (int $a is rw) (Bool:U $a is rw) (Bool:D $a is rw) (Num:D $a is rw) (Num:U $a is rw)…» | ||
18:22
zoosha left,
zoosha joined
|
|||
lizmat | m: sub postfix:<++++>(\a) { my $current = a; a++; a++; $current }; my $a = 42; say $a++++; say $a | 18:22 | |
camelia | rakudo-moar 580181: OUTPUT«4244» | ||
BrokenRobot | m: sub postfix:<++++>(\a) { a++ xx 2 }; my $a = 42; say $a++++; say $a | 18:23 | |
camelia | rakudo-moar 580181: OUTPUT«(42 43)44» | ||
18:27
_mg_ joined
|
|||
psch | m: sub postfix:<++>($a is rw) { return-rw $a = $a.succ }; my $x = 1; $x++++; $x.say | 18:32 | |
camelia | rakudo-moar 479628: OUTPUT«3» | ||
psch | /o\ | ||
lizmat | ??? | ||
psch | lizmat: i don't know, i've just been running along with postfix:<++++> and what it would do in an insane world... :) | 18:33 | |
lizmat: as in, it's clearly meant as (++)++, but the problem in CORE is that it doesn't return a container | |||
BrokenRobot | m: term:<++++> { 't' }; sub postfix:<++++> { '++++' }; say ++++; | 18:34 | |
camelia | rakudo-moar 479628: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Prefix ++ requires an argument, but no valid term foundat <tmp>:1------> 3 sub postfix:<++++> { '++++' }; say ++++7⏏5; expecting any of: prefix» | ||
BrokenRobot | How come that doesn't do the longest term or whatever? | ||
Oh, missing `sub` ~_~ | 18:35 | ||
psch | m: sub term:<++++> { 't' }; say ++++ | ||
camelia | rakudo-moar 479628: OUTPUT«t» | ||
BrokenRobot | m: sub term:<++++> { "dha" }; sub postfix:<++++> { $^a ~ "++++" }; say ++++++++++++++++++++++++++++++++++++++++++++++++++++++++; | 18:36 | |
camelia | rakudo-moar 479628: OUTPUT«dha++++++++++++++++++++++++++++++++++++++++++++++++++++» | ||
18:36
redhands98101 joined
|
|||
dha | Heh. | 18:36 | |
BrokenRobot | That's it. I'm officially bored out of my mind :) | ||
dha | BrokenRobot++ | ||
lizmat yawns | 18:37 | ||
BrokenRobot | All those naps and still yawning? | ||
lizmat | some talks are not as inspiring as others | 18:38 | |
BrokenRobot | I'm a bit dissapointed to see 'On the shoulders of giants' talk available in video. I may as well just watch it and save myself a trip to Toronto next week :P | 18:39 | |
lizmat | BrokenRobot: yeah, there's that | ||
18:39
redhands98100 left
|
|||
dha | Hey, if you *really* want to be bored, my talk is up now too. :-) | 18:43 | |
18:43
rindolf left
|
|||
lizmat | :-) | 18:43 | |
18:44
rindolf joined
|
|||
awwaiid | lizmat: Apparently I changed the REPL output after all, and in a way that annoys me :( . I think I need to make a better test for it. | 18:44 | |
18:45
lizmat left,
Sgeo joined
18:50
raiph left
|
|||
iH2O | dha, be careful with sunburns today 21 June | 18:52 | |
dha | Will do! | ||
iH2O | question: what color is the sun? is it (a) yellow, (b) red, (c) white? | 18:53 | |
BrokenRobot | c | ||
iH2O | right | ||
dha | That would depend on what you mean by "what color is the sun" | ||
iH2O | when seen in space | ||
BrokenRobot | Easy to tell by the color of the snow :P | 18:54 | |
dha | disclaimer: have a degree in philosophy and science, so I deal with questions like this differently than most people | ||
TimToady | especially if the snow is yellow | ||
BrokenRobot | TimToady++ | ||
18:57
FROGGS joined
18:58
CIAvash left
|
|||
Xliff | iH2O, yet we still classify suns by "type" which includes a "color". | 18:58 | |
iH2O | its for convenience only | 18:59 | |
not too scientific | |||
Xliff | :) | ||
18:59
sufrostico left
|
|||
Xliff | Well, scientists use it which makes it confusing. | 18:59 | |
iH2O | Raylegh's diffusion is all we need | 19:00 | |
geekosaur | there's also the difference betrween what you see from many light years away vs. what you'd see in that system where it's bright enough that no matter what, all visible frequencies are saturated => it's going tobe white regardless | ||
Xliff | I've heard Sol described as both a "yellow dwarf" and a "red dwarf" | ||
iH2O | yellow dwarf??? 1st time i hear about that | 19:01 | |
are you sure youve not invented that? hmm | |||
19:01
dha left
|
|||
geekosaur | yeh, jury's still open on what it looks like from a sufficient distance. guesses range from orange-yellow to greenish | 19:01 | |
Xliff | astroengine.com/2008/07/16/what-ty...s-our-sun/ | ||
19:01
lizmat joined
|
|||
Xliff | geekosaur, and let's not forget the shift in frequencies due to universal expansion. | 19:02 | |
19:02
dha joined
|
|||
geekosaur | but you need to be *very* far away for that to be significant... you won't notice much if you're looking at it from Andromeda | 19:03 | |
Xliff | iH2O, so is "Reyleigh scattering" == "Rayleigh's diffusion"? | ||
geekosaur++ -- good point. | |||
iH2O | im not sure if its scattering or diffusion. ive not had a physics course in quite a time | 19:04 | |
Xliff | kk | ||
19:04
cdg left
|
|||
geekosaur | "Rayleigh scattering" is the usual term in US science parlance | 19:08 | |
moritz | that's how I know it too | ||
(with university experience in the UK) | |||
19:15
redhands98100 joined
19:18
redhands98101 left
19:19
dha left
19:26
Emeric left
19:43
ilogger2 joined,
ChanServ sets mode: +v ilogger2
19:44
RabidGravy joined
|
|||
AlexDaniel | oh wow | 19:56 | |
I didn't even realize that I commented on perl6/book repo | |||
FROGGS | Xliff++ btw :o) | 20:03 | |
yoleaux | 20 Jun 2016 19:19Z <Xliff> FROGGS: I've submitted the PR. Hope to hear from you soon. | ||
20:05
lizmat joined
|
|||
FROGGS | awesome contribution | 20:06 | |
20:06
lizmat left
|
|||
FROGGS | would be more than awesome to get the XML::LibXML port to a stage where thinking about XML::Compile makes sense | 20:08 | |
20:10
lizmat joined
20:12
huggable joined
|
|||
FROGGS | Xliff: can you squish your commits when you are happy with your PR? (I can potentially do that too when merging) | 20:20 | |
dalek | c: 948b50c | (Jan-Olof Hendig)++ | doc/Type/Setty.pod: Setty is a role |
||
Xliff | Squash? | 20:23 | |
Once I'm done with your laundry list! =D | |||
Ah. OK. Yeah, I can do that. | 20:25 | ||
There will be a few more commits and when I am happy with it, will squash. | 20:26 | ||
.oO( HULK squash?! ) |
|||
moritz | a squashed hulk is very bad news for any submarine :-) | 20:28 | |
FROGGS | *g* | 20:29 | |
Xliff: going to bed now after this exhausting day... will happily reply to anything tomorrow evening | 20:30 | ||
lizmat | good night FROGGS | 20:31 | |
FROGGS | o/ | 20:32 | |
Xliff | nn | 20:37 | |
.tell FROGGS Do you want to worry about the errors in t/06elements.t after the merge? | 20:38 | ||
yoleaux | Xliff: I'll pass your message to FROGGS. | ||
20:38
cognominal joined
20:40
setty2 joined
21:02
redhands98100 joined
21:03
redhands98101 joined
21:04
dha joined
21:06
redhands98100 left
21:13
AlexDaniel joined
|
|||
wamba | m: perl6 -e 'use Data::Dumper:from<Perl5>; ' -h | 21:16 | |
camelia | rakudo-moar d9956e: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Two terms in a rowat <tmp>:1------> 3perl6 -e7⏏5 'use Data::Dumper:from<Perl5>; ' -h expecting any of: infix infix stopper postfix statement end …» | ||
lizmat | wamba: Inline::Perl5 is not part of the core and not installed on camelia | 21:18 | |
it gives this for me: | |||
$ perl6 -e 'use Data::Dumper:from<Perl5>; say Dumper( { a => 42 } )' | |||
[$VAR1 = 'a'; | |||
$VAR2 = 42; | |||
] | |||
wamba | try with -h on end, with me show perl (5) help | 21:19 | |
perl6 -e 'use Data::Dumper:from<Perl5>; ' -h | 21:20 | ||
lizmat | ah, yes, does so for me, followed by a segfault | ||
wamba | yes | 21:21 | |
i cant use MAIN and Inline::Perl5 | |||
probably Inline::Perl5 bug | 21:22 | ||
lizmat | yeah, please issue it | ||
21:25
firstdayonthejob joined
21:31
TEttinger joined,
lizmat left
21:39
kid51 joined
|
|||
timotimo | Util: i'm seeing your talk and i like it already! | 21:41 | |
21:44
trnh joined
21:45
lizmat joined
|
|||
timotimo | would someone explain what &subname's effect can be in perl5? like, what causes it to explode in users' faces? | 21:49 | |
rjbs | I can probably help, if you give a bit more detail on what you're asking. | 21:53 | |
timotimo: ^ | |||
dha | eh, what do you know about Perl 5? | ||
geekosaur | basically, referring to a sub with &subname overrides all prototypes and sanity checking | ||
ilmari | and &subname; (without the parens) calls it with the current value of @_ | ||
geekosaur | yes, that also | 21:54 | |
rjbs | Yup, those things. | ||
timotimo | i know basically nothing about perl5 :) | ||
geekosaur | and with a truncated call frame iirc, although that's not generally relevant | ||
masak | 'night, #perl6 | ||
21:56
setty2 left
|
|||
Xliff | Hmmmm.... panda has started using CWD/.panda-work as it's temp directory. | 22:01 | |
22:01
dha left
|
|||
Xliff | ==> Building Inline::Perl5 | 22:01 | |
gcc -Wall p5helper.c `perl -MExtUtils::Embed -e ccopts -e ldopts` -shared -o /home/cbwood/projects/p6-XML-LibXML/.panda-work/1466546395_1/resources/libraries/libp5helper.so -fPIC -g | |||
^^ Is that intended? | |||
AlexDaniel | … so how can I speed up the doc build? | 22:03 | |
konobi | ssd! | 22:05 | |
timotimo | AlexDaniel: you can either turn off syntax highlighting entirely, or install Inline::Python and make sure pygments is available and in the right version | 22:06 | |
awwaiid | Inline::Python needs an update | 22:09 | |
AFAIK Inline::Perl5 is the best and Inline::Ruby is second-best for feature set | |||
though I guess that's a bit more tangental than I realized the conversation warranted | 22:10 | ||
timotimo | right | 22:19 | |
22:29
tbrowder joined,
redhands98101 left,
redhands98100 joined,
redhands98100 left
|
|||
tbrowder | Zoffix (and interested parties): ref docs, what do you think about adding a page (under Programs) for p6 best practices which would be suggested and discussed amongst experienced devs such as yourself, moritz, masak, pmichaud, jnthn, damian, etc.? | 22:29 | |
pmichaud | tbrowder: I like the idea. | 22:31 | |
22:31
kid51 left
|
|||
pmichaud | A | 22:31 | |
AlexDaniel | tbrowder: by the way, there's also doc.perl6.org/language/traps | 22:33 | |
timotimo | github.com/moritz/perl6-wtop - this was a start ... long ago :) | 22:34 | |
pmichaud | If masak++ and moritz++ thought something like this was a good idea 6 years ago, I suspect it's an even better (and long overdue) idea now. :) | 22:38 | |
22:39
kid51 joined
|
|||
timotimo | well, it hasn't seen much addition yet :) | 22:39 | |
it's over-ripe for contributions | 22:40 | ||
AlexDaniel | well, this document reads very similarly to traps to avoid | ||
pmichaud | One of Perl 6's guiding principles has been that while TMTOWTDI, we also want to have a language that guides people into naturally doing the best thing. It'd be good if we at least document what some of those "best things" are. | 22:46 | |
or what we think some of those "best things" are. :) | |||
dalek | c: 84047f9 | RabidGravy++ | doc/Language/classtut.pod: Remove TODO in the text Address part of #620 |
22:48 | |
ShimmerFairy | I'd also like to update/revamp the specs, as I've mentioned, so there's a human-readable version of the tests :) | 22:54 | |
22:54
bjz joined
22:56
girafe joined
|
|||
dalek | c: c60a60c | RabidGravy++ | doc/Language/control.pod: Remove unimplemented goto from the doc Fixes #611 |
22:58 | |
23:00
bjz left
23:01
kid51 left
23:06
bjz joined
23:07
firstdayonthejob left
23:14
RabidGravy left
23:17
bjz left
23:18
trnh left
|
|||
dalek | c: d116737 | (Aleks-Daniel Jakimenko-Aleksejev)++ | / (2 files): Type graphs: eliminate prose, add links to SVG (daxim++) Closes #283 |
23:26 | |
c: 5a34faa | (Aleks-Daniel Jakimenko-Aleksejev)++ | doc/Language/regexes.pod: Fix anchor link (Quantifier → Quantifier) |
|||
c: dd244f9 | (Aleks-Daniel Jakimenko-Aleksejev)++ | doc/Language/testing.pod: Correct number of horizontal lines in the formula |
|||
AlexDaniel | yeah, Quantifier → Quantifier… :/ | 23:27 | |
23:28
Zoffix joined
|
|||
Zoffix | tbrowder, I'm probably not the best to ask about "best practices" :) I enjoy being evil and bad once in a while. | 23:29 | |
AlexDaniel | yeah. The most evil thing so far is changing your nickname all the tim | 23:30 | |
time* | |||
Zoffix | Didn't people complain about my using $obj.foo: blah instead of parenths? :) | 23:33 | |
Of course, I can stuff that into 'best practices' guide and make the the "best practice" :) | |||
23:34
Zoffix left
|
|||
AlexDaniel | What? Why complain about that? | 23:34 | |
tbrowder | I have to say I anticipated "p6 best practices" to appeal to the good nature of users | 23:38 | |
23:43
bjz joined
23:46
bjz left
23:47
RabidGravy joined
23:57
AlexDaniel left
|