|
»ö« 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:04
Pierre_ left
00:06
mcmillhj joined
00:10
Ven_ left,
mcmillhj left
|
|||
| timotimo | raydiak: i'd also go with two roles per term and then putting them all together | 00:13 | |
| i could imagine a package could be built that lets you put a few tokens/rules/regexes together with their corresponding action method into one block and when "does" ing that thing you declared it'll check if it's being does'd into a class or into a grammar and then only add the tokens/... or the action methods | 00:14 | ||
| an EXPORTHOW trick may make that possible; see OO::Monitors or what it's called for an example of EXPORTHOW usage | 00:15 | ||
| other than that: slangs slangs slangs ;) | |||
|
00:15
Ven_ joined
|
|||
| raydiak | oooh good thoughts, thanks timo! | 00:16 | |
| timotimo | that's what my sleep-deprived brain comes up with at these time-of-days ;) | 00:17 | |
| tomorrow i may have an actual serious look at maybe making a youtube tutorial series for getting up and running with perl6 | |||
| raydiak | better than the things my sleep-deprived brain was coming up with :) | ||
| that'd be cool (youtube tutorials) | 00:18 | ||
| timotimo | would you be willing to write up what kind of stuff you'd expect from such a tutorial? | ||
| my brain will surely also think a whole bunch about that while i'm desparately trying to catch some Zs | 00:19 | ||
| but a second opinion is always welcome | |||
|
00:19
mcmillhj joined
|
|||
| raydiak | the only other thing not yet mentioned I thought about was using FALLBACK methods but I assume that'd slow things down | 00:19 | |
| timotimo | doesn't slow things down terribly much. after it fallback'd once, the result will be installed in the method table i think | 00:20 | |
| raydiak | oh that's neat, didn't know | 00:21 | |
| I will think about tutorial content and let you know what comes to mind, but can't promise a lot, totally slammed with work these days | |||
|
00:24
mcmillhj left
00:25
Ven_ left
|
|||
| timotimo | cool | 00:26 | |
| i'll crash now | |||
| have a good one! | |||
| you can try how often the body of FALLBACK gets called when you invoke the same method name multiple times | 00:27 | ||
| raydiak | yep good idea. you too buddy, thanks for the input, rest well :) | 00:28 | |
|
00:30
[1]ringer1 joined
00:31
ringer1 left
00:34
mcmillhj joined
00:40
mcmillhj left
00:48
mcmillhj joined
00:50
TestNinja joined
00:53
mcmillhj left
01:04
Pierre_ joined
01:09
Pierre_ left
01:12
ringer1 joined
01:14
[1]ringer1 left
|
|||
| awwaiid | Hello #perl6!! | 01:16 | |
| BenGoldberg | Hi | 01:17 | |
| awwaiid | hoelzro and I are at StrangeLoop, doing some rakudo hackin' | ||
| doy maybe joining us | |||
|
01:22
gfldex left,
bjz joined
01:24
mcmillhj joined
|
|||
| hoelzro | o/ | 01:26 | |
| MasterDuke | does anybody here know how to compile a moarvm with debugging (to use with valgrind) using rakudobrew? | 01:28 | |
|
01:30
mcmillhj left
01:32
cpage_ left
01:33
committable6 joined,
committable6 left,
cpage_ joined
01:35
committable6 joined
01:36
mcmillhj joined
01:41
nadim left,
mcmillhj left,
committable6 left
01:42
committable6 joined
01:43
committable6 left
01:44
committable6 joined
01:45
labster left,
_slade_ left,
_slade_ joined
01:52
newbie1 left
01:54
mcmillhj joined
01:59
mcmillhj left
02:01
FROGGS left
02:14
FROGGS joined
02:17
Pierre_ joined,
committable6 left
|
|||
| ugexe | maybe --configure-opts="--debug" | 02:19 | |
|
02:19
heatsink joined
02:20
heatsink left,
noganex joined
02:21
Pierre_ left
|
|||
| MasterDuke | ugexe: thanks, i'll give that a try | 02:22 | |
|
02:23
committable6 joined
02:24
noganex_ left
02:37
MilkmanDan left,
MilkmanDan joined
02:48
skids left
03:06
committable6 left,
bisectable6 left,
benchable6 left
03:09
kaare__ joined
03:10
labster joined
03:14
ju_ joined
03:23
mcmillhj joined
03:26
BenGoldberg left
03:28
mcmillhj left
03:37
Actualeyes joined
03:39
mcmillhj joined
03:42
AlexDaniel left
03:44
mcmillhj left
03:50
mcmillhj joined
03:55
mcmillhj left
04:06
zoosha left
|
|||
| samcv | more netsplitting. yay | 04:06 | |
|
04:11
amalia_ left
04:13
amalia_ joined
04:22
mcmillhj joined
04:27
mcmillhj left
04:30
khw left
04:32
committable6 joined,
bisectable6 joined,
benchable6 joined
04:33
perlawhirl left
04:49
mcmillhj joined
04:54
mcmillhj left
04:56
Cabanossi left,
gfldex joined
04:58
Cabanossi joined
05:03
canopus_ joined,
mcmillhj joined
05:05
canopus left
05:08
mcmillhj left
05:15
mcmillhj joined
05:20
mcmillhj left
|
|||
| awwaiid | m: say "Perl6 is a cross between {<Ruby Erlang Lisp APL Haskell Perl5 JS Esperanto>.pick(2).join(" and ")}" | 05:46 | |
| camelia | rakudo-moar 8a70c9: OUTPUT«Perl6 is a cross between Esperanto and JS» | ||
| TimToady wonders what we borrowed from Esperanto... | 05:47 | ||
| moritz | the concepts of using verbs and nouns :-) | ||
| TimToady | um... | ||
|
05:49
mcmillhj joined
|
|||
| awwaiid | haha | 05:50 | |
| Constructed language? | |||
| Language that takes from others? | |||
| Humor but seriously? | |||
|
05:51
labster left
|
|||
| TimToady | well, but Ruby, Erlang, Haskell, Perl5 do that too | 05:51 | |
| we don't really borrow much from JS either | 05:52 | ||
| awwaiid | yeah, I almost left JS out. And added Esperanto as a joke. Though now that I'm re-reading en.wikipedia.org/wiki/Esperanto those three goals of the language author don't sound too bad | ||
|
05:54
mcmillhj left
05:57
Actualeyes left
|
|||
| awwaiid | What would your list for a semi-joking .pick(2) list be? | 05:58 | |
|
06:00
Pierre_ joined
|
|||
| TimToady | m: say "Perl6 is a cross between {<Ruby Erlang Lisp APL Haskell Perl5 Ada English Smalltalk awk BASIC Python C C++ C#>.pick(2).join(" and ")}" | 06:01 | |
| camelia | rakudo-moar 8a70c9: OUTPUT«Perl6 is a cross between C and Smalltalk» | ||
| awwaiid | I like :) | ||
|
06:02
mcmillhj joined
|
|||
| awwaiid | SNOBOL? | 06:02 | |
|
06:02
cyphase left
|
|||
| TimToady | a bit | 06:03 | |
| maybe Pascal | |||
| (one-pass parsing, after all) | |||
| awwaiid | I feel like some influences are more like libraries or patterns rather than languages, like Supplies and such | 06:04 | |
| not as much fun for a list though | |||
| At some point that's where genesis starts to kick in | |||
| TimToady | well, Supplies are pretty much observables from C#, even if jnthn put 'em in, not me | ||
| awwaiid | ahh | ||
| I don't know enough C# to have pattern-matched against it :) | 06:05 | ||
| gnight #perl6! | 06:06 | ||
| TimToady | o/ | ||
|
06:07
mcmillhj left
06:08
cyphase joined
06:09
darutoko joined
06:10
spider-mario joined,
ka left
06:22
wamba joined
06:28
CIAvash joined
06:35
mcmillhj joined
06:40
mcmillhj left
06:46
lizmat left
|
|||
| moritz | \o | 06:51 | |
|
07:01
woolfy left
07:06
nadim joined,
rgrinberg left
07:07
wamba left
07:10
cyphase left
07:17
cyphase joined
07:19
andrzejku joined
07:20
mcmillhj joined,
firstdayonthejob joined
07:21
Pierre_ left
07:22
pierre_ joined
07:25
mcmillhj left
07:35
mcmillhj joined
07:36
cyphase left
07:40
mcmillhj left
07:41
cyphase joined
07:47
BenGoldberg joined
07:49
RabidGravy joined
|
|||
| zengargoyle | seems i need to adjust my time schedule. backlog always has interesting conversations i'm sad to have missed. | 07:51 | |
| DrForr | Part of the fun of living 3 hours off UTC :) | 07:52 | |
| (at least in my case) | |||
| zengargoyle | would there be an easy way to dump out the Texas <=> Unicode mappings from withing P6 vs digging through source? i've been pondering crafting a .XCompose that uses Texas mappings directly. | 07:53 | |
| DrForr | You could do it through NQP code. | 07:54 | |
| zengargoyle | it might be nice to have a script or module that could dump XCompose (or other IME suitable format). | ||
| DrForr | I think those are :sym-prototyped methods on the grammar, you could introspect the grammar directly and get the method names, but what they correspond to in Texas would be the hard part. | 07:58 | |
|
08:01
cyphase left,
_slade_ left
08:03
firstdayonthejob left
|
|||
| DrForr | Perl6::Grammar has symbols like ÷ but there's just a marker for their precedence in the code. | 08:05 | |
| (rakudo/src/Perl6/Grammar.nqp) | |||
| zengargoyle | i was sorta expecting it to not be as simple as i would like. | ||
| DrForr | It's also worth contemplating custom Unicode operators :( | 08:06 | |
|
08:06
mcmillhj joined
|
|||
| zengargoyle | like it's probably easier to just keep a text file yourself. custom isn't in my interest, actually if you already know how to type them there's probably already a XCompose mapping of some sort. | 08:07 | |
|
08:07
cyphase joined
|
|||
| zengargoyle | and you'll know the ones you use yourself or already know. just Compose-(+) might be better for some than whatever already exists in XCompose or vim-digraphs etc. | 08:08 | |
|
08:08
Ven_ joined
|
|||
| DrForr | It'd be nice to have a core module that maintains the mappings; it could be created at compile-time, and it's easy to argue that custom Unicode operators won't necessarily have Texas equivalents, it's up to the operator's author. | 08:09 | |
| Of course this is hand-wavery on my part. | |||
| zengargoyle | mine too :) | 08:10 | |
| DrForr | (for context I'm currently enumerating delimiters for string variants for Perl6::Tidy, so I feel your pain acutely.) | 08:12 | |
|
08:12
mcmillhj left
|
|||
| DrForr | The grammar just lumps '' through Q :q ^^ into a single string, but looking at the dataset there might be a way to just subtract the range around <nibble>. | 08:13 | |
|
08:15
pierre_ left,
pierre_ joined
|
|||
| DrForr | (yes, Q:to is just an adverb on a Q-string. Not complaining, just figuring out how to nibble away at it. (hee)) | 08:17 | |
| zengargoyle | i'm just trying to ease back into P6, been too away/busy for the past 8 months or so | ||
|
08:18
Actualeyes joined
|
|||
| DrForr | Well, you can always release a module that just does the static mapping, and offer a patch to the build scripts later :) | 08:19 | |
| zengargoyle | yeah, was just thinking of 'mapping' => 'FULL UNICODE NAME THING' data file and going from there... | 08:21 | |
|
08:22
mcmillhj joined
08:24
TestNinja is now known as Zoffix
|
|||
| zengargoyle | i usually use a rfc1345 input method (and have a script to search for the right key combination) but it's missing some things and an IME switch is a PITA | 08:25 | |
|
08:25
Ven_ left
|
|||
| gfldex | zengargoyle: already solved :) gfldex.wordpress.com/2016/08/31/on...ingertips/ | 08:26 | |
|
08:26
mcmillhj left
|
|||
| zengargoyle | don't use screen and XCompose/ibus works in almost everything. | 08:28 | |
|
08:28
andrzejku left
08:29
jferrero left
|
|||
| zengargoyle | and digraphs are a bit limiting and get confusing (at least to me) esp when they differ from one program to another. | 08:29 | |
| gfldex | zengargoyle: the script got a fairly big hash that you may be able to transform into whatever input XCompose likes | ||
|
08:30
BenGoldberg left
|
|||
| DrForr | . o ( At your fingertips: Unicode ) | 08:30 | |
|
08:31
jonadab left,
jonadab joined
|
|||
| zengargoyle | gfldex: i get ya. XCompose already handles most of those (module looking them up to be sure) but Compose-<char>-" puts ümlats on anything.... | 08:33 | |
| and Compose-<-< « ... i guess i don't really see need for plugin-ish stuff (at least on X using xterms ...) | 08:35 | ||
| zengargoyle does go grrr at laptops and lack of extra keys that can be easily used for such things. | 08:36 | ||
| zengargoyle and fonts that don't have *every* unicode glyph. :) | 08:39 | ||
|
08:40
cibs left
|
|||
| zengargoyle and missing my bitmapped fonts now that laptop is HiDPI and they're all too small. | 08:41 | ||
|
08:41
cibs joined
|
|||
| gfldex | zengargoyle: freemono works for me www.gnu.org/software/freefont/ | 08:42 | |
|
08:43
espadrine joined
08:47
cibs left
08:48
cibs joined
|
|||
| zengargoyle | gfldex: cool, i'll check it out. i started from scratch on this laptop (instead of usual clone old install and tweak) and think i need to tweak fontconfig a bit. | 08:51 | |
|
08:52
Actualeyes left
08:55
bjz left
08:56
wamba joined
|
|||
| zengargoyle | i think my eyes are so used to bog standard xterm fixed that all ttf fonts feel wrong. | 08:56 | |
|
08:57
nadim left
09:00
Ven_ joined
09:08
Ven_ left
09:09
Ven_ joined
|
|||
| pierre_ | Hi perl6 | 09:09 | |
| DrForr | Afternoon. | ||
| pierre_ | i'm playing with NativeCall, i am a bit stuck, searching for some wisedom | 09:10 | |
|
09:10
lizmat joined
|
|||
| pierre_ | i have a C struct that contains a callback, not sure who to translate that to perl6 with native call | 09:10 | |
| shadowpaste | "pierre_" at 217.168.150.38 pasted "Callback in Stuct and native call" (6 lines) at fpaste.scsys.co.uk/533953 | ||
| pierre_ | if someone has any idea for that | 09:11 | |
| DrForr | github.com/drforr/perl6-Inline-Scheme-Guile does something similar. | 09:12 | |
|
09:12
labster joined
|
|||
| pierre_ | i do not see any callback there, | 09:14 | |
| my problem here, is the struct is given to the library which will call the callback | |||
| yep, except if i am misreading something, i do not see callback there | 09:15 | ||
| DrForr | Sorry, I was thinking of something else. | 09:16 | |
| pierre_ | i'll check a few module using nativecall | ||
| i did not find any module doing that yet, but for sure there must be some | |||
| DrForr | Ah, github.com/drforr/perl6-readline may be closer. | 09:18 | |
| Look at the cb-echo example. | |||
| Line 15 is the callback itself, line 44 sets it up, line 1304 in the library is the prototype for the native function. | 09:22 | ||
|
09:22
Ven_ left
|
|||
| dalek | line-Perl5: 929a640 | niner++ | / (3 files): Wrap P5 hashes instead of copying for is raw arguments to callbacks This allows for writing back to the underlying Perl 5 hash and has the potential for performance improvements as we can save a lot of copying. |
09:22 | |
| pierre_ | i'll play with taht, | 09:23 | |
| here my biggest problem is that i need to declare a CStruct, whre one of the member is a callbac | |||
| DrForr | You probably need to treat it as a CPointer. | 09:24 | |
| pierre_ | i guess so | ||
|
09:31
bob777 left
09:37
Actualeyes joined
09:39
lizmat left
09:45
setty2 left
09:48
poohman joined
|
|||
| FROGGS | pierre_: after that you can cast it using a sub declaration: github.com/rakudo/rakudo/blob/nom/...pointers.t | 09:48 | |
| pierre_: err, using a signature | |||
| poohman | Hello all, another question in Grammars, what and how exactly do we return something using make in the action class? | 09:49 | |
| FROGGS | we attach the thing you made to $/.made | ||
|
09:50
Zoffix left
|
|||
| FROGGS | which in turn is available as $<foo>.made in an outer method bar (i.e. when you have a token bar { <foo> }) | 09:50 | |
| pierre_ | interesting, for now, i just have a tons of segfault | ||
| FROGGS | pierre_: segfaults often mean that you CStruct is not identical to the one provided by the library | 09:51 | |
| pierre_: different sizes, attributes, and so on | |||
| pierre_ | yep, i'm pretty sure it's segfault when it tries to "call the callback" | 09:52 | |
| FROGGS | is the signature correct? | ||
| poohman | what will be the difference between $<foo>.Str for example and $<foo>.made.Str?? | ||
| FROGGS | or does it segfault within the callback body? | 09:53 | |
| pierre_ | not sure yet, i need to investigate more | ||
| FROGGS | poohman: $<foo>.Str stringifies the match, and not what the action method made | ||
| poohman: and the match is just the text that that token matched | |||
| poohman | so the action method does not modify the original match of the token?? | 09:54 | |
| FROGGS | poohman: correct | ||
| poohman | great, thanks, ill give that a shot | ||
|
09:55
jferrero joined
09:56
RabidGravy left
|
|||
| poohman | Thanks again Froggs - that helped a lot - should have asked a lot earlier | 09:59 | |
|
10:00
labster left
|
|||
| FROGGS | :o) | 10:02 | |
|
10:05
domidumont joined
10:06
spebern joined
10:08
poohman left
10:09
domidumont left,
poohman joined
|
|||
| pierre_ | class msgpack_packer is repr('CStruct') { has Pointer[void] $.data; has Pointer $.callback; } | 10:10 | |
| poohman | token keyval | ||
| { $<key>=[<-[=]>+] '=' \h* $<val>=[\N+] \n } | |||
| pierre_ | i do not find any way to add a signature to that callback | ||
|
10:10
domidumont joined
|
|||
| poohman | sorry one more question | 10:10 | |
| nowhow can I return for $<key> from my action class | 10:11 | ||
|
10:11
domidumont left
|
|||
| poohman | if I say make in keyval action class will I not return $keyval.made? | 10:12 | |
| pierre_ | hum, i can pass callback as argument to a function, but i am really stuck at passing a callback to a function within a struct | 10:19 | |
| FROGGS | poohman: you have to make key and val their own tokens | 10:20 | |
| poohman: then you can define action methods | 10:21 | ||
| pierre_: at some point you should have an instance of msgpack_packer, right? then you can cast $obj.callback as shown above | 10:22 | ||
| pierre_ | yes, i have an instance | ||
| FROGGS | how is it called? | ||
| pierre_ | but how can i cast one attribute | ||
| my $packer = msgpack_packer.new( ) | 10:23 | ||
|
10:23
fritz_ left
|
|||
| poohman | thanks | 10:23 | |
| FROGGS | nativecast(:(--> int32), $packer.callback); | ||
| pierre_: though, you need to add the right signature there | |||
| pierre_ | let me try then , but where would i write the code of it | ||
| because that will be called from the c lib | |||
| FROGGS | ohh | 10:24 | |
| hmmm | 10:25 | ||
| I'm not sure that this is supported currently | |||
| you can pass callbacks to C as shown here: github.com/rakudo/rakudo/blob/nom/...allbacks.t | 10:26 | ||
| but I dunno if/how you can/could have callbacks as CStruct members that will be called by C | |||
| pierre_ | exaclty, i am able to give a call back directly | 10:27 | |
| but the library i want to use, | |||
| FROGGS | m: use NativeCall; class Foo is repr<CStruct> { has &.cb; } | ||
| camelia | rakudo-moar fd5ef8: OUTPUT«5===SORRY!5=== Error while compiling <tmp>CStruct representation only handles int, num, CArray, CPointer, CStruct, CPPStruct and CUnionat <tmp>:1» | ||
| pierre_ | i stumble accross taht several time :) | ||
| FROGGS | pierre_: can you show me the library's headers/documentation? | 10:28 | |
| pierre_ | yes | ||
| github.com/msgpack/msgpack-c | 10:29 | ||
| and more accuraltely | |||
| to call that : github.com/msgpack/msgpack-c/blob/...ack.h#L101 | 10:30 | ||
| FROGGS | what about this? github.com/msgpack/msgpack-c/blob/...pack.h#L42 | ||
| pierre_ | the msgpack_packer type is defined there github.com/msgpack/msgpack-c/blob/...pack.h#L37 | ||
| it's static | 10:31 | ||
| i can't access it :( | |||
| FROGGS | damn | ||
| pierre_ | or i do not do how to do it, but it's not in the symbol table | ||
| i have a pure perl implementation of MessagePack, but it's slow , so before adding that to ecosystem | 10:32 | ||
| FROGGS | then you cant call it | ||
| pierre_ | i wanted to add a wrapper to the lib | ||
|
10:33
cpage_ left,
cpage_ joined
|
|||
| FROGGS | should be an option yes | 10:33 | |
| the proper way would be to implement callbacks as attributes ;o) | 10:34 | ||
| pierre_ | the perl5 version seems to be adding a c wrapper around the lib | ||
| and XS access the wrapper, | |||
| but i am really newbiw with nativecall, and i do not really see how to compile and make a package of somtehing like that | 10:35 | ||
| FROGGS | look at LibraryMake, it should be helpful here | 10:36 | |
| pierre_ | i will | ||
| zengargoyle | pierre_: github.com/zengargoyle/p6-Algorith...-libdatrie -- is a module that builds a simple library and a module that uses it. | 10:45 | |
| zengargoyle hopes it still works | |||
| pierre_ | ok, thank you | 10:46 | |
| zengargoyle | i'm pretty sure it worked back when 6.c was released. may not be current best practice... but builds a simple .so library that's built and stored and loaded along with the P6 code yadda yadda. | 10:52 | |
| zengargoyle has making sure my modules still work on the TODO list :/ | 10:54 | ||
|
10:55
pierre_ left
11:12
bob777 joined
11:13
doublec left
11:15
zakharyas joined
11:17
zakharyas left
11:28
lizmat joined
11:31
TEttinger left
11:34
bioduds joined
|
|||
| bioduds | hey guys | 11:34 | |
| yoleaux | 16 Sep 2016 15:42Z <perlawhirl> bioduds: a cleanup of your script turned into a rewrite. Feel free to steal any ideas from here: gist.github.com/0racle/3d157c4ff77...4dcdcee130 | ||
| bioduds | is there a way for me to have bioduds nick reserved to me? | ||
| another question, infinite loop in perl6 is better done with loop? | |||
| FROGGS | bioduds: read the freenode FAQ | 11:35 | |
| moritz | yes | ||
| loop { } | |||
| bioduds | tx :D | ||
|
11:41
pierre_ joined
11:47
edne joined,
edne left
11:53
poohman left
11:57
kaare__ left
12:25
yary joined
12:28
lizmat left
|
|||
| yary | perl6: my $*TOLERANCE = .1; say 11 =~= 10; | 12:32 | |
| camelia | rakudo-jvm cd19db, rakudo-moar fd5ef8: OUTPUT«True» | 12:33 | |
|
12:33
yary left
|
|||
| mst | bioduds: /msg nickserv help register | 12:33 | |
| timotimo | tolerance is multiplicative | ||
|
12:33
yary joined
12:34
yary left
|
|||
| timotimo | ... | 12:34 | |
|
12:34
yary joined
|
|||
| mst | timotimo: timotimo not implemented at line 1? | 12:34 | |
| timotimo | yary: tolerance is multiplicative | 12:35 | |
| mst duct tapes yary to the channel | |||
| yary | I am looking at an example from docs.perl6.org/language/operators | ||
| in my rakudo it gives "false" whereas the docs say "true" and was wondering if the bug was fixed | 12:36 | ||
| timotimo | what's your rakudo version? | ||
| yary | 2016.07.1 built on MoarVM version 2016.07 | 12:37 | |
| timotimo | committable6: releases my $*TOLERANCE = .1; say 11 =~= 10; | ||
| committable6 | timotimo, gist.github.com/3936aae4b8026f05ca...5d91837130 | ||
| mst | yary: that's what I'm running, and I get True | ||
| yary: perhaps you could show us exactly how you're testing this? | 12:38 | ||
| yary | right and camelia gave the correct answer also. I just need an update. | ||
| timotimo | yeah, it gives True on any release after 2015.11 | ||
| mst | yary: um, no, my 2016.07.1 gives the correct answer | ||
| yary | Ah... do it in the REPL | ||
| timotimo | haha, the repl | ||
| yary | on two separate lines! | ||
| mst | oh, well, yes | ||
| timotimo | yeah, i'd like to tell everybody to never use the repl if you expect something to work | ||
| mst | the scoping for that sort of thing is odd | ||
| yary | sadness | 12:39 | |
| timotimo | when it involves variables or something ... | ||
|
12:39
buggable left
|
|||
| MasterDuke | i think there's some pre-existing ticket about dynamic variables in the repl | 12:39 | |
| mst | yary: works in the repl in one line btw | ||
| which is usually what I do to double check for weirdness | |||
| yary | ok... I can treat it like perl5's "-de 1" mode, which I use often, there lexical variables only live on one line. | 12:40 | |
|
12:40
Zoffix joined
12:41
nadim joined
|
|||
| mst | wow, I'd forgotten there were still people who used -de 1 | 12:41 | |
| Zoffix | yary, lexicals work fine. You're trying to use a dynamic var | ||
| mst | see tinyrepl from Eval::WithLexicals | ||
| or doy's Reply | |||
| for sensible perl5 options | |||
| (no, don't use Devel::REPL, Reply is better, doy learned from my mistakes writing the former ;) | |||
| Zoffix | yary, I mean in our repl :} | ||
| yary | Zoffix, I just came off a thread on perl6-language showing a subtle misbehavior with lexicals in the REP:L | ||
| timotimo | what it -de 1? | ||
| Zoffix will never understand why people like the REPL so much | 12:42 | ||
| yary | "perl -de 1" is "perl -de 0" for optimists | ||
| mst | timotimo: drops you into the debugger over no script | ||
| timotimo | oh, interesting | ||
|
12:42
Zoffix left
|
|||
| timotimo | so like 'perl6-debug' | 12:42 | |
| MasterDuke | RT #78068 | ||
| synopsebot6 | Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=78068 | ||
| mst | I've no idea | 12:43 | |
| I don't use debuggers | |||
|
12:43
buggable joined
|
|||
| timotimo | perl6-debug is pretty cool. you can use it to single-step through regex matches and it'll show you what's matching what and such | 12:43 | |
| mst | I like things that provide that sort of information as a log | 12:44 | |
| timotimo | right | ||
| we want that kind of thing in the future, too | |||
|
12:45
NeuralAnomaly joined
|
|||
| timotimo | but we do have Grammar::Tracer | 12:45 | |
|
12:45
NeuralAnomaly left,
NeuralAnomaly joined
|
|||
| yary | Zoffix, about the perl6-REPL bug- try this in 3 lines: "my Hash $h = {a=>1,b=>2};subset mh of Str where $h{$_}:exists;my mh $x = 'b'" | 12:45 | |
| mst | I've generally found that if one grabs the tty of a debugger and sends it the 'single step' command in an infinite loop, one gets a log of some sort | 12:46 | |
| timotimo | hehe. | ||
| maybe our debugger wants first-class support for that kind of feature | |||
| mst | it's much like the raison d'etre of /usr/bin/yes, but with more duct tape | ||
| well, yes, this is one of those things that's an elegant workaround for everything being made of urine and the cat being nowhere to be found | 12:47 | ||
| timotimo | :) | 12:49 | |
| we're the cat | |||
|
12:55
rudi_s left
12:56
rudi_s joined
|
|||
| tony-o | i am the walrus | 12:59 | |
| mst | coo coo cashew | ||
|
12:59
Zoffix joined
|
|||
| Zoffix | yary, seems to be an issue with thunking; if I write it as 「where { $h{$_}:exists }」 it works fine | 13:00 | |
| BTW there's a doc bug in the three-line examle. Both +tol and -tol give true: docs.perl6.org/language/operators#infix_=~= | 13:01 | ||
| And I'm pretty sure =~= doesn't use absolute tolerance | |||
| s: &infix:<=~=> | |||
| SourceBaby | Zoffix, Sauce is at github.com/rakudo/rakudo/blob/fd5e...ic.pm#L264 | ||
|
13:01
poohman joined
|
|||
| Zoffix | Right. It's relative unless one of the values is zero | 13:02 | |
| Zoffix leaves back to put finishing touches on the release bot | |||
|
13:02
Zoffix left
13:10
poohman left
13:15
yary left,
yary joined
13:18
AlexDaniel joined
|
|||
| dalek | c: 4cc43ee | (Jan-Olof Hendig)++ | doc/Language/operators.pod6: An incorrect result was being shown in one of the examples for =~= |
13:24 | |
|
13:32
bjz joined
13:34
rgrinberg joined
13:38
bjz_ joined,
bjz_ left
13:40
bjz_ joined
13:41
bjz left
13:44
domidumont joined
13:50
skids joined,
yary left
13:52
perlawhirl joined
13:56
rindolf joined
13:57
sjoshi joined
13:59
bjz_ left
14:00
bjz joined
14:01
ringer1 left
14:02
ringer1 joined
14:04
Ven_ joined
|
|||
| bioduds | guys, I believe this here is outdated perl6maven.com/tutorial/ | 14:06 | |
|
14:08
CIAvash left
14:10
kaare__ joined
|
|||
| gfldex | bioduds: Published on 2012-06-27 (on the about page) | 14:10 | |
| mst | and it's perlmaven so 50/50 it was ever accurate anyway | 14:11 | |
|
14:12
sjoshi left
14:13
Ven_ left
14:14
bjz left
14:16
Ven_ joined
14:17
bjz joined
14:20
nadim left
14:24
bjz left
14:25
bjz joined
14:27
bjz left
14:28
Ven_ left,
Ven__ joined
14:29
bjz joined,
sjoshi joined,
bjz left
14:30
bjz joined
|
|||
| timotimo | it doesn't even seem to work; 500 bad gateway | 14:31 | |
|
14:31
bjz left
14:32
bjz joined,
bjz left
14:33
Ven__ left
|
|||
| timotimo | oh, some of it works | 14:33 | |
| heh. there's a comment that compares the performance of just a simple print between perl5 and perl6 | |||
| that comment is 3 years old and perl6 used to take 1.8s on that person's machine to run | |||
| 0.1s of that was just system time | |||
| nine | oh the times :) | 14:34 | |
|
14:35
pierre_ left
14:36
Ven_ joined
|
|||
| timotimo | o tempora o moares | 14:36 | |
|
14:37
bjz joined
14:40
Ven_ left
14:42
canopus_ is now known as canopus,
sjoshi left,
Ven_ joined
14:43
BenGoldberg joined
14:45
ka joined
14:48
CIAvash joined
|
|||
| moritz | o tempora o moarvm :-) | 14:50 | |
|
14:52
RabidGravy joined
15:01
laurus joined,
laurus left
15:10
setty1 joined
15:18
Ven_ left
15:19
Ven_ joined
15:24
Ven_ left
15:27
Ven_ joined
|
|||
| dalek | c: cda2ec1 | (Jan-Olof Hendig)++ | doc/Language/operators.pod6: Changed to example slightly to drive home the fact that the =~= operator is not arithmetically symmetrical (doesn't do ± Δ) |
15:30 | |
| dogbert17 should proofread commit messages more closely :( | 15:31 | ||
|
15:31
Ven_ left
15:33
Ven_ joined
15:36
tushar joined
|
|||
| tushar | What "so" keyword do? Is there any documentation available on it? | 15:36 | |
| timotimo | it's the opposite of "not" | 15:37 | |
| docs.perl6.org/routine/so | |||
| tushar | timotimo, Thanks. | 15:38 | |
|
15:39
Ven_ left
|
|||
| mst | tushar: you know how people often use !! in e.g. C to force boolean? perl6 has a name for it rather than an idiom | 15:39 | |
| tushar | mst, hmm.. go it. What will be test case for it? I meant where it will be useful? | 15:40 | |
| mst | er. anywhere you'd use !! in other languages. | 15:41 | |
| perlawhirl | tushar: prefix '?' forces boolean as well... 'so' is the same but with a looser precedence | ||
| m: say so 'baz' eq any < foo bar > | 15:42 | ||
| camelia | rakudo-moar 3583e2: OUTPUT«False» | ||
| perlawhirl | m: say 'baz' eq any < foo bar > # without so | ||
| camelia | rakudo-moar 3583e2: OUTPUT«any(False, False)» | ||
| tushar | mst, perlawhirl, thanks for your explanation. | ||
|
15:46
skids left
|
|||
| moritz | tushar: we even have an FAQ :-) docs.perl6.org/language/faq.html#What_is_so? | 15:48 | |
| tushar | moritz, thanks. I missed that. I apologize for that | 15:51 | |
|
15:52
setty1 left
|
|||
| moritz | tushar: no problem | 15:53 | |
|
15:56
Ven_ joined
15:59
poohman joined
16:04
spebern left
16:13
LeCamarade left,
Ven_ left
16:14
Ven_ joined
16:15
tushar left
16:24
Guest78798 left
16:27
Ven_ left
16:28
poohman left
16:30
Ven_ joined
|
|||
| AlexDaniel is going to write another bunch of stupid comments on old doc issues | 16:33 | ||
|
16:35
Ven_ left
|
|||
| stmuk | does anyone know of a linux browser font with the unicode mag glass for the doc.perl6.org search? | 16:36 | |
|
16:37
Guest78798 joined,
Ven_ joined
16:39
espadrine left
16:41
NeuralAnomaly left
16:42
Ven_ left
16:43
NeuralAnomaly joined
16:45
canopus left
|
|||
| AlexDaniel | stmuk: yes | 16:45 | |
| stmuk: unifont | |||
| stmuk: if you're using debian, then ttf-unifont package is probably what you want | |||
|
16:46
Ven_ joined
|
|||
| stmuk | I am and I'll try it thanks | 16:46 | |
| FROGGS | why not use this? fontawesome.io/icon/search/ | 16:48 | |
|
16:53
canopus joined
16:54
spebern joined
16:56
Ven_ left
16:58
Ven_ joined
17:00
woolfy joined,
firstdayonthejob joined
17:01
poohman joined
|
|||
| dalek | c: 12a4bf4 | (Armand Halbert)++ | doc/Language/glossary.pod6: Commented out :rotate adverb example, add back when it works. Fixes #895 |
17:03 | |
| c: cf7e7b3 | RabidGravy++ | doc/Language/glossary.pod6: Merge pull request #910 from ahalbert/895 Commented out :rotate adverb example, add back when it works. Fixes #895 |
|||
| c: 0aa3a51 | (Sterling Hanenkamp)++ | doc/Type/IO/Socket/Async.pod6: Correct info about closing an async socket |
17:04 | ||
| c: cb56748 | RabidGravy++ | doc/Type/IO/Socket/Async.pod6: Merge pull request #902 from zostay/io-async-close Correct info about closing an async socket |
|||
|
17:05
lizmat joined
17:12
Ven_ left,
Ven_ joined
17:13
NeuralAnomaly left,
NeuralAnomaly joined
17:14
travis-ci joined
|
|||
| travis-ci | Doc build failed. Jonathan Stowe 'Merge pull request #910 from ahalbert/895 | 17:14 | |
| travis-ci.org/perl6/doc/builds/160691474 github.com/perl6/doc/compare/cda2e...7e7b31c47b | |||
|
17:14
travis-ci left
17:16
perlawhirl left
17:17
Ven_ left
17:18
Ven_ joined
17:21
ju_ left
17:23
Ven_ left,
Ven_ joined
17:27
Ven__ joined
|
|||
| bioduds | hi guys | 17:27 | |
|
17:27
Ven_ left,
BenGoldberg left
|
|||
| bioduds | how's Perl6 AWS services integration doing? Do you guys know modules and stuff to help that get going? tx | 17:27 | |
| DrForr | Well, you can always check out the modules on modules.perl6.org. | 17:30 | |
| timotimo | i don't think we have anything in particular, but isn't it just a whole bunch of REST apis? | 17:32 | |
|
17:32
BenGoldberg joined
17:34
NeuralAnomaly left
|
|||
| bioduds | 2 modules on modules.per6.org they are a bit far from whats needed to integrate main services like dynamoDB, SQS and so on | 17:35 | |
| mst | bioduds: install Inline::Perl5, use p3rl.org/Paws | ||
|
17:36
Actualeyes left
|
|||
| bioduds | timotimo, not actually, many are somewhat particular integrations I believe | 17:36 | |
| timotimo | oh, OK | ||
|
17:37
BenGoldberg left,
BenGoldberg joined
|
|||
| bioduds | mst: tx. do you know if P5 does cover all of AWS integration? | 17:37 | |
| mst | bioduds: did you click the link and look? | 17:38 | |
| poohman | Hello all, can anybody tell me how I can access the members of the data class i created in my Grammar after the parsing is over | 17:52 | |
| DrForr | poohman: parse($text,:actions(Actions.new)).ast <-- The .ast is the important bit. | 17:53 | |
|
17:55
nadim joined
|
|||
| poohman | Hello DrForr, but doesnt .ast give me the whole Grammar tree, (tokens, regexs tree)? Or does it let us access the Data Class created in the Grammar?? | 17:57 | |
| DrForr | .parse(...) returns the Match object, .parse(...).ast returns the tree that you built with .made(). | 17:58 | |
| Er, .make. | 18:01 | ||
| poohman | oh ok let me check | 18:03 | |
|
18:16
NeuralAnomaly joined,
NeuralAnomaly left
|
|||
| timotimo | yes, you have to use .make in order to put the stuff in there | 18:17 | |
| you can just put an action method TOP hat does "make self" | 18:18 | ||
| then it'll keep the Action class instance around for you | |||
|
18:19
nadim left
|
|||
| mst | TOP HAT | 18:19 | |
| timotimo | TOP COMMENT | 18:20 | |
| DrForr | FIRST POST | ||
| MasterDuke | timotimo: in moarvm, how do you prevent threads from read/writing each other's data structures? | ||
| timotimo | how do you mean that? | 18:21 | |
| poohman | Is it necessary that the data object has to be in the TOP method? | ||
| timotimo | we have a few things that have locks installed on either the threadcontext, the instance, or maybe serialization contexts | ||
| poohman: whatever piece of the parse tree you want to access to get the object out of the whole | 18:22 | ||
| MasterDuke | "Address 0xffefffe20 is on thread 1's stack", i assume thread != 1 is trying to access that address? | ||
| timotimo | TOP is a convention | ||
| data on the stack shouldn't be accessed by other threads unless things have been coordinated up front | 18:23 | ||
| MasterDuke | "status = *(MVMint64*)data->process->data", that's the problem line | ||
|
18:23
NeuralAnomaly joined
18:24
rindolf left
|
|||
| MasterDuke | well, and i think the "MVM_free(data->process->data)" on the next line is what causes the segfault | 18:25 | |
| timotimo | what is that from? | ||
| some repr? | |||
| poohman | timotimo: If I create a data structure using new in one method - how can I append to the same object in another method- can I somehow assign the oject and access it in other token method? | ||
| timotimo | sorry, watching a movie at the same time | 18:26 | |
| poohman, what you pass as :actoins will be the self in all action methods called | |||
| so if you pass an instance of your action class, you'll be able to persist data through attributes of that, on the "self" | |||
| poohman | oh ok, thanks | 18:27 | |
| MasterDuke | src/io/syncpipe.c: static MVMint64 do_close(MVMThreadContext *tc, MVMIOSyncPipeData *data) | ||
| timotimo | and "make" is a little bit like a return (except it doesnt interrupt control flow), but the flow of data goes in the same direction as a return wuld do it | 18:28 | |
| MasterDuke: it's surprising to me that the pipe would be allocated on a thread's stack | |||
| oh, wait, syncpipc | |||
| this isn't meant to be used across threads :) | 18:29 | ||
|
18:29
rindolf joined
|
|||
| MasterDuke | ah ha, but i'm not! | 18:29 | |
| timotimo | movie requires my full attention now; subtitle reading | ||
| sorry | |||
|
18:29
NeuralAnomaly left
|
|||
| MasterDuke | i even tried adding "my $*SCHEDULER = ThreadPoolScheduler.new( max_threads => 1 )" | 18:30 | |
| no worries | |||
|
18:30
NeuralAnomaly joined,
NeuralAnomaly left,
NeuralAnomaly joined,
TakinOver joined
18:31
kaare__ left
18:34
tushar joined
18:35
Ven__ left
18:36
Ven_ joined
18:39
spebern left
18:41
tushar_ joined,
zakharyas joined,
tushar left
18:43
ringer1 left
18:46
Ven_ left
18:47
BenGoldberg left
|
|||
| timotimo | even if you have just one thread for scheduling things, there's a event-loopy thread that handles everything from file watchers to async sockets and processes | 18:47 | |
| mst | but sadly not yet unix sockets | 18:51 | |
| MasterDuke | "for ^100{ my $proc = run(:out, :bin, "ls"); run(:in($proc.out), :bin, "true");}" is what i'm running, so far it always segfaults before finishing | 18:52 | |
|
18:54
poohman left
|
|||
| dalek | c: bd02fa8 | gfldex++ | doc/Language/typesystem.pod6: fix typo |
18:54 | |
|
18:56
woolfy left,
woolfy joined,
firstdayonthejob left
|
|||
| gfldex | m: my $i is default(0 does role :: { method defined { False } }); dd $i.defined; | 18:57 | |
| camelia | rakudo-moar 454964: OUTPUT«Bool::False» | ||
|
18:57
Zoffix joined
18:58
poohman joined
18:59
newbie1 joined,
firstdayonthejob joined
|
|||
| gfldex | m: my $i is default(0 does role :: { method defined { False } }); dd $i.defined; $i = 0; dd $i.defined; | 18:59 | |
| camelia | rakudo-moar 454964: OUTPUT«Bool::FalseBool::False» | ||
| gfldex | m: my $i is default(0 does role :: { method defined { False } }); dd $i.defined; $i = 1; dd $i.defined; | ||
| camelia | rakudo-moar 454964: OUTPUT«Bool::FalseBool::True» | 19:00 | |
| gfldex | m: my $i is default(0 does role :: { method defined { False } }); dd $i.defined; $i = 1; $i = 0; dd $i.defined; | ||
| camelia | rakudo-moar 454964: OUTPUT«Bool::FalseBool::False» | ||
| gfldex | that feels wrong | ||
|
19:01
darutoko left
|
|||
| gfldex | m: my $i is default(0); dd $i.defined; | 19:03 | |
| camelia | rakudo-moar 454964: OUTPUT«Bool::True» | ||
| gfldex | m: my $i = (0 does role :: { method defined { False } }); dd $i.defined; $i = 1; dd $i.defined; | 19:04 | |
| camelia | rakudo-moar 454964: OUTPUT«Bool::FalseBool::True» | ||
| gfldex | m: my $i = (0 does role :: { method defined { False } }); dd $i.defined; $i = 0; dd $i.defined; | ||
| camelia | rakudo-moar 454964: OUTPUT«Bool::FalseBool::False» | ||
| gfldex | is there some shortcut that doens't change a value of a container when the new value matches the old one? | 19:05 | |
| Zoffix | Why does it seem wrong? | 19:06 | |
| m: my $i; dd $i.defined | |||
| camelia | rakudo-moar 454964: OUTPUT«Bool::False» | ||
| gfldex | because 0 is defined | 19:07 | |
| Zoffix | Ah | ||
| I think the issue here is the mixin mixes in the 0 | |||
| gfldex | m: my $i = (0); dd $i.defined; | ||
| camelia | rakudo-moar 454964: OUTPUT«Bool::True» | ||
| Zoffix | m: my $i is default(0 but role :: { method defined { False } }); dd $i.defined; $i = 1; $i = 0; dd $i.defined; | ||
| camelia | rakudo-moar 454964: OUTPUT«Bool::FalseBool::True» | ||
| gfldex | m: my $i = is default(0); dd $i.defined; | ||
| camelia | rakudo-moar 454964: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Undeclared routines: default used at line 1 is used at line 1» | ||
| gfldex | m: my $i is default(0); dd $i.defined; | ||
| camelia | rakudo-moar 454964: OUTPUT«Bool::True» | ||
| gfldex | i want the role mixed in because that way i can indicate that it's never initialised. When I output the value it's still displayed properly as 0. (That comes from a counting Hash) | 19:09 | |
| m: my $i = (0 does role :: { method defined { False } }); dd $i; | |||
| camelia | rakudo-moar 454964: OUTPUT«Int+{<anon|57198640>} $i = 0» | ||
| Zoffix | gfldex, right, so use the `but` version above | ||
| Right now you're mixing it into 0 | |||
| so when you use 0 again, it still has that role mixed in | 19:10 | ||
| gfldex | and that is a constant value and thus cached | ||
| Zoffix | I think I use that to some benefit in perl6.party/post/Exploiting-Perl-6-...ency-Chain | ||
| *"benefit" | |||
| gfldex | m: my $i is default(0 but role :: { method defined { False } }); dd $i.defined; $i = 0; dd $i.defined; | ||
| camelia | rakudo-moar 454964: OUTPUT«Bool::FalseBool::True» | ||
| gfldex | that feels right :) | ||
| Zoffix | New blog post: "Perl6.Fail, Release Robots, and Other Goodies": perl6.party/post/Perl6-Fail-Release...er-Goodies | 19:11 | |
|
19:14
domidumont left
19:17
TakinOver left
19:19
PerlJam joined
|
|||
| raydiak | s: Grammar, 'parsefile' | 19:20 | |
| SourceBaby | raydiak, Sauce is at github.com/rakudo/rakudo/blob/4549...mar.pm#L14 | 19:21 | |
|
19:23
TakinOver joined
|
|||
| dalek | c: 9ba29d9 | (Thor Michael Støre)++ | doc/Language/objects.pod6: Fixed small typo "Roles can by anonymous" -> "Roles can be anonymous" |
19:25 | |
| c: 039fc06 | Altai-man++ | doc/Language/objects.pod6: Merge pull request #911 from thormick/thormick-small-typo-1 Fixed small typo |
|||
|
19:31
labster joined
19:35
Ven_ joined
19:48
wamba left
19:49
b2gills left
19:52
zakharyas left
|
|||
| dalek | c: 0a1c391 | raydiak++ | doc/Type/Grammar.pod6: Fix parsefile example: enc is a named parameter |
19:53 | |
|
19:54
poohman left
|
|||
| Zoffix | Github revamped the profile pages | 19:55 | |
|
19:55
Ven_ left
|
|||
| Zoffix | it's now "metro" heh | 19:55 | |
|
19:57
Ven_ joined
|
|||
| MasterDuke | i do like the graphs of commits by repo | 19:58 | |
| Zoffix | Aye. And you can toggle past years too. | 19:59 | |
| AlexDaniel | I haven't decided if I like it yet :) | 20:00 | |
|
20:04
b2gills joined
20:07
bob777 left,
bob777 joined
20:11
canopus_ joined
20:13
canopus left,
canopus_ is now known as canopus
20:14
Ven_ left
|
|||
| moritz | TIL that in 2008, I had more parrot than rakudo commits. | 20:15 | |
|
20:16
Ven_ joined
20:18
cdg joined
20:21
khw joined
20:22
cdg left,
cdg joined
20:28
Ven_ left
20:31
Ven_ joined
20:40
_slade_ joined
20:52
TakinOver left
20:57
Ven_ left
20:58
Ven_ joined,
NeuralAnomaly left
20:59
NeuralAnomaly joined,
TakinOver joined
21:00
ka left
|
|||
| tushar_ | Is there any way to compare length of each array resides in array of arrays with each other and return true on success and false on failure. I hope I am clear enough. | 21:01 | |
| m: my Array @a = [[1..3],[4..6]]; | |||
| camelia | ( no output ) | ||
| tushar_ | m: my Array @a = [[1..3],[4..6]].say; | ||
| camelia | rakudo-moar c4fd9f: OUTPUT«[[1 2 3] [4 5 6]]Type check failed in assignment to @a; expected Array but got Bool (Bool::True) in block <unit> at <tmp> line 1» | ||
| Zoffix | tushar_, what's "success"? If they all have same number of elements? | 21:02 | |
| tushar_ | Zoffix, yes | ||
| in this case it will check 3 == 3 as both the array has 3 elements | |||
| jnthn | m: my @a = [1,2,3], [4,5,6]; say [==] @a | ||
| camelia | rakudo-moar c4fd9f: OUTPUT«True» | ||
| Zoffix | m: my Array @a = [[1..3],[4..6]]; say @a».elems.Set.elems == 1 | 21:03 | |
| camelia | rakudo-moar c4fd9f: OUTPUT«True» | ||
| jnthn | m: my @a = [1,2,3], [4,5,6, 7]; say [==] @a | ||
| camelia | rakudo-moar c4fd9f: OUTPUT«False» | ||
|
21:03
Ven_ left
|
|||
| Zoffix | Oh | 21:03 | |
| jnthn++ | |||
| Zoffix isn't used to metas yet well enough to reach for them on demand :( | |||
| tushar_ | Zoffix, jnthn -- thanks guys. You are awesome.. I am in love with Perl 6.. | 21:04 | |
| jnthn | To be fair, using the reduction meta-op with a comparison is less common :) | ||
| Zoffix | \o/ | ||
| jnthn | Another cute one is `[<=] @a` (are these numbers in order) | 21:05 | |
|
21:05
Ven_ joined
|
|||
| moritz dimly recalls [but] constructions, and shudders | 21:05 | ||
| tushar_ | jnthn, I don't know when I will learn all this little tricks.. There are too many of them.. Definitely, in love with Perl 6.. | 21:06 | |
| moritz | following #perl6 helps to learn those neat tricks :-) | 21:09 | |
|
21:09
Ven_ left
21:10
Ven_ joined
21:21
ringer1 joined
21:22
djbkd left
|
|||
| tushar_ | moritz, indeed it is. | 21:23 | |
| mst | moritz: [but] ? | ||
| tushar_ | moritz, do perl6 has twitter feed as well that I can follow. | ||
| japhb | mst: Adding a list of mixins to a single object | 21:31 | |
| mst | oh, yeat | 21:32 | |
| *neat | |||
| so instead of Moo::Role->apply_roles_to_object($object, @roles); | |||
| you'd do | |||
| $object = [but] ($object, @roles); | |||
| ? | |||
|
21:32
_ramix_ joined
|
|||
| japhb | mst: Possibly with some slippage, but yeah. | 21:33 | |
| But then: | |||
| There's [but]= | |||
| mst | would that be $object [but]= @roles ? | ||
| japhb gently points towards camelia ;-) | 21:34 | ||
| Zoffix | m: role Foo {}; role Bar {}; role Ber {}; my @roles = Foo, Bar, Ber; my $o = class {}; $o [but]= @roles; dd $o | ||
| camelia | rakudo-moar c4fd9f: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Cannot make assignment out of but because structural infix operators are too diffyat <tmp>:1------> 3o, Bar, Ber; my $o = class {}; $o [but]=7⏏5 @roles; dd $o» | ||
| Zoffix | m: role Foo {}; role Bar {}; role Ber {}; my @roles = Foo, Bar, Ber; my $o = class {}; $o = [but] $o,|@roles; dd $o | 21:35 | |
| camelia | rakudo-moar c4fd9f: OUTPUT«5===SORRY!5=== Error while compiling <tmp>Cannot reduce with but because structural infix operators are diffy and not chainingat <tmp>:1------> 3 Foo, Bar, Ber; my $o = class {}; $o = [7⏏5but] $o,|@roles; dd $o expecting any of:…» | ||
| japhb | AWWW | ||
| I thought that one was supported! | |||
| Zoffix | m: role Foo {}; role Bar {}; role Ber {}; my @roles = Foo, Bar, Ber; my $o = class {}; $o = [[&infix:<but>]] $o,|@roles; dd $o | ||
| camelia | rakudo-moar c4fd9f: OUTPUT«<anon|83431568>+{Foo}+{Bar}+{Ber} $o = <anon|83431568>+{Foo}+{Bar}+{Ber}» | ||
| Zoffix | m: role Foo {}; role Bar {}; role Ber {}; my @roles = Foo, Bar, Ber; my $o = class {}; $o [[&infix:<but>]]= @roles; dd $o | 21:36 | |
| camelia | rakudo-moar c4fd9f: OUTPUT«Cannot resolve caller infix:<but>(...); none of these signatures match: (Mu:D \obj, Mu:U \rolish) (Mu:D \obj, Mu:U \rolish, :$value! is raw) (Mu:U \obj, Mu:U \rolish) (Mu \obj, Mu:D $val) (Mu:D \obj, **@roles) (Mu:U \obj…» | ||
| japhb | I wonder if that went away at some point because there was a large WAT | ||
| arnsholt | PRetty | ||
| -- | |||
| Gah | |||
| Pretty sure [but] used to work | |||
| _ramix_ | Hi!, I have a new perl6 module that I would get on the perl6 ecosystem, but I need permission to doing the PR to META.list. The repository module is github.com/ramiroencinas/perl6-Fil...m-Capacity | ||
| Zoffix | bisectable6, m: role Foo {}; role Bar {}; role Ber {}; my @roles = Foo, Bar, Ber; my $o = class {}; $o [but]= @roles; dd $o | ||
| bisectable6 | Zoffix, On both starting points (good=2015.12 bad=b771f1e) the exit code is 1 and the output is identical as well | ||
| Zoffix, Output on both points: ===SORRY!=== Error while compiling /tmp/XM8K2A2KQQCannot make assignment out of but because structural infix operators are too diffyat /tmp/XM8K2A2KQQ:1------> o, Bar, Ber; my $o = class {}; $o [but]=<HERE> @roles; dd $o | |||
| japhb | Changed pre-Christmas then. | 21:37 | |
| Zoffix | _ramix_, what do you mean "permission"? Just click the pencil icon in top/right: github.com/perl6/ecosystem/blob/ma.../META.list | ||
| committable6, 2015.07 m: role Foo {}; role Bar {}; role Ber {}; my @roles = Foo, Bar, Ber; my $o = class {}; $o [but]= @roles; dd $o | |||
| committable6 | Zoffix, ¦«2015.07»: ===SORRY!=== Error while compiling /tmp/913keEriMzCannot make assignment out of but because structural infix operators are too diffyat /tmp/913keEriMz:1------> o, Bar, Ber; my $o = class {}; $o [but]=⏏ @roles; dd $o «exit code = 1» | ||
| Zoffix | Yeah, seems a long time a go | ||
| _ramix_, are you sure this stuff works? I think module installers would choke on that github.com/ramiroencinas/perl6-Fil...A.info#L11 | 21:39 | ||
| _ramix_, also, while META.info still works, the new name of the meta file is META6.json | 21:40 | ||
| _ramix_ | thanks Zoffix, already did! | 21:41 | |
| Zoffix | I don't see your PR | 21:42 | |
|
21:42
TEttinger joined
|
|||
| dalek | osystem: b7b0c9f | (Ramiro Encinas)++ | META.list: Add perl6-FileSystem-Capacity See github.com/ramiroencinas/perl6-Fil...m-Capacity |
21:43 | |
| osystem: 14654d6 | (Zoffix Znet)++ | META.list: Merge pull request #250 from ramiroencinas/patch-1 Add perl6-FileSystem-Capacity |
|||
| _ramix_ | Zoofix, yes now | ||
| MasterDuke | Zoffix: wasn't there some talk a couple days about about the need for a way to specify external (non-Perl 6) dependencies in META6.json? | ||
| and if so, was there any conclusion? | 21:44 | ||
| Zoffix | I wasn't following it | ||
| timotimo | soooo | 21:45 | |
| what did i miss? | |||
| _ramix_ | respect the L11, is a valid json. May have problems? | ||
| Zoffix | _ramix_, it's valid JSON, but that property is for a list of strings with module names, while you have a list of arrays. | 21:46 | |
| _ramix_, so my question is: why do you think arrays would work? | |||
| _ramix_ | ah, ok! | ||
|
21:47
rindolf left
|
|||
| _ramix_ | Zoofix, I will correct | 21:47 | |
| Zoffix | Yup, fails: panda: "resolve stage failed for FileSystem::Capacity::VolumesInfo: Dependency df command from GNU coreutils is not present in the module ecosystem"; zef: "*resolve stage failed for FileSystem::Capacity::VolumesInfo: Dependency df command from GNU coreutils is not present in the module ecosystem)" | 21:48 | |
.oO( Zoofix... ) |
21:49 | ||
| jnthn | .oO( Does your zebra keep escaping? Runaway racoon? Attach them firmly to their enclosures with Zoofix(TM) ) |
21:51 | |
| timotimo | :D :D :D | ||
|
21:53
CIAvash left
|
|||
| mst | Does your panda keep escaping? Runaway raccoon.pl? Attach them firmly to their enclosures with Zeffix(tm) | 21:54 | |
| _ramix_ | Zoofix, fixed depends in raw.githubusercontent.com/ramiroen.../META.info | 21:58 | |
|
21:58
Ven_ left
|
|||
| Zoffix | cool | 21:59 | |
|
22:00
tushar_ left
|
|||
| _ramix_ | Zoofix, thanks for your help! | 22:03 | |
| Zoffix | _ramix_, FWIW, say "Used: " ~ $data<used> ~ " bytes"; can be written as just say "Used: $data<used> bytes"; | 22:04 | |
| timotimo | jnthn: how do you feel about protecting the "setup" method of the role for NativeCalls with a lock to prevent explosions when multiple threads set up the same routine at the same time? | 22:05 | |
| MasterDuke | _ramix_: also, ".split(/\s+/)" can be written as ".words" | 22:06 | |
|
22:07
Ven_ joined
|
|||
| Zoffix | And when $_ ~~ /linux/ { return linux; } as just when /linux/ { return linux; } | 22:09 | |
| And when $_ ~~ /linux/ { return linux; } as just when /linux/ { linux; } | |||
| :) | |||
|
22:09
Zoffix left
|
|||
| timotimo | only if that is the last thing in the block, though | 22:10 | |
| _ramix_ | thanks for the suggestions, I will do it. ;-) | ||
|
22:12
Ven_ left
22:16
Ven_ joined
22:19
zakharyas joined
22:22
_ramix_ left
|
|||
| jnthn | timotimo: Sounds fine, though do it by checking, then acquiring the look if not set up, and re-checking, so we don't have to do a lock acquisition on every incovatrion. | 22:22 | |
| uh, *invocation | |||
| timotimo | right | 22:25 | |
| i have a patch locally that does that | |||
| we call into the setup method only if not $!setup anyway | |||
| so i just put the whole body into a lock.protect | |||
| though i didn't put in a re-check, since i used a lock for everything | |||
|
22:26
spider-mario left
|
|||
| jnthn | Yeah but | 22:27 | |
| If something else does the setup, and then lets go of the lock, then you get the lock...shoudln't do the setup all over again. | 22:28 | ||
| timotimo | that's what i mean :) | ||
| jnthn | Right, but then you need the re-check? :) | 22:29 | |
| timotimo | i just have to return if $!setup at the very beginning | ||
| of the protected block | |||
| oh, also: could we make --debug=3 the default for moarvm's configure? | 22:32 | ||
| i don't want to constantly teach people how to navigate rakudobrew so they can get debug symbols | |||
|
22:34
inra joined
22:35
firstdayonthejob left
|
|||
| jnthn | timotimo: Can we not just document how they should get a --debug=3 build? :) | 22:35 | |
| Or patch rakudobrew to have a way to ask for that? | 22:36 | ||
| timotimo | there is a way. i think --moar-options=--debug=3 or something | ||
| jnthn | So, note it somewhere(s) prominent? | 22:38 | |
| timotimo | mhm | ||
|
22:51
kssgill joined
22:57
perlawhirl joined
22:58
pierre_ joined
23:00
pierre_ left
23:04
asdfgh joined
|
|||
| asdfgh | how do I remove the first element of an array | 23:04 | |
| .shift returns it as well | |||
| I want for it to return all of the other elements that weren't removed | 23:05 | ||
| timotimo | yeah | ||
| then just { do @foo.shift; @foo } | |||
| er, do in front of the { | |||
| gfldex | m: my @a = <a b c>; say @a[1..*] | ||
| camelia | rakudo-moar 8fb9ec: OUTPUT«(b c)» | ||
| timotimo | that doesn't remove the first element, though | 23:06 | |
| gfldex | m: my @a = <a b c>; @a = @a[1..*]; dd @a; | ||
| camelia | rakudo-moar 8fb9ec: OUTPUT«Array @a = ["b", "c"]» | ||
| timotimo | yeah, you can do i tlike that | 23:07 | |
| gfldex++ | |||
| asdfgh | alright, thanks guys | ||
| I'm sorry for asking such simple questions sometimes, it's just I've never used a language with this much stuff before | |||
| gfldex | autothreading will reveal plenty of footguns | ||
|
23:08
dataangel left
|
|||
| timotimo | you mean junctions? | 23:08 | |
| gfldex | i was thinking of @objs».somemethod() that does a shift on the same @a | 23:09 | |
| but a .one junction is equally footgunny | 23:10 | ||
|
23:12
cdg left
|
|||
| timotimo | if you concurrently shift from an array, you're ni for data loss | 23:12 | |
| but in the future, no crashes should come from that | |||
| asdfgh | if I have an array of 3 values, and I want to append that array to another array so I can do something like array2[0][1], it says that 1 is out of bounds 0..0 | 23:13 | |
| I'm using @array2.append(@array1) | |||
|
23:13
Ven_ left
|
|||
| asdfgh | ohhh, the append appends each element in array 1 | 23:14 | |
|
23:14
zakharyas left
|
|||
| asdfgh | do I use push? | 23:14 | |
| gfldex | asdfgh: you can use push but you likely want to have a gather/take to create the array (that will be a Seq) | 23:16 | |
| timotimo | push is for appending a single thing, append is for appedning multiple things | 23:17 | |
| gfldex | m: my $s = <a b c>.Seq; $s.shift; | 23:18 | |
| camelia | rakudo-moar 8fb9ec: OUTPUT«Method 'shift' not found for invocant of class 'Seq' in block <unit> at <tmp> line 1» | ||
| timotimo | if you don't want it to take the individual elements out of your array, you'll have to use push | ||
|
23:22
tushar joined
23:24
BenGoldberg joined
|
|||
| timotimo | .u × | 23:27 | |
| yoleaux | U+00D7 MULTIPLICATION SIGN [Sm] (×) | ||
| asdfgh | What graphics library would you guys recommend that isn't raw | 23:45 | |
| timotimo | depends entirely on what you want to do | ||
| asdfgh | making a pokemon battling game | ||
| something like sdl or allegro preferably | |||
| timotimo | SDL2::Raw isn't so terribly bad | 23:46 | |
| if you want some vector graphics, you can add cairo to that, but i don't really know how to make cairo work with opengl | 23:47 | ||
| last time i tried it wasn't possible, but that is now ... 2 years ago? | |||
| asdfgh | did you write SDL2_raw timo | 23:48 | |
| the bindings | 23:49 | ||
| timotimo | yup, a big chunk of it | ||
| i also wrote the biggest chunk of the cairo binding | |||
| asdfgh | nice | 23:50 | |
|
23:50
pierre_ joined
|
|||
| timotimo | it was easy | 23:51 | |
| it's also not complete | |||
| i have a little binding for sdl2_gpu that i didn't put up yet because i didn't test any of it yet | 23:59 | ||
| i'm too lazy | |||