»ö« 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.
skids I do like the new half brackets, but they don't seem to be in default compose keymaps, unfortunately. 00:01
pmichaud well, hopefully the defaults will change with worldwide adoption of perl 6. :-) 00:02
also, my font doesn't seem to display half brackets
dalek kudo/nom: 690d774 | pmichaud++ | src/core/ (2 files):
Refactor prefix:<|> flattening for Ranges and other types.
00:03
sirrobert I'm learning to write grammars, but having a wierd problem. (I think there's something I don't get about newlines or something). 00:07
gist.github.com/2980628
pmichaud \s* doesn't really make sense in a rule 00:08
sirrobert ok...
pmichaud since whitespaces in the rule already implies \s* 00:09
sirrobert I can't get it to ignore the first part of a slurped file
pmichaud inside of method verb($/), you might want 'eq' instead of '=='
sirrobert oh, yeah
Still, adding a blank line at the top of the file breaks it 00:10
even with the \s* removed
pmichaud looking
sirrobert (cleaned up the gist by replacing == with 'eq' and removed the \s* in all places. Same problem) 00:12
pmichaud ah, it's the ^ that's an issue. 00:13
it's somewhat of a rakudobug; the whitespace before the ^ is eating up the newline before testing for "start of string", and with 'rule' there's no backtracking. 00:14
sirrobert ok!
pmichaud I think a recentish spec change causes leading whitespace before a ^ to be ignored... but rakudo doesn't implement that.
sirrobert glad it's not me =)
pmichaud so, eliminate the space before the ^ and maybe it will work.
or, switch TOP to be a 'token' instead of a 'rule' 00:15
sirrobert ok, great.
should I file a bug on this somewhere?
00:15 cj joined
pmichaud message to [email@hidden.address] would be helpful, yes. 00:15
you can just copy/paste this discussion into the bug report 00:16
sirrobert (and, thanks a lot =) I spent several hours trying to figure out what I was missing =)
ok
pmichaud glad to help, sorry you lost the hours :)
sirrobert It was a net gain -- I learned all about grammars, which was the goal =) 00:17
pmichaud sirrobert++
afk for a while 00:20
sirrobert ditto
00:33 telex left 01:01 adu joined 01:06 xinming_ joined 01:09 xinming left 01:12 tokuhirom joined, thou joined 01:13 thou left 02:07 xdbr left 02:23 orafu left 02:24 orafu joined 02:30 BaggioKwok joined 02:38 adu left 03:04 leprevost joined 03:39 BaggioKwok left, _jaldhar left, _jaldhar joined 03:55 BaggioKwok joined 04:02 BaggioKwok left 04:08 _jaldhar left, _jaldhar joined 04:10 Chillance left 04:32 _jaldhar left, _jaldhar joined 04:44 leprevost left, adu joined 04:49 kaare_ joined 05:17 thou joined 05:35 adu left 05:37 _jaldhar left 05:38 _jaldhar joined 05:39 _jaldhar left, _jaldhar joined 05:50 _jaldhar left 05:51 _jaldhar joined 06:07 GlitchMr joined 06:14 mucker joined 06:28 _jaldhar left 06:29 _jaldhar joined 06:32 _jaldhar left 06:44 sisar left 07:15 sivoais left 07:17 birdwindupbird joined 07:19 birdwindupbird left 07:20 sisar joined 07:23 sivoais joined 07:24 birdwindupbird joined, dbr joined 07:31 birdwindupbird left 07:37 mucker left 07:57 thou left 07:59 BaggioKwok joined
moritz \o 08:13
Woodi hallo today :) 08:18
I have problem with trust to PP6 modules... *usually* they are very short and I don't realy know is it sign of Perl6 greatness or modules have just minimal functionality... 08:20
just *impression*...
Woodi just noticed that "Perl6" do not look alien-ish now to him :) 08:22
08:23 BaggioKwok left
moritz well, often the features of perl 6 modules are rather limited 08:26
I guess the important question is "do they do what you want?" 08:27
08:29 mustapha left
Woodi I was just talking about impresion when just skimming throught modules library on github. Names sound great, .pm after .pm are so short usually. Probably I would like to see something like '#sub feature_name { } # TODO' or maybe some info in README what concretly is missing 08:36
08:37 kaare_ left
Woodi just talking about *fast* impressions, hopes, expectations and wishes :) 08:37
08:37 brrt joined
sisar moritz: fwiw, the NQP rebuilding issue I was having yesterday, it went away. I'm not sure how, but I did this: manually deleted /rakudo/install/bin/nqp & then '--gen-parrot'. 08:38
Woodi I keep Perl6 files in /opt/perl6 and when installing new version I usually just rm -r * there... and /opt/perl6 is chown to normal user so I do not need 'su root' for installation 08:41
08:42 pupoque_ joined
Woodi hmm, I probabyly lied... now I have everything installed to chowned /aux/graft and then 'grafted' to /opt, which is user-chowned... 08:42
08:43 pupoque_ is now known as Gesh
Woodi -Gesh-: hallo :) 08:43
Gesh hi ^)
Woodi I like your confession yesterday about no idea why you like Perl :) I have the same, no idea why :) 08:44
Gesh I'm not an experienced Perl hacker, I just know some essentials. And I even don't know Perl well enough to compare it with other languages. It was some kind of the beginners judgement 08:47
Now i'm trying to figure out a distro with latest rakudo. There is 2011.07 in Ubuntu 08:48
Woodi I am anti-expert too :) and probably it this likines is just state of mind :)
Gesh Maybe ^) 08:49
Woodi and why my irc client says I am 37 days away ?
sisar moritz: can you invite me to perl6advent.wordpress.com ? I'd like to fix a broken link. 08:52
ok, moritz is away, can anyone else invite me ? 08:53
08:56 plobsing left
sisar afk 08:56
masak good morning, sweethearts. 08:58
tadzik hello masak
08:58 sergot joined
sergot hi o/ 08:58
masak this is another wonderful day when we bring Perl 6 closer to widespread adoption. 09:01
sisar masak, tadzik maybe you can send me an invite to perl6advent ? #see backlog 09:02
masak my goal for the day is to get the p6cc/t5 blog post out the door. it's gonna be pretty great.
sisar: I'll see what I can do.
fix'd. 09:07
masak breaks the night's fast
09:18 birdwindupbird joined
moritz r: say (^5).bounds.perl 09:19
p6eval rakudo 690d77: OUTPUT«(0, 5)␤»
dalek c: 300a79e | moritz++ | lib/Range.pod:
[Range] add signatures; method bounds
09:20
masak diakopter: rt.perl.org/rt3/Ticket/Display.html?id=67124 looks like it presupposes an old embedded-comments syntax. mind if I just reject the ticket? 09:25
sisar um, when we have to display some code on a webpage, which is preffered: <pre>, <code> or a <code> inside a <pre> ? 09:27
tadzik I have no eye deer :)
masak Gesh: 2011.07 is a good one, but there have been *lots* of improvements in the past half-year. if you want to benefit from those, I suggest you grab the latest release. building from the .tar.gz is quite easy. 09:28
sisar: for some reason, I've standardized on <pre><code>...</code></pre> in my blog posts.
I no longer remember exactly why. some of the time I get away with just Markdown's four-space indent, but that isn't enough when I want formatting and links in there. 09:29
sisar masak: ok, i'll copy you, for some reason :p
masak and so the cargo-culting continues... :)
09:31 sergot left
masak shoppe & 09:33
moritz nr: say <a b>.succ 09:35
p6eval niecza v18-7-ga660099: OUTPUT«Unhandled exception: cannot increment a value of type Parcel␤ at /home/p6eval/niecza/lib/CORE.setting line 1402 (die @ 5) ␤ at /home/p6eval/niecza/lib/CORE.setting line 272 (Mu.succ @ 9) ␤ at /tmp/UOiWmuAIne line 1 (mainline @ 3) ␤ at /home/p6eval/niecz…
..rakudo 690d77: OUTPUT«No such method 'succ' for invocant of type 'Parcel'␤ in block <anon> at /tmp/SBaxYvI9vM:1␤␤»
moritz where does succ come from? Numeric? and then another one in Str?
or is there a common role or class? 09:36
09:40 telex joined
sisar this line: "#!/usr/bin/env perl6 use vcalling native perl6advent6; use NativeCall;" from perl6advent.wordpress.com/2010/12/1...om-perl-6/ looks wrong. 09:44
what is 'vcalling native perl6advent6" ?
moritz looks like copy&paste gone wrong 09:46
somebody wrote 'use v6';
and copied something between the v and 6
sisar moritz: aha ! nice catch. I'll fix that.
moritz nr: say 'ab cd'.succ 09:47
p6eval rakudo 690d77, niecza v18-7-ga660099: OUTPUT«ab ce␤»
sisar and this first part ""#!/usr/bin/env perl6", is this correct ?
dalek c: 2baa240 | jnthn++ | lib/Code.pod:
Start documenting Code.
09:48 sergot joined
moritz sisar: yes 09:48
\o/ contributions to doc!
jnthn++
jnthn Well, dunno if they're any good. :)
It's my first commit there, lemme know if I did anything rong. :)
I looked at Any.pod and tried to follow the style.
moritz looks good 09:49
jnthn \o/
moritz you could be a bit more specific about the return types in the signatures
but that's not a must
jnthn What's the standard way to do that?
09:50 spider-mario joined
moritz method arity(Code:D:) returns Int:D 09:50
jnthn Nothing in Any did, afaict...
moritz List.pod has some examples
well, most stuff in Any can return Any, so it's a bit pointless to add Any as annotations :-)
jnthn Well, apart from any/all/one return Junction. 09:51
moritz nr: say 'zz'.succ
p6eval rakudo 690d77, niecza v18-7-ga660099: OUTPUT«aaa␤»
dalek c: f4e26e1 | jnthn++ | lib/Code.pod:
Add some return type documentation; moritz++ for noting it was missing.
09:52
moritz jnthn++
sisar phenny: tell flussence, i formatted the code snippets on perl6advent.wordpress.com/2010/12/1...m-perl-6/, can you check if I did not inadvertently broke something. 09:53
phenny sisar: I'll pass that on when flussence is around.
moritz nr: say 'ɑ'.succ
p6eval rakudo 690d77: OUTPUT«ɑ␤»
..niecza v18-7-ga660099: OUTPUT«WTF␤»
moritz lol
nr: say 'a9'.succ 09:54
p6eval rakudo 690d77, niecza v18-7-ga660099: OUTPUT«b0␤»
moritz .u ɑ 09:56
phenny U+0251 LATIN SMALL LETTER ALPHA (ɑ)
jnthn moritz: We'll ship these docs in R*?
moritz nr: say 'α'.succ
p6eval rakudo 690d77, niecza v18-7-ga660099: OUTPUT«β␤»
moritz jnthn: sure
jnthn \o/
moritz jnthn: speaking of which, does p6doc work on windows?
sisar arrgh, wordpress breaks code formatting:/ Write something like <pre><code>...</code></pre> in the 'HTML' view, then change to 'Visual' and see wordpress throw away your indentations and newlines mercilessly :| 09:58
jnthn moritz: Not quite :(
C:\consulting\perl6\doc>perl6 bin/p6doc
What documentation do you want to read?
C:\consulting\perl6\doc>perl6 bin\p6doc Str.split 09:59
Cannot locate Str in any of the following paths:
moritz sisar: wordpress also mangles newlines
jnthn ...and a list of paths...
moritz :(
sisar moritz: aye
moritz jnthn: does $*PROGRAM_NAME contain backslashes or slashes on windows?
jnthn moritz: perl6doc -Ilib bin/p6doc Str 10:00
That does something else
10:00 Gesh left, pupoque left
jnthn 'less' is not recognized as an internal or external command, 10:00
operable program or batch file.
moritz jnthn: then it gets one step further
jnthn moritz: If I s/less/more then it shows docs \o/
Needs the -Ilib though.
moritz jnthn: it tries to run perl6 --doc $somefile | less 10:01
jnthn moritz: Is there a reason for using less instead of more?
Aren't they more or less the same?
moritz r: say $*OS
p6eval rakudo 690d77: OUTPUT«linux␤»
jnthn Apart from more works on more platforms? :)
moritz jnthn: less allows scrolling up and down, more only down
jnthn ah
moritz jnthn: what does $*OS report on your platform? 10:02
jnthn MSWin32
moritz jnthn: please try again 10:04
dalek c: 5c333a0 | moritz++ | bin/p6doc:
try some win32 fixes
10:05
c: 88a038a | moritz++ | lib/Str.pod:
some Str.succ description
moritz nr: say 'b0'.pred
p6eval rakudo 690d77, niecza v18-7-ga660099: OUTPUT«a9␤»
moritz nr: say 'a0'.pred
p6eval niecza v18-7-ga660099: OUTPUT«Unhandled exception: Magical string decrement underflowed␤ at <unknown> line 0 (KERNEL Str.pred @ 1) ␤ at /tmp/bcA4V70c1z line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3917 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line…
..rakudo 690d77: OUTPUT«Decrement out of range␤ in method gist at src/gen/CORE.setting:9461␤ in sub say at src/gen/CORE.setting:6988␤ in block <anon> at /tmp/dplrOIGp1g:1␤␤»
moritz nr: say 'img002.png'.pred 10:07
p6eval rakudo 690d77, niecza v18-7-ga660099: OUTPUT«img001.png␤»
dalek c: 4bfc101 | moritz++ | lib/Str.pod:
[Str] method pred
10:08
10:08 vmspb joined
jnthn moritz: oops 10:09
===SORRY!===
Malformed initializer
at bin/p6doc:48
moritz dammit
I should compile before committing :(
jnthn ah, I see it
moritz missing closing quote 10:10
dalek c: 055e79f | jnthn++ | bin/p6doc:
Fix compile-o. Works nicely on Windows now.
moritz \o/
jnthn Doesn't need -Ilib any more either
moritz I hoped so 10:11
10:14 kaare_ joined 10:16 brrt left, JimmyZ joined
sisar moritz: en.support.wordpress.com/code/posti...rce-code/. I tried it and it works. 10:16
moritz sergot: I like your patch to &dir, but I'd prefer not to run a regex for every dir entry 10:17
10:18 Kresike joined
sergot moritz: so maybe delete / from $path? 10:18
moritz sergot: regexes are pretty expensive in rakudo. If you use .substr(*-1) eq '/' instead of the regex match, I'll apply it
Kresike hello all you happy perl6 people
sergot moritz: Ok, I'll change it. :)
moritz \o Kresike, today with upper case first letter :-)
sergot Kresike: hi !
Kresike moritz, sergot o/ 10:19
Kresike connected from his home workstation
10:19 Kresike is now known as kresike
kresike there 10:19
moritz \o lc 'Kresike' # :-) 10:20
huf i always try to guess nationality by nick 10:21
this time, i succeeded
(mostly, i fail)
moritz would have guessed "French" for pmichaud :-) 10:24
kresike huf, my regular nickname is crash, but that's taken here on freenode 10:25
masak moritz: there was a long stretch during 2008 when I pinned pmichaud as French without thinking. (and I marveled a little at his flawless English) 10:26
huf oh, crash, kres, i get it 10:27
kresike masak, I can't quite guess your nationality, but I see that your english is perfect, and still by name I don't think that's your native language 10:29
jnthn masak's English is too perfect to be a native speaker. :D 10:30
huf does he at least have an accent or is he a perfect god? 10:31
jnthn Not much in the way of accent either. :-) 10:32
huf dammit, some slight flaw would've made him more human
kresike hmmm, that godness explains the towel on his head :) 10:34
though I have seen nicer cronws ...
masak I'd say my accent ever-so-slightly betrays my actual nationality. also, my pronunciation is a mix of BE and US. 10:39
my last name makes people think I'm German, most of the time.
10:46 MayDaniel joined
masak kresike: that towel was once lost in battle. I fought my way through indescribable difficulties to gain it back. that's why I look slightly annoyed on that photo. 10:49
10:50 PacoAir joined
kresike masak, Did you use weapons in that battle, or just words ? In the latter case, I think no one had any chance :) 10:52
moritz ... and since then, masak carries the title Fierce Warrier of the Towel
masak it was a battle of mostly words. some silent stares were involved, too. 10:53
moritz hopes people have seen github.com/mattdiamond/fuckitjs 11:02
masak moritz: looks like an odd joke with lots of swearing in it. 11:07
jnthn I don't think there's any swearing besides fuck. 11:12
Which is just the library name :P
masak "Fuck it, use FuckIt.NoConflict." 11:13
jnthn oh no, the source ther's a //@TODO: give a .. :)
I actually learned something I didn't know about jQuery from the source too :P 11:15
sisar jnthn: though a bit old, but jut for you: www.phoronix.com/scan.php?page=news...px=MTEwMDA 11:17
*just
*just right
jnthn wtf, how are you meant to write good code with Bud Light... 11:19
Garbage In, Garbage Out...
sisar *lol* 11:20
11:21 whiteknight joined, whiteknight is now known as Guest78621
moritz masak: yes, just the right kind of odd joke for me 11:34
vmspb Hello 11:40
kresike yay, installed rakudo by hand, and it's running the spectests
vmspb How to get $PERL_VERSION_MAJOR (5 or 6), what would this could work in Perl5 and Perl6?
p5 & p6: if ($PERL_VERSION_MAJOR >= 6) {say 'eval $p6code'} else {say 'eval $p5code'}
p5: if ($^V >= 6) {say 'eval $p6code'} else {say 'eval $p5code'} 11:41
p6: if ($?PERL.version >= 6) {say 'eval $p6code'} else {say 'eval $p5code'}
p6eval rakudo 690d77: OUTPUT«===SORRY!===␤Variable $?PERL is not declared␤at /tmp/aV8T9_vWTY:1␤»
..niecza v18-7-ga660099: OUTPUT«Unhandled exception: Unable to resolve method version in type Hash␤ at /tmp/X0wBAdM1NP line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3917 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3918 (module-CORE @ 562) ␤ at /hom…
11:42 frankat joined 11:43 frankat left
moritz p6: if (':2<1>' == 1 ) { print "Perl 6" } else { print "Perl 5" } 11:44
p6eval rakudo 690d77, niecza v18-7-ga660099: OUTPUT«Perl 6»
moritz eval: if (':2<1>' == 1 ) { print "Perl 6" } else { print "Perl 5" }
buubot_backup moritz: Perl 51
moritz (the 1 is just the return value from the print)
11:44 linus joined
masak checking $/ should also work. 11:54
moritz eval: 5 if $/; 11:55
buubot_backup moritz: 5
moritz p6eval: say 6 if $/
p6: say 6 if $/
p6eval rakudo 690d77, niecza v18-7-ga660099: ( no output )
moritz p6: say 6 unless $/
p6eval rakudo 690d77, niecza v18-7-ga660099: OUTPUT«6␤» 11:56
moritz masak++
sergot moritz: I changed what you said, but I've a question... There could be '/' and '\', it depends on what system we use, right? Should I take this into account? 12:00
moritz sergot: since it's just a cosmetic feature, I'm fine with it only considering / 12:01
sergot Great. :)
12:02 vmspb left 12:05 MayDaniel left 12:06 linus left 12:11 brrt joined 12:13 leprevost joined 12:17 MayDaniel joined
spider-mario .u ο 12:46
phenny U+03BF GREEK SMALL LETTER OMICRON (ο)
masak idly wonders why Unicode has stopped working for him in feather/screen 12:50
moritz masak: I've upgraded screen on feather 12:51
masak: maybe you need to restart your instance of it
masak aye. 12:58
in fact, it was after my last session disappeared that things look wrong. 12:59
13:09 tokuhirom left, Patterner left 13:10 Psyche^ joined, Psyche^ is now known as Patterner 13:11 tokuhirom joined
spider-mario .u μ 13:11
phenny U+03BC GREEK SMALL LETTER MU (μ)
spider-mario .u µ
phenny U+00B5 MICRO SIGN (µ)
spider-mario oh.
13:12 erkan left
masak spider-mario: Unicode does one glyph per intended use, and the micro sign is used in contexts different from the greek letter that looks the same. 13:13
great for obfuscations, though.
spider-mario I see, thanks for the clarification 13:14
pmichaud good morning, #perl6 13:16
13:17 jimmy1980 joined
jnthn hi, pmichaud 13:18
moritz good am, pm 13:19
13:22 Chillance joined 13:26 tokuhirom left
pmichaud oh, I should probably restart my screen session also. 13:26
doing that now -- bbiab
13:26 pmichaud left 13:27 pmichaud joined 13:32 mikemol left
masak pmichaud! \o/ 13:36
dalek kudo/nom: d90f671 | moritz++ | docs/release_guide.pod:
[release_guide] remove SVNisms
13:38
c: e1f3193 | pmichaud++ | lib/Any.pod:
Punctuation fixes.
13:45
kudo/nom: 4b2c1fe | moritz++ | docs/release_guide.pod:
[release_guide] remove redundancy with nqp's release guide

Also split bumping of VERSION and NQP_REVISION into separate steps
13:46
sisar .u 􏿽xB5 13:53
phenny UnicodeDecodeError: 'utf8' codec can't decode byte 0xb5 in position 0: unexpected code byte (file "/usr/lib/python2.6/encodings/utf_8.py", line 16, in decode)
sisar huh ?
moritz .u µ 13:54
phenny U+00B5 MICRO SIGN (µ)
moritz sisar: I guess yours was latin-1, not UTF-8
sisar hmm, i just copy pasted spider-mario's code. Maybe XChat's clipboard changes things when you copy.. 13:56
... and pate back
*paste
suppose I type like this: Ctrl+Shift+u then 00b5 (on Ubuntu), then it should give the correct output. But phenny still gives me the Unicode DecodeError. Why ? 14:01
dalek c: a759831 | pmichaud++ | lib/ (4 files):
Some more minor cleanups.
14:02
moritz pmichaud++ 14:09
cognominal is there a converse of &slurp, say &spit? 14:11
moritz no 14:12
pmichaud cognominal: we could never come up with a good word for the opposite of &slurp. Although &spit isn't too bad :-)
moritz every name we've come up with so far is at least a bit ugly
masak ooh, &spit
moritz we've had that one suggested years ago too
masak aye.
but it's at least much less disgusting than some of the other alternatives. 14:13
flussence dunno, I think &spill sounds nice
phenny flussence: 09:53Z <sisar> tell flussence i formatted the code snippets on perl6advent.wordpress.com/2010/12/1...m-perl-6/, can you check if I did not inadvertently broke something.
masak ooh, &spill
anyway, need to think hard about failure modes.
what happens if there's already a file there?
pmichaud &spill is a good choice also. Maybe &fill too, or &pour
masak ooh, &pour. that's the best so far. 14:14
pmichaud &spout
masak &pour's good partly because it's not a direct opposite.
and you &pour before you &slurp.
cognominal I like &spout 14:15
masak &spout sounds a bit violent.
sisar &vomit :p
masak ...and here we go... 14:16
...again...
maybe &bikeshed captures the full set of subtle meanings.
I dunno, it just feels right to me.
pmichaud I kind of like &fill and &pour now; since &slurp is grabbing the contents of a container, &fill and &pour are what you do to put something into the container. 14:17
masak anyway, I'm volunteering to spec &pour, with a positional taking a file name, and a named :append
sisar &vacate
pmichaud masak: +1 from me
flussence sisar: I don't see any obvious breakage, but that code's already bitrotted quite a bit in the past 18 months to the point where it wasn't working anyway... :(
masak makes it so
pmichaud although I kind of wish there was a 5-letter analog to &slurp :-)
sisar flussence: oh, ok.
pmichaud &flood :-P 14:18
flussence (maybe I'll have to do a follow-up article to show all the new changes)
masak pmichaud: &spurt
sisar flussence: +1 to that
pmichaud I could go for &spurt, too.
masak yeah, it's not bad.
cognominal I like &spurt 14:19
masak it has a strange consistency with &slurp
it will drive the Japanese up the wall :P
cognominal it is consonnant indeed.
pmichaud &shoot
masak and you're vocal about it ;)
no, &spurt it is.
it's time we got one. 14:20
cognominal *consonant, ever
masak haha, S16 doesn't even mention &slurp, that's how out of touch it is.
masak mods S32/IO 14:21
flussence and if you take out a few letters, it says "put" :)
masak um... 14:22
pmichaud &spray
masak *sigh* :)
&spurt it is.
S32/IO says for slurp: 'In the case of a directory, it uses "\n" to separate entries.'
when is this ever a good idea?
do the implementations honor this?
can I unspec it in a separate commit?
pmichaud masak: what should it do instead, ooc? 14:23
fail?
14:24 MayDaniel left
masak for a directory? yes. 14:25
pmichaud spec that, then.
masak this is a simple function. do one thing, and do it well. 14:26
if we allow directories, what about directories inside directories?
what about symlinks?
what about mounted drives?
pmichaud I don't understand how those would affect things, fwiw. 14:27
but I'm still okay with spec'ing it as "fail"
dalek c: 688f723 | pmichaud++ | lib/Range.pod:
Range.pod: Add reference to sequence operator, punctuation cleanups.
14:29
c: 591e763 | pmichaud++ | lib/ (2 files):
Minor cleanups.
c: f88567f | pmichaud++ | lib/Str.pod:
[Str]: Change some Int -> StrPos, add notes about ucfirst and lcfirst, remove duplicate 'encode' entry.
c: e421ccc | pmichaud++ | lib/Str.pod:
[Str]: Add note about 'length'.
14:30
pmichaud moritz: feel free to remove/refactor my entries for 'length', 'ucfirst', etc. 14:31
However, I think that we want "p6doc length" or "p6doc ucfirst" to return something useful.
(perhaps "things that don't exist" belong in their own .pod file)
dalek ecs: 18e2133 | masak++ | S32-setting-library/IO.pod:
[S32/IO] spec &spurt
14:32
c: f491fbb | pmichaud++ | lib/List.pod:
Add a note about 'reverse' vs 'flip'.
14:33
ecs: b7b1054 | masak++ | S32-setting-library/IO.pod:
[S32/IO] make &slurp fail on directories

Rather than DWIM in a way I think no-one will much benefit from.
14:34
pmichaud r: say slurp('.'); # curious
p6eval rakudo 4b2c1f: OUTPUT«Unable to open filehandle from path '.'␤ in method open at src/gen/CORE.setting:7020␤ in sub open at src/gen/CORE.setting:7241␤ in sub slurp at src/gen/CORE.setting:7266␤ in block <anon> at /tmp/z8Vmi1t9BV:1␤␤»
masak heh.
colomon masak: What does "Unicode" encoding mean? 14:36
colomon just saw spec changes...
14:38 erkan joined, erkan left, erkan joined
masak colomon: oh, I copied that bit from &slurp 14:42
though if no-one has any objections, I'd rather it say 'UTF-8'.
colomon: oh!
I take that back.
Note that 14:43
the "Unicode" encoding implies figuring out which actual UTF is
in use, either from a BOM or other heuristics. If heuristics are
inconclusive, UTF-8 will be assumed.
that's under '=item open' in the same file.
dalek kudo/nom: 115ab2f | pmichaud++ | docs/release_guide.pod:
Move "create release announcement" into step 1.
14:44
kudo/nom: 5921c70 | pmichaud++ | docs/release_guide.pod:
Move the "make sure everything compiles/runs" testing step to _after_ the "update NQP and versions" steps.
14:46
colomon masak: but that's for import, where the data already is in some format or the other. on export, "Unicode" is completely vague 14:48
masak colomon: agreed. I'll change it to 'UTF-8'. 14:49
colomon finally has (at least somewhat) learned how Unicode works, after about six years of doing it haphazardly or outright wrong for $work. 14:50
+1
dalek ecs: 43780ff | masak++ | S32-setting-library/IO.pod:
[S32/IO] "UTF-8" for &spurt, not "Unicode"

  colomon++ for pointing out that "Unicode" doesn't make much sense here,
the way it does for reading (and trying to figure out the exact encoding).
14:52
pmichaud I think it should remain "Unicode", fwiw.
masak feel free to revert. 14:53
colomon pmichaud: why?
pmichaud Yes, I understand colomon's point. However, we use "Unicode" to mean "whatever Unicode format makes the most sense", too.
for some languages/scripts, utf-8 might not be the best output format.
masak it feels a bit bad to perpetuate the illusion that "Unicode" is an encoding, even if implicitly.
pmichaud we don't use "Unicode" as an encoding, we use it as a placeholder to mean "whatever unicode-aware encoding makes the most sense" 14:54
it's dwimmy
colomon pmichaud: are you proposing that p6 should somehow scan what is being exported and choose the "best" encoding to use?
pmichaud colomon: I'm repeating something I think I've heard TimToady++ say in the past to the effect that some site installations of Perl might want a default encoding other than utf-8. 14:55
masak JIS, for example. 14:56
oh, we have an $*ENC variable, don't we.
maybe we should just default to that, then.
pmichaud that makes a huge amount of sense :-) 14:57
colomon r: say $*ENC
p6eval rakudo 4b2c1f: OUTPUT«Dynamic variable $*ENC not found␤ in method gist at src/gen/CORE.setting:9461␤ in sub say at src/gen/CORE.setting:6988␤ in block <anon> at /tmp/keoUJhWHNk:1␤␤»
masak ok, I'll change it.
colomon : say $*ENC
14:57 _jaldhar joined
masak oh, and it's $?ENC 14:57
colomon r: say $?ENC
p6eval rakudo 4b2c1f: OUTPUT«===SORRY!===␤Variable $?ENC is not declared␤at /tmp/jbgpjkPauK:1␤»
masak I always assume it's $*ENC, for some reason.
flussence r: say %*ENV<LC_ALL>.split('.').perl
p6eval rakudo 4b2c1f: OUTPUT«No such method 'split' for invocant of type 'Any'␤ in block <anon> at /tmp/q8_kPzpZcY:1␤␤»
flussence guess that's of no use... 14:58
colomon yeah, using $?ENC seems to make sense
dalek ecs: fd60e99 | masak++ | S32-setting-library/IO.pod:
[S32/IO] on second thought, $?ENC

The default encoding of the distribution. This makes a huge amount of sense.
pmichaud we should start maintaining a list of known dynamic and compile-time variables (e.g., in p6doc if not in the specs) 15:00
flussence r: say $?TABSTOP
p6eval rakudo 4b2c1f: OUTPUT«8␤»
dalek c: 783d3a8 | pmichaud++ | README:
Typo fix.
15:01
15:02 spider-mario left
dalek c: 7736027 | pmichaud++ | lib/perlvar.pod:
Add perlvar.pod, a (temporary?) place to document magical variables.
15:12
c: f798f06 | pmichaud++ | lib/perlvar.pod:
Add $?ENC (from S32/IO.pod).
15:15
sisar pmichaud: tablets.perl6.org/appendix-b-groupe...-variables 15:17
pmichaud: and the entry just above that 15:18
pmichaud sisar: cool, feel free to update perlvar.pod with those 15:20
sisar i don't get it, why is the documentation so much spilt up? Has anyone thought this through? tablets, wiki, p6doc, spec, masak++'s doc project, etc. 15:22
pmichaud "has anyone thought this through?" No.
15:23 plobsing joined
masak sisar: basically, it's a kind of Darwinian search for good documentation. 15:23
pmichaud what we have now is a mix of early starts and different targets
sisar masak: there looks to be more of abandoning the species altogether than evolution 15:24
pmichaud rapid evolution, yes.
masak I'd say lots of people have thought this through. but it's still hard to make complete, comprehensive, clear, useful documentation.
I'd say "many projects" isn't our biggest problem by far. 15:25
that said, someone who supervises, organizes and co-ordinates the different efforts would be great.
kresike How can one document something that is still under heavy development ?
masak Perl 6 is Mostly Stable at this point.
we're quickly converging on the thing we want. 15:26
jnthn Because much more stays the same than changes these days.
15:26 JimmyZ left
jnthn And the barrier to get changes in is getting higher in many areas. 15:26
pmichaud because documentation can be done in conjunction with development; it doesn't have to occur afterwards. :)
jnthn (Which is a good thing.)
szabgab and sisar has not even listed my Perl 6 stuff :(
masak aww. szabgab++ # awesome Perl 6 tutorials
szabgab I am disapoined :( 15:27
sisar sisar--
masak aren't they linked from perl6.org?
they should be.
szabgab they are
pmichaud yes, they are.
masak my old u4x shouldn't be, at this point, I think.
szabgab but wait, I am coming back!
masak moritz++' effort should be.
as far as I'm concerned, that's the new u4x now.
kresike what I meant was, that anyone who documents something under development is bound to rewrite at least some of the documentation from time to time because things change
szabgab I just have to take my son to Taekwondo training...
pmichaud kresike: rewrite is a part of life. even in p5 the documentation has to be updated/rewritten from time to time 15:28
masak kresike: yes, that's one challenge of writing docs. though I don't believe it's an extremely big problem.
kresike and we all know, how programmers feel about documentation ... it's hard enough doing it the first time
masak aye.
15:28 JimmyZ joined
masak but what moritz++ has going on gives me hope. 15:28
pmichaud same here, which is why I'm focusing some tuits on it :)
masak we know we want something that we can point to and say: look, documentation! 15:29
szabgab pmichaud: I don't want to get it incorrect, have you said that Rakudo is promising backward compbaility to itself?
masak pmichaud++
pmichaud szabgab: I'm commiting that Rakudo will provide a strong deprecation policy for future releases.
szabgab: backwards compatibility to itself... yes, except in cases where we simply cannot do it because of spec conflicts. 15:30
kresike a programmer usually documents something, after about 100 people ask him the same question ...
pmichaud kresike: I hear what you're saying; I'm not sure what you're proposing (if anything)
szabgab pmichaud: thanks && back later &
pmichaud szabgab: in the past we've accepted regressions as a necessary part of developing the current branch. My commitment going forward is that we'll be far less tolerant of regressions than we have been. 15:31
kresike pmichaud, mostly the fact, that if you want good documentation, that should not be written by the programmers, and should be properly coordinated (just like some have said before me) 15:35
pmichaud kresike: programmers are all we have here, at the moment. 15:36
kresike: if you know of where we can get some non-programmers to write our docs, I'm all for it. :)
kresike pmichaud, I'll ask around, but by profession I'm also just a programmer trying to learn perl6 15:37
:)
pmichaud besides, iiuc most of the p5 docs was written by p5 programmers, and that seemed to work out okay :)
15:38 jimmy1980 left
pmichaud anyway, yes, at the moment the documentation efforts are more bazaar-like than cathedral. I'm not sure Perl 6 (the overall community) is ready for a cathedral there yet. 15:39
15:39 _jaldhar left, _jaldhar joined 15:41 jimmy1980 joined
kresike pmichaud, I know, I'm trying to learn it, but it's very hard to put the pieces together (std, rakudo, niecza, nqp, parrot, ...) 15:42
masak there is a lot, yes. 15:43
15:43 kurahaupo left
masak the idea is that you learn it piecemeal. 15:43
moritz p6: say log10 85
p6eval niecza v18-7-ga660099: OUTPUT«1.9294189257142926␤»
..rakudo 5921c7: OUTPUT«1.92941892571429␤»
dalek blets: 5396137 | pmichaud++ | docs/appendix-b-grouped.txt:
Documentation fix; $<...> is not a 'twigiled variable'.
15:44
c: 3a4f4a2 | moritz++ | lib/Numeric.pod:
start to talk about Numeric
15:46
blets: 72c9ca6 | pmichaud++ | docs/appendix-a-index.txt:
Add navigational heading for equals sign.
15:54
blets: 5b2c973 | pmichaud++ | docs/appendix-a-index.txt:
Convert "angle brackets twigil" to a postcircumfix op.
15:55 _jaldhar left 15:58 _jaldhar joined
dalek c: 86a9699 | pmichaud++ | lib/Numeric.pod:
Typo fix; rephrase .ACCEPTS a bit.
15:58
16:00 kurahaupo joined
dalek blets: b3cee55 | pmichaud++ | docs/appendix-a-index.txt:
Remove "both" from interpretation of infix:<|>.
16:01
p/toqast: ef4ed30 | jnthn++ | docs/QASTMAP:
Start a list of tasks and design issues related to QAST migration.
16:02
p/toqast: 46cf8f8 | jnthn++ | src/PAST/NQP.pir:
Start getting some more of the 6model primitives into the nqp:: namespace.
16:03
nqp/toqast: bc64ed0 | jnthn++ | src/how/NQP (5 files):
nqp/toqast: Use nqp::setwho and nqp::newtype.
16:03 dalek left
jnthn heh :) 16:03
16:04 dalek joined, ChanServ sets mode: +v dalek
sisar masak: before abandoning u4x, are you sure nothing can be salvaged from it ? 16:05
JimmyZ dalek always leaves from #perl6, but works well in #parrot
16:06 JimmyZ left
pmichaud JimmyZ: different irc servers, likely 16:06
cognominal pmichaud: you said you hade made a special stage to display the parse tree. I need it for my codeviewer github.com/cognominal/code-viewer 16:08
I have some code that generate json from a Match 16:09
pmichaud cognominal: I said I thought a previous version of Rakudo had a special stage to display the parse tree. But I can no longer find it.
cognominal ok
pmichaud I also said that I think the parse tree display is broken because of a dumper issue, not necessarily a stage one.
cognominal and that's github.com/cognominal/codeview 16:10
code-viewer was a previous attemps
masak sisar: oh, I'm not going to remove u4x from the face of the earth. I know which things I liked about it, and moritz seems to, too. 16:12
the one thing I would insist on this time around is to get an HTML view of it all up-and-running ASAP. 16:13
and we should start to direct people to it when they have questions.
pmichaud where is u4x these days, ooc?
sisar masak: nice to know :-)
sorear good * #perl6 16:14
masak pmichaud: github.com/perl6/mu/tree/master/docs/u4x
moritz in fact I stole a bit from u4x
sisar pmichaud: doc.perl6.org/
masak pmichaud: it's actually more of an interface than an implementation. which is why I fully endorse moritz++' effort.
oh right, we did have a bit of content didn't we. 16:15
sisar sorear: o/
masak in retrospect I think the dwimminess of the grok tool might be a bit too much.
sisar sorear: your thoughts on perl6 documentaion ?
masak but we can probably get pretty close without much trouble.
sorear sisar: What perl6 documentation? 16:16
sisar sorear: :-), see backlog, we've been discussing documentation.
sorear oh, &spurt is the spec name now?
*mumbles* 16:17
OTOH, now I get to claim "increased spec compliance!" for c19
v19
sisar: how far back?
dalek c: 6badc2b | moritz++ | lib/Numeric.pod:
[Numeric], exp, roots, Bool
16:18
sisar sorear: starts at irclog.perlgeek.de/perl6/2012-06-24#i_5753695
16:19 brrt left
cognominal which librariy is used by padre for display? 16:20
I mean for the GUI 16:21
sisar cognominal: i think www.wxwidgets.org/ 16:23
cognominal ok
dalek kudo/nom: 3a0e404 | jnthn++ | docs/ChangeLog:
Add a note on meta-object improvement to ChangeLog.
16:26 am0c joined 16:27 _jaldhar left, _jaldhar joined 16:28 _jaldhar left, _jaldhar joined
moritz p6: say (3+4i).abs 16:30
p6eval rakudo 5921c7, niecza v18-7-ga660099: OUTPUT«5␤»
16:32 _jaldhar left
moritz p6: say (3+4i).sqrt 16:32
p6eval rakudo 5921c7, niecza v18-7-ga660099: OUTPUT«2+1i␤»
16:32 _jaldhar joined 16:33 _jaldhar left, _jaldhar joined
moritz p6: say (-4).sqrt 16:33
p6eval rakudo 5921c7, niecza v18-7-ga660099: OUTPUT«NaN␤»
sisar moritz: rosettacode.org/wiki/Arithmetic/Complex#Perl_6, maybe you can add to it 16:34
16:34 awwaiid left
sisar p6: say (-4).Complex.sqrt; 16:34
p6eval niecza v18-7-ga660099: OUTPUT«1.2246063538223773E-16+2i␤»
..rakudo 5921c7: OUTPUT«1.22460635382238e-16+2i␤»
moritz sisar: I'm focusing on p6doc right now
sisar moritz: sure :-)
16:35 awwaiid joined
dalek c: a63baba | moritz++ | lib/Numeric.pod:
[Numeric] abs, sqrt, conj
16:37
moritz p6: say (-10).rand 16:40
p6eval niecza v18-7-ga660099: OUTPUT«-9.42198123755957␤»
..rakudo 5921c7: OUTPUT«-1.20300443451018␤»
masak .oO( yes, but which one is right? ) 16:41
sorear I wouldn't be opposed to having the spec recommend a specific random number generator for full p6 impls 16:43
sisar sorear: +1 16:45
moritz recommendations in the spec are useless
either we spec one, or we require certain features, or we just say "make it good and fast" 16:46
sisar moritz: maybe the spec can describe the mathematical and statistical properties of the random number generator 16:48
moritz sisar: that's what I meant with "certain features"
sisar s/properties of/expectations from
moritz: oh, sorry
szabgab pmichaud: re: looking for non-programmer: I know a bad programmer, does that count? :) 16:49
dalek c: 3271639 | moritz++ | lib/Real.pod:
[Real]
pmichaud szabgab: I think my comment was more rhetorical than anything else. I don't think that good programmers are universally bad at documentation. :-)
although the discussion here inspires me to write something about the "Perl 6 Bazaar" 16:51
or make a lightning talk on the subject for yapc::eu
dalek c: a56b88b | moritz++ | lib/Real.pod:
[Real] base
16:52
moritz p6: say (1+2i).succ
p6eval niecza v18-7-ga660099: OUTPUT«2+2i␤»
..rakudo 5921c7: OUTPUT«No such method 'succ' for invocant of type 'Complex'␤ in block <anon> at /tmp/BJlLUOsXjR:1␤␤»
moritz p6: say Int.succ 16:53
p6eval niecza v18-7-ga660099: OUTPUT«1␤»
..rakudo 5921c7: OUTPUT«Parameter '' requires an instance, but a type object was passed␤ in method succ at src/gen/CORE.setting:2734␤ in block <anon> at /tmp/OsTx_iExKZ:1␤␤»
moritz niecza++
niecza: say Int.pred 16:54
p6eval niecza v18-7-ga660099: OUTPUT«-1␤»
sisar n: say Int.sqrt; 16:55
p6eval niecza v18-7-ga660099: OUTPUT«0␤»
sergot How to: sub a($a, @b, %c, *@d) { b(the_same_arglist); } ? :) 16:56
sorear b(|callframe.args)
sergot sorear++ thanks
sorear or: a(|cap, $a, @b, %c, *@d) { b(|cap) }
or: a(|cap ($a, @b, %c, *@d)) { b(|cap) } 16:57
sisar rn: say ::; #what happens here ?
p6eval niecza v18-7-ga660099: OUTPUT«PseudoStash.new(...)␤»
..rakudo 5921c7: OUTPUT«EnumMap.new("\$!", Any, "\$=pod", Array.new(), "!UNIT_MARKER", !UNIT_MARKER, "GLOBALish", GLOBAL, "EXPORT", EXPORT, "\$?PACKAGE", GLOBAL, "::?PACKAGE", GLOBAL, "\$_", Any, "\$/", Any, )␤»
jnthn Hmm...that really should not say EnumMap. 16:58
dalek kudo/toqast: 1891283 | jnthn++ | / (11 files):
Add a qperl6 that can be used to gradually do the QAST migration, while still using the normal compiler to build CORE.setting.
pmichaud I suspect it's being perl6ized
jnthn pmichaud: No, it is a pseudostash 16:59
pmichaud oh, wait, there's a bug in EnumMap.perl
jnthn r: say ::.WHAT
p6eval rakudo 5921c7: OUTPUT«PseudoStash()␤»
jnthn pmichaud: Yes, that was my quess
*guess
pmichaud EnumMap.perl has 'EnumMap' hardcoded.
fixing. 17:01
jnthn pmichaud++
17:02 icwiener joined
moritz tries to fix succ and pred 17:03
because they succ :-) 17:04
pmichaud I'm not sure that Int.succ should be 1; at least not without a warning. 17:05
sorear I am 17:06
my Int $x; $x++
pmichaud that's a product of postfix:<++>, not of .succ
my Int $x; $x += 1; means something special when $x is undefined
sorear are you trying to tell me ++ is different from .=succ ? 17:07
pmichaud yes.
oh, maybe not
looking
r: my Int $x; $x++; say $x;
p6eval rakudo 5921c7: OUTPUT«1␤»
pmichaud "a bare undefined value in a suitable container is allowed to mutate itself into an Int ..." 17:09
undefined values outside of containers.... not sure they get to mutate.
szabgab finally, after a long break I posted an article, it is still only a meta-article and not a real one, but here is a question to you
moritz .succ doesn't mutate
sisar rn: my Bool $x; say $x++;
p6eval rakudo 5921c7: OUTPUT«Type check failed in assignment to '$x'; expected 'Bool' but got 'Int'␤ in sub postfix:<++> at src/gen/CORE.setting:1342␤ in block <anon> at /tmp/8ezIkhOuu9:1␤␤»
..niecza v18-7-ga660099: OUTPUT«0␤»
szabgab I started to move over all my perl 5 related content to the Perl Maven site 17:10
what shall I do with the Perl 6 content?
Should I move it to a site called Perl 6 Maven?
or do you have a better name suggestion?
17:10 thou joined
pmichaud moritz: my point is that it's the postfix:<++> that does the mutation, not .succ . 17:10
Int.succ should probably throw a warning, not simply return 1. 17:11
from S03:545: 17:12
sorear pmichaud: what does ++ do if not .=succ?
pmichaud "Increment/decrement of an undefined Numeric, Cool, or Any variable sets the variable to 0 and then performs the increment/decrement. Hence a postincrement returns 0 the first time:
my $x; say $x++; # 0, not Any
++ does .=succ, but it sets the variable to zero first.
sorear oh right. niecza's ++ does //= 0 .= succ, I forgot that detail 17:13
pmichaud It doesn't mean that .succ magically works on type objects.
sorear what does this do, and how does it do it? my Num $n; $n++
17:14 UncleFester6 joined
pmichaud sets $n to zero, then calls $n .= succ 17:14
sorear "zero?
17:14 zby_home joined
pmichaud r: my Num $n; $n++; 17:14
p6eval rakudo 3a0e40: ( no output )
pmichaud r: my Num $n; $n++; say $n;
p6eval rakudo 3a0e40: OUTPUT«1␤»
moritz sorear: 0."{$arg.^name}"() 17:15
sorear r: my Num $n; $n++; say $n.WHAT
p6eval rakudo 3a0e40: OUTPUT«Num()␤»
sorear moritz: rakudosource?
moritz sorear: rakudo simply has a different multi variant for each numeric type 17:16
UncleFester6 My build also fails (from scratch) on windows when linking "-o nqp_dyncall_ops.dll". Error prolly: undefined reference to `dcCall_x86_win32_fast'. Config is Vista 32 bit and Strawberry Perl 5.14. Gist is gist.github.com/2984059 17:17
17:18 birdwindupbird left
sorear stdcall/ccall issues? 17:18
pmichaud jnthn: 17:20
pmichaud@kiwi:~/p6/rakudo$ ./perl6
> say ::
PseudoStash.new("\$!", Any, "\$=pod", Array.new(), "!UNIT_MARKER", !UNIT_MARKER, "GLOBALish", GLOBAL, "EXPORT", EXPORT, "\$?PACKAGE", GLOBAL, "::?PACKAGE", GLOBAL, "\$_", Any, "\$/", Any, )
better?
spectesting.
sisar n: my Bool $x; say $x++; say $x++; #sorear, what happens here ? 17:21
p6eval niecza v18-7-ga660099: OUTPUT«0␤True␤»
pmichaud r: my Bool $x; say $x++; say $x++; # curious 17:22
p6eval rakudo 3a0e40: OUTPUT«Type check failed in assignment to '$x'; expected 'Bool' but got 'Int'␤ in sub postfix:<++> at src/gen/CORE.setting:1342␤ in block <anon> at /tmp/TOMk08TrBA:1␤␤»
pmichaud that's a bug.
moritz should the first one say 0 or False?
pmichaud False
sorear sisar: not sure, but I'm certain it's not up to spec. :)
jnthn pmichaud: Yes, better 17:23
pmichaud S03:539 covers postfix:<++> on Bools.
(just before postfix:<++> on Any/Numeric/Cool is described)
dalek ecza: 95a1946 | sorear++ | / (5 files):
s/spew/spurt/g for compatibility with latest spec
kudo/nom: bd0e5c0 | pmichaud++ | src/core/EnumMap.pm:
Fix EnumMap.perl to use objects typename instead of hardcoded "EnumMap".
17:26
sisar pmichaud++ #fast bugfixing ! 17:28
pmichaud: should I file a bug for wrong Bool++ ? or are we gonna see another lightning bugfix ? ;-) 17:32
pmichaud: note that the bug only occurs when $x is uninitialized. The spec is silent(?) on incrementing uninitialized Bool variables. 17:34
r: my Bool $x; $x = True; $x++ #works
p6eval rakudo 3a0e40: ( no output )
sisar r: my Bool $x; $x = True; say $x++ #works 17:35
p6eval rakudo 3a0e40: OUTPUT«True␤»
pmichaud sisar: I'm expecting uninitialized Bool to work like uninitialized Numeric
principle of least surprise :)
sisar pmichaud: aye, I agree.
pmichaud you can file a bug for Bool++; I'm fixing it now, but we'll want a spectest.
sisar pmichaud: ok, filing. pmichaud++ 17:36
masak sisar++
sisar r: my Bool $x; $x = True; say $x--; #another bug 17:37
p6eval rakudo 3a0e40: OUTPUT«True␤»
sisar pmichaud: fixing ^ too ?
pmichaud sisar: that looks correct to me :)
r: my Bool $x; $x = True; say --$x; 17:38
p6eval rakudo 3a0e40: OUTPUT«False␤»
17:38 UncleFester6 left
pmichaud r: my Bool $x; $x = True; say $x--; say $x; 17:38
sisar oh !
p6eval rakudo 3a0e40: OUTPUT«True␤False␤»
17:38 kikulli joined 17:41 erkan left
masak sisar: remember the semantic difference between prefix:<--> and postfix:<--> 17:44
sisar masak: yessir ! :-) 17:45
sisar almost always forgets that there is even something like post and pre --
pmichaud > my Bool $x; say $x++; say $x 17:46
False
True
spectesting, then committing
sisar \o/
bugreport: #113816 17:47
.oO ( my speed of filing a bug report is so much less than pmichaud++'s speed of fixing it !! ) 17:48
masak relly good bug report. sisar++
really*
sisar masak: thanks :-)
masak 11 minutes. not bad for a beginner ;)
I'm down to between 3 and 5 minutes for most reports. if it's short, I can file it in 1 minute. 17:49
sisar masak: well my last bugreport was really crappy, so I spent extra time filing a good one this time.
masak ok. well, quality matters.
pmichaud quality is often more important than speed :) 17:50
masak they are not in opposition IMO.
speed comes from being familiar with the necessary operations.
pmichaud yes, but sometimes people sacrifice quality in the name of speed. 17:51
masak quality comes from, hm. knowing about the anti-confusion particle.
dalek kudo/nom: f798fb1 | pmichaud++ | src/core/Bool.pm:
Fix pre/post-increment/decrement on undefined Bool containers. sisar++ RT #113816
17:52
masak I have a very hard time sacrificing quality in the name of speed in my work and hobby life.
pmichaud masak: that's because you're a high-quality person :) 17:53
diakopter quality can include speed too, though.
(relatively more) efficiency can be a requirement 17:54
software can be low quality for the sole reason of being slow 17:55
sisar masak: can you close the ticket and mark it testneeded ?
diakopter oh, you weren't talking about software; you were talking about bug reports, oops. 17:56
diakopter should backlog further 17:57
masak diakopter: with the quality/speed thing I mostly meant software, fwiw.
pmichaud I'm closing the ticket now.
masak pmichaud++
pmichaud well, I'm marking it testneeded.
also updating the "expected output", and fixing my bugfix to actually give the correct answer. :)
since we all had it wrong :) 17:58
my Bool $x; say $x++; say $x # "Bool", "True" 17:59
17:59 araujo left
pmichaud I'll go ahead and add the spectests, too. 18:01
dalek kudo/toqast: 9914c45 | jnthn++ | src/QPerl6/World.pm:
Correct an outdated comment.
18:02
kudo/toqast: 3b80143 | jnthn++ | src/QPerl6/ (2 files):
Tentatively start to change to PAST::Block into QAST::Block; leave a case where things are a little more invovled. Note, breaks everything. :-)
kudo/toqast: 8a4ca80 | jnthn++ | src/QPerl6/ (2 files):
Translate various PAST::Val to their QAST equivalents; again, a few outliers/tricky cases left for now.
kudo/toqast: d646a75 | jnthn++ | src/QPerl6/ (2 files):
PAST::Stmt/PAST::Stmts to QAST::Stmt/QAST::Stmts, apart from one trickier case.
kudo/toqast: 4dc8dad | jnthn++ | src/QPerl6/ (2 files):
Switch .get_ref calls over to using QAST::WVal.
sisar rn: say 'a'|'b'; 18:12
p6eval rakudo 3a0e40: OUTPUT«any(a, b)␤»
..niecza v18-9-g95a1946: OUTPUT«any("a", "b")␤»
sisar ^ rakudo is missing quotes (cf. Niecza). Is this detail unimportant ? 18:13
pmichaud that detail is very important... not sure what happened there.
pmichaud checks Junction.gist
diakopter free((char*)1) <- breakpoint technique for Visual Studio when invoking from not within the IDE
pmichaud welll.... hmm
diakopter "A heap has been corrupted" 18:14
18:14 benabik left
pmichaud rn: say Int|Num; 18:14
p6eval rakudo f798fb: OUTPUT«any(Int(), Num())␤»
..niecza v18-9-g95a1946: OUTPUT«any(Int, Num)␤»
pmichaud rn: say Int
p6eval rakudo f798fb, niecza v18-9-g95a1946: OUTPUT«Int()␤»
pmichaud I think I might be able to argue for Rakudo's behavior.
.gist is not always the same as .perl 18:15
18:17 benabik joined, araujo joined
sisar but a and b would imply subroutines named a and b 18:17
r: 'a' ~~ any(a,b);
p6eval rakudo f798fb: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&a' called (line 1)␤Undefined routine '&b' called (line 1)␤»
pmichaud say outputs using .gist
.gist is not always the same as .perl
you aren't expected to be able to eval a .gist and get the same results as before. 18:18
sisar hmm
pmichaud rn: say ('a'|'b').perl
p6eval rakudo f798fb, niecza v18-9-g95a1946: OUTPUT«any("a", "b")␤»
sisar ok, makes sense 18:19
pmichaud I'm not necessarily claiming that rakudo's behavior is correct here; just that it's not obviously wrong either.
diakopter r: say (/a/|/b/) 18:20
p6eval rakudo f798fb: OUTPUT«any(_block1011, _block1021)␤»
diakopter n: say (/a/|/b/) 18:21
p6eval niecza v18-9-g95a1946: OUTPUT«any(regex ANON(Any \self) { ... }, regex ANON(Any \self) { ... })␤»
sergot nom: sub b($a, $b) { say 'b'; }; sub a($p1, $p2) { b(|callframe.args); } 18:26
p6eval rakudo f798fb: ( no output )
sergot nom: sub b($a, $b) { say 'b'; }; sub a($p1, $p2) { b(|callframe.args); }; a() 18:27
p6eval rakudo f798fb: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'a' will never work with no arguments (line 1)␤ Expected: :($p1, $p2)␤»
sergot nom: sub b($a, $b) { say 'b'; }; sub a($p1, $p2) { b(|callframe.args); }; a(1,2)
p6eval rakudo f798fb: OUTPUT«No such method 'args' for invocant of type 'CallFrame'␤ in sub a at /tmp/SDYYulPiov:1␤ in block <anon> at /tmp/SDYYulPiov:1␤␤»
sergot sorear: it doesn't work. :(
tadzik 'evening
sergot nom: sub b($a, $b) { say 'b'; }; sub a(|cap($p1, $p2)) { b(|cap); }; a(1,2) 18:28
p6eval rakudo f798fb: OUTPUT«===SORRY!===␤Malformed parameter␤at /tmp/mapbZUpqx4:1␤»
jnthn nom: sub b($a, $b) { say 'b'; }; sub a(|$c, $p1, $p2) { b(|$c); }; a(1,2)
p6eval rakudo f798fb: OUTPUT«===SORRY!===␤Cannot put required parameter after variadic parameters␤at /tmp/gaj_P0yRF_:1␤»
jnthn Oh really...
nom: sub b($a, $b) { say 'b'; }; sub a(|$c ($p1, $p2)) { b(|$c); }; a(1,2)
p6eval rakudo f798fb: OUTPUT«b␤»
sergot nom: sub b($a, $b) { say 'b'; }; sub a(|$cap($p1, $p2)) { b(|$cap); }; a(1,2) 18:29
p6eval rakudo f798fb: OUTPUT«b␤»
jnthn Taking a capture then unpacking it works fine.
pmichaud looks like callframe.args NYI
jnthn Yeah
sergot jnthn++ thanks
:)
jnthn Feel free to file a TODO ticket on callframe.args. It's LHF, afaik.
sisar rn: sub a {return 42;}; say a; sub i { return 42; }; say i; 18:31
p6eval rakudo f798fb, niecza v18-9-g95a1946: OUTPUT«42␤0+1i␤»
sisar ^shouldn't overloading i warn ?
dalek ast: f18a918 | pmichaud++ | S03-operators/autoincrement.t:
Add spectests for bool autoincrement (RT #113816).
18:33
masak sisar: no, why? 18:34
sisar: the setting contains stuff. if you override it by declaring things with the same name, it hides what's in the setting. 18:35
it's just like this.
pmichaud ...does the setting declare 'i' as a term/constant?
masak r: sub foo { say "outer" }; { sub foo { say "inner" }; foo }; foo
p6eval rakudo f798fb: OUTPUT«inner␤outer␤»
masak or like this.
r: my $var = "outer"; say $var; { my $var = "inner"; say $var }; say $var 18:36
p6eval rakudo f798fb: OUTPUT«outer␤inner␤outer␤»
sisar masak: it hides what's in the setting? so the new i definition should work, right ?
masak yes.
unless what pmichaud suspects is true, and it's actually a term.
sisar masak: but it said "0+1i";
pmichaud where is 'i' being defined?
masak then it's intercepted at the parsing level.
pmichaud: at the end of src/core/Complex.pm 18:37
it's a constant.
18:37 Gesh joined
pmichaud ah yes, there it is. 18:37
sisar: so, to get to the new i definition you need i()
18:38 leprevost left
masak oh right, that's the rule. 18:38
pmichaud++
pmichaud consider:
masak rn: sub a {return 42;}; say a; sub i { return 42; }; say i()
18:38 nebuchadnezzar left
p6eval niecza v18-9-g95a1946: OUTPUT«42␤Unhandled exception: Unable to resolve method postcircumfix:<( )> in type Complex␤ at /tmp/Jchsv_juQU line 1 (mainline @ 8) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3917 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3918 (module-CORE… 18:38
..rakudo f798fb: OUTPUT«42␤42␤»
masak sorear: ^
pmichaud rn: sub if { say 'if' }; if(1);
p6eval niecza v18-9-g95a1946: OUTPUT«if␤»
..rakudo f798fb: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'if' will never work with argument types (int) (line 1)␤ Expected: :()␤»
pmichaud rn: sub if(*@x) { say 'if' }; if(1); 18:39
p6eval rakudo f798fb: OUTPUT«if␤»
..niecza v18-9-g95a1946: OUTPUT«Potential difficulties:␤ @x is declared but not used at /tmp/xeNJIqdC54 line 1:␤------> sub if(*⏏@x) { say 'if' }; if(1);␤␤if␤»
sisar pmichaud: yes, but then the two calls say a and say i() are different, which makes me feel weird
masak sisar: then don't call it 'i' :P
pmichaud sisar: barewords aren't always subroutine calls.
sisar masak: what rakudo should say is "Masak says: don't name a subroutine 'i' :p " :p 18:40
masak I wasn't saying that. 18:41
pmichaud it's perfectly legal (if confusing) to name a subroutine 'i', you just have to call it as i()
masak I was saying, if you think it's weird to have to () it, don't do that.
pmichaud just like it's perfectly legal to name a subroutine 'if', 'for', 'while', 'class', etc.
masak it's only weird because you created a weird situation for yourself.
18:41 nebuchadnezzar joined 18:43 kikulli left
sisar rn: for 2i .. 10i { .say; } # niecza's error is so good :) 18:47
p6eval niecza v18-9-g95a1946: OUTPUT«Unhandled exception: Complex numbers are not arithmetically ordered; use cmp if you want an arbitrary order␤ at /home/p6eval/niecza/lib/CORE.setting line 3259 (infix:<<=>> @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3284 (infix:<cmp> @ 53) ␤ at /…
..rakudo f798fb: ( no output )
sisar hmm, rakudo doen't even say anything, I wonder what happened. 18:48
18:48 GlitchMr left
pmichaud r: say 2i .. 10i; 18:48
p6eval rakudo f798fb: OUTPUT«Complex.new(0, 2)..Complex.new(0, 10)␤»
pmichaud r: say (2i .. 10i).list; 18:49
p6eval rakudo f798fb: OUTPUT«␤»
Gesh What is niecza?
pmichaud say 2i cmp 10i;
masak Gesh: Rakudo and Niecza are two Perl 6 implementations.
moritz a perl 6 compiler on the CLR (.NET/Mono)
pmichaud r: say 2i cmp 10i;
p6eval rakudo f798fb: OUTPUT«Decrease␤»
masak Gesh: Rakudo runs on Parrot, Niecza runs on the CLR.
Gesh Ah, ok
pmichaud rakudo thinks that 2i > 10i, so it produces an empty list.
it's probably stringifying.
dalek kudo/nom: 7d394e2 | moritz++ | src/core/ (3 files):
move succ and pred from Real to Numeric
18:50
masak Gesh: they're both pretty great. see perl6.org/compilers/features
sisar what, rakudo compare Complex nos... of right, stringification, phew !
*oh
pmichaud r: say @(10i .. 2i); 18:51
p6eval rakudo f798fb: OUTPUT«No such method 'succ' for invocant of type 'Complex'␤ in sub postfix:<++> at src/gen/CORE.setting:1341␤ in method reify at src/gen/CORE.setting:4847␤ in method reify at src/gen/CORE.setting:4968␤ in method reify at src/gen/CORE.setting:4968␤ in method gimme at…
Gesh masak, why there is no haskell implemented perl6 in the comparison? I heard about one
masak Gesh: Pugs is implemented in Haskell. 18:52
Gesh Yep
masak p: say "Hiiii!"
p6eval pugs: OUTPUT«Hiiii!␤»
Gesh masak, but it's not there
masak Gesh: but it's a little old now.
dalek c: 28057e9 | moritz++ | lib/Numeric.pod:
[Numeric] succ, pred
pmichaud I suspect Pugs isn't listed because it's much less actively developed
masak so a feature comparison would be a little unfair, because many things are broken.
pmichaud might be worth adding a note about Pugs to that page, though. 18:53
masak [Coke]++ has been working on improving Pugs. I'd like to help, but things further up on the TODO list are blocking my tuits.
pmichaud: +1
Gesh i see.
19:00 brrt joined
dalek atures: f5269a2 | pmichaud++ | template.html:
Add a link/note about Pugs. (updates/improvements welcomed).
19:05
sisar n: (*|'a').WHAT.say;
p6eval niecza v18-9-g95a1946: ( no output )
sisar hm, nieczabug
sorear: Junctions are fully implemented in Niecza ? 19:06
sorear sisar: yes 19:08
n: say (*|'a').WHAT
p6eval niecza v18-9-g95a1946: OUTPUT«{ ... }␤»
sorear n: say WHAT (*|'a')
p6eval niecza v18-9-g95a1946: OUTPUT«WhateverCode()␤»
sorear hrm
not 100% sure this behavior is correct
sisar r: (*|'a').WHAT.say; 19:09
p6eval rakudo f798fb: OUTPUT«Junction()␤»
sorear n; ((*|'a').WHAT.say)(5)
n: ((*|'a').WHAT.say)(5)
p6eval niecza v18-9-g95a1946: OUTPUT«Junction()␤»
sisar well, i'm off to bed now, good night #perl6 19:10
sisar zzz...
19:10 brrt left
sergot seen masak 19:11
masak sleep well, sisar. dream of effortless comparison of the complex and hypercomplex.
sergot: I'm right here!
sergot \o/
great
masak \o/ 19:12
sorear does p6 support hypercomplex numbers yet?
masak you mean, through a library? 19:13
19:13 cognominal left
masak I could whip one up, if you want. 19:13
might be fun.
19:13 cognominal joined
sorear just speaking of 12:11 < masak> sleep well, sisar. dream of effortless comparison of the complex and hypercomplex. 19:13
not certain what that comparison should do. 19:14
the quaternion algebra has an interesting group of (continuous) automorphisms 19:15
19:15 brrt joined 19:17 adu joined
masak oh, I've never thought of the group of continuous automorphisms of the quaternions before. what's interesting about it? 19:19
sorear it's uncountably big. also, it's isomorphic to the proper rotations of 3-space 19:20
19:21 vmspb joined
masak oh, right. Euler angles. 19:21
still haven't grok'd those.
dalek atures: 911978f | pmichaud++ | template.html:
Update the feature comparison page to look more like other

If anyone disagrees with this updated layout, feel free to revert.
19:23
sorear I don't think Euler angles are relevant here 19:24
1. preserving addition, together with continuity and the fact that Q is dense, means an automorphism must be a linear map, so is determined entirely by its behavior on 1, i, j, and k 19:26
2. 1 is uniquely described by algebraic properties (it is the multiplicative identity), so it is fixed by all automorphisms 19:27
masak the Wikipedia page on Euler angles mentions (unit) quaternions.
19:27 leprevost joined
sorear 3. the relations {i,j,k}^2 = -1 mean that i, j, and k must go into pure imaginary unit quaternions, because those are the only ones that square to -1 19:27
masak learns about en.wikipedia.org/wiki/Slerp 19:28
sorear 4. i^j = k means that A(i), A(j), and A(k) must be a right-handed orthonormal basis
masak hm, yes. 19:29
19:33 erkan joined, erkan left, erkan joined 19:41 plobsing left
vmspb rn: say 'a'|'b' 19:42
p6eval rakudo 7d394e: OUTPUT«any(a, b)␤»
..niecza v18-9-g95a1946: OUTPUT«any("a", "b")␤»
vmspb rn: say 'a'|'b, c, d'
p6eval rakudo 7d394e: OUTPUT«any(a, b, c, d)␤»
..niecza v18-9-g95a1946: OUTPUT«any("a", "b, c, d")␤»
pmichaud &slerp # replacement for &spout? ;-) 19:43
rearrange the letters and you can get "perls" or "sperl" 19:44
sorear masak: yapsi. YAPC.
masak sorear: aye. what about it? :) 19:47
19:49 PacoAir left
sorear masak: just noticed the other day. 19:50
masak hehe :) 19:53
tadzik yep, that's how I pronounce it :)
although "si" does not turn into "ś" in this particular case
masak the 'i' in 'yapsi' is short when I say it. the one in 'YAPC' is long. but the difference is slight. 19:54
sorear short and long 'i's are allophonic in us english 19:55
masak and probably elsewhere, too.
20:24 birdwindupbird joined 20:31 fridim_ joined 20:34 brrt left 20:38 danishman joined, vmspb left 20:40 brrt joined 20:44 kaare_ left 20:54 icwiener left 21:02 brrt left 21:08 birdwindupbird left 21:21 zby_home left
ajs_home Interesting... on my machine, echo consumes 175k instructions; perl -e 0 consumes 1.6m instructions; perl -MMoose -e 0 consumes 455m instructions and perl6 -e 0 consumes almost exactly 1b instructions 21:32
The command I used in case anyone else wants to try it: $ valgrind --tool=cachegrind ./perl6 -e 0 2>&1 | grep -P '\bI\s+refs:' 21:33
21:34 Moukeddar joined, Moukeddar left
ajs_home Am I the only one that's kind of sickened at the idea that echo requires 175k instructions? 21:35
tadzik GNU
flussence if you think that's appalling, try /bin/true ;)
tadzik right :)
sorear ajs_home: I'm guessing your echo is dynamically linked
ajs_home True is 97k.... at least it's better... .sigh 21:36
sorear glibc needs to be relocated
ajs_home yeah, it is
adu ajs_home: would like to optimize perl6?
s/ / you /
flussence LD_DEBUG=statistics /bin/echo
ajs_home adu: I've been mostly working outside the core, but as I start to get my hands dirty further in, I'm keeping an eye open 21:37
flussence (you *can* fix that startup time using prelink, but that doesn't play nice with some package managers' binary checksumming...) 21:38
ajs_home Wow, there's nothing at all in /bin that's statically linked on my box
There was a day that would have been considered obscene
21:38 araujo left
sorear ajs_home: debian? 21:38
adu ajs_home: as I see it, there are 3 big parts: runtime library, compilation strategy, and virtual machine 21:39
21:39 araujo joined
flussence that's why redhat's recent "separate /usr mountpoint is broken" claim is wrong - it's /bin that's broken 21:39
ajs_home sorear: yeah, ubuntu, so debian-based
adu flussence: heh, erroneous error messages, what'll they think of next 21:40
geekosaur (so, typical red hat...) 21:41
adu ajs_home: of those three, I think the most opportunity for optimization is in compilation strategy
ajs_home I'd guess you're right, adu
21:42 thou left 21:43 araujo left
ajs_home Another test: ./perl6 -e 'my $n = 0; for 1..10 -> $i { $n+=$i } ; say $n' 21:48
21:48 danishman left
ajs_home 1.5b instructions 21:48
up the count to 100 -> 1.5b instructions
up the count to 1000 -> 1.5b instructions
O.o
tadzik :) 21:49
ajs_home OK, I'm doing a floor, but still
it's really 1.531b, 1.534b and 1.580b
side note: valgrind rocks 21:50
geekosaur I imagine the largest chunk of it is spent translating to PIR or something 21:51
ajs_home Running perl6 with --leak-check=full is ... voluminous 21:52
21:52 Gesh left
ajs_home Interesting output, "definitely lost: 19,231 bytes in 1,422 blocks ... possibly lost: 121,216,606 bytes in 50,691 blocks" 21:52
121MB of "we think we left it in our other pants" 21:53
tadzik I think valgrind's known to get confused upon internal allocation mechanisms
see also: glib 21:54
sorear I think that's called "parrot's garbage collector is seriously weird and confuses valgrind"
21:54 pupoque joined
sorear geekosaur: I imagine the largest chunk of it is spent parsing and reconstructing the serialized setting 21:55
ajs_home I suspect that's how it's distinguishing possibly lost vs definitely. Probably something like, "you have a pointer to something on this page"
which could be an internal allocator at work
sorear valgrind has API calls that you can use to instrument the parrot allocator and avoid definitely lost
good luck getting any such patch accepted 21:56
sergot bye bye ! :) 21:57
21:57 araujo joined, araujo left, araujo joined
tadzik \o 21:57
21:57 sergot left
sorear o/ araujo 21:58
ajs_home Oh interesting... the Parrot garbage collector is marking uninitialized objects as live. That's probably not good 21:59
sorear ajs_home: i'd be interested to know what valgrind thinks about niecza's startup time 22:00
masak 'night, #perl6
ajs_home sorear, it's really easy to run
sorear bye masak
ajs_home: yeah but I can't be sure the results are consistant between systems
ajs_home valgrind --tool=cachegrind -- your-program-and-args-here 22:01
true
I'll look into grabbing niecza in a bit
gotta go cook dinner
araujo :) 22:02
sorear, o/ 22:03
22:03 araujo left 22:04 araujo joined
kresike bye all 22:21
22:21 kresike left
tadzik bye bye 22:21
ha, made it
flussence not on my screen!
22:23 pupoque left 22:25 pupoque joined
jnthn -> sleep, 'night 22:26
dalek ecza/non-bootstrap: bea180f | sorear++ | lib/ (3 files):
Wire compiler actions to the grammar engine

This wiring takes place at a lower level than just creating a p6-level actions class. This might count as premature optimization.
22:30
ecza/non-bootstrap: d90112c | sorear++ | lib/Actions.cs:
Fixup for install_sub
ecza/non-bootstrap: 50780fb | sorear++ | lib/Parser.src:
Incorporate CgOp in Parser.src
22:44 thou joined, thou left 22:46 fridim_ left 23:06 pochi left 23:12 Chillance left 23:15 tokuhirom joined
[Coke] colomon: hey, can ABC be installed? 23:16
23:19 adu left
dalek ecza/non-bootstrap: 56b506a | sorear++ | lib/ (3 files):
Wire actions to correct handling of $*VARs
23:23
23:38 thou_ joined
colomon [Coke]: it should work. But last time I checked Rakudo still couldn't handle it. 23:46
(the module, I mean, not the installing.)
[Coke] colomon: argh. you mean I've been building the wrong perl6? ;) 23:51
colomon well, I haven't tried it in a week or two. things might have gotten better. 23:52
[Coke] colomon: Quantifier quantifies nothing at line 50, near " { +$0 } <" 23:53
colomon huh. that's new
[Coke] colomon: niecza is NOT installable, neh?
colomon it's possible I've introduced new things that don't work in Rakudo since it stopped working in Rakudo -- I've added quite a bit of code to the module. 23:54
[Coke]: define installable? I guess I do always run it from its build directory...
[Coke] I'm trying to get it running for my son. I guess I'll just put niecza AND abc in a folder and point him at that for now.
colomon: I wish it to be installed in, e.g. /usr/local 23:55
preferably without having to manually copy a bunch of stuff.
[Coke] just shoves niecza and abc into a dir that he can wrap a script around. 23:56
colomon you can always cheat and make a one-line script to invoke niecza and stick that in /usr/local
23:56 sudokode left
colomon [Coke]: if you want to generate sheet music, you also need to have Lilypond installed... 23:56
23:58 thou_ left
[Coke] colomon: aye, mono and lilypond are already installed (via macports) 23:58
colomon \o/
I don't think I ever got the macport of lilypond to work, I ended up installing it from binaries online.
(and as a result, I've never figured out how to run it from the command line, which makes things unnecessarily awkward.) 23:59