»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend! Set by sorear on 4 February 2011. |
|||
00:04
wolfman2000 joined
00:13
dorlamm left
|
|||
lichtkind | good night | 00:17 | |
00:18
lichtkind left
00:40
rgrau` left
00:41
Chillance left
00:48
wolfman2000 left
00:56
whiteknight left
01:00
noganex joined
01:04
noganex_ left
01:08
drbean joined
01:09
wolfman2000 joined
01:13
f00li5h is now known as f00li5h[HireMe]
01:27
tokuhir__ left
02:01
HarryS left
02:04
HarryS joined
02:09
woosley joined
02:15
kid51 left
02:42
tokuhir__ joined
03:04
am0c left
03:23
Su-Shee_ joined
03:26
Su-Shee left
03:31
bluescreen10 left
03:35
benabik left
|
|||
spetrea | hey | 03:41 | |
haven't been here for a while | |||
how you guys doin ? | 03:42 | ||
03:50
kaare__ joined
03:52
wamba joined
03:54
drbean left
|
|||
sorear | spetrea: good | 03:54 | |
dalek | ecza: fe88724 | sorear++ | / (4 files): Hack BEGIN { @*INC.push: ... } to DTRT |
||
03:57
benabik joined
04:02
molaf joined
04:13
satyavvd joined
|
|||
sorear | ping cooper | 04:43 | |
er | |||
ping colomon | |||
cooper | k | ||
04:48
soh_cah_toa left
04:56
woosley left
05:00
birdwindupbird joined,
woosley joined
05:03
jaldhar left,
wamba left,
jaldhar joined
05:17
tokuhir__ left
05:31
am0c joined
05:35
Khisanth left
05:38
Khisanth joined
05:46
Jackneill joined
05:50
drbean joined
05:51
wtw joined
05:58
wtw left
05:59
wtw joined
06:16
jaldhar left,
jaldhar joined
06:17
jaldhar left,
jaldhar joined
06:20
Su-Shee_ is now known as Su-Shee
06:25
masak joined
|
|||
masak | sellamat prients! | 06:25 | |
06:38
REPLeffect left
06:41
wamba joined
|
|||
masak backlogs | 06:55 | ||
moritz | good morning masak | 06:56 | |
masak | morning. | 07:02 | |
I seem to have overestimated the amount of blogging time the journey home would give me. | |||
partly because my laptop has a non-functional keyboard. :) | 07:03 | ||
07:04
Guest28298 is now known as alyx
|
|||
masak | I did have time to draw a map, though: github.com/masak/crypt/blob/master...es/map.png | 07:04 | |
07:04
alyx left,
alyx joined
|
|||
masak | (touchpad still works) | 07:04 | |
07:08
wamba left
|
|||
moritz | masak: you don't seem to have a lot of luck with your laptops | 07:08 | |
sorear | MASAK ! | 07:10 | |
masak | SOREAR ! | 07:13 | |
moritz: I guess I use them heavily. at home I only use a laptop. I use stationary computers at work. | 07:14 | ||
07:17
satyavvd left
07:20
Mowah joined
07:33
Jackneill left
07:44
CBro2007 joined
07:46
wamba joined
07:47
kaare__ left
07:55
envi left
|
|||
CBro2007 | had a qn about perl 6 OO, when you declare a public attrib like "has $.b;" - does it automatically generate an accessor method for it like "getB"? | 08:01 | |
or does one have to write these manually? | |||
write both get and set? | |||
tadzik | CBro2007: it's called just .b then | ||
hello #perl6 | |||
moritz | and if you say 'has $.b is rw', it makes the .b accessor assignable | ||
CBro2007 | or to get around that problem do you just do you make it "is rw"? | ||
moritz | so you can write $obj.b = 3; | ||
tadzik | what problem? | 08:02 | |
CBro2007 | tadzik: if you don't say "is rw" then $obj.b = 3 wouldn't work | ||
thats right yeah moritz ? | |||
moritz | rakudo: class A { has $.x }; A.new(x => 3).x = 6 | 08:03 | |
p6eval | rakudo f63b82: OUTPUT«Cannot modify readonly value in '&infix:<=>' at line 1:src/metamodel/RoleToInstanceApplier.nqp in main program body at line 22:/tmp/JfWb_cJWBt» | ||
moritz | rakudo: class A { has $.x is rw }; A.new(x => 3).x = 6 | ||
p6eval | rakudo f63b82: ( no output ) | ||
tadzik | CBro2007: of course | ||
that's the point :) | |||
if it's not read-write, writing to it will not work | |||
CBro2007 | yeah just wanted to clarify that :) | ||
tadzik | ok :) | ||
moritz | nom: class A { has $.x }; A.new(x => 3).x = 6 | ||
p6eval | nom: OUTPUT«Cannot assign to a readonly variable or a valuecurrent instr.: '_block1002' pc 113 ((file unknown):147) (/tmp/NAnHyAu_Un:1)» | ||
CBro2007 | because in java etc you would just declare it public and then there are get/set methods to access it | 08:04 | |
08:04
woosley left
|
|||
masak | hello tadzik | 08:04 | |
CBro2007 | ah I was actually gonna ask about how to write your own copy constructor | ||
moritz | there are no copy constructors in Perl 6 | ||
CBro2007 | can I declare a method called "new"? | 08:05 | |
masak | yes. | ||
CBro2007 | just the default constructor then? | ||
moritz | you can name your constructor however you want | ||
masak | yes, but "default constructor" doesn't mean the same as in C++. | ||
a Mu.new method is provided out of the proverbial box. | |||
moritz | perlgeek.de/blog-en/perl-6/object-c...ation.html | 08:06 | |
CBro2007 | moritz: right so it doesn't need to be called "new" ... what is "Someclass.new" doing then? | ||
moritz | so the box is Mu? :-) | ||
CBro2007: it calls the method new on the type object Someclass | |||
masak | moritz: or the OO system as such :) | ||
CBro2007 | moritz: I am reading your perl 5 to 6 articles | ||
masak | CBro2007: setters are evil and getters aren't so good either. they're a vestige of people who think they're doing OO but still in a struct-y mindset. | 08:07 | |
CBro2007 | oh and if I haven't defined new in my class as a method it goes further up the heirarchy? | ||
moritz should check them for up-to-date ness sometimes son | |||
masak | CBro2007: yes. | ||
CBro2007 | ok | ||
moritz | like any method call, really | ||
08:07
woosley joined
|
|||
CBro2007 | cheers... makes more sense now | 08:07 | |
yep true | |||
masak | rakudo: class Parent { method foo { say "OH HAI" } }; class Child is Parent {}; Child.new.foo | 08:08 | |
p6eval | rakudo f63b82: OUTPUT«OH HAI» | ||
tadzik | masak: o/ | ||
moritz | masak: I'm not convinced that getters are "not so good" per se | ||
masak | moritz: I'm not 100% convinced either, but I'm toying with the thought. | ||
CBro2007 | to be honest I really like perl 6 syntax, but I don't like this $. and $! stuff | 08:09 | |
masak | CBro2007: it'll grow on you, just wait. | ||
tadzik | masak: that makes some sense | ||
CBro2007 | i mean return $!a + $!b + $!c; | ||
moritz | masak: consider Rat.pm in the setting - what would be the superior move that allows the same functioniality, but doesn't use accessors? | ||
CBro2007 | looks a bit ugly :) | ||
tadzik | CBro2007: it's just like PErl 5's sigils, but twice the fun :) | ||
CBro2007 | heh | ||
masak | moritz: Rat is essentially a struct-y type. | ||
CBro2007 | but man perl 6 is seriously wayyyy better to read than perl 5 | 08:10 | |
masak | well, an immutable one. | ||
CBro2007 | massive improvement in syntax | ||
masak | CBro2007: so is modern Perl 5 :) | ||
tadzik | oh, not always :) | ||
CBro2007 | is it? | ||
08:10
mj41 joined
|
|||
CBro2007 | I haven't seen modern perl 5.... have they cleaned it up like 6 has? | 08:10 | |
i don't know but was overloading possible in p5? | 08:11 | ||
moritz | it was, mostly | ||
tadzik | magic | ||
CBro2007 | with this multi stuff I mean | ||
tadzik | oh, no | ||
08:11
woosley1 joined
|
|||
moritz | no multis though | 08:11 | |
CBro2007 | yeah thats new | ||
tadzik bbl | |||
CBro2007 | and I notice that you guys have the slurping of args... using "rest" for other args | 08:12 | |
reminds me of common lisp | |||
moritz | what they call "overloading" is just things like "providing custom string/integer/whatever views for an object | ||
CBro2007 | :) | ||
maybe it would be good to think of writing some containers then | |||
like c++ std library | |||
08:12
woosley left
|
|||
CBro2007 | Stack, Queue, Tree | 08:12 | |
would be super handy I reckon... esp with this new multi feature | 08:13 | ||
masak | CBro2007: I've been wanting that too. especially different Tree and Hash implementations. | ||
CBro2007 | yep | ||
masak | CBro2007: something like Java's library of such types. | ||
CBro2007 | If I continue to use p6 for my work at uni... then I will need to write them anyway | 08:14 | |
masak | maybe some MooseX module provides multi methods, I dunno. | ||
CBro2007 | yeah haven't looked into it in detail | ||
just thought I would make a small suggestion :) | |||
masak | we do need someone to flesh out those bits. | 08:15 | |
and nom should make it massively easier, too. | |||
CBro2007 | what is nom? sorry | ||
moritz | nom is a development branch of rakudo | ||
that allows for much more memory-efficient objects | |||
CBro2007 | k | 08:16 | |
but do you think std lib like stuff would work well in p6? | |||
oh is there a concept like java generics or c++ templates in p6? | |||
or would you have to write a multi for each type? coz that might not be fun :) | 08:17 | ||
moritz | we have parameterized roles | ||
though the duck typing means that you don't actually have to type the container | |||
CBro2007 | ok will finish reading the article first ... btw good work on the article moritz | ||
moritz | thanks CBro2007 - if you find anything that's not clear, please tell me, I'm always looking for ways to improve them | 08:18 | |
08:18
daxim joined
|
|||
CBro2007 | yeah no worries | 08:18 | |
so you saying that for say a stack implementation - you could define that as a role? | 08:19 | ||
masak | nom not only allows for more memory-efficient objects, but also gives a better "API" to the VM "metal". | ||
CBro2007 | and then people just say "does" blah and they can use the stack as say a stack of integers or numerics? | ||
moritz | though they could just use an array | 08:20 | |
which has push and pop | |||
CBro2007 | later down the track I will need you guys to help out with this nom stuff :) | ||
yeah but I think it helps to have a class for different data types | 08:21 | ||
much like glib provides | |||
binary trees, maps, queues, etc etc | |||
yath | w | 08:22 | |
oops | |||
masak | CBro2007: agreed. in a library. | 08:24 | |
CBro2007 | yep | ||
masak | there are many nice types of heap data structures out there. | ||
ooh, and the disjoint-set data structure! I stumble over that on all the time. | 08:25 | ||
the labyrinth-making algo would be very short and pretty if it could just use a library. | |||
moritz | well, it could | ||
you just need to write the library first :-) | 08:26 | ||
CBro2007 | :) | ||
08:26
daniel-s joined
|
|||
masak | in due time :) | 08:26 | |
CBro2007 | I am thinking for my work I might have to make a p5 and p6 project and keep going that way | ||
just in case something is missing in p6 | |||
is that too much work you guys think? | 08:27 | ||
masak | CBro2007: if you haven't found RosettaCode yet, be sure to check it out. | ||
CBro2007 | Someone here did pass it on to me yesterday | ||
08:27
cooper left
|
|||
masak | excellent. | 08:27 | |
moritz | iirc that was our guru :-) | ||
masak | what, that guy who keeps floating cross-legged over the IRC channel? :P | 08:28 | |
how does he *do* that? | |||
moritz | he uses the new float-over-tcp protocoll | 08:29 | |
with special Rat protection against float errors | |||
masak | cunning. | ||
CBro2007 | moritz: cannot remember who that was? | ||
was it TimToady? | |||
moritz | irclog.perlgeek.de/perl6/2011-07-17#i_4126530 | 08:30 | |
aye | |||
08:30
kshannon joined,
daniel-s left,
daniel-s joined
|
|||
CBro2007 | cool | 08:31 | |
ok gtg now | 08:32 | ||
nice talking | |||
08:32
CBro2007 left
08:35
daniel-s_ joined
|
|||
sorear | agh, missed CBro2007 | 08:35 | |
sorear sleep | |||
08:36
daniel-s left
08:37
wamba left
08:39
domidumont joined,
daniel-s__ joined,
daniel-s_ left
08:43
nymacro joined,
_daniel-s__ joined
08:44
envi joined,
daniel-s__ left
08:47
daniel-s joined,
_daniel-s__ left
|
|||
masak | rakudo: (my %inv).push: { a => 1, b => 2 }.invert; say %inv.perl | 08:49 | |
p6eval | rakudo f63b82: OUTPUT«{"1" => "a", "2" => "b"}» | ||
masak | \o/ | ||
but what if I wanted the inverse hash to hash on Int, not Str? | 08:50 | ||
08:51
daniel-s_ joined
08:52
daniel-s left
|
|||
moritz | you'd use an array? :-) | 08:54 | |
08:54
wamba joined
|
|||
moritz | no srsly, I think there's some room for parameterization mentioned in S09 | 08:54 | |
masak | right. | ||
point well taken about the array :-) | 08:55 | ||
but sometimes a sparse one in the form of a hash works better. | |||
08:55
daniel-s__ joined
|
|||
moritz | well, I kinda hope somebody writes a sparse array implementation as a module | 08:55 | |
08:55
daniel-s_ left
09:00
_daniel-s__ joined,
daniel-s__ left,
Instil joined
09:03
Jackneill joined,
Jackneill left,
Jackneill joined
09:04
daniel-s joined,
_daniel-s__ left
09:08
daniel-s left,
daniel-s_ joined
|
|||
masak | seen on Slashdot: "I called Wirth, once. but I think I called him by name and not by value. perhaps I made the wrong judgement call; my phone overflowed." | 09:10 | |
aloha | Sorry, I haven't seen on Slashdot: "I called Wirth, once. but I think I called him by name and not by value. perhaps I made the wrong judgement call; my phone overflowed.". | ||
masak | aloha: I bet you're very popular at parties. | ||
09:11
dakkar joined
|
|||
masak | srsly though; a word from the English language that can begin sentences isn't a good bot activation mechanism. | 09:12 | |
09:13
daniel-s__ joined,
daniel-s_ left
09:16
_daniel-s__ joined,
daniel-s__ left
09:17
jerome joined,
jjore left
09:21
jjore joined,
_daniel-s__ left
09:25
wamba left
09:31
sftp_ joined
09:33
sftp left
09:36
CBro2007 joined
09:38
CBro2007_ joined,
CBro2007 left,
CBro2007_ is now known as CBro2007
09:41
dayangkun_ joined
09:44
thou left
09:45
dayangkun left
09:47
birdwindupbird left
09:48
mikehh left
09:56
woosley1 left
|
|||
mathw | I like bots which need an initial punctuation command or something - like !seen | 10:15 | |
10:17
birdwindupbird joined
|
|||
masak flies to Poland | 10:19 | ||
10:19
masak left
|
|||
tadzik | \o/ | 10:19 | |
10:19
CBro2007 left
10:23
tokuhir__ joined
10:26
donri joined,
satyavvd joined
10:33
Hadraniks joined
10:35
Hadraniks left
10:49
Camaelek joined
10:50
Camaelek left
|
|||
flussence pictures masak walking outside and suddenly zooming off into the sky | 10:55 | ||
11:09
jerome left
11:10
ab5tract joined
11:19
JimmyZ joined
11:22
jerome joined,
Dardek joined
11:30
Dardek left
|
|||
daxim | JETPACK'D | 11:33 | |
11:43
jaldhar left,
jaldhar joined
11:44
HarryS left
11:52
kaare__ joined
11:59
satyavvd left
12:01
CBro2007 joined
12:02
dayangkun_ left
12:10
takadonet joined
|
|||
takadonet | morning all | 12:12 | |
Util | Morning, takadonet | 12:29 | |
12:30
MayDaniel joined
12:38
bluescreen10 joined
12:43
bluescreen10 left,
nymacro left
12:53
MayDaniel left
12:55
bluescreen10 joined
12:58
wamba joined
13:01
Holy_Cow joined
|
|||
moritz | rakudo: 'foo'.match(/o/); say $/ | 13:02 | |
p6eval | rakudo f63b82: OUTPUT«Any()» | ||
13:03
CBro2007 left
13:11
am0c left
13:25
JimmyZ left,
Jackneill left
|
|||
[Coke] yawns. | 13:28 | ||
daxim | 50mg caffeine IV | 13:29 | |
moritz | nom: my $re = /./; say $re(Cursor.'!init_cursor'('foo', :c(0))).MATCH | 13:32 | |
p6eval | nom: OUTPUT«Method '!init_cursor' not found for invocant of class 'Cursor'current instr.: '_block1002' pc 120 ((file unknown):693) (/tmp/9vtVYeG6l7:1)» | ||
moritz | nom: my $re = /./; say $re(Cursor.'!cursor_init'('foo', :c(0))).MATCH | ||
p6eval | nom: OUTPUT«f» | ||
moritz | nom: my $re = /./; say $re(Cursor.'!cursor_init'('foo', :c(1))).MATCH | ||
p6eval | nom: OUTPUT«o» | ||
pmichaud | good morning, #perl6 | 13:37 | |
phenny | pmichaud: 17 Jul 18:01Z <isBEKaml> tell pmichaud That patch does solve the build failure on my machine. Thanks! :) | ||
moritz | good am, pm | ||
13:38
Holy_Cow left
|
|||
[Coke] | daxim++ | 13:38 | |
pmichaud++ | |||
13:41
drbean left
|
|||
moritz | nom: sub f() { 'a' ~~ /./; { say $/ }.() }; f() | 13:42 | |
p6eval | nom: OUTPUT«a» | ||
moritz | \o/ so nom already has $/ tied to routine, not block | ||
13:42
Jackneill joined
|
|||
pmichaud | not necessarily | 13:43 | |
it may just be that $/ is grabbing from the outer | |||
moritz | hm, right | ||
nom: sub f() { 'a' ~~ /./; { say $/; 'b' ~~ /./; }.() say $?}; f() | |||
p6eval | nom: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 1current instr.: 'nqp;Regex;Cursor;FAILGOAL' pc 3851 (src/Regex/Cursor.pir:239)» | ||
moritz | nom: sub f() { 'a' ~~ /./; { say $/; 'b' ~~ /./; }.() say $/}; f() | ||
p6eval | nom: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 1current instr.: 'nqp;Regex;Cursor;FAILGOAL' pc 3851 (src/Regex/Cursor.pir:239)» | ||
[Coke] | pmichaud: did you happen to figure out that segfault I sent you? | ||
pmichaud | nom: sub f() { { 'a' ~~ /./ }; say $/; | ||
p6eval | nom: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 1current instr.: 'nqp;Regex;Cursor;FAILGOAL' pc 3851 (src/Regex/Cursor.pir:239)» | ||
moritz | nom: sub f() { 'a' ~~ /./; { say $/; 'b' ~~ /./; }.(); say $/}; f() | ||
p6eval | nom: OUTPUT«ab» | ||
pmichaud | nom: sub f() { { 'a' ~~ /./ }; say $/; }; f(); | ||
p6eval | nom: OUTPUT«a» | ||
moritz | ok, I was wrong :/ | ||
no, I wasn't | 13:44 | ||
pmichaud | gee, it looks okay to me :) | ||
moritz | same $/ in both scopes | ||
pmichaud | [Coke]: segfault? | ||
nom++ | |||
moritz works on Str.match | |||
pmichaud is still waking up but doesn't recall a segfault | 13:45 | ||
moritz | nom: sub f() { say 'alive' }; my %h; f |%h | 13:52 | |
p6eval | nom: OUTPUT«flattened parameters must be a hash or arraycurrent instr.: '_block1002' pc 82 ((file unknown):37744038) (/tmp/zgOKsbQdAd:1)» | ||
moritz | nom: my %h; say %h.defined | ||
p6eval | nom: OUTPUT«Bool::True» | ||
pmichaud | known bug. | ||
[Coke] | pmichaud: something like: | ||
nom: say +"4/2".WHAT | |||
p6eval | nom: OUTPUT«Parameter '(null)' requires an instance, but a type object was passedcurrent instr.: 'Numeric' pc 476222 (src/gen/CORE.setting.pir:128524) (src/gen/CORE.setting:1896)» | 13:53 | |
moritz | pmichaud: how do I work around it? my %h := {} ? | ||
nom: +Str | |||
p6eval | nom: OUTPUT«Parameter '(null)' requires an instance, but a type object was passedcurrent instr.: 'Numeric' pc 476222 (src/gen/CORE.setting.pir:128524) (src/gen/CORE.setting:1896)» | ||
pmichaud | [Coke]: yes, we fixed it so that bug doesn't segfault. We still don't know what it's supposed to do. | ||
moritz | [Coke]: ah, I replaced that segfault by an unhelpful error message like above | ||
pmichaud | presuming, of course, that you didn't really mean | 13:54 | |
nom: say (+"4/2").WHAT | |||
p6eval | nom: OUTPUT«Rat()» | ||
[Coke] | I didn't mean anything. I just made it go boom. | 13:55 | |
pmichaud | okay | ||
[Coke] | nom: say +"2/4".WHAT | ||
p6eval | nom: OUTPUT«Parameter '(null)' requires an instance, but a type object was passedcurrent instr.: 'Numeric' pc 476222 (src/gen/CORE.setting.pir:128524) (src/gen/CORE.setting:1896)» | ||
pmichaud | it still goes boom, but it does so because we don't know what +TypeObject should do yet. | ||
[Coke] | that actual gave an answer on friday, I think. ah well. | ||
13:55
mtk joined
|
|||
[Coke] | (no worries) | 13:55 | |
pmichaud | or, more correctly, we don't know what TypeObject.Numeric should do yet. | 13:56 | |
I may just do the zero-and-warn bit for now. | |||
moritz | that's probably what wins us the most spectests | ||
pmichaud | oh, if there are spectests depending on that, I think they may be incorrect. | ||
moritz | agreed | 13:57 | |
but knowing the test suite as I do, it's pretty much certain that some tests do | |||
s/it's/I'm/ | |||
13:58
BinGOs left
14:01
REPLeffect joined
14:03
BinGOs joined
14:04
PacoLinux joined,
CBro2007 joined
|
|||
dalek | kudo/nom: f2fda00 | moritz++ | src/ (3 files): add Str.match(Regex, :p, :c) |
14:05 | |
kudo/nom: 19e3ba8 | moritz++ | LHF.markdown: add regex-related Str methods to LHF. Also deduplicate an item which seems to have doubled during a merge conflict |
|||
14:05
CBro2007 left
|
|||
14:05
CBro2007 joined
14:11
kanishka joined
14:13
wtw left
|
|||
pmichaud | nom: sub f(*%_) { say 'alive'; }; my %h; f |%h; | 14:15 | |
p6eval | nom: OUTPUT«flattened parameters must be a hash or arraycurrent instr.: '_block1002' pc 82 ((file unknown):29623934) (/tmp/2jjhftE8Ki:1)» | ||
14:19
tokuhir__ left
14:22
JimmyZ joined
14:23
timbunce joined
14:26
daniel-s joined
14:27
daniel-s left
14:37
am0c joined
|
|||
dalek | kudo/nom: 62c49e2 | pmichaud++ | src/core/EnumMap.pm: Fix hash flattening for empty hashes and enummaps. moritz++ |
14:57 | |
eiro | hello | 15:00 | |
moritz | \o | 15:01 | |
eiro | any paper about concurrency in perl6 ? any anyevent outsider in perl6 ? | 15:03 | |
JimmyZ | I guess no? | 15:04 | |
eiro | ok | ||
JimmyZ | suggestion welcome ;) | 15:05 | |
eiro | haha | ||
not skilled enought | |||
JimmyZ | me too | 15:06 | |
eiro | it means there is no way to implement webapps with long polls in perl6 | ||
for example a server for a turn by turn | 15:07 | ||
game | |||
moritz | why would you need long polling for a turn-by-turn game? | 15:08 | |
15:08
am0c left
15:10
wamba left
|
|||
eiro | moritz, to push events to the clients | 15:11 | |
say player1 moved, i want to push infos to player's 2 client for refresh | 15:12 | ||
moritz | it's ugly, but you can also let the clients poll | ||
JimmyZ | eiro: something like libevent or libev? | ||
eiro | moritz, i think client pull is ugly | 15:13 | |
JimmyZ, yep | |||
moritz, if you want real time events, you're polling fast so you waste lot of bandwith | |||
bandwidth | |||
JimmyZ | eiro: I think we can call libevent or libev from perl6 | 15:14 | |
moritz | that's why I started my sentence with "it's ugly" :-) | ||
I know it's quite a sever limitation for some applications | 15:15 | ||
didn't sorear add basic thread support to niecza? I can't remember... | |||
eiro | ok. i asked for something simple (just playing with perl6 for now) | 15:18 | |
thanks anyway moritz and JimmyZ | |||
:) | |||
pmichaud | 15:06 <eiro> it means there is no way to implement webapps with long polls in perl6 | 15:20 | |
We're just waiting for someone to give us an idea of how such a thing should be done in perl 6. :) | |||
15:27
alester joined
15:29
bs338 left
|
|||
arnsholt | I've a plan to try my hand at webapps (involving Zavolaj) | 15:30 | |
15:33
wamba joined
15:35
tokuhir__ joined
15:36
CBro2007 left
|
|||
arnsholt | Using Mongrel 2 all I need to do is the bindings to ZMQ | 15:36 | |
15:42
sftp_ is now known as sftp
15:44
bs338 joined
15:51
s1n left
15:53
s1n joined
|
|||
JimmyZ | arnsholt: github.com/plobsing/parrot-zeromq/ | 15:53 | |
15:56
thou joined
|
|||
arnsholt | JimmyZ: Even less for me to do. Yay! =) | 15:59 | |
Thanks! | |||
16:01
alester left,
alester_ joined
16:11
kst left
16:18
cooper joined
16:20
cooper left,
cooper joined
|
|||
JimmyZ | arnsholt: :) | 16:20 | |
night | |||
16:20
JimmyZ left
|
|||
felher | Hey folks. Hi do i slurp complete stdin into a string? Do i have to use lines() ? | 16:29 | |
colomon | rakudo: my $a = slurp; say $a | ||
p6eval | rakudo f63b82: OUTPUT«Operation not permitted in safe mode in 'Safe::forbidden' at line 2:/tmp/DNx14cp6_Z in main program body at line 22:/tmp/DNx14cp6_Z» | ||
16:30
kanishka left
|
|||
felher | colomon: thnx. Seems my rakudo is too old. | 16:30 | |
colomon | ? slurp's been around for a while. | 16:31 | |
I might not have the exact syntax needed there, but something like that should work | |||
felher | colomon: My rakudo says slurp needs at least one argument. | 16:32 | |
colomon | try $*IO.slurp | ||
soory. $*IN.slurp | |||
felher | colomon: Yeah, works like a charm. thnx. colomon++ | 16:33 | |
16:43
kanishka joined
16:54
explorer__ joined
16:55
jferrero left,
serewe joined
16:57
birdwindupbird left
16:58
daxim left,
tokuhir__ left
17:06
dakkar left
17:09
mj41 left
17:24
dorlamm joined,
Trashlord left
17:25
colomon left
17:26
ggoebel left
17:31
pmurias joined
17:33
serewe left
17:35
mj41 joined
17:39
dorlamm left
17:40
ggoebel joined
17:43
Chillance joined
17:52
impious joined
18:05
Trashlord joined
18:06
diakopter joined
18:10
kst joined
18:14
kanishka left
18:17
s1n left
18:33
s1n joined
18:36
Jackneill left
18:37
ab5tract left
|
|||
sorear | moritz: yes, some time ago | 18:53 | |
18:55
cipherte1t joined
18:56
ciphertext left
19:01
cooper left,
cooper joined
19:02
cooper left,
cooper joined
19:09
dorlamm joined
19:12
impious left
19:13
CBro2007 joined
19:15
masak joined
|
|||
masak | oh hai from tadzik++'s place! \o/ | 19:15 | |
tadzik | \o/ | 19:16 | |
pmichaud | oh hai masak++ at tadzik++'s place! | ||
masak | we're having a "laptop party". | ||
mberends | \o/ | 19:17 | |
masak updates rakudo master, rakudo nom, rakudo podparser, and nom | |||
pmichaud | masak: so, now that you (and jnthn++) have put together a conference, I'm thinking of doing the same here at DFW. Any advice or suggestions where to start? | ||
masak | s:2nd/nom/niecza/ | 19:18 | |
pmichaud: we asked for an Act instance, and everything basically fell out of that. | |||
19:20
janosik joined
19:22
birdwindupbird joined,
mkramer joined,
mkramer left
|
|||
pmichaud | masak: that's what I'm hoping to hear. Who do I ask for an Act instance? | 19:23 | |
masak | pmichaud: IIRC on the Act mailing list. | 19:25 | |
be prepared with your public SSH key. | 19:26 | ||
arnsholt | masak: Semi-related, has anyone taken on NPW12 yet? | 19:27 | |
masak | why, you interested? | ||
arnsholt | Just trying to plan my calendar a bit in advance, I'm afraid | ||
(I'm not very involved with Oslo.pm, whp are the natural organizers for an Oslo NPW) | 19:28 | ||
masak | nodnod | ||
no, I haven't heard anything. | |||
19:36
janosik left
|
|||
masak | wow, GNU Hurd is coming? first DNF, now this... :) | 19:39 | |
arnsholt | Not to mention Perl 6! ;) | 19:41 | |
pmurias | masak: GNU Hurd really is coming? | 19:42 | |
19:43
soh_cah_toa joined
|
|||
masak | pmurias: I saw a Slashdot blurb flash by hinting that it is. hold on, I'll dig deeper. | 19:46 | |
here: news.slashdot.org/story/11/07/14/21...urd-Coming | 19:47 | ||
jlaire | see also www.archhurd.org/ | 19:48 | |
which isn't just a vague plan for 2013 :) | 19:49 | ||
masak | jlaire: hi! | ||
jlaire | masak: hihi! | ||
masak | jlaire: it's funny, you patched a Ctrl+D flaw that I had already pushed a fix for :) | 19:50 | |
(but thanks for making the effort) | |||
jlaire | yeah, I noticed :) | ||
masak | my plan for tonight is to get the first blog post out. after that, I might go through the TODO file and fix a few things. | 19:51 | |
jlaire | the .= operator is really convenient, I often wish I had it in other languages | 19:54 | |
and pointy blocks with 'if' | |||
masak | yeah. | ||
lately I've been missing infix:<.=> combined with chained method calls. | 19:55 | ||
like '$string .= lc.trim.flip' | |||
jlaire | I was just thinking about the same | ||
looking at that code | 19:56 | ||
masak | std: my $string; $string .= lc.trim.flip | ||
p6eval | std 516268a: OUTPUT«===SORRY!===Method call found where infix expected (omit whitespace?) at /tmp/qA6Bxt7RzP line 1:------> my $string; $string .= lc⏏.trim.flip expecting any of: infix or meta-infix method argumentsParse failedFAILED 00:01 … | ||
masak suspected that | |||
[Coke] | rakudo: my $foo = " abcDEF "; say $foo .= lc.trim.flip | ||
p6eval | rakudo f63b82: OUTPUT«===SORRY!===Confused at line 22, near "say $foo ."» | ||
[Coke] | . o O (too slow.) | ||
jlaire | masak: btw, what did you use to generate that .svg? | ||
oh, inkscape | 19:57 | ||
masak | jlaire: Inkscape. | ||
19:58
jimmy1980 left
|
|||
masak | but every time I make a diagram like that, I keep thinking that I should spend some time making a high-level description language to produce such images, rather than draw them out by hand. | 19:59 | |
20:00
jimmy1980 joined
|
|||
sorear | o/ masak | 20:07 | |
masak | \o sorear | ||
20:07
CBro2007 left
20:08
CBro2007 joined
20:16
mkramer joined
20:19
birdwindupbird left
|
|||
pmurias | masak: which .svg? | 20:19 | |
ingy | \o_o/ | 20:20 | |
masak | ingy: \oOo/ | 20:21 | |
pmurias: github.com/masak/crypt/tree/master/images | 20:22 | ||
sorear: reading github.com/sorear/niecza/commit/20...aafa54d8b4 is a surprisingly pleasurable experience. niecza looks quite hackable, at least the Perl 6 part. | 20:24 | ||
when I run the nom spectests, two files (t/spec/S02-builtin_data_types/assigning-refs.rakudo t/spec/S02-literals/numeric.rakudo) give non-0 exit status, resulting in a FAIL even though no tests failed. | 20:27 | ||
20:28
Sarten-X left
20:36
colomon joined
|
|||
masak | on the bright side, running the spectests only takes 15 minutes! :) | 20:36 | |
[Coke] | masak - are those the ones that end with an error about # of arguments? | 20:37 | |
masak | dunno. | ||
could be. | |||
20:37
noganex_ joined
|
|||
tadzik | I get no fails on the podparser branch :) | 20:39 | |
moritz got those too, at least in one of the test files | |||
tadzik | after merging nom into it | ||
masak | tadzik: .5 yay + .5 wtf :) | ||
tadzik | :) | ||
20:39
noganex left
|
|||
moritz | Pod - it cures your unrelated problems too :-) | 20:39 | |
tadzik | I'd check the bare nom | ||
ask me again in half an hour or so | 20:40 | ||
moritz | nom spectest is clean here | 20:43 | |
[Coke] double checks. | |||
masak | tadzik haz beer \o/ | 20:44 | |
tadzik | :) | 20:45 | |
masak | tadzik++ | ||
tadzik | I haz had one more, but I breaken it :( | ||
masak | some lossage is expected... but yeah, bit of a waste :/ | ||
20:46
dudz_ joined
20:52
CBro2007 left
20:58
leeoniya joined
|
|||
tadzik | nom spectest fully passed for me | 21:00 | |
21:00
CBro2007 joined
|
|||
masak | odd. | 21:00 | |
21:02
cooper left
21:04
kjeldahl joined
21:15
leeoniya left
21:18
donri left
21:20
kaare__ left
21:21
jaldhar left
|
|||
[Coke] | gist.github.com/1090692 | 21:21 | |
21:21
jaldhar joined
|
|||
[Coke] | (for tadzik). | 21:21 | |
tadzik | [Coke]: podparser? | 21:22 | |
21:22
timbunce left,
kjeldahl left
21:27
wamba left
|
|||
[Coke] | tadzik: nom | 21:32 | |
tadzik | [Coke]: what system are you on? | ||
[Coke] | You said it was passing for you; that's the failure mode I see after a fairly recent update. | ||
tadzik | I see | ||
[Coke] | tadzik: that's on OS X | ||
tadzik | mhm. Intredasting | 21:33 | |
I'll run it once again just to be sure :) | |||
[Coke] | if I am trying to build rakudo/nom, which branch of nqp do I want? | ||
tadzik | the perl6/nqp repo | 21:34 | |
master branch | |||
[Coke] | k. | ||
masak | blog post! strangelyconsistent.org/blog/june-2...dventure-i | ||
sorry 'bout the delay. ;) | 21:35 | ||
tadzik | \o/ | ||
21:35
mkramer left
|
|||
[Coke] wonders why "make install" on nqp is building stuff. | 21:39 | ||
pmurias | masak: where in Poland are you now? | ||
masak | pmurias: northern Warsaw. | 21:40 | |
pmurias: where are you? | |||
tadzik | [Coke]: it probably needs to build them before instaling | ||
as 'all' being a prerequisite of 'install' | |||
pmurias | masak: Zielona Góra, it's far away | 21:41 | |
masak | oh, ok. | 21:42 | |
21:43
dorlamm left,
Psyche^ joined
21:44
buubot_backup left
21:45
impious joined,
impious left,
mkramer joined
21:47
Patterner left,
Psyche^ is now known as Patterner
|
|||
tadzik | t/spec/S02-whitespace_and_comments/unicode-whitespace.t is non-deterministic on my machine: sometimes it segfaults, sometimes not | 21:49 | |
and in different places | |||
masak | fun for the whole family. | ||
sorear | colomon: hi | 21:52 | |
I'm looking for ways to avoid writing 24 copies of the sin() boilerplate | 21:53 | ||
thinking maybe I'll have a single unary_trig function with a selector parameter | |||
masak | are those 24 copies 'sin', 'cos', 'tan', etc? | 21:55 | |
sounds like a selector function would incur a speed penalty with every trig function call. and because of the selector parameter, there isn't much hope of inlining it. | 21:57 | ||
22:03
drbean joined,
buubot_backup joined
|
|||
Tene | bah, what do you need sin() for? isn't &infix:<**> enough? | 22:05 | |
masak | spoken like a true minimalist. | 22:06 | |
rakudo: my @a = <foo bar baz>; say so "baz" ~~ /^ <@a> $/ | 22:07 | ||
p6eval | rakudo f63b82: OUTPUT«Bool::True» | ||
masak | \o/ | ||
TimToady | bah, what do you need ** for? or * for that matter | ||
masak | right, .succ is enough. | ||
TimToady | perl6: say ∅.succ | 22:09 | |
p6eval | niecza v7-39-gfe88724: OUTPUT«===SORRY!===Confused at /tmp/Tn4YUtW67j line 1:------> say ⏏∅.succOther potential difficulties: Unsupported use of bare 'say'; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument at /… | ||
..pugs: OUTPUT«decodeUTF8': bad data: '\8709'***  Unexpected "\8709." expecting bare or pointy block construct, ":", identifier or operator at /tmp/MtF4IVT27t line 1, column 5» | |||
..rakudo f63b82: OUTPUT«===SORRY!===Confused at line 22, near "say \u2205.succ"» | |||
tadzik | std: say ∅.succ | 22:10 | |
p6eval | std 516268a: OUTPUT«===SORRY!===Confused at /tmp/mtneD93W6P line 1:------> say ⏏∅.succ expecting any of: bracketed infix infix or meta-infix statement modifier loopOther potential difficulties: Unsupported use of bare 'say'; in Perl 6 | ||
..ple… | |||
Tene | perl6: say (e**(pi*i)).re | ||
p6eval | pugs: OUTPUT«*** No such subroutine: "&e" at /tmp/8vqniSmcTf line 1, column 6-15» | ||
..rakudo f63b82, niecza v7-39-gfe88724: OUTPUT«-1» | |||
TimToady | niecza: constant ∅ = Nil; say ∅.WHAT; # :) | 22:11 | |
p6eval | niecza v7-39-gfe88724: OUTPUT«===SORRY!===Malformed constant at /tmp/gaqHS4lD55 line 1:------> constant ⏏∅ = Nil; say ∅.WHAT; # :)Parse failed» | ||
Tene | .u ∅ | ||
phenny | U+2205 EMPTY SET (∅) | ||
Tene | What's the successor of the empty set? | ||
TimToady | dunno, ask Church | ||
Tene | Ahh, right. | ||
masak | {{}}, IIRC. | 22:14 | |
and then { {{}}, {} }. | 22:15 | ||
TimToady | as far as I'm concerned, he just found a different set of fingers to count on | ||
but seriously, I wonder if we should allow declarations of non-alnum constant symbols | |||
22:17
Sarten-X joined
|
|||
TimToady | there're a lot of math symbols that aren't alphanums; is it worth forcing all of them through term:<∅>-ness | 22:17 | |
std: constant Set ∅ = set(); | 22:18 | ||
p6eval | std 516268a: OUTPUT«===SORRY!===Malformed constant at /tmp/ojqmW_gloS line 1:------> constant Set ⏏∅ = set(); expecting traitParse failedFAILED 00:01 117m» | ||
masak | TimToady: why does that argument apply just to constants, and not to ordinary sigilled variables, though? | ||
TimToady | std: constant Set ø = set(); | 22:19 | |
p6eval | std 516268a: OUTPUT«===SORRY!===Malformed constant at /tmp/docx0F5KsP line 1:------> constant Set ⏏ø = set(); expecting traitParse failedFAILED 00:01 117m» | ||
TimToady | masak: it doesn't, is (perhaps) part of my point | 22:20 | |
p5 doesn't care what the next char is | |||
which, of course, we/I heavily abused :/ | |||
std: constant Set o = set(); | 22:21 | ||
p6eval | std 516268a: OUTPUT«===SORRY!===Malformed constant at /tmp/o7F7TfllVc line 1:------> constant Set ⏏o = set(); expecting traitParse failedFAILED 00:01 117m» | ||
TimToady | duh | ||
std: constant ø of Set = set(); | |||
p6eval | std 516268a: OUTPUT«ok 00:01 120m» | ||
TimToady | std: constant ∅ of Set = set(); | 22:22 | |
p6eval | std 516268a: OUTPUT«===SORRY!===Malformed constant at /tmp/PnQ1yrkiXs line 1:------> constant ⏏∅ of Set = set(); expecting any of: trait type_declaratorParse failedFAILED 00:01 117m» | ||
22:22
Chillance left
|
|||
TimToady | from those two examples, it can be argued that people who can't use the correct character (∅) will choose to use an incorrect character(ø) instead | 22:23 | |
masak | ugh. | ||
or they will use term: | |||
benabik | .u ø | ||
phenny | U+00F8 LATIN SMALL LETTER O WITH STROKE (ø) | ||
TimToady | I should fess up to also thinking a lot about SSA and sigilless "temporarily immutable" constants | 22:24 | |
sjohnson | .u I | ||
phenny | U+0049 LATIN CAPITAL LETTER I (I) | ||
masak | TimToady: oh right, you mentioned at some point previously. | 22:26 | |
TimToady: sigilless feels fairly un-Perly in general, IMHO. | |||
TimToady | we could, for instance, allow new SSA symbols to be declared with 哈 ::= 42; | 22:27 | |
in this view the $ means "variable" more than it does now | 22:28 | ||
sorear | TimToady: I thought those were von Neumann numbers | 22:29 | |
ashleydev | SSA symbols? | 22:32 | |
TimToady | ah, yes, Church composed functions, not sets | ||
22:33
mj41 left
|
|||
TimToady | en.wikipedia.org/wiki/Static_single...nment_form but more from a programming perspective than from a compiling perspective | 22:33 | |
basically you can do a single assignment to a new symbol without considering it a mutation | 22:34 | ||
since it can be reanalyzed into nested binding | |||
much like the rebinding of a function's arguments results in different values for the formals, but that's not mutation | 22:35 | ||
SSA just treats the new symbol as a parameter to the rest of the block, more or less | |||
benabik | zero: λs.λz. z, one: λs.λz s z | 22:36 | |
TimToady | obviously Perl should use ⻳ for lambda instead of -> | 22:37 | |
huf | this could be the breakthrough moment! | 22:38 | |
TimToady | or ⻲ or ⻱ depending on where you live | ||
.u ⻳ | |||
phenny | U+2EF3 CJK RADICAL C-SIMPLIFIED TURTLE (⻳) | ||
TimToady | no wait, then it would be turtles all the way up, not all the way down | 22:40 | |
nm | |||
drbean | .u ⻱ | ||
phenny | U+2EF1 CJK RADICAL TURTLE (⻱) | ||
masak .oO( negative natural numbers ) | |||
TimToady | unnatural numbers | ||
benabik | I watched a show about radical turtles when I was a kid... | 22:41 | |
huf | benabik: ever tried re-watching a few episodes as an adult? | 22:42 | |
benabik | huf: No, no, no. Childhood memories need to stay that way. | ||
huf | benabik: well, if you liked it, make sure you dont watch any | ||
tadzik | I actually watched a few, those with Usagi Yojimbo, the rabbit samurai | 22:44 | |
I prefer the comic, definitely | |||
masak has a sudden suspicion rabbit samurai will figure in his dreams tonight | |||
22:45
spq1 left
|
|||
TimToady | UY is not a comic; he takes himself very seriously | 22:45 | |
tadzik | yeah, he takes karma more seriously than we do | 22:49 | |
22:55
pochi left
|
|||
masak | he doesn't even let his dogma ride in it? :P | 23:00 | |
23:06
molaf left
23:08
bluescreen10 left
|
|||
masak | 'night, #perl6. | 23:08 | |
23:08
masak left
|
|||
tadzik leaves too | 23:10 | ||
g'night | |||
23:12
kid51 joined
23:17
alester_ left
23:19
molaf joined
23:20
mkramer left
23:21
benabik left
23:22
benabik joined
23:23
bluescreen10 joined
23:30
orafu left,
benabik left
23:31
benabik joined
23:32
tokuhir__ joined
23:34
orafu joined
23:37
CBro2007 left,
ggoebel left,
jevin left,
betterworld left,
robinsmidsrod left,
moritz left,
ashleydev left,
jasonmay left
23:38
pochi joined,
pmurias left
23:43
CBro2007 joined,
ggoebel joined,
jevin joined,
betterworld joined,
robinsmidsrod joined,
moritz joined,
ashleydev joined,
jasonmay joined,
Guest18398 joined,
szbalint joined
|
|||
ashleydev | TimToady: would creating SSA symbols then translate to all ro values, such that $ comes to mean rw? | 23:48 | |
TimToady | probably wouldn't force it to mean that, since we still need $*FOO ::= bar(); to mean a readonly dynamic var | 23:53 | |
sorear | seems to pose parsing problems | ||
foo := 2; # after foo, what is the state of the op/term flipflop? | |||
how does this allow postdeclared listops? | |||
TimToady | it would have to be a lookahead, just like => is | 23:54 | |
23:55
kfo joined,
Trashlord left
|
|||
TimToady | or it would have to be a backoff when it was seen that a term can't start with => or := but that doesn't help the case of ∅ and friends | 23:56 | |
23:58
kfo_ left
|
|||
TimToady | but for ssa you probably want ::= rather than := | 23:58 |