pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, elf: etc.) (or perl6: for all) | irclog: irc.pugscode.org/ Set by Tene on 29 July 2008. |
|||
00:03
bacek joined
00:05
[particle] joined
00:20
justatheory joined
00:28
PZt left
00:30
[particle] left
00:31
PZt joined
00:38
meppl joined
00:40
hercynium joined
00:54
[particle] joined
01:13
Myoma left
01:44
meppel-san joined,
justatheory left
01:47
Schwern joined
01:54
meppl left
01:59
Schwern left
02:03
lambdabot joined,
xinming left
02:05
meppel-san is now known as meppl
02:17
[particle]1 joined
02:28
[particle] left
02:33
meppl left
02:47
kanru left
02:51
ingy joined
02:52
ingy left,
ingy joined
|
|||
s1n | @karma s1n | 02:56 | |
lambdabot | You have a karma of 3 | ||
s1n | @karma pmichaud | ||
lambdabot | pmichaud has a karma of 5 | ||
Auzon | perlbot karma s1n | ||
perlbot | Karma for s1n: 14 | ||
Auzon | perlbot karma pmichaud | ||
perlbot | Karma for pmichaud: 609 | ||
s1n | why are those different? | ||
Auzon | A bit better :) | ||
I dunno. I just know that lambdabot stopped counting | 02:57 | ||
s1n | Auzon: i read your gsoc blog from yesterday, nice work | ||
Auzon | Thanks :) | ||
s1n | Auzon++ | ||
:) | |||
02:59
Limbic_Region left
03:08
wknight8111 left,
[particle]1 left
03:16
kanru joined
03:28
hercynium left
03:29
Southen_ joined,
alester joined
03:32
[particle] joined
03:36
BinGOs left
03:40
sri_work left,
broquaint left,
lisppaste3 left,
yves left,
idemal left,
kane_ left,
cls_bsd left,
lambdabot left,
Patterner left,
Khisanth left,
jan__ left,
Auzon left,
SamB left,
smg left,
TimToady left,
agentzh left,
drbean left,
Southen left,
charsbar_ left,
viklund left,
silug left,
pugs_svn left,
aindilis left,
pjcj_ left,
meteorjay left,
[particle] left,
alester left,
kanru left,
PZt left,
StephenPollei left,
ilbot2 left,
orafu left,
cotto left,
ryanc left,
gaal left,
ptman left,
s1n left,
zostay left,
alanhaggai left,
simcop2387 left,
eternaleye_ left,
Guest70230 left,
bacek left,
IllvilJa left,
jiing left,
REPLeffect left,
spinclad left,
r0bby left,
hcchien left,
Guest16015 left,
krunen left,
ingy left,
pochi left,
funktio left
03:42
TimToady joined,
[particle] joined,
alester joined,
kanru joined,
lambdabot joined,
PZt joined,
bacek joined,
StephenPollei joined,
r0bby joined,
alanhaggai joined,
IllvilJa joined,
hcchien joined,
agentzh joined,
pugs_svn joined,
ilbot2 joined,
Guest16015 joined,
orafu joined,
jiing joined,
Patterner joined,
Khisanth joined,
simcop2387 joined,
Southen joined,
eternaleye_ joined,
jan__ joined,
cotto joined,
ryanc joined,
charsbar_ joined,
drbean joined,
viklund joined,
aindilis joined,
gaal joined,
Auzon joined,
ptman joined,
s1n joined,
pjcj_ joined,
zostay joined,
SamB joined,
smg joined,
Guest70230 joined,
meteorjay joined,
REPLeffect joined,
Ara5n joined,
cookys joined,
revdiablo joined,
dalek joined,
baest joined,
ggoebel joined,
smtms joined,
irc.freenode.net sets mode: +o TimToady,
AzureStone joined,
mj41 joined,
rafl joined,
obra joined,
clkao joined,
sunnavy joined,
malouin joined,
preflex joined,
rhr joined,
les joined,
moritz_ joined,
bbkr joined,
fullermd joined,
buubot joined,
jfredett joined,
Lunchy joined,
lumi joined,
beppu joined,
silug joined,
spinclad joined,
Tene joined,
mtve joined,
thepler joined,
nnunley joined,
szbalint joined,
speckbot joined,
PerlJam joined,
yahooooo joined,
IRSeekBot joined,
Maddingue joined,
kolibrie joined,
arguile joined,
nothingmuch joined,
pasteling joined,
allbery_b joined,
pmichaud joined,
audreyt joined,
jjore joined,
integral joined,
nipotan joined
03:43
krunen joined,
ingy joined,
sri_work joined,
broquaint joined,
lisppaste3 joined,
yves joined,
funktio joined,
pochi joined,
idemal joined,
cls_bsd joined,
kane_ joined,
Gothmog_ joined,
frobnitz joined,
kcwu joined,
jrockway joined,
japhb joined,
pengrate_ joined,
perlbot joined,
bloonix joined,
Juerd joined,
yath_ joined,
BinGOs joined,
kcwu left,
kcwu joined
03:50
Southen left
|
|||
japhb | Given all the parser maniacs around here, many of whom are using Perl 5 to do the dirty work ... I need a parser for shell-like argument parsing. It's fine if it's Perl (5 or 6)-style quoting instead (better, even), but the key thing is that I'm parsing a space-separated string into arguments, embedded spaces have to be quoted or escaped, and it would be nice to be able to have a nice set of escapes available for non-keyboard-enterable ch | 04:09 | |
aracters. Is there a Perl *5* module that does this already? | |||
japhb trying to fight his automatic reaction to write something from scratch and poke at it forever ... | |||
04:15
alanhaggai left
04:41
justatheory joined
04:52
justatheory left
05:23
IllvilJa left
05:39
Psyche^ joined
05:49
IllvilJa joined
05:52
Patterner left,
Psyche^ is now known as Patterner
05:58
Schwern joined
06:00
ashizawa joined
06:44
alester left
|
|||
pugs_svn | r21957 | moritz++ | [t/spec] partially unfudge num.t for rakudo | 06:53 | |
r21958 | moritz++ | [t/spec] partially unfudge type based mmd tests for rakudo | 06:55 | ||
07:01
c1sung joined
|
|||
pugs_svn | r21959 | moritz++ | [t/spec] more unfudging for rakudo | 07:03 | |
07:05
masak joined
07:07
Schwern left
|
|||
pugs_svn | r21960 | moritz++ | [t/spec] more tests for native types | 07:08 | |
r21961 | moritz++ | [t/spec] more unfudging: S03-operators/arith.t | 07:11 | ||
r21962 | moritz++ | [t/spec] unfudged S03-oeprators/assign.t a bit | 07:18 | ||
r21963 | moritz++ | [t/spec] more unfudging for rakudo | 07:23 | ||
07:24
missingthepoint joined
07:25
missingthepoint left
|
|||
pugs_svn | r21964 | moritz++ | [t/spec] more unfudging | 07:27 | |
07:38
missingthepoint joined
07:42
Schwern joined
07:44
missingthepoint left
07:45
pmurias joined,
xinming joined
07:59
cognominal joined
08:00
elmex joined
08:01
cotto left
08:14
bacek left
|
|||
masak | TimToady: can I exit a gather block with `last`? since gathers are AIUI dynamic, how would I exit a gather context (or the equivalent, just indicate that no more takes will be made) from another sub? is there a way to query a gather on the elements already taken? | 08:16 | |
moritz_ | 'last' would exit the closest lexical block that catches the control exception that 'last' throws | 08:18 | |
masak | hm | ||
moritz_ | so gather { while 1 { take 1; last } } | ||
the last would exit the while loop | |||
masak | aye | ||
can I put a label on the gather block, then? | 08:19 | ||
moritz_ | since control exceptions are dynamically scoped... dunno :) | 08:20 | |
08:20
xinming_ joined
|
|||
moritz_ | and I think if you need the number of elements already taken, you really want an array on which you push | 08:21 | |
masak | maybe. | ||
moritz_ | my @a = @@( gather { take 1; take 2, 3 } ); would that be [1], [2, 3]? | 08:22 | |
otoh pushing to an array doesn't sound lazy | |||
masak | otth, the laziness of gather is unspecced. | 08:31 | |
moritz_ | is it? | 08:32 | |
masak | aye. | ||
08:32
xinming left
|
|||
moritz_ | it is implicitly specced by IRC conversations with TimToady ;) | 08:33 | |
masak | I guess whether gather will be lazy or not will be specced at the last possible moment :P | ||
moritz_ | S02:3098 could be seen as an implicit specification of the lazyness | 08:35 | |
masak | wha'? | 08:37 | |
"Likewise any non-alphanumeric character is assumed to be equivalent to a dot." | |||
moritz_ | sorry, S03:3098 | 08:38 | |
TimToady | S04:588 specs gather to be lazy | ||
masak | ah | ||
I read through that, and didn't construe it as speccing gather as lazy | 08:39 | ||
also, the first pugs test on that paragraph says :todo<unspecced> | 08:40 | ||
TimToady | I don't know what "returns a lazy slice" could mean other than that | 08:41 | |
masak | TimToady: sorry, I seem to be suffering from selective blindness :/ | ||
TimToady | it also talks about the relationship of gather with loops just below that | 08:42 | |
08:43
pmurias left
|
|||
masak | TimToady: re my earlier questions: (1) can one tell a gather context that taking has ended? (2) is there a variable or similar that contains already taken values? | 08:43 | |
08:43
penk joined
|
|||
TimToady | 1), see the aforementioned loops | 08:43 | |
08:43
jferrero joined
|
|||
TimToady | 2) try binding the gather to an array and ask it how many elements it has 'reified' (however we end up doing that) | 08:44 | |
but in general asking any lazy list for its length is not what you want | |||
because you're not supposed to care about the state of your lazy feed in general | 08:45 | ||
logically the list is all there, even if it hasn't been calculated yet | |||
and asking for its length causes it to be calculated | |||
masak | TimToady: can I use the control builtins 'next', 'last' etc on loops that are not in the current sub? | ||
TimToady | certainly | 08:46 | |
you won't even get a warning if the label is lexically scoped | |||
masak | ah, that probably solves most of my questions about breaking out of a gather, too | ||
TimToady | @foo = gather LABEL: for 1..* { ...} is legal syntax | ||
lambdabot | Maybe you meant: faq ft todo yow | ||
08:47
pmurias joined
|
|||
masak | that's good to know. | 08:47 | |
TimToady | @shutup lambdabot | ||
lambdabot | Unknown command, try @list | ||
masak | TimToady: re (2) again: so my best shot at knowing which values I've taken is to push them to an array inside the gather? | 08:48 | |
TimToady | if you need such sequence points you probably shouldn't be using a gather | ||
masak | I see. | 08:49 | |
TimToady | if you need to know how many elements you've taken, I'd suggest counting the return values of the takes: my $sum += take @values; | 08:50 | |
but there's no guarantee that the gather will stop taking things after that, so any reliance on $sum is a race condition anyway | 08:51 | ||
lazy lists in general are allowed to "work ahead" if they feel like it | |||
masak | no, I envision sometimes wanting to know the exact values taken so far. I have no real use case, though. also, there's the problem of how to refer to a particular gather. | ||
TimToady | and many algorithms are more efficient if you can batch the work | 08:52 | |
moritz_ | which makes it nearly impossible to test if something is truely lazy | ||
except by taking infinite lists, which risks infinite loop if the lazyness isn't done right yet | |||
from the testing POV that's a real problem | 08:53 | ||
TimToady | well, an eager list could be construed as a lazy list that happens to have an arbitrarily large batch size :) | ||
and indeed, a lazy list is allowed to choose to be completely eager if it feels like it | 08:54 | ||
moritz_ | maybe for testing purposes we could have a pragma that enforces strict lazyness? | ||
TimToady | well, just feed the take with something that you can control the rate off, I suppose | 08:55 | |
moritz_ doesn't understand that | 08:56 | ||
TimToady | gather for 1..* { take $_; sleep 1 } will take a while to run out of memory :) | 08:57 | |
moritz_ | and then hope that the harness has a timeout | 08:58 | |
TimToady | note that the sleep is presumably running in a different threed than the outside of the gather | ||
well, you also throw a "last if $_ > 10" or some such into the loop | |||
08:59
meppl joined
|
|||
TimToady | presuming you have some way of checking the partial result from the outside thread | 08:59 | |
moritz_ | but that doesn't help if the gather is allowed to look ahead | ||
TimToady | but as I said, that probably involves drilling down into a lazy array for its reified status | ||
moritz_ | ENOSPECYET ;-) | 09:00 | |
TimToady | well, I doubt the schedular is going to feel like looking much past a "sleep 1" | ||
*scheduler | |||
that's not one of the algorithms that's likely to get optimized into batches :) | 09:01 | ||
09:01
iblechbot joined
|
|||
TimToady | but yes, perhaps a pragma would be able to instruct the optimizer in this case just to give warm fuzzies to the tester. :) | 09:02 | |
moritz_ loves warm fuzzies ;) | 09:03 | ||
pmurias | moritz_: shouldn't a decent harness have timeout support? | ||
masak | I'm trying to learn more about Parrot and PIR by implementing a non-lazy, non-dynamic gather in Rakudo. so far I've come to the conclusion that I need some ambient "gather object" that I can push the taken items to. | 09:04 | |
still mulling over how to do this in PIR | |||
moritz_ | pmurias: it should | 09:05 | |
masak: did you know that jonathan is working on lazy lists? | |||
masak | no, but that's good news. | ||
I figure step two of a gather implementation would be making it lazy | |||
and step three making it dynamic. | |||
thing is, I don't _need_ lazy or dynamic right now. I'd just like to use gather :) | 09:06 | ||
moritz_ | ;) | 09:07 | |
TimToady | metholate used lazy gather/take to do backtracking when STD was targeting pugs | ||
masak | to me, gather/take seems to be Perl 6's current way to expose continuations. | 09:08 | |
pmurias | coroutines | ||
masak | ...which are build on continuations, right? | 09:09 | |
or at least can be. | |||
TimToady | yes, gather/take is basically coroutines without constraining it to the subcall interface | 09:10 | |
masak | I really like that view of gather/take. | ||
I wonder if we will see a lot of zero-argument takes which only transfer control | |||
(or, if that's not possible, takes of meaningless values) | 09:11 | ||
TimToady | well, I return () all over the place in STD.pmc to indicate failure | ||
(and presumably initiate backtracking where appropriate) | 09:12 | ||
09:12
meteorjay left
|
|||
TimToady | well, I'd better go to sleep soon... | 09:15 | |
masak | TimToady: good night. | 09:16 | |
09:16
penk left
09:17
penk joined
09:36
fridim_ joined
09:43
zamolxes joined
09:50
iblechbot left
10:21
meppl left
10:24
meppl joined
10:35
wknight8111 joined
10:37
penk left
10:49
felipe joined
11:11
eternaleye_ left,
eternaleye_ joined
11:24
ashizawa left
11:26
larsen_ joined
11:30
nipotan is now known as nipotaway
11:36
wknight8111 left
11:46
fridim__ joined
11:59
fridim_ left
12:03
sahadev joined
12:44
meteorjay joined
13:02
Myoma joined,
Jedai joined
13:06
cmarcelo joined
13:20
alester joined,
alester left
13:25
stef_ joined
13:32
jferrero left
|
|||
pugs_svn | r21965 | pmurias++ | [smop] start of Code implementation | 13:33 | |
13:38
rdice joined
13:39
cognominal left
|
|||
pugs_svn | r21966 | moritz++ | partially revert r21965 which was a bit too eager | 13:43 | |
r21967 | masak++ | [gather.t] removed :todo<unspecced> because nowadays gather is specced lazy | 13:52 | ||
14:02
alester joined
|
|||
moritz_ | masak: did you review gather.t? | 14:13 | |
masak: if it conforms to current specs, consider moving it to spec/ | |||
spec/S04-statements/ presumably | 14:14 | ||
14:20
gbacon joined
|
|||
masak | moritz_: I could do that. :) just have to review $work first | 14:20 | |
14:20
Ara5n is now known as Arathorn
|
|||
moritz_ | masak: no hurry ;) | 14:20 | |
14:35
kanru left
14:41
zamolxes left
14:58
kanru joined
15:06
hercynium joined
15:08
Exodist joined
|
|||
masak | moritz_: ok, I fudged it up. when I run ./perl6 on the resulting file, though, I get a double free from Parrot. does that mean I should refrain from moving it into t/spec ? | 15:14 | |
moritz_ | masak: no, move it to spec nonetheless | ||
masak does so | 15:15 | ||
moritz_ | masak: as long as it's not included in rakudo's t/spectest_regression.data it's not run by default | ||
masak | ah, true | 15:16 | |
pugs_svn | r21968 | masak++ | [t/statements/gather.t] fudged for rakudo | ||
[particle] | masak++ | 15:17 | |
pugs_svn | r21969 | masak++ | [gather.t] moved into t/spec/S04-statements | ||
masak | now, food | 15:18 | |
moritz_ | masak++ | ||
15:18
jferrero joined
15:25
jferrero left
15:26
jferrero joined
15:34
fridim__ left
15:36
masak left
|
|||
pmichaud | pugs: my @a = 1..3; for 0, @a { .say; @a = (); } | 15:55 | |
p6eval | pugs: OUTPUT[0ā¤ā¤] | ||
pmichaud | pugs: my @a = 1..3; for 0, @a { .say; } | ||
p6eval | pugs: OUTPUT[0ā¤1 2 3ā¤] | ||
moritz_ | it doeesn't interpolate. | 15:56 | |
pmichaud | pugs: my @a = (1,2,3); for 0, @a { .say; } | ||
p6eval | pugs: OUTPUT[0ā¤1 2 3ā¤] | ||
moritz_ | and it doesn't do copy semantics as well | ||
pmichaud | you mean pugs doesn't do it, or Perl 6? | ||
moritz_ | pugs | 15:57 | |
moritz_ is deeply puzzled by what pugs does | |||
pmichaud | okay. I was expecting both to give "0\n1\n2\n3\n" | ||
moritz_ | pugs: my @a = 1..3; for 0, |@a { .say } | ||
p6eval | pugs: OUTPUT[0ā¤1 2 3ā¤] | ||
moritz_ too | |||
pmichaud | pugs: my @a = (0, 1..3); for @a { .say } | 15:58 | |
p6eval | pugs: OUTPUT[0ā¤1ā¤2ā¤3ā¤] | ||
pmichaud | pugs: my @a = 1..3; for (0, @a) { .say } | ||
p6eval | pugs: OUTPUT[0ā¤1 2 3ā¤] | ||
16:07
justatheory joined
16:13
[particle]1 joined
16:14
sri_work_ joined
16:17
iblechbot joined
16:20
TJCRI joined
16:25
luqui joined
16:26
sri_work left
16:29
[particle] left
16:30
Auzon1 joined,
Auzon left,
Auzon1 is now known as Auzon
16:36
[particle]1 left
16:42
masak joined
|
|||
masak | moritz_: may I ask what caused you to abandon your wiki plans? | 16:44 | |
moritz_ | masak: the translation step from wiki markup (I chose something like POD) to HTML | ||
masak: it proved to be quite ugly | |||
masak | oh | ||
I think we've found quite the opposite here | 16:45 | ||
PGE rocks | |||
moritz_ | do you use PGE directly? | ||
masak | through rakudo | ||
though we're not as fancy as POD so far | |||
just paragraphs + internal links | |||
moritz_ | well, I was able to translate most things, but I couldn't prevent XSS (aka html code injection) | 16:46 | |
and I found a few nasty parrot bugs that made me use pugs instead | |||
masak | we handle code injection, I think | ||
moritz_ | for which CGI.pm actually works quite decently | ||
masak | we intercept <>&'" | ||
moritz_ | yes, that's what it's all about | ||
masak | moritz_: p5 CGI.pm? | ||
moritz_ | no, ext/lib/CGI/ | 16:47 | |
masak | oki | ||
Juerd | masak: Did you know I have a creole wiki syntax grammar available, even though it's 100% untested? | ||
masak | Juerd: URL? | ||
moritz_ | in the end I ended up using REQUEST_URI anyway, so really didn't need much of CGI :/ | 16:48 | |
Juerd | masak: file://feather/home/juerd/creole | ||
masak | moritz_: we hesitate to use CGI.pm too much | ||
Juerd | 100% untested is not true. I did comment out some thing to make (an old version of) rakudo be able to parse it at least. | ||
moritz_ | masak: well, you don't need fancy URL parsing for wikis anyway | 16:49 | |
Juerd | Ugh, don't use or copy Perl 5's CGI.pm | ||
moritz_ | masak: my plan was to have an edit box on every page, so no extra URLs for that | ||
masak | Juerd: creole looks interesting | ||
Juerd | masak: Creole is the only acceptable alternative to mediawiki as far as I'm concerned | 16:50 | |
masak | Juerd: noted. | ||
Juerd | Also, it having an actual spec helps :) | ||
masak | :) | ||
moritz_ | Juerd: I just used ext/lib/CGI/ for the URL and POST parameter parsing | ||
Juerd | masak: Note that I used "rule" everywhere. I wasn't aware of token and things like it. | ||
masak | Juerd: over time, we want to migrate to Web.pm in november | 16:51 | |
Juerd | masak: Yay | ||
masak | Juerd: was this long ago? | ||
pmichaud | Creole is quite good, yes | ||
masak | Juerd: help with fleshing out Web for this purpose much appreciated | ||
pmichaud | several items in it are based on PmWiki syntax | ||
Juerd | masak: Last time I touched it was May this year | ||
16:51
jhorwitz joined
|
|||
Juerd | pmichaud: Did you work on creole too? | 16:52 | |
pmichaud | not directly | ||
but PmWiki was one of the strong influences on it | |||
masak | I have now added Creole to the list of markups we will look into | ||
pmichaud | I highly recommend simply implementing Creole markup, or POD | ||
pugs_svn | r21970 | pmurias++ | [smop] | ||
r21970 | pmurias++ | fixed Makefile adding garbage to the output; | |||
r21970 | pmurias++ | back and friends are passed to Code.mold during postcircumfix:<( )> | |||
Juerd | POD isn't very useful for a wiki, I found | ||
pmichaud | in fact, simply having a P6 grammar and parser for Creole would be a very good product/definition | 16:53 | |
Juerd | pmichaud: I once wrote a grammar but couldn't test it back then | ||
pmichaud: feather:~juerd/creole | |||
Probably sucks, but could perhaps be a starting point | |||
pmichaud | I'll look into it, definitely | 16:54 | |
I was pleasantly surprised at how little work I had to do to get PmWiki to support Creole syntax (well, at least 0.4. I haven't looked at 1.0 yet) | |||
Juerd | I have no idea if it can work the way I wrote it, but I found translating the specs to a grammar a nice mental exercise, and surprisingly doable. | ||
Perl 6 regex syntax really rocks, especially ''. | 16:55 | ||
16:55
[particle] joined
|
|||
pmichaud | it does rock. One can almost write complete programming languages in it. ;-) | 16:55 | |
Juerd | The only thing that I really dislike much is <[]>, but I can't think of a good alternative either | 16:56 | |
pmichaud | if there aren't any ranges involved, stuff like <[abc]> can be written as < a b c > | ||
Juerd | <[]> is because "a-z is no longer acceptable", but whatever I write tends to match character classes of *non* alphanums :) | ||
pmichaud | (PGE doesn't support < a b c > yet, but it's specced) | 16:57 | |
pmurias | pmichaud: where does the lol code emitting stuff live? | 17:02 | |
17:02
fridim_ joined
|
|||
pmichaud | it's not checked into the repo yet | 17:02 | |
it really needs a few refactors to PCT::HLLCompiler for prime-time use | 17:03 | ||
masak | cperl-mode in Emacs does a surprisingly good job of syntax-highlighting Perl 6 code. | 17:04 | |
pmurias | pmichaud: i wanted to base a m0ld backend on it | 17:05 | |
pmichaud | pmurias: I'll check it in this weekend, or I can mail you a copy | 17:07 | |
pmurias | [email@hidden.address] | 17:09 | |
pmichaud: is it written in pir or in Perl 6? | 17:12 | ||
pmichaud | PIR | 17:14 | |
pmurias | does rakudo have enough features for me to rewrite it in Perl 6? | 17:16 | |
17:23
eternaleye_ left
|
|||
pmichaud | well, it's not really part of rakudo -- it's part of the Parrot Compiler Toolkit | 17:26 | |
i.e., it's just another code generator for PCT | |||
17:26
eternaleye joined
|
|||
pmichaud | it might be doable in rakudo, or NQP -- at the time I was going for what would get it implemented for me the quickest, since I had a tight deadline :-) | 17:27 | |
17:27
ruoso joined
|
|||
ruoso | Hello! | 17:27 | |
ruoso at a local free software conference... hosting a Perl 6 hackathon | |||
masak | ruoso++ | 17:28 | |
17:35
pim joined
|
|||
pim | Hello | 17:35 | |
moritz_ | hi | ||
masak | y0 | ||
pim | May i write a program in perl6 actually? | ||
masak | pim: yes, it's true! | 17:36 | |
moritz_ | rakudo: say "yes, you can (small ones)" | ||
p6eval | rakudo 29834: OUTPUT[yes, you can (small ones)ā¤] | ||
masak | you can finally write Perl 6 | ||
pim: what do you want to write? | |||
I wrote a jukebox frontend today | |||
(actually, it was just the Schwartz transform on a list of files, but still) | 17:37 | ||
ruoso | pmurias: I'll implement .() in code to call BIND on the signature... but that will probably require adding a new fixed register on the molds that code receives | ||
[particle] | pmichaud: you wrote a lolcode emitter for pct? | 17:38 | |
ruoso | pmurias: I think the current lexical scope deserves one of the fixed registers | ||
masak | rakudo: my @a = (1,2,3,4,5); say map { $_[0] }, sort { $^a[1] <=> $^b[1] }, map { [$_, rand] }, @a | ||
p6eval | rakudo 29834: OUTPUT[34125ā¤] | ||
pim | Many things, but i just come discover perl is going to change completly, I come to read Perl6 on wikipedia, I write in Perl5 since a long time, but did not thing about it. | ||
masak | on second thought, maybe I should just have used pick() | 17:39 | |
pim: Perl 6 is almost here. but you can use it already, for great justice | |||
moritz_ | pim: Perl 6 isn't mature yet. It's nice to play with it, but don't think about starting "real" projects in Perl 6 yet | 17:40 | |
masak | people who use Perl 6 are happier, healthier and have better sleep patterns | ||
moritz_ | lol | ||
pmichaud | particle: yes, I wrote a lolcode emitter for PCT for a lightning talk at YAPC::EU :-) | ||
pim | What means almost? I know, some companies are about to perform their upgrades. | ||
pmichaud | and then used it to convert NQP code into LOLCODE | ||
including running NQP's tests as LOLCODE | |||
moritz_ | pim: from 5.8.8 to 5.10. Not to Perl 6 ;) | ||
masak | pim: "almost" means that whatever those companies are upgrading to, it's not Perl 6 | 17:41 | |
"almost" means a bug find rate of at least one per day | |||
17:42
fridim__ joined
|
|||
masak | it means you'll be spending half the time developing your app, and the other half delving into Perl 6 internals | 17:42 | |
17:42
cotto_work joined
|
|||
masak | it's... not for production | 17:42 | |
pim | Okayyy, I suppose i mistake, in fact, it was probably a test thez told me to see my reaction : no reaction! | ||
masak | pim: but do try Perl 6! use it for a hobby project or something | 17:43 | |
the time will be well invested, and you can write "years of Perl 6 experience" in a few years | |||
on your resume | |||
pim: do you have any specific questions about Perl 6 features? | 17:44 | ||
pim | Can i today get documentation about Perl6? that will not change so mutch? | ||
moritz_ will write "Perl 6 test suite pumpkin" in his resumee | |||
masak | spec.pugscode.org | 17:45 | |
pim: try that one. | |||
moritz_: and deservedly so. moritz_++ | |||
moritz_ | and I'm about to write a short tutorial-style perl 5 to perl 6 guide | ||
masak | nice! | ||
pim | thank you, is there french documentation today? | ||
masak | moritz_: have you looked at the one in the Pugs repo? | ||
moritz_ | pim: not that I know of | 17:46 | |
masak | pim: not that I know if | ||
s/if/of/ | |||
moritz_ | pim: there is German documentation, though - a bit | ||
masak: yes. Not what I had in mind (acutally I improved it a few days ago) | |||
masak | pim: Google Translate might help, with the usual caveats | ||
moritz_: good that you know of it | |||
pim | Or make a translater in Perl6!!! | 17:47 | |
masak | pim: then you might want to look into Perl 6 Grammars | ||
pim | Will Perl6 be a freeware? | ||
[particle] | of course! | ||
masak | they do recursive parsing, which you will need to parse natural sentence structures | ||
pim: very free! | 17:48 | ||
Juerd | pim: No, open source | ||
pim: It's free software, but "freeware" is typically not very free in the "as in speech" meaning of the word. | |||
pim | Open source, same licence, I means Artistic Licence. | 17:49 | |
Juerd | artistic 2, very probably. | ||
pim | I should read it once. | ||
masak | is Parrot under Artistic 2.0? | ||
Juerd | Someone at the yapc said "autistic license". I forgot the joke though. | ||
[particle] | yes, parrot is artistic 2.0 | 17:50 | |
masak | good | ||
[particle] | so will be rakudo | ||
masak | isn't it automatically, since it resides in the parrot repo? | ||
pim | Parrot, rakudo : many V.Machines!! How will perl do with it? | 17:51 | |
pmichaud | rakudo's copyright may end up being different from parrot's, though | ||
rakudo will definitely be artistic 2.0 | |||
[particle] | masak: rakudo will not reside in the parrot repo when parrot 1.0 is release | ||
masak | pim: rakudo is a Perl 6 implementation running on top of Parrot, a VM | ||
[particle] | *released | ||
masak | [particle]: ok | ||
pim | Sorry :O( | ||
masak | pim: apart from Perl 6, Parrot supports a host of other languages | 17:52 | |
pmichaud | afk, lunch | ||
masak | pim: that's how it's going to handle it :) | ||
pim | Yes i red it today, merci bien! | ||
masak | de rien | ||
pim | More concretly : May i use perl6 on Debian GNU Linux today? and how? | 17:53 | |
masak | pim: I imagine there's a yum package for Parrot | 17:54 | |
moritz_ | masak: yum isn't for Debian ;) | 17:55 | |
masak | oops, sorry :) I meant apt | ||
it's been too long since I was a debian user, clearly | |||
moritz_ | pim: usually we get parrot from the svn repository, build it and use it locally (ie without installing) | 17:57 | |
17:57
fridim_ left
|
|||
moritz_ | Juerd: may I remind you to set up a feather account for StephenPollei? (in case you have tuits atm ;-) | 17:58 | |
Juerd: if it's documented somewhere I can also do it | |||
ruoso | hmm... { ... }.($foo) should be translated to a capture that contains the actual capture present in the syntax... because postfix:() receives the code as the invocant | 17:59 | |
and postfix:() will also be used to method invocation, which has the invocant as the objec, and not the method object | |||
pim | masak: yum is not part of Debian you mean RPM package probably. | ||
masak | pim: no, I meant apt | 18:00 | |
pim: but if you can, you should probably follow moritz_' advice and download via svn | |||
pim: do you use svn? | |||
pim | no, i did searh today, not in official distribution. | 18:01 | |
moritz_ | packages.debian.org doesn't list a parrot package; there had been a package a while back (maintained by rafl++), but it seems to have bitrotten and has been removed | ||
and parrot has the ports/debian/ dir, but I don't know if it's functional | |||
pim | masak: rarely, i don't even remember how to use it. | 18:02 | |
masak | pim: www.parrotcode.org/source.html | ||
there you will find many means of downloading | |||
lambdabot | Title: Parrot Source Code & Packages - parrotcode | ||
pim | Ok, but i can compile it i'm programming in C as well a little and am used to compile. | 18:03 | |
masak | pim: unless you find a binary package (unlikely), you will need to compile, yes | 18:04 | |
there are instructions in the README once you've downloaded the source tree | |||
moritz_ | on Debian it boils down to 'perl Makefile.PL; make' | ||
pim | masak: many thanks ;O) | ||
masak | pim: good luck! | ||
moritz_ | although my magic line is 'make realclean && perl5.10.0 Configure.pl --cc='ccache gcc' && make -j 2 test' | 18:05 | |
masak | moritz_: why the 5.10.0? what do the --cc and -j flags do? | ||
moritz_ | masak: because the Test::Harness that comes with 5.10 gives better output, sometimes | 18:06 | |
StephenPollei | cc cahanges his complier | ||
and the j does it parrelel | |||
moritz_ | masak: the cc options uses ccache for compiling | ||
right | |||
with 2 jobs in parallel | |||
masak | moritz_: oh right, the Test::Harness that only worked on Linux. | 18:07 | |
ooh, parallelis | |||
m | |||
moritz_ | masak: as a linux-only user I can't comment on that ;) | ||
pim | Thank's to all of you. | ||
18:07
pim left
18:10
exodist_ joined
18:14
Exodist left
|
|||
ruoso | pmurias: does a mold frame goto its back when it reaches its end? | 18:16 | |
18:17
donaldh joined,
justatheory left,
c1sung left,
speckbot left,
agentzh left,
drbean left
18:18
justatheory joined,
c1sung joined,
agentzh joined,
drbean joined,
speckbot joined
|
|||
rafl | moritz_: pkg-parrot has been created on alioth | 18:19 | |
moritz_: but not much happened there yet, as it seems. | |||
18:20
BinGOs left
|
|||
rafl | moritz_: a while ago i asked alison about the current state and if it'd be ok for me to join that group or if it's ok with them if i uploaded something new in the meantime, but nothing happened yet. | 18:20 | |
ruoso | pmurias: I'm implementing set_reg as a high-level method for the mold frame | 18:21 | |
18:25
BinGOs joined,
speckbot left
18:27
pim joined
|
|||
TimToady | ruoso: I consider .() to be a postfix macro, not a real method call | 18:28 | |
pim | I just compiled parrot and ran the test : All tests successful, 18 tests and 665 subtests skipped. | ||
masak | pim: congrats | ||
pim: now for the next step: compiling Rakudo Perl 6 | |||
moritz_ | 665 skipped sub tests? sounds like a lot | ||
moritz_ compiles and looks how many are skipped for him | 18:29 | ||
pim | Okay thank's, that was about to be my question. | ||
moritz_ | pim: next step: cd languages/perl6; make spectest_regression | ||
18:29
speckbot joined
|
|||
masak | pim: after that, you can haz Perl 6! | 18:29 | |
pim | Okay : thank you! | 18:30 | |
moritz_ | (if you don't have libicu installed, you'll get a few more skips than me. Likewise for opengl) | ||
pim | I tried to install parrot (eg with argument confirm_install or something like) but it returned an error after some time, i post the error... | 18:31 | |
moritz_ | pim: the folks on irc.perl.org #parrot will be much more interested in that than we are | 18:32 | |
(although there's some intersection between the two channels) | |||
pim | Thank you for the information but i think it's probably a simple problem. | 18:35 | |
An just a line to post : src/parrot_debugger.c:147: rōæ½xE9fōæ½xE9rence indōæ½xE9finie vers ōæ½xAB Parrot_set_config_hash ōæ½xBB | |||
moritz_ | try LC_ALL=C make confirm_install to get english error messages | ||
pim | i think it's a config problem | 18:36 | |
moritz_ | there were some changes to the parrot debugger lately | ||
could you send a mail to [email@hidden.address] please? | |||
pim | rōæ½xE9fōæ½xE9rence indōæ½xE9finie = undefined reference to | 18:37 | |
18:37
c1sung left,
agentzh left,
justatheory left,
drbean left
|
|||
moritz_ | (considering that I learned French for 11(!) years in school I understand sadly little ) | 18:37 | |
pim | thanks you : effectively it's just when compiling the debugger i suppose. | 18:38 | |
18:39
justatheory joined,
c1sung joined,
agentzh joined,
drbean joined
|
|||
masak | moritz_: suddenly, we succeeded in compiling our libraries down to PIR over here :) | 18:39 | |
the trick was to do it for all files except the main one | 18:40 | ||
running time is halved! | |||
pim | Thank you to all of you for your informations. I'll tell you what's new. | ||
moritz_ | masak: cool ;) | 18:41 | |
masak: did you also precompile modules (assuming you use some)? | |||
masak | which modules would that be? | 18:42 | |
I mean, we have a few .pm files that we wrote ourselves | |||
it was those that we now precompiled to PIR | |||
moritz_ | yes, that's what I meant | ||
masak | hence the 50% speedup | ||
pugs_svn | r21971 | ruoso++ | [smop] YAY! We have code blocks working... with signature binding and all... | 18:48 | |
18:50
Squern joined
|
|||
masak | ruoso++ | 18:50 | |
ruoso | for those who are curious... test/21_code.m0ld is a good example on how code blocks are going to be initialized | 18:51 | |
18:52
TJCRI left
18:54
xinming joined
|
|||
pugs_svn | r21972 | ruoso++ | [smop] default block signature is set when no signature is sent on code creation | 18:54 | |
18:57
luqui left
18:58
Schwern left
|
|||
ruoso | bbl & | 19:01 | |
19:01
ruoso left
19:06
xinming_ left
19:11
xwrn joined
|
|||
pugs_svn | r21973 | lwall++ | [STD etc.] squeezing out unnecessary calls to lazymap under ratchet | 19:12 | |
19:13
zamolxes joined
19:14
sahadev left
|
|||
masak | Juerd: ok, we have november running on the console on feather now | 19:16 | |
is there a SOP for setting up something using Apache on feather? | 19:17 | ||
Juerd | You have console access? Not even I have that :) | ||
(I could, but it's disconnected) | |||
See feather.perl6.nl | |||
masak | Juerd: I'm in ur console, haking ur feather :) | ||
Juerd: ok | |||
ah, so ~/public_html | 19:19 | ||
19:19
Squern left
|
|||
Juerd | ~/public_html is only for static content | 19:19 | |
masak | ah, so not ~/public_html | ||
Juerd | Read on | ||
masak reads whole page before saying anything | |||
Juerd | Did you just say something? :) | 19:20 | |
masak | Juerd: no, that was a CTCP action :) | 19:21 | |
Juerd | Heh | ||
masak | I'll attempt the instructions under the first FAQ, then | 19:24 | |
Juerd: that seems to have worked -- no errors along the way | 19:29 | ||
19:30
zamolxes left
|
|||
masak | Juerd: what's supposed to be accessable after I've started apache? feather.perl6.nl/~masak/apache/test.cgi isn't. | 19:31 | |
19:34
jferrero left
19:35
jferrero joined
|
|||
Juerd | masak: See the port number in the config file | 19:43 | |
masak: feather.perl6.nl:port/ | |||
masak | ah. | ||
that was the part I missed | 19:44 | ||
CGI works! | 19:45 | ||
masak dances some | |||
smg | how about fcgi? | ||
masak | well, that's it for today. | 19:48 | |
I'll try to hook in november some other day | 19:49 | ||
19:50
masak left
19:54
drbean left
19:55
drbean joined
19:56
pim_ joined
|
|||
pim_ | I tried to join parrot but nobody's there :0| | 19:57 | |
Auzon | it's on irc.perl.org | ||
pim_ | Ok | ||
19:58
pim_ left
20:04
zamolxes joined,
pim left
20:06
c1sung left,
agentzh left,
justatheory left,
justatheory joined,
c1sung joined,
agentzh joined
|
|||
pmurias | TimToady: re consider .() a macro so function call isn't postcircumfix:<( )> underneath? | 20:08 | |
TimToady | sure, but semantically they both turn into APPLY, not a method call | 20:11 | |
pmurias | what | 20:12 | |
's the difference? | |||
pmurias hates when an accidently pressed difference forces him to ask a question prematurely | 20:13 | ||
20:16
jhorwitz left
20:17
jhorwitz joined
|
|||
pmurias | TimToady: is there anything in the spec which rules out translating foo() into &foo.postcircumfix:<( )>? (found only the Method call vs Subroutine call) | 20:21 | |
20:28
larsen_ left
|
|||
pugs_svn | r21974 | pmurias++ | [smop] removed a warn used for debugging the build system | 20:32 | |
20:33
cotto_w0rk joined
20:40
cjfields joined
20:42
wknight8111 joined
20:43
pmurias left
20:49
cotto_work left
|
|||
TimToady | foo(42) doesn't turn into &foo.postcircumfix:<( )>, but into &foo.postcircumfix:<( )>(42), and then you have trouble | 20:54 | |
() has to be a special form | |||
one of the few true primitive constructs | |||
21:02
lambdabot left,
lambdabot joined
21:06
fridim__ left
21:20
[particle]1 joined
21:23
[particle] left
21:24
rdice left,
jhorwitz left
21:26
cjfields left
21:31
zamolxes left,
zamolxes joined
21:41
larsen_ joined
21:44
cmarcelo left
21:54
xwrn left
21:58
[particle] joined,
[particle]1 left
22:12
hercynium left
22:25
donaldh left
22:46
c1sung_ joined,
c1sung left,
agentzh left,
justatheory left
22:47
Schwern joined
22:52
justatheory joined
22:55
IllvilJa left
22:56
agentzh joined
22:58
jferrero left
22:59
exodist_ left
23:16
iblechbot left
23:25
hercynium joined
23:45
Limbic_Region joined
23:52
meppl left
23:54
aindilis left
23:56
aindilis joined
|