»ö« 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. |
|||
00:05
pierre_ left
|
|||
Geth | perl6-most-wanted: 81c4d9bf63 | cbk++ (committed using GitHub Web editor) | most-wanted/modules.md Updated modules.md to list API::USNavalObservatory as a work in progress (WIP) |
00:06 | |
00:15
fatguy left
00:17
Cabanossi left
00:20
Cabanossi joined
00:26
Guest93089 left
00:39
AlexDaniel left
00:48
khw left
00:53
bjz joined
00:59
khw joined,
bjz left
01:04
Cabanossi left
01:05
Cabanossi joined
01:26
kyan left
01:32
Cabanossi left
01:35
Cabanossi joined
01:45
ilbot3 left
01:48
ilbot3 joined,
ChanServ sets mode: +v ilbot3
02:05
pierre_ joined
02:10
pierre_ left
02:13
noganex_ joined
02:16
noganex left
02:22
fatguy joined
03:09
skids joined
03:26
labster joined
03:31
Cabanossi left
03:33
Cabanossi joined
03:57
araujo left
04:02
Cabanossi left
04:04
Cabanossi joined
04:24
zapwai left
04:27
pierre_ joined
|
|||
Geth | doc: c1175753eb | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6 Fix typo |
04:49 | |
fatguy | i can't seem to use p6doc on any function or anything on help section. i'm using rakudo 2017.04.3 binary for mac os x. i already run index build, can someone tell me how to make it work ? | 04:50 | |
04:52
pierre_ left
04:53
CIAvash joined
04:55
skids left
|
|||
[Coke] | can you post the command you're running and the error you're getting? | 04:56 | |
(gist.github.com works for multi-line snippets) | 04:57 | ||
Geth | ecosystem: 326210508b | loren++ (committed by Zoffix Znet) | META.list Add Terminal::Table version 0.0.1 to the ecosystem (#340) |
04:58 | |
doc/master: 4 commits pushed by (Will "Coke" Coleda)++ | |||
05:04
aborazmeh joined,
aborazmeh left,
aborazmeh joined
05:09
aborazmeh left
|
|||
fatguy | why i need to put ';' at then of the block with this one liner: -e 'my $count; for "banana".comb -> $letter { ++$count if $letter eq "a" }; say $count | 05:18 | |
missed ' at the end | |||
geekosaur | because a semicolon is only inferred after a close brace if it is at the end of a line | 05:19 | |
05:19
khw left
|
|||
geekosaur | keep in mind that a Block is an object; it can be passed as a parameter, and can have other parameters after it | 05:19 | |
but in this case for is a builtin and doesn't expect anything after the Block so the compiler grumps | 05:20 | ||
05:20
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
fatguy | geekosaur: thanks | 05:22 | |
geekosaur | also perl 6 is trying to avoid the "mass of oddly interacting special cases everywhere" behavior of prl 5, so only simple rules like the line-final } rule instead of complex ones based on specific keywords | 05:23 | |
especially since you can add keywords by means of slangs | 05:24 | ||
araraloren | I'm more used to add smicolon after every `}` :) | 05:29 | |
Geth | doc: 25bce38c1b | (Zoffix Znet)++ | doc/Type/IO/Path.pod6 [io grant] Document IO::Path.succ |
05:32 | |
05:38
labster left
05:47
aborazmeh left
|
|||
Geth | doc: 82339608d2 | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6 [io grant] Improve IO::Handle.t docs |
05:49 | |
doc: 3274322f0f | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6 Add :D to return type |
05:50 | ||
doc: b4006a2f5a | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6 [io grant] Be explicit what IO::Handle.opened returns for unopened handles. |
05:53 | ||
05:55
wamba joined
|
|||
Geth | doc: c4f27a7424 | (Zoffix Znet)++ | doc/Type/IO/Path.pod6 [io grant] Document IO::Path.pred |
05:55 | |
05:57
lizmat_ joined
05:59
labster joined
06:00
lizmat left
|
|||
Geth | doc: 860333f578 | (Zoffix Znet)++ | doc/Type/IO/Path.pod6 [io grant] Remove entirely-invented "File test operators" Remind people of Pair.ACCEPTS from file test method docs, which is what these "operators" really are. |
06:02 | |
06:11
lizmat_ is now known as lizmat
06:13
pierre_ joined,
domidumont joined
06:14
mcafee joined
06:16
parv joined
06:17
Cabanossi left
06:18
domidumont left
06:19
domidumont joined,
Cabanossi joined
06:23
wamba left
06:27
wamba joined
|
|||
Geth | doc: ab0bd7abad | (Zoffix Znet)++ | doc/Type/IO/Path.pod6 [io grant] Document IO::Path.Numeric/.Int IMO these really shouldn't exist, but they made it into 6.c language. |
06:30 | |
06:35
mcafee left
|
|||
araraloren | Anybody know how to include multi version in **META6** file ? | 06:36 | |
Geth | doc: 396d5032e1 | (Zoffix Znet)++ | doc/Type/Str.pod6 Document Str.Numeric/.Int |
06:41 | |
06:42
Zoffix joined
|
|||
Zoffix | araraloren: multi version of what? Dist? Isn't the META6 file specifically for a single version? | 06:42 | |
What are you trying to do? | 06:43 | ||
06:46
kurahaupo_ left
|
|||
araraloren | such like versions : [ "v0.0.1", "v0.0.2" ], Zoffix | 06:54 | |
06:54
lizmat left
|
|||
Zoffix | araraloren: I don't think something like that is currently supported | 06:55 | |
nine: lizmat: ^ if you're short of PTS topics to discuss | 06:56 | ||
araraloren | Zoffix, oh | 06:57 | |
Zoffix | araraloren: though my question would be, why package two versions in the same dist? Release them separately. If someone wants earlier version, they'll just install that? | 06:58 | |
araraloren | Zoffix, yeah | ||
That's what i mean | |||
Zoffix | Reminds me of the mess with Perl 5's Date::Manip. Giant, dense docs describing all the different "interface versions". It's like... pick one | 06:59 | |
And I'm unsure how well releasing different versions of the same dists works with our ecosystem. I know some did it like this; adding more than one entry to meta file: github.com/perl6/ecosystem/blob/ma...#L726-L727 | 07:01 | ||
araraloren | I remember Perl6 has a `class Fo:ver(0.0.1)`, but when I can declare one class with different version | ||
m: class F:ver<1.10.1> { }; class F:ver<1.0.1> { }; | |||
camelia | 5===SORRY!5=== Error while compiling <tmp> Redeclaration of symbol 'F' at <tmp>:1 ------> 3ss F:ver<1.10.1> { }; class F:ver<1.0.1>7⏏5 { }; expecting any of: generic role |
||
Zoffix | with our current ecosystem I mean; I know CPAN supports it just fine and IIRC you can tell zef to install from CPAN | ||
araraloren | class F:ver<1.10.1> { }; | ||
m: class F:ver<1.10.1> { }; | |||
camelia | ( no output ) | ||
araraloren | Zoffix, yeah, that a way to do multi version, but it's not convenient | 07:02 | |
When I release one version, I need to create a PR to **ecosystem** | 07:03 | ||
Geth | doc: 4f81f08210 | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6 [io grant] Improve IO::Handle.get docs |
||
Zoffix | araraloren: but why are old version still relevant? | ||
Feels it'd be a rareish case, for popular software, to keep old code working when you make non-back-compat change in a new version. | 07:04 | ||
araraloren | Em, If I changed API in new version, the module use old version would not work.. | 07:05 | |
Zoffix | Sure, but ARE you changing the API in new version? | ||
Even with our github ecosystem you can tag previous releases and let people install those via a link to a zip | 07:06 | ||
araraloren | Is zef or panda support this ? | 07:07 | |
Check tag, and install from that source | 07:08 | ||
Zoffix | araraloren: panda isn't relevant; it's dead. And yes, zef supports it. E.g.: zef install github.com/zoffixznet/perl6-IRC-Cl...001002.zip | ||
And I got that URL from github.com/zoffixznet/perl6-IRC-Cl...r=3.003003 | |||
And it supports installing from CPAN too, as I recall | |||
araraloren | Zoffix, but when I use zef, how I know what version the module released ? | 07:09 | |
Zoffix | araraloren: also, I sent you an invite to perl6 org. You should have access to most of the org's repos, so you don't need to PR to ecosystem, you can just commit directly by editing from github.com/perl6/ecosystem/edit/ma.../META.list | ||
araraloren | Oh, thanks | 07:10 | |
Zoffix | araraloren: I don't understand the question. How you know what version you installed? | ||
is that the question? | 07:11 | ||
There's `zef info Some::Module` command | |||
araraloren | No.. | ||
It's zef list | |||
It only list one version info | |||
Zoffix | .... which appears to be busted up. I installed two versions of IRC::Client, but it only reports 1 | ||
07:12
lizmat joined
|
|||
Zoffix | And `list` don't tell me anything. Even zef list --installed IRC::Client shows nothing, despite my having 2 IRC::Client versions. | 07:13 | |
But anyway. My advice: don't over think this. It's a waste of time to fret over how to release multiple versions with our temporary ecosystem when you don't have any real need to release multiple versions. | |||
\o | |||
07:13
Zoffix left
|
|||
araraloren | Oh, The problem turn back to ecosystem again, forget it .. | 07:13 | |
Ok | 07:14 | ||
07:16
Cabanossi left
|
|||
Geth | ecosystem: bcabd9ab2e | loren++ (committed using GitHub Web editor) | META.list Replace with **version** uri |
07:18 | |
07:19
Cabanossi joined
07:22
xinming_ left
|
|||
Geth | doc: c45d389d98 | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6 [io grant] Finish off IO::Handle.getc/&getc docs |
07:22 | |
doc: ca7f7c921c | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6 Document &getc defaults to $*ARGFILES ATM it's NIY in Rakudo and will error out with poor error, but it'll be implemented in less than a week. |
07:25 | ||
07:29
pierre_ left
07:34
pierre__ joined,
pierre__ left
07:35
pierre__ joined,
pierre__ left,
pierre__ joined
07:36
pierre__ left
07:37
pierre__ joined,
bjz joined
|
|||
Geth | doc: e0645be5db | (Zoffix Znet)++ | doc/Type/Mu.pod6 Fix up &gist - Use correct signature - Mention say on Str types doesn't use gist |
07:39 | |
07:40
pierre__ left,
domidumont left,
pierre__ joined,
pierre__ left
07:47
xinming joined
07:56
ChoHag joined
08:00
domidumont joined
08:09
anton_p joined
|
|||
Geth | doc: a4012e0237 | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6 [io grant] Document IO::Handle.gist Rakudo impl: github.com/rakudo/rakudo/commit/276d4a7e7e Tests: github.com/perl6/roast/blob/a3410d....t#L29-L36 |
08:10 | |
08:18
Cabanossi left
08:20
Cabanossi joined
08:23
CIAvash left
08:25
domidumont left
08:30
dolmen_ joined
|
|||
Geth | doc: d15b0c7003 | (Zoffix Znet)++ | doc/Type/IO/Path.pod6 [io grant] Document IO::Path.gist Tests: github.com/perl6/roast/commit/31e39932d8 github.com/perl6/roast/commit/e2a3a25751 |
08:35 | |
modules.perl6.org/problems: eae812be19 | (Tadeusz “tadzik” Sośnierz)++ | site-tips.txt Add todo routes to site tips |
|||
08:37
ChoHag left
08:38
bjz left
08:40
bjz joined
08:55
TEttinger left
09:00
ChoHag joined
09:02
parv left
09:18
AlexDaniel joined
09:23
fatguy left
09:33
Cabanossi left
09:35
Cabanossi joined,
sjn left,
sjn joined
09:45
pierre_ joined
09:48
dolmen_ left
09:54
BenGoldberg left
10:03
imcsk8 left
10:17
Cabanossi left
10:20
Cabanossi joined
10:23
TeamBlast left
10:25
TeamBlast joined
10:28
pierre_ left
10:32
labster left
|
|||
Geth | modules.perl6.org/problems: 9d69c873e3 | (Tadeusz “tadzik” Sośnierz)++ | 2 files Remove leftover debug info |
10:32 | |
modules.perl6.org/problems: b4c484e0a7 | (Tadeusz “tadzik” Sośnierz)++ | 5 files Have problems have varying severity. Indicate it in the UI |
|||
10:39
anton_p left
10:45
darutoko joined
10:52
AlexDaniel left
10:53
AlexDaniel joined
|
|||
AlexDaniel | does this trap docs.perl6.org/language/traps#Cons...mpile_Time also apply to sigilless variables? | 10:58 | |
10:59
pierre_ joined,
nadim_ left
|
|||
jnthn | No | 11:00 | |
11:00
nadim_ joined
11:01
pierre_ left
|
|||
Geth | modules.perl6.org/problems: f1af625ae4 | (Tadeusz “tadzik” Sośnierz)++ | 2 files Mark the lack of MANIFEST file as a problem As per discussions on PTS, this'd be pretty much a requirement for CPAN usage. It's not a hard requirement now, so the severity is not cranked up to 11 just yet. |
11:02 | |
modules.perl6.org/problems: 1e55111306 | (Tadeusz “tadzik” Sośnierz)++ | 2 files Improve severity visuals |
|||
11:07
nadim_ left
11:12
bjz left
11:14
margeas joined
11:31
bjz joined
11:37
pierre_ joined
11:55
domidumont joined
12:03
domidumont left
12:17
grumble left
12:20
nadim_ joined
12:21
grumble joined
|
|||
masak | interesting: insearchofsecrets.com/2014/08/04/l...-symmetry/ -- captures something I've felt sometimes while implementing Perl 6 macros: that the MOP is drinking at least *some* of macros' milkshake | 12:26 | |
12:36
robertle joined
12:45
imcsk8 joined
12:53
kaare__ left
13:11
chee left
13:13
chee joined
13:16
mephinet left
13:17
mephinet joined
13:18
Cabanossi left
13:20
Cabanossi joined
|
|||
Geth | modules.perl6.org/problems: 02ab412d2c | (Tadeusz “tadzik” Sośnierz)++ | 3 files Make Todo controller lookup authors, not full URLs Required guessing author when it's not specified, and gave us an excuse to store a Problem when an author's not set. This also fixes a bug with _builder being cleared if something's stored there too early: we don't need to declare it anywhere in particular, autoviv does the work for us. |
13:23 | |
modules.perl6.org/problems: 68df45f230 | (Tadeusz “tadzik” Sośnierz)++ | lib/ModulesPerl6/Controller/Todo.pm Don't show dists that do everything right on the /todo (How do I ask DBIC to do that?) |
|||
tadzik | I'd welcome feedback on github.com/perl6/modules.perl6.org...6:problems It's meant as a place to track sort of a CPAN-readiness of our modules, both as a statistic, as a tool for module authors (“let's see which of my modules do something completely horrible”) and potential contributors, too look for LHF in the ecosystem | 13:28 | |
it looks somewhat like this in practice: tadzik.net/pub/SZ25liL5bD.png | |||
13:36
pierre_ left
13:37
pierre_ joined
|
|||
Geth | specs: dfbaac8a53 | (Stefan Seifert)++ | S22-package-format.pod Deconfuse auth in the META data. |
13:38 | |
specs: b48be2c62d | (Stefan Seifert)++ | S22-package-format.pod Unoutdate S22 a bit CompUnitRepo has long been renamed to CompUnit::Repository. %?RESOURCE was implemented as %?RESOURCES and is just a plain array. |
|||
moritz | if it's an array, why the % ? | 13:43 | |
ugexe | because the items get referenced | 13:49 | |
$original => $some_sha1_string | |||
e.g. %?RESOURCES<$original>.Str eq $some_sha1_string | |||
13:52
khw joined
|
|||
ugexe | but its declared as "resources" : [ "original" ] | 13:52 | |
13:52
bjz left
13:53
kyan joined
|
|||
Geth | specs: 7000e04e42 | (Stefan Seifert)++ | S22-package-format.pod Introduce versioning of the META6.json spec for real Use a more descriptive name of the version field and mark it as required. Tools will provide some backwards compatibility, but this document describes the state as it _should_ be at some point in the future. And there we'll want to have a mandatory meta-version field. |
13:53 | |
eater | how does `try sink await $async-proc.start` work? | 13:56 | |
is sink a magic keyword? | |||
AlexDaniel | eater: you mean this? docs.perl6.org/language/traps#Sunk_Proc | 13:57 | |
eater | ye | 13:58 | |
is it like run("blah").sink ? | 13:59 | ||
13:59
espadrine left,
pierre_ left
|
|||
AlexDaniel | m: class Foo { method sink { say ‘woosh’ } }; my $x = Foo.new; say $x | 14:00 | |
camelia | Foo.new | ||
AlexDaniel | m: class Foo { method sink { say ‘woosh’ } }; my $x = Foo.new; $x | ||
camelia | WARNINGS for <tmp>: Useless use of $x in sink context (line 1) |
||
AlexDaniel | hm, interesting | ||
eater | m: say lc "HELP" | ||
camelia | help | ||
AlexDaniel | m: class Foo { method sink { say ‘woosh’ } }; Foo.new | ||
camelia | woosh | ||
eater | I guess it's doing that w/ sink | 14:01 | |
also your results are also intresting :') | |||
AlexDaniel | eater: well, yes | 14:02 | |
or not… | |||
AlexDaniel is confused | 14:03 | ||
eater | :') | ||
14:08
zakharyas joined
14:09
pierre_ joined
14:10
fatguy joined
14:11
kaare__ joined
|
|||
Geth | whateverable: dce3462b15 | (Aleks-Daniel Jakimenko-Aleksejev)++ | build.p6 Make build.p6 more universal We've been using an almost identical script for MoarVM, it's time to bring them back together. In theory, now it should be easy to throw in some other backends. Somehow I don't like the code here. Refactoring is welcome! |
14:14 | |
AlexDaniel | hm, it probably does not work | 14:15 | |
we will see :) | 14:16 | ||
14:19
Geth left
14:25
domidumont joined
14:32
lizmat left
14:33
lizmat joined,
Cabanossi left
14:35
Cabanossi joined
|
|||
eater | is there an apt repo w/ up to date perl6 packages? | 14:35 | |
14:39
Zoffix joined
|
|||
Zoffix | eater: yes, it's like run(...).sink; it sinks the proc inside the try, instead of having it get sunk outside of it. | 14:40 | |
14:40
pierre_ left
|
|||
Zoffix | In `m: class Foo { method sink { say ‘woosh’ } }; my $x = Foo.new; $x` you're not sinking Foo; you're sinking the variable, so you get the warning and no `woosh` | 14:40 | |
In `class Foo { method sink { say ‘woosh’ } }; Foo.new` you're actually sinking Foo, so you get the `woosh` | 14:41 | ||
eater: I know there are built packages; don't know if there's a repo | |||
huggable: deb | |||
huggable | Zoffix, CentOS, Debian, Fedora and Ubuntu Rakudo packages: github.com/nxadm/rakudo-pkg/releases | ||
eater | thanks Zoffix! | 14:42 | |
14:42
pierre_ joined
14:43
Zoffix left
14:45
espadrine joined
14:50
Geth joined,
ChanServ sets mode: +v Geth
14:53
nowan left
14:54
pierre_ left
14:55
nowan joined
15:01
Zoffix joined
|
|||
Zoffix | m: say "foo/\x[308]bar" ~~ /<[\/ \\]>/ | 15:02 | |
camelia | Nil | ||
Zoffix | Any trick of making a *regex* that would match such a slash and just the slash, without the combiner? | ||
m: dd split /<[\/ \\]>/, "foo/\x[308]bar" | |||
camelia | ("foo/̈bar",).Seq | 15:03 | |
Zoffix | So that would be ("foo", "\x[308]bar").Seq | ||
15:03
Cabanossi left
15:05
Cabanossi joined
|
|||
Zoffix | m: use nqp; dd split /.<?{my str $slash = ~$/; (nqp::iseq_i(nqp::ord($slash), 92) || nqp::iseq_i(nqp::ord($slash), 47)) }>/, "foo/bar/\x[308]ber" | 15:07 | |
camelia | ("foo", "bar", "ber").Seq | ||
Zoffix | I also need the \x[308] to not be removed | ||
15:10
nowan left
15:13
chee left
|
|||
eater | so the result must be foo, bar, \x[308]ber | 15:13 | |
? | |||
Zoffix | Yeah, like «("foo", "bar", "\x[308]ber").Seq» | ||
m: ("foo", "bar", "\x[308]ber").Seq.perl.say | 15:14 | ||
camelia | ("foo", "bar", "\x[308]ber").Seq | ||
eater | but also on | ||
Zoffix | weird | ||
eater | foo\bar\\x[308]ber | ||
15:14
dolmen_ joined
|
|||
Zoffix | m: ("foo", "bar", "x\x[308]ber").Seq.perl.say | 15:14 | |
camelia | ("foo", "bar", "ẍber").Seq | ||
Zoffix | Ah, Str.perl needs a thing to combine on... | ||
eater: yeah, if that's split with the regex, it'd also be ("foo", "bar", "\x[308]ber").Seq | 15:15 | ||
And it has to be a regex. I can easily do it without one | |||
Zoffix tries messing with $/ | 15:16 | ||
15:19
dolmen_ left
|
|||
eater | m: dd split /[ \/ || \\ <!before x>]/, 'foo/bar/\x[308]ber' | 15:20 | |
camelia | ("foo", "bar", "\\x[308]ber").Seq | ||
eater | there is that | ||
Zoffix | lol | ||
15:22
chee joined
|
|||
eater | I think the problem is that we have a unicode regex parser | 15:24 | |
it's applying \x[308] to / | |||
so it's not a / anymore | |||
Zoffix | Yup | ||
eater | and I don't see any flags that will tell it to not combine any characters | 15:25 | |
Zoffix | There aren't any yet. | ||
15:26
chee left
|
|||
Zoffix | m: use nqp; my $str = "foo/bar/\x[308]ber"; nqp::stmts((my $p := nqp::encode(nqp::unbox_s($str), 'utf8-c8', buf8.new)), (my int $els = nqp::elems($p)), (my int $i = -1), nqp::while( nqp::isne_i($els, $i = nqp::add_i($i, 1)), nqp::if(nqp::iseq_i(nqp::atpos_i($p, $i), 47) || nqp::iseq_i(nqp::atpos_i($p, $i), 92), nqp::atposref_i($p, $i) = 0)), $str := nqp::decode($p, 'utf8-c8')); dd split /\0/, $str | 15:29 | |
camelia | ("foo", "bar", "\x[308]ber").Seq | ||
Zoffix | Well, that's one (slow) way of doing it, I guess, if being careful to change nuls back to slashes in all the relevant bits. | 15:31 | |
eater | :') | ||
Zoffix | This is for IO::Win32::Spec; I guess I'll try to rewrite stuff without regex where possible | ||
Thanks \o | |||
15:31
Zoffix left,
ChoHag left
15:33
mls left,
ChoHag joined,
mls joined
15:37
rindolf left
|
|||
tadzik | m: "mojo".succ.say | 15:37 | |
camelia | mojp | ||
tadzik | there | 15:38 | |
m: "Mojolicious".succ.say | 15:40 | ||
camelia | Mojoliciout | ||
15:40
tokomer joined
|
|||
eater | m: "one".succ.say | 15:41 | |
camelia | onf | ||
15:43
anton_p joined
15:46
TeamBlast left
15:48
TeamBlast joined
15:54
zakharyas left
|
|||
Geth | doc: 04355a4f80 | (Zoffix Znet)++ | doc/Language/traps.pod6 Include example without `try sink` Since normally you don't need any trys |
15:59 | |
16:08
espadrine left,
jsoo joined,
espadrine joined
16:11
jsoo left
16:12
nowan joined
16:13
jsoo joined
16:15
jsoo left
16:16
Skarsnik joined
16:17
TreyHarris left
16:19
TreyHarris joined
|
|||
eater | m: role A { method b { ... } }; class B is A {} | 16:22 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Class B can't pun role A because it has required methods: b. Did you mean to use "does" instead? at <tmp>:1 |
||
eater | well that's a better error then "Method 'b' must be implemented by A because it is required by roles: A." | 16:23 | |
16:24
mephinet left,
TreyHarris left
16:30
TreyHarris joined
|
|||
lucs | m: "exampleXX".say | 16:31 | |
camelia | exampleXX | ||
lucs | m: "example".say | ||
camelia | example | ||
lucs | m: "example".print | ||
camelia | example | ||
16:34
Cabanossi left
16:35
Cabanossi joined
16:37
mephinet joined
16:40
lizmat left
|
|||
araraloren | eater, no, **is** do inheritance, it need a class | 16:41 | |
m: role A { method b { ... } }; class B is A { method b() { } } | |||
camelia | 5===SORRY!5=== Error while compiling <tmp> Class B can't pun role A because it has required methods: b. Did you mean to use "does" instead? at <tmp>:1 |
||
timotimo | araraloren: heyo | 16:42 | |
araraloren | Em ? | ||
timotimo | araraloren: will you give your table module a section in the readme for "how is it different from the other table modules"? | ||
araraloren | timotimo, other module ? | 16:43 | |
timotimo | yeah, there's like 6 different modules with "table" in their name | ||
huggable: eco table | |||
huggable | timotimo, nothing found | ||
timotimo | buggable: eco table | ||
buggable | timotimo, Found 11 results: Text::Table::List, MIME::QuotedPrint, Text::Abbrev, File::Which, Image::PNG::Portable. See modules.perl6.org/#q=table | ||
timotimo | well, only one of these is interesting | 16:44 | |
Terminal::Table, Term::TablePrint, Text::Table::List, Text::Table::Simple | |||
araraloren | I see, but what you mean different ? | 16:45 | |
16:45
domidumont left
|
|||
timotimo | how does a user know what module to use | 16:46 | |
yours shows what the table looks like, that's good | |||
araraloren | OH | ||
16:46
domidumont joined
|
|||
timotimo | Term::TablePrint has no output example :( | 16:46 | |
i'll open an issue for that | |||
araraloren | I will update some example output | ||
timotimo, sorry for that | 16:47 | ||
timotimo | no problem :) | 16:48 | |
you already have one example output, that's good | |||
araraloren | yeah, I have some example | ||
16:49
rindolf joined
|
|||
eater | how do I pipe to a proc with Proc::Async? | 16:51 | |
16:51
mxco86 left
|
|||
timotimo | you need to open it with :in | 16:52 | |
then you'll have wrie, print, say, and close-stdin | |||
alternatively, you can pass stuff to the :in(...) | 16:53 | ||
wait, it looks like the arguments are called :r and :w? | |||
eater | yes | ||
that's why I ask :p | |||
I now just use a tap | |||
16:53
khw left
|
|||
eater | but that means I need to build a buffer somewhere | 16:54 | |
timotimo | i was confusing the async and non-async version of proc | 16:55 | |
you can call .Channel on a supply | |||
if you want to use it like polling or something | |||
gotta go, food calls! | 16:56 | ||
16:58
raiph joined
17:00
lizmat joined
17:04
dogbert17_ joined
17:07
dogbert11 left
|
|||
araraloren | timotimo, I add some output in readme, is that ok? github.com/araraloren/perl6-terminal-table | 17:14 | |
Geth | doc: 1cf69327aa | (Zoffix Znet)++ | 3 files [io grant] Document IO::Spec::*.is-absolute |
17:15 | |
araraloren | ~~ night | 17:16 | |
17:16
araraloren left
17:20
anton_p left
17:21
mr-foobar joined
|
|||
Geth | doc: 4e88b84b32 | (Zoffix Znet)++ | doc/Type/IO/Path.pod6 [io grant] Finish up IO::Path.is-absolute - Include generic example - Point out "/foo" is absolute even on Windows - Include Windows-specific examples |
17:21 | |
17:24
mcafee joined
17:27
lizmat left
|
|||
mcafee | Hey, so, if I have an infinite list, is there any way to drop its first element and get an infinite list of the rest of the original list? | 17:33 | |
17:36
Zoffix joined
|
|||
Zoffix | mcafee: yeah, .skip | 17:36 | |
m: my @foo = (1...*).skip: 5; say @foo[^10 | 17:37 | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Unable to parse expression in subscript; couldn't find final ']' at <tmp>:1 ------> 3my @foo = (1...*).skip: 5; say @foo[^107⏏5<EOL> expecting any of: statement end st… |
||
Zoffix | m: my @foo = (1...*).skip: 5; say @foo[^10] | ||
camelia | (6 7 8 9 10 11 12 13 14 15) | ||
Zoffix | m: my @foo = (1...*)[4..*]; say @foo[^10] # also this | ||
17:37
benchable6 left,
bloatable6 left,
statisfiable6 left,
unicodable6 left,
evalable6 left,
quotable6 left,
committable6 left,
bisectable6 left
|
|||
Zoffix | hah | 17:37 | |
robocide? :) | |||
camelia | (timeout) | ||
Zoffix | really | 17:38 | |
I guess that doesn't propage .is-lazy | |||
m: say (1...*)[4..*].is-lazy | |||
camelia | (timeout) | ||
Zoffix | why does it reify? | ||
mcafee | I get "No such method 'skip' for invocant of type 'Seq'". Is it pretty new? | 17:39 | |
Zoffix | .oO( ♪ oh tell me whyyy... do we build stuff that reify ♪ ) |
17:40 | |
17:40
bloatable6 joined,
quotable6 joined,
committable6 joined,
bisectable6 joined,
ChanServ sets mode: +v bloatable6,
evalable6 joined,
ChanServ sets mode: +v quotable6,
ChanServ sets mode: +v committable6,
ChanServ sets mode: +v bisectable6,
ChanServ sets mode: +v evalable6,
unicodable6 joined,
ChanServ sets mode: +v unicodable6,
benchable6 joined,
ChanServ sets mode: +v benchable6,
statisfiable6 joined,
ChanServ sets mode: +v statisfiable6
|
|||
Zoffix | mcafee: newish, yeah | 17:40 | |
mcafee | Okey dokey, time to upgrade then I suppose. | ||
Zoffix | m: my @a = 1..*; say @a.tail(*-5)[^10] | 17:41 | |
camelia | (6 7 8 9 10 11 12 13 14 15) | ||
Zoffix | star: my @a = 1..*; say @a.tail(*-5)[^10] | ||
camelia | Cannot resolve caller tail(Array: WhateverCode); none of these signatures match: (Any:D $: *%_) (Any:D $: Cool $n, *%_) in block <unit> at <tmp> line 1 |
||
Zoffix | also works, but also new | ||
AlexDaniel | .oO( did YOU upgrade your rakudo? Whateverables just did ) |
17:42 | |
Geth | whateverable: edcb6687b1 | (Aleks-Daniel Jakimenko-Aleksejev)++ | Whateverable.pm6 Fix rakudo repo path after dce3462b153 We keep several rakudo repos (which is excessive but safe), so everything will need to be a bit more specific. For now, let's default to rakudo-moar directory. |
||
Zoffix | Ah, I see my mistake. | ||
lazy index list is about stopping when the array ends, not about keeping it all lazy | 17:43 | ||
m: my @a = 1…*; @a.shift xx 5; say @a[^10] | |||
camelia | (6 7 8 9 10 11 12 13 14 15) | ||
Zoffix | star: my @a = 1…*; @a.shift xx 5; say @a[^10] | ||
camelia | (6 7 8 9 10 11 12 13 14 15) | ||
Zoffix | :) cheatsy-doodle | ||
m: my @a = 1…*; @a.splice: 0, 5; say @a[^10] | 17:44 | ||
camelia | (6 7 8 9 10 11 12 13 14 15) | ||
Geth | doc: 497e7f7027 | (Zoffix Znet)++ | doc/Type/IO/Path.pod6 [io grant] Finish off IO::Path.is-relative |
17:49 | |
17:57
TEttinger joined
18:02
mcafee left,
TeamBlast left,
mrsolo_ joined,
jcallen_ joined
18:03
TeamBlast joined,
Zoffix left
18:04
rblackwe_ joined,
masak_ joined
18:05
integral_ joined,
moritz_ joined,
cosimo_ joined,
Cabanoss- joined
18:06
avalenn left
18:08
Alikzus_ joined
18:09
Cabanossi left,
mrsolo left,
rblackwe left,
jcallen left,
integral left,
Grrrr left,
cosimo left,
masak left,
Cabanoss- is now known as Cabanossi,
mrsolo_ is now known as mrsolo
18:10
Ven joined,
robinsmidsrod joined,
Ven is now known as Guest3385
18:13
Grrrr joined
18:15
nadim_ left,
JimmyZ joined
18:18
chee joined
18:31
vetmaster joined
|
|||
vetmaster | m: say "test"; | 18:32 | |
camelia | test | ||
18:33
colomon left
|
|||
vetmaster | p6: while True { say "AAA" } | 18:34 | |
18:34
Cabanossi left
|
|||
camelia | (timeout)AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA AAA… |
18:34 | |
vetmaster | p6: foreach (^70) { say "vonni??" } | 18:35 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Unsupported use of 'foreach'; in Perl 6 please use 'for' at <tmp>:1 ------> 3foreach7⏏5 (^70) { say "vonni??" } |
||
18:35
Cabanossi joined
|
|||
vetmaster | for ^70 { say "vonni??" } | 18:36 | |
18:36
nadim_ joined
|
|||
AlexDaniel | m: for ^70 { say "vonni??" } | 18:36 | |
camelia | vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonni?? vonn… |
||
vetmaster | thnx bro | ||
:) | |||
AlexDaniel | vetmaster: if you have any other questions, feel free to ask :) | 18:37 | |
vetmaster | okay, I've just installed rakudo. and I'm impressed.. | ||
eater | :D | 18:38 | |
AlexDaniel | vetmaster: may I ask what exactly impressed you? :) | ||
Geth | doc: e05dc4665e | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6 s/new line/value of .nl-in/ |
18:39 | |
vetmaster | i.e. grammars | ||
I often work with regex on Python | 18:40 | ||
AlexDaniel | oh yeah :) | 18:41 | |
vetmaster | I also use Perl5, but the 6th version looks more modern | ||
18:42
Guest3385 left
|
|||
AlexDaniel | well, in perl6 there are ways to write things cleaner, that's for sure | 18:42 | |
18:43
Ven_ joined
|
|||
vetmaster | hmm.. it's intuitive! | 18:44 | |
are there any libraries for natural language processing? (for Perl6) | 18:46 | ||
thanks | |||
18:47
yqt joined
|
|||
vetmaster | like ntlk in Python3, for example? | 18:47 | |
Geth | doc: 3eaf7f2df8 | (Jan-Olof Hendig)++ | doc/Type/Str.pod6 Added doc for Str.indices. eater++ |
18:49 | |
18:49
lucasb joined
|
|||
AlexDaniel | vetmaster: I don't know anything about this. But you can probably just use ntlk using Inline::Python github.com/niner/Inline-Python | 18:52 | |
vetmaster | thank you, it would be a good solution | 18:55 | |
vim Perl 5 & 6 support github.com/vim-perl/vim-perl | 18:56 | ||
18:59
lichtkind left,
colomon joined
19:00
skids joined
19:03
pierre joined
19:05
colomon left
19:07
pierre left
|
|||
vetmaster | could you please suggest some good AI library? | 19:08 | |
19:11
lichtkind joined
19:12
Sgeo_ joined
19:13
rindolf left,
domidumont left
19:14
Sgeo left
19:19
darutoko left
|
|||
timotimo | .tell araraloren fantastic! i didn't realize you could have tables in triangle shape or similar! that's really cool and probably sets your module apart from all others | 19:22 | |
yoleaux | timotimo: I'll pass your message to araraloren. | ||
eater | timotimo: w/o context that looks like such an sarcastic and denouncing statement :') | 19:27 | |
19:34
Cabanossi left
19:36
Cabanossi joined
|
|||
timotimo | :( | 19:38 | |
19:48
nadim_ left
19:49
rindolf joined
19:56
Ven_ left
|
|||
ugexe | you should be able to upload dists to cpan normally now and have them discovered with zef wi(using the --cpan option) | 19:58 | |
timotimo | wow | ||
we've come so far! | |||
that ought to make ti easier to do multiple versions, too, right? | 19:59 | ||
ugexe | zef also has a branch with cpan testers matrix integration | ||
its easier in that my cpan indexer will auto populate the source-url | 20:00 | ||
but either way you are submitting a new dist to cpan or submitting a new dist to the ecosystem list | |||
timotimo | what is "a dist" in cpanverse? | 20:01 | |
ugexe | i mean a tarball containing a unique name + version | ||
timotimo | OK | ||
20:04
Cabanossi left
20:05
Cabanossi joined
20:06
Ven joined
20:07
Ven is now known as Guest28311
|
|||
b2gills | vetmaster: One of the things I really like about grammars are that they are just classes, and regexes/tokens/rules are just methods; so you can compose them using roles. | 20:08 | |
20:09
kyan left
20:15
Guest28311 left
|
|||
eater | IO::Path.add is added recently? | 20:31 | |
20:32
AndyDee joined
|
|||
timotimo | bisectable6: IO::Path.new("/").add("foo") | 20:34 | |
bisectable6 | timotimo, On both starting points (old=2015.12 new=95e49dc) the exit code is 1 and the output is identical as well | ||
timotimo, Output on both points: «IO::Path is disallowed in restricted setting in sub restricted at src/RESTRICTED.setting line 1 in method new at src/RESTRICTED.setting line 32 in block <unit> at /tmp/t6dPk9TO1F line 1» | |||
timotimo | m( of course | ||
eater | :") | 20:36 | |
timotimo: it was added a month ago | 20:41 | ||
timotimo | yeah, zoffix was able to bisect it | ||
20:52
bjz joined
|
|||
Geth | whateverable: 39cde1e3e9 | (Aleks-Daniel Jakimenko-Aleksejev)++ | build.p6 Told you, I'll never remember to avoid this trap Similarly to 96ccddccd804b33e0b9c5ed6580c1c23a91a5737 |
20:57 | |
eater | is there a reason you can't retrieve the Proc object from the Proc::Async object later on? | 21:01 | |
21:02
haxmeister joined
|
|||
Geth | doc: f7e75c1bec | (Zoffix Znet)++ | doc/Type/IO/Handle.pod6 [io grant] Document IO::Handle.nl-in |
21:03 | |
eater | oh, it magically builds a fake Proc object | 21:06 | |
21:24
lucasb left
|
|||
Geth | whateverable: c63ed89d4e | (Daniel Green)++ | Benchable.p6 Close the pipe between pzstd and tar Otherwise sockets get left open and it will die once it hits the 1024 limit. |
21:30 | |
timotimo | a-ha! | 21:31 | |
21:37
rindolf left
21:38
Skarsnik_ joined,
pochi joined
21:40
Sgeo__ joined
21:41
esh_ joined
|
|||
tyil | Im working on a module, but its not yet completely done. the things I so far implemented work, and they dont depend on things not yet implemented, and they have tests available. Is it wise to keep it out of the ecosystem until its "complete", or should I add it in advance to let people know someone's working on it? | 21:41 | |
21:41
rjbs- joined,
ponbiki_ joined
21:42
haxmeist1r joined,
Celelibi_ joined,
Celelibi left,
El_Che_ joined,
imcsk8_ joined,
eaterof joined
|
|||
moritz_ | tyil: add it to the ecosystem now | 21:42 | |
21:42
incredible left,
esh left,
pochi_ left,
imcsk8 left,
eater left,
El_Che left,
ponbiki left,
haxmeister left,
Sgeo_ left,
Skarsnik left
|
|||
tyil | right this moment? :p | 21:42 | |
21:43
xxpor joined,
eaterof is now known as eater
|
|||
Geth | whateverable: 09c46d5915 | (Aleks-Daniel Jakimenko-Aleksejev)++ | build.p6 Build some of the dangling branches The title of this commit does not express how cool this is. |
21:43 | |
moritz_ | tyil: sure! | ||
timotimo | faster! | ||
the moment is almost over! | 21:44 | ||
tyil | D: | ||
21:45
john51 left
|
|||
AlexDaniel | timotimo: if your “ah-ha” was refering to $proc.out.close, then keep in mind that this is a third commit fixing this… | 21:45 | |
21:45
john51 joined
|
|||
Geth | ecosystem: Tyil++ created pull request #342: Add MPD::Client |
21:46 | |
AlexDaniel | timotimo: and I don't know what amound of documentation is going to resolve this… github.com/perl6/doc/issues/1304 | ||
amount* | |||
timotimo | yeah, damn | ||
tyil | timotimo: was I still in time | ||
timotimo | tyil: really close! ;) | ||
tyil | I delayed rolling my joint for this! | ||
but its worth it | |||
21:46
incredible joined
|
|||
timotimo | AlexDaniel: was somethign keeping the objects around? or can we perhaps put a warning into DESTROY like we have for Failure? | 21:47 | |
21:47
bjz left
|
|||
AlexDaniel | timotimo: I don't think so. $proc should be thrown away relatively quickly | 21:47 | |
21:47
colomon joined
|
|||
tyil | eater: wanna do a p6 coding weekend again sometime? | 21:47 | |
timotimo | wanna try if we can check the pipes for being closed before the DESTROY gets called? | 21:48 | |
might be interesting if that triggers | |||
eater | tyil: when I have time and money again :p | ||
Geth | ecosystem: 0ea4a4ccbd | (Patrick Spek)++ (committed by Moritz Lenz) | META.list Add MPD::Client |
||
tyil | thanks moritz_ :> | ||
eater: cool | |||
eater | github.com/PostCocoon/P6-SystemPac...in.pm6#L69 | 21:49 | |
tyil | I have some plans for perl programs once this module is done | ||
eater | is there a better way to do this? | ||
wrapping start and then sleeping till it's started feel really dirty | |||
tyil | also, I'd like to see how far I can get with an init system in perl 6 | ||
eater | s/feel/feels | ||
21:49
colomon left
|
|||
AlexDaniel | timotimo: well, I don't think I have any time for this now | 21:50 | |
timotimo: but the code to reproduce this issue is just these two lines right there | |||
timotimo | eater: isn't started a promise? | ||
eater | timotimo: that resolves when it's exited | 21:51 | |
AlexDaniel | timotimo: or even this example from our docs :P docs.perl6.org/type/Proc | ||
eater | not really the time to insert stuff into the STDIN :p | ||
timotimo | when it *exits*? | ||
eater | yeah that | ||
timotimo | ah, not a promise | 21:52 | |
eater | "Returns a promise that will be kept with a Proc object once the external program exits" | ||
docs.perl6.org/type/Proc::Async#method_start | |||
timotimo | ah, i see | ||
why do you even have to wait? | 21:53 | ||
eater | because if I put data in before it's started | ||
it will tell me that it's not started | |||
AlexDaniel | timotimo: to see how many sockets were left behind you can do something like 「lsof | grep socket」 | ||
timotimo | huh. | 21:54 | |
eater | and it's not immeditially started after it ran .start | ||
timotimo | of course not, it's async after all :) | ||
AlexDaniel | maybe narrow it down by pid, but this should be pretty much enough :) | ||
21:55
setty1 left
|
|||
timotimo | eater: i think wrapping the "start" method of a single instance of Proc::Async isn't possible. you're probably poisoning every single Proc::Async in existence | 21:55 | |
eater | timotimo: whooo | 21:56 | |
it's not needed if I do the until sleep loop anyway | |||
timotimo | it's strange that we don't have a method that'd let us wait for a program to start | 21:58 | |
eater | Im currently looking up the MoarVM callback for it | ||
21:58
colomon joined
|
|||
timotimo | like, the docs have an example where it just "await $proc.write(Buf.new(12, 42))" | 21:59 | |
without doing any waiting for the proc to start or anything | |||
eater | MoarVM has the "ready" callback | ||
21:59
labster joined
|
|||
eater | tbh I expected .started to be a Promise | 22:00 | |
timotimo | me, too | ||
that's an api change we can't easily make, though | |||
how do i find a process that takes long enough to start so i can get the error you were talking about? | 22:01 | ||
22:01
bjz joined
|
|||
timotimo | i can just start and immediately write to cat :P | 22:01 | |
but cat is small | |||
eater | bash -c 'sleep 5; cat;' | ||
oh wait | 22:02 | ||
I get what you mean | |||
22:02
Cabanossi left
|
|||
timotimo | even with perl6 -e ... i can't get it to start up slow enough | 22:03 | |
are you sure you aren't somehow accidentally calling write before you called .start? | |||
eater | well... if you saw the code, I wrapped start, ran callsame and then did the thing | 22:04 | |
oH! | |||
I see the problem :') | |||
because it applies that wrap to all procs | |||
it ran when I started the first process | |||
timotimo | ah, yeah | 22:05 | |
that would totally do it | |||
i'd suggest you force the consumer of your piper class to have a method to call after you do .new, and one to call after you .start | |||
or something | |||
eater | why no ready promise? :') | 22:06 | |
22:06
colomon left
22:07
Cabanossi joined
|
|||
eater | well time for sleep now, see ya and thanks for the help timotimo :) | 22:07 | |
22:07
colomon joined
|
|||
timotimo | i don't think there's any point in time where it wouldn't immediately be kept | 22:07 | |
so $proc.ready.then would be a no-op | 22:08 | ||
22:08
Cabanossi left
22:09
Cabanossi joined
22:12
MasterDuke__ joined,
bjz left
22:13
MasterDuke_ left
22:14
MasterDuke__ left
22:15
Skarsnik_ left,
MasterDuke_ joined
22:19
colomon left
22:21
colomon joined
22:27
colomon left
22:30
BenGoldberg joined
22:33
araujo joined,
araujo left,
araujo joined
22:39
Sgeo__ left
22:40
robertle left
22:41
Sgeo joined
22:42
pierre joined
22:45
labster left
22:47
pierre left
22:49
yqt left
22:56
dogbert11 joined
22:58
dogbert17_ left
23:01
lichtkind left
23:18
colomon joined
23:20
espadrine left
23:21
colomon left
23:25
pierre joined
23:26
pierre left
23:42
margeas left
23:47
kybr joined
23:54
kyan joined,
kybr left
|