»ö« 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. |
|||
grondilu | m: use NativeCall; role Foo[Sub &native] { has &.native }; role Bar is repr('CPointer') {}; | 00:00 | |
camelia | ( no output ) | ||
grondilu | m: use NativeCall; role Foo[Sub &native] { has &.native }; role Bar is repr('CPointer') {}; class :: does Foo(sub {}) {} | ||
camelia | rakudo-moar d43ea0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Unable to parse expression in typename; couldn't find final ')' at <tmp>:1------> 3 repr('CPointer') {}; class :: does Foo(7⏏5sub {}) {}» | ||
grondilu | m: use NativeCall; role Foo[Sub &native] { has &.native }; role Bar is repr('CPointer') {}; class :: does Foo(my & = sub {}) {} | ||
camelia | rakudo-moar d43ea0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Unable to parse expression in typename; couldn't find final ')' at <tmp>:1------> 3 repr('CPointer') {}; class :: does Foo(7⏏5my & = sub {}) {}» | ||
grondilu | m: use NativeCall; role Foo[Sub &native] { has &.native }; role Bar is repr('CPointer') {}; class :: is Foo(sub {}) {} | ||
camelia | rakudo-moar d43ea0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Cannot resolve caller trait_mod:<is>(<anon|78520784>, Foo, Sub); none of these signatures match: (Mu:U $child, Mu:U $parent) (Mu:U $child, :$DEPRECATED!) (Mu:U $type, :$rw!) (Mu:U $ty…» | ||
grondilu | wth | ||
oh | 00:01 | ||
m: use NativeCall; role Foo[Sub &native] { has &.native }; role Bar is repr('CPointer') {}; class :: is Foo[sub {}] {} | |||
camelia | rakudo-moar d43ea0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Cannot resolve caller trait_mod:<is>(<anon|59022496>, Foo, Array); none of these signatures match: (Mu:U $child, Mu:U $parent) (Mu:U $child, :$DEPRECATED!) (Mu:U $type, :$rw!) (Mu:U $…» | ||
grondilu | m: use NativeCall; role Foo[Sub &native] { has &.native }; role Bar is repr('CPointer') {}; class :: does Foo[sub {}] {} | 00:02 | |
camelia | rakudo-moar d43ea0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>No appropriate parametric role variant available for 'Foo'at <tmp>:1» | ||
grondilu | damn it | ||
back to basic: | |||
m: role Foo[Int $] {}; class :: does Foo[13] {} | |||
camelia | ( no output ) | ||
grondilu | ok | 00:03 | |
m: role Foo[Sub &] {}; class :: does Foo[sub {}] {} | |||
camelia | rakudo-moar d43ea0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>No appropriate parametric role variant available for 'Foo'at <tmp>:1» | ||
grondilu | hum | ||
m: say .WHAT given sub {} | |||
camelia | rakudo-moar d43ea0: OUTPUT«(Sub)» | ||
grondilu | Can't I use a Sub as a parameter in a parametric role? | ||
00:16
mtj_ left,
mtj_ joined
|
|||
grondilu | m: role Foo[$] {} | 00:18 | |
m: say "hi" | |||
camelia | ( no output ) | ||
rakudo-moar d43ea0: OUTPUT«hi» | |||
grondilu | wow that first one took its time | ||
m: role Foo[$] {} | |||
camelia | ( no output ) | ||
grondilu | actually not | ||
m: role Foo[$] {}; class :: does Foo[my $ = sub {}] {} | 00:19 | ||
camelia | ( no output ) | ||
grondilu | m: role Foo[$f] { my $.f = $f; method f { $!f() } }; class :: does Foo[my $ = sub { say "hi!" }] {}.f | 00:20 | |
camelia | rakudo-moar d43ea0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Package 'Foo' already has a method 'f' (did you mean to declare a multi-method?)at <tmp>:1» | ||
grondilu | m: role Foo[$f] { my $.f = $f; method talk { $!f() } }; class :: does Foo[my $ = sub { say "hi!" }] {}.talk | ||
camelia | rakudo-moar d43ea0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Attribute $!f not declared in role Fooat <tmp>:1------> 3] { my $.f = $f; method talk { $!f() } }7⏏5; class :: does Foo[my $ = sub { say "hi expecting any of: horizontal whitespac…» | ||
grondilu | m: role Foo[$f] { has $.f = $f; method talk { $!f() } }; class :: does Foo[my $ = sub { say "hi!" }] {}.talk | 00:21 | |
camelia | rakudo-moar d43ea0: OUTPUT«Cannot look up attributes in a type object in method talk at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
grondilu | m: role Foo[$f] { method talk { $f() } }; class :: does Foo[my $ = sub { say "hi!" }] {}.talk | ||
camelia | rakudo-moar d43ea0: OUTPUT«hi!» | ||
grondilu | m: role Foo[$f] { method fork { $f() } }; class :: does Foo[my $ = sub fork() is native {}] {}.fork; say "hi" | 00:22 | |
camelia | rakudo-moar d43ea0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Can't use unknown trait 'is native' in a sub declaration.at <tmp>:1 expecting any of: rw raw hidden-from-backtrace hidden-from-USAGE pure default DEPRECATED inlinable nodal …» | ||
grondilu | m: role Foo[$f] { method fork { $f() } }; class :: does Foo[my $ = sub fork() is native() {}] {}.fork; say "hi" | ||
camelia | rakudo-moar d43ea0: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Can't use unknown trait 'is native' in a sub declaration.at <tmp>:1 expecting any of: rw raw hidden-from-backtrace hidden-from-USAGE pure default DEPRECATED inlinable nodal …» | ||
grondilu | m: use NativeCall; role Foo[$f] { method fork { $f() } }; class :: does Foo[my $ = sub fork() is native {}] {}.fork; say "hi" | ||
camelia | rakudo-moar d43ea0: OUTPUT«hihi» | ||
grondilu | nice | ||
00:23
mtj_ left,
mtj_ joined
|
|||
grondilu | m: use NativeCall; role Foo[$f] { method fork { $f() } }; class :: does Foo[sub fork() is native {}] {}.fork; say "hi" | 00:24 | |
camelia | rakudo-moar d43ea0: OUTPUT«hihi» | ||
grondilu | m: use NativeCall; role Foo[$f] is repr('CPointer') { method fork { $f() } }; class :: does Foo[sub fork() is native {}] {}.fork; say "hi" | 00:25 | |
camelia | rakudo-moar d43ea0: OUTPUT«hihi» | ||
grondilu | that looks a lot like what I was considering doing. Cool. | ||
b2gills | 「Sub &」 declares that it requires a Callable that returns a Sub | 00:29 | |
tbrowder | ugexe: thanks | 00:31 | |
.tell ugexe thanks | 00:32 | ||
yoleaux | tbrowder: I'll pass your message to ugexe. | ||
00:33
mcmillhj joined
00:38
BenGoldberg joined,
mcmillhj left
00:40
nbrown joined
00:41
nbrown left
00:43
nbrown joined
|
|||
grondilu | m: role Foo[Sub &] {}; class :: does Foo[sub (--> Sub) { sub {} }] {} | 00:43 | |
camelia | ( no output ) | ||
grondilu | b2gills: you're right | ||
m: role Foo[&] {}; class :: does Foo[sub {}] {} | 00:44 | ||
camelia | ( no output ) | ||
00:53
pierre_ joined
00:55
araujo_ joined
00:58
mcmillhj joined
00:59
araujo left,
zacts left,
nbrown left
01:04
mcmillhj left
01:09
olinkl left
01:10
kipd left,
mithaldu_ left,
BuildTheRobots left,
notbenh_ left,
Lucas_One left
01:11
AngeloMichael left,
SmokeMachine____ left
01:12
woodruffw left
01:13
zengargoyle left,
Actualeyes joined
01:14
zengargoyle joined,
mcmillhj joined
01:16
_slade_ left
01:17
woodruffw joined,
woodruffw left,
woodruffw joined
01:18
_slade_ joined
01:19
mcmillhj left,
Lucas_One joined
01:20
SmokeMachine____ joined
01:23
gfldex left,
olinkl joined
01:24
beatdown joined
01:25
kipd joined
01:26
mithaldu_ joined
01:27
notbenh_ joined,
AngeloMichael joined,
grondilu left
01:28
BuildTheRobots joined
01:31
BillSussman left
01:33
mcmillhj joined
01:37
mcmillhj left
01:38
zacts joined
01:42
TEttinger left
01:45
TEttinger joined,
r_i_d joined
01:51
mcmillhj joined
01:56
mcmillhj left
02:05
mcmillhj joined
02:10
mcmillhj left
02:12
_slade_ left,
Praise left,
_slade_ joined
02:16
wamba joined
02:23
mcmillhj joined
02:28
mcmillhj left
02:33
n1lp7r left
02:37
mcmillhj joined
02:43
noganex_ joined,
mcmillhj left,
r_i_d left
02:45
noganex left
02:51
mcmillhj joined
02:54
zacts left
02:55
mcmillhj left
03:07
r_i_d joined
|
|||
r_i_d | is there a built-in way to check if a variable is an element in a given array? | 03:09 | |
right now i iterate over the array with a for-loop and trigger a duplicate flag accordingly -- is there a better way? | 03:10 | ||
03:11
cuonglm joined
|
|||
cuonglm | jnthn: Is there any design doc about NFG implementation in MoarVM? | 03:12 | |
harmil | r_i_d: you can use a Set, but if you are doing this just once, it's more efficient to just scan the list | ||
cuonglm | I read your article www.jnthn.net/papers/2015-spw-nfg.pdf | 03:13 | |
r_i_d | okay, thanks | ||
ugexe | m: my @arr = <a b c d>; say "a" ~~ @arr.any; say "z" ~~ @arr.any | ||
yoleaux | 00:32Z <tbrowder> ugexe: thanks | ||
camelia | rakudo-moar d43ea0: OUTPUT«TrueFalse» | ||
r_i_d | oh, that's nice. | 03:14 | |
ugexe | m: my @arr = <a b c d>; say @arr.contains("a"); say @arr.contains("z") | ||
camelia | rakudo-moar d43ea0: OUTPUT«TrueFalse» | ||
r_i_d | perfect. | 03:16 | |
harmil | I didn't even know there was a contains. That's handy. I assume it just scans the array? | 03:18 | |
r_i_d | Larry thought of everything, aparently. | ||
geraud | m: my @a = <a b c d e>; say "d" ∈ @a; | ||
camelia | rakudo-moar d43ea0: OUTPUT«True» | ||
ugexe | m: say "abc".contains("a"); say "abc".contains("z") | ||
camelia | rakudo-moar d43ea0: OUTPUT«TrueFalse» | ||
03:19
mcmillhj joined
|
|||
ugexe | `cd rakudo && git grep "method contains"` will generally make it easy to find where and how something is implemented | 03:21 | |
03:28
mcmillhj left
03:32
mcmillhj joined,
r_i_d left,
wamba left
03:37
mcmillhj left
03:38
TEttinger left
03:41
TEttinger joined
03:44
zacts joined
03:46
araujo__ joined,
cuonglm left
03:49
TEttinger left,
araujo_ left
03:52
TEttinger joined
03:53
nester joined
03:54
mcmillhj joined
04:04
notostraca joined
04:07
TEttinger left
04:13
notostraca left
04:15
notostraca joined
04:26
mcmillhj left
04:28
khw left
04:34
notostraca left,
cgfbee left
04:37
notostraca joined
04:39
mcmillhj joined
04:40
pierre_ left
04:41
skids left
04:44
mcmillhj left
04:46
notostraca left
04:47
pierre_ joined
04:48
notostraca joined,
mohae_ joined
04:49
nester left
04:51
mohae left,
pierre_ left
04:55
holyghost left
04:56
mcmillhj joined
04:58
zacts left
05:00
mcmillhj left
05:10
notostraca left
05:14
notostraca joined
05:20
mcmillhj joined
05:22
zacts joined
05:23
Actualeyes left
05:25
mcmillhj left
05:32
mcmillhj joined
05:34
araujo__ left
05:35
notostraca left
05:36
Actualeyes joined
05:37
mcmillhj left
05:38
notostraca joined
05:47
_slade_ left
05:48
notostraca left
05:50
notostraca joined,
pierre_ joined
05:52
CIAvash joined
05:55
pierre_ left
06:03
pierre_ joined,
pierre_ left
06:05
mcmillhj joined,
robinsmidsrod left
06:06
robinsmidsrod joined,
pierre_ joined
|
|||
avuserow | m: class Foo {has $!x; method x {return Proxy.new(FETCH => sub ($) {$!x}, STORE => sub ($, $v) {note "got here"; $!x = $v;})}}; my $f = Foo.new; $f.x = 1; say $f.x; my @attrs = Foo.^attributes(:local)[0].set_value($f, 2); say $f.x; note "pre-3"; $f.x = 3; say $f.x; | 06:09 | |
camelia | rakudo-moar d43ea0: OUTPUT«got here12pre-3got hereCannot assign to an immutable value in sub at <tmp> line 1 in block <unit> at <tmp> line 1» | ||
avuserow | looks like set_value and Proxies interact poorly? | ||
06:09
mcmillhj left
|
|||
avuserow | anyway I don't need to use a Proxy per se, I just want to update one attribute whenever another is set... not sure what good ways there are for that | 06:10 | |
nine | harmil: do _not_ use .contains! That checks if the given value is a substring. On lists it will check if the value is a substring of the stringified list. So it'll find "1" in (10, 11, 12). | 06:19 | |
ugexe: ^^^ | |||
06:19
mcmillhj joined
|
|||
nine | lizmat++ noticed this and already suggested a fix, but for now that's unfortunately how it is. | 06:20 | |
06:21
labster joined
06:24
mcmillhj left
06:33
nadim joined
06:41
domidumont joined
06:45
domidumont left
06:46
domidumont joined
06:47
nadim_ joined,
mcmillhj joined
06:49
movlex left
06:50
nadim left
06:53
mcmillhj left
07:02
mcmillhj joined,
BenGoldberg left
07:06
mcmillhj left
07:10
notostraca left
07:11
cgfbee joined,
notostraca joined
07:21
notostraca left
07:24
notostraca joined
07:28
espadrine joined
07:30
canopus left
07:33
RabidGravy joined
07:34
mcmillhj joined
07:38
canopus joined
07:40
mcmillhj left,
ufobat joined
07:43
notostraca left
07:44
firstdayonthejob joined
07:45
mcmillhj joined,
notostraca joined
07:47
ufobat left,
ufobat joined
07:48
darutoko joined
07:50
mcmillhj left
07:51
notostraca left
07:54
pierrot joined
07:58
notostraca joined
07:59
mcmillhj joined
08:02
jonas2 joined
08:04
mcmillhj left
08:06
notostraca left,
quester joined
08:07
notostraca joined
08:09
Jody_ joined,
g4 joined
08:11
Jody_ left
08:16
firstdayonthejob left
08:19
leont joined
08:20
firstdayonthejob joined
08:22
araujo joined
08:24
notostraca is now known as TEttinger
08:28
TEttinger left
08:29
lizmat left
08:30
TEttinger joined
08:31
salva joined
08:37
mcmillhj joined
08:42
mcmillhj left
08:43
TEttinger left
08:44
TEttinger joined
08:45
mvorg joined
08:46
DrEeevil left
08:47
xiaomiao joined
|
|||
jnthn | .tell cuonglm No design doc, though the key data structures are described somewhat in the .h files; of note see github.com/MoarVM/MoarVM/blob/mast...ings/nfg.h and github.com/MoarVM/MoarVM/blob/mast...ormalize.h | 08:49 | |
yoleaux | jnthn: I'll pass your message to cuonglm. | ||
08:53
mcmillhj joined
08:55
TEttinger left
08:57
mcmillhj left
08:59
TEttinger joined,
Actualeyes1 joined,
Actualeyes left
09:03
pierre_ left
09:06
smls joined
|
|||
TEttinger | jnthn: is that grapheme normalization stuff? guessing by names | 09:08 | |
09:09
TEttinger left,
TEttinger joined,
mcmillhj joined
|
|||
jnthn | TEttinger: Yes :) | 09:10 | |
(Was answering a question from the backlog :)) | |||
09:12
user9 joined
09:15
mcmillhj left,
quester left
09:16
notostraca joined
09:19
TEttinger left,
notostraca is now known as TEttinger
09:26
mcmillhj joined
09:31
mcmillhj left
09:33
Actualeyes1 left
09:35
nadim_ left
09:43
TEttinger left
09:54
Actualeyes joined
09:57
mcmillhj joined
10:02
mcmillhj left
|
|||
melezhik | Good day gentlemen | 10:16 | |
how I can create a perl6 class with a "nested" name? Like class Foo::Bar::Baz | 10:17 | ||
looks like simple having "class Foo::Bar::Baz {}" does not work | |||
jnthn | m: class Foo::Bar::Baz { method m { 'bacon' } }; say Foo::Bar::Baz.m | 10:22 | |
camelia | rakudo-moar f2df2c: OUTPUT«bacon» | ||
jnthn | Seems to work fine, so I suspect you're running into some other problem :) | 10:23 | |
melezhik | jnthn: will double check thanks! | 10:24 | |
ok, I see the root now. Had to add class Name / file path into META.info , so t/ succeed when run panda --force install . | 10:26 | ||
10:27
kaare_ joined
|
|||
melezhik | anybody knows the reference to Perl6 Test ? all I find is perl6maven.com/how-to-test-perl6-modules but it is not enough for me ... | 10:28 | |
DrForr | docs.perl6.org/language/testing | 10:30 | |
melezhik | DrForr: thanks | ||
looks good :) | |||
10:30
leont left
|
|||
melezhik | how can have panda installer to show verbose test output when run my tests with `panda install .` | 10:31 | |
? | |||
looks like --verbose don't work | |||
10:31
mcmillhj joined
10:32
labster left
|
|||
DrForr | "Doesn't work" isn't as helpful as "I would have expected... but didn't see it." | 10:33 | |
melezhik | ok. "panda --force --verbose install ." give me a panda help info, instead of running tests | 10:34 | |
"panda --force install ." runs my tests and makes install | 10:35 | ||
10:36
mcmillhj left
|
|||
DrForr | I'll have to install locally to confirm. | 10:36 | |
nine | melezhik: add --verbose to your ~/.proverc | 10:37 | |
melezhik | DrForr: github.com/melezhik/outhentix | ||
head ~/.proverc | 10:38 | ||
--verbose | 10:39 | ||
DrForr | 'panda --force --verbose install .' appears to be failing correctly as '.' isn't a list of modules, but a directory. If you're used to that from Perl 5 tools, keep in mind this is perl 6 :) | ||
melezhik | but still have a none verbose output from "panda --force install ." | ||
10:39
salva left
|
|||
nine | DrForr: but "panda install ." can actually be used to install an unpacked dist from a directory | 10:40 | |
melezhik | DrForr: ok, let me say in other words. I have unit tests under t/ and I want to run them and see verbose output ... | ||
how can I do this? | |||
prove --exec perl6 -r t ? | 10:41 | ||
nine | melezhik: I usually run tests with prove -e 'perl6 -Ilib' -v t | ||
melezhik | yes, prove --exec perl6 -r t works | ||
tbrowder | melezhik: I'm having better luck with zef. | 10:42 | |
melezhik | I just expected that pand would respect --verbose | ||
ok. for now, "prove" is fine for me | |||
10:42
salva joined
10:49
mcmillhj joined
10:54
mcmillhj left
10:56
leont joined
|
|||
tbrowder | ugexe: do you know how to get info or verbose output from Build.pm? I'm using zef and only get info messages using --debug, nothing with --info (default) or --verbose. | 11:01 | |
dalek | osystem: cae96fc | (Sam Gillespie)++ | META.list: Adding Numeric::Pack to ecosystem. |
11:07 | |
osystem: 4f525ef | azawawi++ | META.list: Merge pull request #245 from samgwise/patch-2 Adding Numeric::Pack to ecosystem. |
|||
11:10
rindolf joined
|
|||
avar | shorter oneliner for this in perl6: perl -le"print substr(hex(substr(shift,0,2)),-1)" $(hostname -f | md5sum) ? | 11:10 | |
11:11
bjz joined
|
|||
avar | for "Pick N% of hosts depending on their hostname" | 11:11 | |
11:15
leont left
|
|||
avar | best I can think of: | 11:15 | |
perl6 -e 'exit :16(@*ARGS[0].substr(0,2)) % 10 == 0 ?? 0 !! 1' $(hostname|md5sum) | |||
11:18
xinming joined
|
|||
avar | substr not needed due to native bigint: | 11:20 | |
perl6 -e 'exit :16(@*ARGS[0]) % 10 == 0 ?? 0 !! 1' $(hostname|md5sum) | |||
11:22
xinming_ left
11:26
mcmillhj joined
11:28
MasterDuke joined
11:29
bioduds left
|
|||
MasterDuke | avar: perl6 -e 'exit :16(@*ARGS[0]) %% 10 ?? 0 !! 1' $(hostname|md5sum) | 11:29 | |
11:29
bioduds joined
|
|||
bioduds | im having trouble installing perl6 | 11:29 | |
DrForr | What kind of trouble? | 11:30 | |
bioduds | i have it installed but a very old version | ||
11:30
bjz left
|
|||
bioduds | ===SORRY!=== Error while compiling hello.pl Can't use unknown trait 'is required' in an attribute declaration. | 11:30 | |
11:30
mcmillhj left
|
|||
El_Che | that reads like Moo/Moose | 11:30 | |
bioduds | and i dont seem to be able to update it | 11:31 | |
no matter what I do | |||
I can't get it to work | |||
El_Che | bioduds: have you tried rakudobrew? | 11:33 | |
bioduds | yes | ||
tried a couple of times | |||
El_Che | how did you install the version you have? | ||
os package? | |||
bioduds | i installed by running sudo apt-get install rakudo | 11:34 | |
11:34
pierre_ joined
|
|||
bioduds | im on ubuntu 14.04 | 11:34 | |
moritz | try uninstalling it, and building from source instead | ||
bioduds | I did | ||
El_Che | sudo apt-get remove --purge rakudo | ||
bioduds | let me do it again | 11:35 | |
El_Che | then just follow the rakudo instructions, that should work | ||
DrForr | Right, so you got the versionfrom the repository, which isn't up-to-date. Have you tried removing the package that you installed, and building via rakudobrew? | ||
bioduds | i actually only removed it not purged | ||
El_Che | (as there is no rakudo on the system) | ||
(removed should be ok, purge is because I am a digitally clean type :) ) | |||
11:35
Actualeyes left
|
|||
bioduds | let me try | 11:35 | |
i would like to make a suggestion to the top cat p6 guys if i may and if they see this. The best installing way is Meteor | 11:36 | ||
curl install.meteor.com/ | sh | 11:37 | ||
perhaps this may be done with Perl6 | |||
DrForr | Well-volunteered, grab the file, change it to download rakudobrew and post a link in the channel? | 11:38 | |
11:38
mcmillhj joined
|
|||
bioduds | ok, so I did sudo apt-get remove --purge rakudo | 11:39 | |
moritz | you can also use the docker container: github.com/perl6/docker | ||
bioduds | now Im to follow which line? | ||
this here? perl6.org/downloads/ | |||
11:41
MilkmanDan left
|
|||
DrForr | bioduds: Are you Eduardo Capanema? If so, welcome! | 11:42 | |
bioduds | yep, I am. thanks DrForr | 11:43 | |
DrForr | (and even if you're not, still, welcome!) | ||
bioduds | I have one successful installation on my local machine | ||
ubuntu 16.04 | |||
11:43
bjz joined,
mcmillhj left
|
|||
bioduds | but on my AWS server ubuntu14.04 it is not working | 11:43 | |
i believe 16.04 repo apt is correct and 14.04 is not | 11:44 | ||
and once you put bad p6 version there is no way to upgrade it | |||
11:46
mr-fooba_ left
|
|||
DrForr | Well, the version from Ubuntu 16.04 is certainly going to be more recent. Like any other project, you can either wait for the next version to become available as a package, or go out and install it yourself. | 11:47 | |
El_Che | bioduds: read your post! | 11:48 | |
:) | |||
bioduds: damn straight to the point :) | |||
DrForr | Installing from packages is more convenient, certainly, but means that you have to wait until someone else packages the latest version, or you can go out and get the latest yourself. | ||
El_Che | bioduds: I build often from source for my docker setup and it's pretty straightfwd (but it takes a long time to finish) | 11:49 | |
pkgs is something we indeed need to provide | |||
bioduds | im trying again | ||
11:50
Actualeyes joined
|
|||
El_Che | ls | 11:50 | |
oops | |||
bioduds | my point is if perl6 is aimed at beginners, installation must be made reaaaaaly easy | ||
i purged current p6 version | 11:51 | ||
now i downloaded rakudobrew | |||
moritz | then help making it easy | ||
bioduds | and im running the script | ||
DrForr | No argument there. But doing that takes time and effort, effort that people have channeled into making the software actually work. | ||
bioduds | I am helping, I am trying to point out the easiest way I know | 11:52 | |
which is Meteor shell script after curl | |||
DrForr | Right. Feel free to rewrite it to use rakudobrew and submit it here. | ||
perlbrew has almost exactly the same setup, you might want to look at that first. | 11:53 | ||
moritz | bioduds: thing is, throwing "hey everybody, please do what I want" rarely works for open source projects, even if you offer a valid perspective | ||
bioduds | moritz, i am not throwing do what i want | 11:54 | |
not at all | |||
I am suggesting | |||
very different | |||
moritz | bioduds: the difference is just in wording, not in action | ||
bioduds | Im not demanding a thing moritz | ||
it is merely a suggestion | 11:55 | ||
11:55
smls_ joined
|
|||
El_Che | ok, let's get past this. bioduds, is rakudobrew running? | 11:55 | |
moritz | bioduds: and it's received. And I'm merely suggesting that you actually implement your suggestion, because that has the best chances of success | ||
bioduds | no not running | ||
11:55
smls left
|
|||
bioduds | Command failed (status 512): make Failed running /usr/bin/perl Configure.pl --backends=moar --gen-moar --git-reference="/home/ubuntu/.rakudobrew/bin/../git_reference" --make-install at /home/ubuntu/.rakudobrew/bin/rakudobrew line 58. main::run('/usr/bin/perl Configure.pl --backends=moar --gen-moar --git-r...') called at /home/ubuntu/.rakudobrew/bin/rakudobrew line 386 main::build_impl('moar', undef, '') called at /home/ubuntu/.raku | 11:55 | |
DrForr | And your suggestion is noted. Feel free to modify install.perlbrew.pl's script and submit it. | ||
bioduds: That's cut off. Please post your full install log as a github gist or something like that, where we can see it. | 11:56 | ||
El_Che | bioduds: | ||
How to get Rakudo Perl 6 | |||
The recommended way to use Rakudo is by downloading Rakudo Star – a useful and usable production distribution of Perl 6. Rakudo Star includes both the Rakudo compiler and some commonly used libraries. | |||
OS_Windows_8 .msi Rakudo Star | |||
2016.07 | |||
11:56
El_Che left,
pierre_ left,
El_Che joined
|
|||
bioduds | how do i do that? | 11:57 | |
tbrowder | jnthn: where is specification for the META6 file? | ||
El_Che | sorry for the flooding. Damns copy paste. I hope my leaving the channel stopped the flooding | ||
bioduds | post as a github gist? | ||
El_Che | bioduds: sudo apt-get instal build-essential git | ||
jnthn | tbrowder: No idea, sorry; I don't really work on that side of things. :) | 11:58 | |
El_Che | bioduds: maybe you're missing a depency for building rakudo | ||
jnthn | tbrowder: S11 or S22 at a guess though | ||
DrForr | Whatever pastebin you prefer. The point is that we could only see part of the log. pastebin.ca, snit.ch, any pastebin will do. | ||
bioduds | well, happened twice | ||
once in a digital ocean ubuntu 1404 | |||
and now on AWS ubuntu 14.04 | |||
DrForr | bioduds: Yes, and if you don't install the dependency it'll keep breaking. | ||
tbrowder | thanks, but how did you develop yr meta6 test? | 11:59 | |
bioduds | sorry? | ||
not following you tbrowder | |||
DrForr | tbrowder: He's talking to someone else. | ||
bioduds | oh, sorry | 12:00 | |
tbrowder | sorry, question was for jnthn | ||
12:00
smls_ is now known as smls
|
|||
bioduds | any ideas how should i proceed? | 12:00 | |
jnthn | tbrowder: Um...I don't think I did, are you confusing me with then other Jonathan? :) | ||
(Who goes as RabidGravy here :)) | 12:01 | ||
DrForr | bioduds: Yes, put your full install log somewhere that we can see it. | ||
tbrowder | probably, sorry! | ||
jnthn | :) | ||
DrForr | bioduds: Otherwise we're going to have to guess at what's going on, and that takes more time and patience than most of us have. | ||
jnthn | You wouldn't be the first one ;) | ||
bioduds | ok | ||
12:01
pierre_ joined
|
|||
bioduds | i installed build-essential git | 12:02 | |
can you tell exactly how to put log on? | |||
please | |||
im doing rakudobrew build moar | 12:03 | ||
El_Che | bioduds: paste.ubuntu.com/ <-- copy the code there, paste the url here | ||
by code I mean error | |||
DrForr | bioduds: Go to the site El_Che mentioned, paste the log there, share the link with us here. | ||
That way we can see what failed and can try to help. | |||
bioduds | doing it | 12:04 | |
12:05
eliasr joined
|
|||
bioduds | posted | 12:06 | |
paste.ubuntu.com/23107097/ | |||
tbrowder | ref META6 test: i did find the reference right where it should be expected: Jonathan Stowe has the reference to S22 toward the end of the README--i just hadn't read far enough: "RTFM, tbrowder!" | 12:08 | |
12:08
SpaceMario joined
|
|||
moritz | bioduds: looks like too little RAM. How much do you have available? | 12:08 | |
SpaceMario | m: gist.github.com/zoffixznet/dc09594...29756bb11c | ||
camelia | rakudo-moar f2df2c: OUTPUT«False» | ||
bioduds | not much | ||
DrForr | Stage parse : MVM_platform_alloc_pages failed: 12 # I'm guessing you're RAM-limited. | ||
bioduds | its a free tier in amazon | ||
SpaceMario | Are <ws> tokens not available for use in regular regexes? | ||
bioduds | and same error occurred in digital ocean minimal vps slice | 12:09 | |
moritz | bioduds: you need a bit more than 1GB | ||
maybe 1.5 | |||
bioduds | but my local machine is much better and worked | ||
SpaceMario | I'd say like 2 | ||
bioduds: get more swap. I successfully built on 1GB boxes with tons of swap | 12:10 | ||
moritz | m: say so 'a b' ~~ /a <ws> b/ | ||
camelia | rakudo-moar f2df2c: OUTPUT«True» | ||
moritz | SpaceMario: ^^ seems to work | ||
bioduds | im not sure i can manage swap in vps | ||
SpaceMario | moritz: Hm, I wonder why my gist fails. I seem to have all the right bits in place gist.github.com/zoffixznet/dc09594...29756bb11c | ||
moritz | bioduds: or build on your local machine, and copy over the resulting files (but you need the same paths) | ||
nine | DrForr: PLEASE stop recommending rakudobrew to normal users. There's probably only 5 people in rakudobrew's actual target audience and I don't think any one of us is actually using it. | 12:11 | |
DrForr | Okay, done, over with. | 12:12 | |
smls | nine: Explain? | ||
I'm using rakudobrew and have recommended it to some people. | |||
SpaceMario | m: gist.github.com/zoffixznet/1e0f8db...1072d98f6a | ||
camelia | rakudo-moar f2df2c: OUTPUT«True» | ||
DrForr | Then you get the privilege of being chided as well :) | 12:13 | |
SpaceMario | (was doing .lc on input, but regex still had uppercase letters) | ||
bioduds | so, just for me to know, I need at least 2 Gb Ram to safely install perl6? | ||
nine | smls: rakudobrew is for when people need to manage _multiple_ different rakudo installations on the same machine. It's not a good way to safe a user from typing in 3 commands on the shell. It causes much more problems than it solves. | ||
DrForr | Or 1GB and sufficient swap, as somene else says. | 12:14 | |
SpaceMario | bioduds: to build it, yeah, somewhere around that. And not RAM but memory, so swap will do in a pinch. | ||
bioduds | ok | ||
nine | smls: there have been lots and lots of reports of issues with module installation reported here and I actually stop reading once I see rakudobrew mentioned. | ||
bioduds | got it | ||
DrForr | Note to self: remove from slides :) | 12:15 | |
smls | nine: Interesting. Why would modules care where $PATH and stuff is set to? | ||
12:15
buggable left
|
|||
SpaceMario uses rakudobrew | 12:16 | ||
nine | smls: the problems usually come from having a mix of outdated and current rakudoversions installed and are undebuggable as rakudobrew users usually don't even know where the stuff gets installed to | ||
12:16
buggable joined
|
|||
SpaceMario | I just nuke everything when I upgrade :P | 12:16 | |
12:16
MilkmanDan joined
|
|||
smls | OK, so what is the best alternative for normal users? (Assuming their distro doesn't have a Rakudo package, or only an ancient one.) | 12:16 | |
nine | SpaceMario: exactly! That's completely unnecessary. Perl 6 is designed so you never have to re-install modules when upgrading Perl 6. | ||
SpaceMario | :) | 12:17 | |
12:17
SpaceMario left
|
|||
nine | git clone [email@hidden.address] && cd rakudo && perl Configure.pl --gen-moar --make-install | 12:18 | |
smls | ok | ||
nine | That ^^^ is all you need to do to install rakudo. Put that in a script, put that onto perl6.org and point people at curl rakudo.org/install-script | curl | ||
| bash of course | 12:19 | ||
12:19
Juerd joined
|
|||
nine | Upgrading that is just git pull && bash config.status && make install | 12:19 | |
bioduds | yep, or better yet install.rakudo.org | 12:20 | |
DrForr | bioduds: ^^^ There you go, first contribution! | ||
bioduds | im happy with that :) | ||
I learned to program in Perl! | |||
In 2006 | |||
you dont see many 'I began in Perl' guys out there and let me tell you one thing. It made me look at programming languages veeeery differently as I went out learning c, c++, java and stuff | 12:22 | ||
and this is the reason Im very excited with Perl6 | |||
MasterDuke | i have a perl6 directory in my home, i clone moar, nqp, and rakudo into there and then point them all at the same --prefix | ||
it works well for testing changes to those three individual components | 12:23 | ||
but having to clone a ton of modules and run everything with a giant -I list is kind of annoying | |||
12:23
buggable left
|
|||
MasterDuke | but when i first used panda several months ago it didn't work very well (and i apologize, but i don't remember why) | 12:24 | |
12:24
buggable joined
|
|||
nine | MasterDuke: if panda or zef give you trouble, please report that. Also until that is solved, you can install the cloned modules by: cd whatever-module ; perl6 ~/rakudo/tools/install-dist.pl . | 12:25 | |
MasterDuke | nine: ah ha! i had no idea about install-dist.pl | 12:26 | |
12:29
mcmillhj joined
|
|||
nine | It is fairly unknown. But I do have plans to rename it to raccoon and have it installed alongside perl6 | 12:33 | |
12:34
mcmillhj left
|
|||
RabidGravy | boo! | 12:34 | |
12:39
rindolf left
|
|||
Woodi | is there some way to clone module code and install it "manually", without panda or zef ? | 12:41 | |
nine | Woodi: what I just told MasterDuke? | ||
Woodi | nine: oops, -dist part hijacked my understanding of that :) thanx | 12:43 | |
RabidGravy | nine, +1 on actually installing it, have no feelings about the name | 12:46 | |
there should be a caveat with the above that if the module in question requires some build action (such as compiling so helper library,) it probably won't work | 12:47 | ||
El_Che | nine: I am kind of surprised. I get that rakudobrew does too much. But the only alternative according to the doc (rakudo.org/how-to-get-rakudo/#Insta...g-Rakudo). Isn't rakudo a better solution than directly compiling the src for a regular use (who will install systemwide and won't be able to clean it up afterwards)? | 12:49 | |
nine | RabidGravy: I actually hope we are gonna make some progress on the build front soon. I do want raccoon to be able to execute build steps. Primary use case being creating distro packages for Perl 6 modules. | 12:52 | |
RabidGravy | totally up for that :) | 12:53 | |
nine | El_Che: the steps listed as manual installation will _not_ install rakudo system wide. It will install into rakudo/install which can be removed easily. | 12:54 | |
El_Che: that's even easier than some hidden .rakudobrew directory. | |||
12:56
Averna joined
12:57
nadim joined
|
|||
nadim | hi, quick question, eqv is still not implemented for matches, right? | 13:01 | |
13:02
bjz_ joined,
bjz left
13:06
rmmm left
13:08
mcmillhj joined
13:14
cdg joined
13:17
rmmm joined
|
|||
Woodi | possibly it's problem with current *nix practicess of sharp distinction between system wide and ~user private only... | 13:20 | |
timotimo | Woodi: yeah, we should teach our platforms (like rakudo or v8 or python) to look into every user's home directories for libraries when they aren'n in the system's repository | 13:21 | |
"huh, today 'import sys' generated 95 terabyte of traffic over samba and nfs shares." | |||
i meant to say 'import syss' | 13:22 | ||
typos are hard when you're trying to make them intentonially | |||
Woodi | timotimo: :) i will write some story when system update will finish :) | 13:23 | |
[Coke] wonders how quickly irclog adds sends to its own search index. | 13:27 | ||
13:27
zakharyas joined
|
|||
[Coke] | stmuk_: you end with $COLON because you're also avoiding having a literal : in a file on disk, which isn't pleasant on some platforms (and we support people running the app out of a checkout) | 13:29 | |
[Coke] is sure there's a prettier way to solve this eventually, but this works. | |||
13:31
wamba joined,
MilkmanDan left,
ufobat left
|
|||
[Coke] | nine: I'm using rakudobrew for my local development. | 13:33 | |
if we're not supposed to be recommending it, why do we even have it? | |||
13:33
MilkmanDan joined
|
|||
[Coke] | .... and I caught up, seeing nine's objections later in backlog. | 13:33 | |
I don't think recommending "install from source" is a better option for most users. | 13:34 | ||
13:34
mr-foobar joined,
bjz_ left
|
|||
nine | [Coke]: the best option would probably we a small script that does pretty much those manual steps. | 13:34 | |
[Coke]: btw. even tadzik said that rakudobrew was actually more for developers :) | 13:35 | ||
mst | [Coke]: rakudobrew is for developers, just like using perlbrew isn't something you should ever suggest to newbies | ||
[Coke] | I respectfully disagree with him, building from source is for developers. :) | ||
mst | [Coke]: that's ... not the point | ||
13:35
domidumont left
|
|||
mst | the point is rakudobrew has lots of extra moving parts designed to accommodate multiple rakduo installs | 13:36 | |
[Coke] | in my mind, it would be (devs) -> source -> rakudobrew -> R * (non devs) | ||
mst | and also is rather inflexible and weird | ||
similar to perlbrew | |||
whereas if you just want *A* perl, then you use perl-build | |||
what we need basically is a rakudo-build equivalent | |||
[Coke] | As a user of perl 5, I use perlbrew all the time. YMMV. | ||
13:36
nebuchadnezzar left
|
|||
mst | if you're develop[ing against multiple perl5 installs it's useful | 13:36 | |
13:37
nebuchadnezzar joined,
pmurias joined
|
|||
mst | for newbies, it's a bunch of complicated fragile stuff they won't understand | 13:37 | |
[Coke] has never heard of perl-build, and a google search is not enlightening. |