»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend! Set by sorear on 25 June 2013. |
|||
00:03
camelia left
00:10
camelia joined
00:12
ChanServ sets mode: +v camelia
|
|||
dalek | c: fbacd28 | Mouq++ | / (2 files): Add html/syntax for misc definitions |
00:17 | |
00:28
Hor|zon joined
00:32
Hor|zon left
00:37
njmurphy joined
00:58
camelia left
01:02
camelia joined
01:03
ChanServ sets mode: +v camelia
|
|||
dalek | c: c473a1b | Mouq++ | / (5 files): Basic support for definitions via X<> |
01:08 | |
01:13
Mso150 joined
01:23
raiph joined
01:25
fhelmberger joined
01:28
BenGoldberg left
01:29
fhelmberger left
01:30
BenGoldberg joined
01:36
davido__ left
01:37
davido__ joined
01:41
tinyblak joined
01:46
camelia left,
FROGGS_ joined
01:50
FROGGS left
01:51
Mso150 left
01:52
yeahnoob joined
01:53
camelia joined
01:54
ChanServ sets mode: +v camelia
02:03
dj_goku joined,
dj_goku left,
dj_goku joined
02:05
rurban joined
|
|||
rurban | parrot will rename ops2c to parrot-ops2c in the next release. see github.com/parrot/parrot/issues/900 | 02:05 | |
02:09
raiph left
02:10
dj_goku left
02:16
dj_goku joined,
dj_goku left,
dj_goku joined
02:20
araujo left
02:29
Hor|zon joined
02:33
Hor|zon left
|
|||
dalek | c: ba47ea5 | Mouq++ | htmlify.p6: Restructure find-definition to allow for multiple definitions |
02:38 | |
02:40
tinyblak left
|
|||
dalek | p: 6ab57d7 | rurban++ | tools/ (2 files): prepare for new parrot-ops2c with fallback if config{ops2c} does not exist, < parrot-6.9.0 |
02:44 | |
02:47
kurahaupo left
02:58
noganex_ joined
03:01
noganex left,
rurban left
03:17
kaare_ joined
03:22
yeahnoob left
03:26
Akagi201_ left
03:27
Akagi201 joined
03:37
Akagi201_ joined,
Akagi201_ left
03:38
Akagi201_ joined
03:41
Akagi201 left
03:45
tinyblak joined
03:51
_slade_ left
03:52
tinyblak left
03:54
n00bster joined
03:57
virtualsue joined
03:59
n00bster left
04:01
MikeFair_ joined
04:09
pat_js left
04:10
BenGoldberg left
04:11
MikeFair_ is now known as MikeFair
04:19
kaare_ left
04:25
tinyblak joined
04:30
Hor|zon joined
04:35
Hor|zon left
04:39
MikeFair left,
rurban joined
04:40
tinyblak left,
MikeFair_ joined
04:45
ggoebel1111111 joined
|
|||
dalek | c: 60cdbe9 | Mouq++ | / (2 files): $dr -> $*DR Simplifies code and doesn't seem to have any preformance penalties |
04:47 | |
04:48
kaare_ joined
04:49
ggoebel1111110 left
04:50
cbk1090 left
04:59
jack_rabbit left
05:02
MikeFair_ left
05:04
SamuraiJack_ joined
05:05
tinyblak joined
05:09
MikeFair_ joined
05:10
MikeFair_ left
|
|||
dalek | p: 2b5b400 | rurban++ | tools/lib/NQP/Configure.pm: fixup parrot-ops2c for rakudo use the parrot:: prefix, otherwise rakudo verify_install will fail |
05:13 | |
05:51
gfldex joined
06:00
tinyblak left
06:01
tinyblak joined
06:26
bartolin joined
|
|||
dalek | ast: 26af8f8 | usev6++ | S09-typed-arrays/arrays.t: Add test for RT #114968 |
06:27 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=114968 | ||
06:31
Hor|zon joined
06:32
FROGGS_ left
06:34
rindolf joined
06:36
Hor|zon left
06:39
gfldex left
06:42
Mso150 joined
06:53
ghostlines joined
06:55
[Sno] left
06:56
pepl joined
|
|||
jnthn | morning, #perl6 | 06:57 | |
lizmat | morning jnthn | 06:58 | |
jnthn sips coffee and slowly wakes up | |||
07:01
zakharyas joined
07:05
Ven left
07:07
Mouq left
|
|||
bartolin | m: my $x = 'Just Another'; my $y := $x; say $y; | 07:10 | |
camelia | rakudo-moar bc6de5: OUTPUT«Just Another» | ||
bartolin | say $y; ## is this expected behaviour in REPL? | ||
m: say $y; ## is this expected behaviour in REPL? | 07:11 | ||
camelia | rakudo-moar bc6de5: OUTPUT«===SORRY!=== Error while compiling /tmp/B6ZGPfTKe4Variable '$y' is not declaredat /tmp/B6ZGPfTKe4:1------> say $y⏏; ## is this expected behaviour in REPL expecting any of: postfix» | ||
moritz | bartolin: looks like a bug to me | ||
bartolin | m: say $x; | ||
camelia | rakudo-moar bc6de5: OUTPUT«===SORRY!=== Error while compiling /tmp/WFxWXUlZt_Variable '$x' is not declaredat /tmp/WFxWXUlZt_:1------> say $x⏏; expecting any of: postfix» | ||
moritz | (in the REPL, doing a 'say $x' on a separate line gives (Mu)) | 07:12 | |
bartolin | moritz: locally I get 'Just Another' for 'say $x', but (Mu) for 'say $y' | 07:13 | |
moritz | bartolin: right | ||
bartolin: (camelia doesn't use the REPL, so you can't reproduce it here) | |||
bartolin: that's a bug | |||
bartolin | moritz: oh, I see (camelia doesn't use the REPL) | 07:14 | |
moritz: okay, I'll submit a rakudobug. | |||
moritz | it spawns a new process for each line | ||
bartolin | makes sense | 07:15 | |
moritz | everything else would cause too much confusion in the general case | ||
lizmat | jnthn moritz: parrot is currently barfing on $!PIO := nqp::getstdin(); | ||
is there something wrong with that ? | |||
jnthn | lizmat: Not that I know of | 07:16 | |
lizmat | does this ring a bell" "Unmarshallable foreign language value passed for parameter 'arg'" | ||
moritz | uhm | 07:17 | |
lizmat: does it go away if you explicitly type $!PIO as Mu | 07:18 | ||
? | |||
istr that we had to do something like that in the early days of the nom branch | |||
lizmat tries that | |||
I seem to recall Mu on attributes in setting didn't work | 07:19 | ||
we'll know in a few mins | |||
hmmm... I replaced nqp::bindattr(self, IO::Handle, '$!PIO', with $!PIO := | 07:21 | ||
maybe on parrot, that is *not* the same ?? | |||
jnthn | I'm not sure. I do know that the Parrot code-gen stuf pre-dates the JVM and Moar code-gen by some way | 07:22 | |
And while the JVM and Moar ones are quite consistent with each other, there are discrepancies with how things are on Parrot, typically around boxing semantics. | |||
lizmat | Mu didn't fix it | 07:23 | |
going for nqp::bindattr(self, IO::Handle, '$!PIO', reversal now | |||
jnthn | ok | 07:24 | |
jnthn ain't sure exactly how you could get that error out of it... | 07:25 | ||
lizmat | it's the only functional difference with the old code that I can see | 07:27 | |
jnthn | k | ||
lizmat | building again, will know result in a few mins | ||
jnthn | OK. With luck my last couple of students will be here by then and I'll be attemtping to teach useful concurrency stuff :) | 07:28 | |
yup :) | 07:29 | ||
07:30
tinyblak_ joined
|
|||
lizmat | no difference :-( :-( | 07:31 | |
07:32
odc joined
07:33
tinyblak left
07:39
darutoko joined,
tinyblak_ left
07:40
tinyblak joined
07:41
FROGGS joined
07:44
tinyblak left
|
|||
lizmat | seems parrot was barfing over the use of given / when | 07:50 | |
FROGGS | in combination with a capture? | ||
lizmat | given $!path.what { | ||
when << <STDIN> >> { | |||
$!PIO := nqp::getstdin(); | |||
FROGGS | because I think the error also pops up when you pass a non-sixmodelobject to a capture or so | 07:51 | |
ahh, hmmm | |||
lizmat | reverting the bindattr change now, see if that makes a diff | ||
FROGGS | sadly that one has to wait soo long when testing this :/ | 07:52 | |
lizmat | yes, meanwhile I'm doing other things | ||
exercise in concurrency :-) | 07:53 | ||
m: say 1 & say 2 & say 3 # this I expect | |||
camelia | rakudo-moar bc6de5: OUTPUT«3all(2, True)all(1, True)» | ||
lizmat | m: say 1 S& say 2 S& say 3 # this I find strange | ||
camelia | rakudo-moar bc6de5: OUTPUT«3all()all()» | ||
lizmat | S03:1107 would indicate sequential evaluation for S& ? | 07:55 | |
synopsebot | Link: perlcabal.org/syn/S03.html#line_1107 | ||
moritz | precedence? | 07:57 | |
m: (say 1) S& (say 2) S& (say 3) | |||
camelia | rakudo-moar bc6de5: OUTPUT«123» | ||
lizmat | ah, good point :-) | ||
07:59
tinyblak joined
08:00
tinyblak left
08:01
tinyblak joined
|
|||
bartolin | m: S05 says that $/ is implicitly lexically scoped. does that mean that the following two pieces of code should behave identically? | 08:02 | |
camelia | rakudo-moar bc6de5: OUTPUT«===SORRY!=== Error while compiling /tmp/H6kqLpK6YSTwo terms in a rowat /tmp/H6kqLpK6YS:1------> S05 says that $/ ⏏is implicitly lexically scoped. does tha expecting any of: postfix i…» | ||
bartolin | S05 says that $/ is implicitly lexically scoped. does that mean that the following two pieces of code should behave identically? | ||
m: { my $x = "foobar"; my $/ := $x; say "INNER: $/"}; say "OUTER: $/" | |||
camelia | rakudo-moar bc6de5: OUTPUT«INNER: foobarOUTER: » | ||
bartolin | m: { my $x = "foobar"; $/ := $x; say "INNER: $/"}; say "OUTER: $/" | ||
camelia | rakudo-moar bc6de5: OUTPUT«INNER: foobarOUTER: foobar» | ||
FROGGS | bartolin: in your last example the $/ defaults to the outer (which still is lexically scoped) | 08:04 | |
dalek | kudo/nom: fcf6dcf | (Elizabeth Mattijsen)++ | src/core/IO/Handle.pm: Unbreak rakudo build on parrot It looks like parrot gets thoroughly confused by using smart match in this way. |
08:07 | |
lizmat | at least, when used in the setting | ||
bartolin | FROGGS: okay, thanks. so in this example $/ within the block is behaving just like an ordinary variable? | ||
FROGGS | bartolin: yes | ||
m: sub foo { say $/ }; foo() # it is just implicitely declared 'my' in such situations... | 08:08 | ||
camelia | rakudo-moar bc6de5: OUTPUT«Nil» | ||
FROGGS | like packages or subs (or units?)... | ||
rurban | lizmat: looks like a nqp-p problem to me with ~~ | ||
lizmat | yeah anyway, it builds again | 08:09 | |
spent way too much time on that already :-( | |||
rurban | thanks! | ||
lizmat | you're welcome: I broke it, so I should fix it | 08:10 | |
it's just something I did not expect :-( | |||
08:10
yeahnoob joined
|
|||
bartolin | FROGGS: okay. then probably tests like that for RT #72956 (in S05-match/capturing-contexts.t) would like to use 'my $/' within their block, right. | 08:11 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=72956 | ||
bartolin | m: {$/ := 'foobar';} say $/; | 08:13 | |
camelia | rakudo-moar bc6de5: OUTPUT«===SORRY!=== Error while compiling /tmp/ib9oq8viXsTwo terms in a rowat /tmp/ib9oq8viXs:1------> {$/ := 'foobar';} ⏏say $/; expecting any of: postfix statement end statement…» | ||
bartolin | m: {$/ := 'foobar';}; say $/; | ||
camelia | rakudo-moar bc6de5: OUTPUT«foobar» | ||
bartolin | m: {my $/ := 'foobar';}; say $/; | ||
camelia | rakudo-moar bc6de5: OUTPUT«Nil» | ||
08:14
Hor|zon joined
08:21
yeahnoob left
08:24
virtualsue left
08:32
dakkar joined
|
|||
dalek | kudo/nom: f573ede | (Elizabeth Mattijsen)++ | src/core/IO/Handle.pm: First part of cruft removal from IO::Handle Because before, .IO would give you an unopened IO::Handle. So any time you would call a method on an IO::Handle that would require an open file, it would have to check whether the file was open already or not, and whether it was a directory or not. Because it is now a lot harder to create an unopened IO::Handle, we can drop the tests now. This should particularly make loops with .get and .getc a *lot* faster. |
08:38 | |
08:38
Akagi201 joined
08:42
Akagi201_ left
08:43
Hor|zon left
08:47
Mso150 left
08:51
TuxCM left,
Hor|zon joined
|
|||
lizmat | argh, now looking at some tests that segfault on parrot | 08:53 | |
08:53
cognome left
|
|||
dalek | kudo/nom: 65819d1 | (Elizabeth Mattijsen)++ | src/core/IO/Handle.pm: Eradicate the IO::Handle "isDir" attribute |
08:57 | |
08:57
TuxCM joined,
fhelmberger joined
|
|||
carlin | are those isDir changes going to cause regressions for RT #122358 ? | 09:03 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122358 | ||
dalek | ast: 5fe25b6 | usev6++ | S0 (2 files): Modify and unfudge tests for binding $/, add test for RT #114726 but binding to the outer $/ would lead to problems with later tests hence the modification to use "my $/ :=" instead of "$/ :=" |
09:06 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=114726 | ||
lizmat | it shouldn't, as slurp() uses IO::Path.slurp, not IO::Handle.slurp | ||
arguably, slurp and spurt on IO::Handle should go | 09:07 | ||
a bare slurp() might, as that uses $*ARGFILES... hmmm... | 09:08 | ||
bartolin | it would be great if someone could check whether my last commit to roast makes sense. (all tests pass, but maybe I missed the purpose of binding to non local $/ in the formerly skipped tests) | 09:10 | |
lizmat | no, it shouldn't | ||
but I will need to fix ArgFiles.slurp before I can get rid of IO::Handle.slurp :-) | |||
09:17
virtualsue joined
09:24
Ven joined
|
|||
Ven | S06:L1628 looks like it has a typo (and just below as well) | 09:25 | |
S06:1628 ? synopsebot ? | |||
synopsebot | Link: perlcabal.org/syn/S06.html#line_1628 | ||
Ven | thanks | ||
09:33
Ven left
|
|||
dalek | href="https://perl6.org:">perl6.org: 4914096 | (Kamil Kułaga)++ | includes/menu-nav: #11 link faqfaq.perl6.org/ |
09:36 | |
href="https://perl6.org:">perl6.org: b1ba4e1 | moritz++ | includes/menu-nav: Merge pull request #12 from teodozjan/master #11 link faqfaq.perl6.org/ |
|||
09:42
tinyblak left
09:47
kjs_ joined
09:49
kjs_ left
09:53
pepl left
09:59
kjs_ joined
10:03
cognome joined
10:06
Hor|zon left
10:10
rurban left
10:16
Hor|zon joined
10:21
bjz left,
bjz joined
10:25
cognome left
10:26
cognome joined
10:27
SamuraiJack_ left
10:30
[Sno] joined
10:31
cognome left,
leont joined
|
|||
dalek | kudo/nom: 9a6501a | (Elizabeth Mattijsen)++ | src/core/ (3 files): Deprecate IO::Handle.spurt In favour of IO::Path.spurt. Spurting on an opened handle is not really anything else but print/write on the handle. |
10:32 | |
ast: afbef95 | usev6++ | S05-ma (2 files): Remove duplicate test for RT #70007 |
10:33 | ||
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=70007 | ||
10:43
camelia left
10:45
camelia joined
10:46
ChanServ sets mode: +v camelia
10:54
kjs_ left
10:55
cognome joined
|
|||
bartolin | r: say $] ## LTA error message, RT #119293 | 11:00 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=119293 | ||
camelia | rakudo-{parrot,moar} 65819d: OUTPUT«===SORRY!=== Error while compiling /tmp/tmpfileUnexpected closing bracketat /tmp/tmpfile:1------> say $⏏] ## LTA error message, RT #119293» | ||
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=119293 | ||
11:00
pepl joined
11:01
lichtkind joined
|
|||
colomon | Fire::Directory::Tree started failing overnight, I'll bet it was lizmat++'s changes to IO | 11:02 | |
11:02
kjs_ joined
|
|||
leont | colomon: you shouldn't put trees on fire! ;-) | 11:02 | |
colomon | whoops, *File | 11:03 | |
lizmat goes to fetch and investigate | |||
Ah, I see: tmpdir *was* returning a Str, but now returns an IO::Path | 11:06 | ||
Str.path gives an IO (for historical reasons, and should probably be deprecated) | 11:07 | ||
IO::Path.path gives a string, as that is just the $!path attribute really | |||
hmmmm.... | |||
moritz though IO::Path.path was a no-op | 11:09 | ||
that is, returning the invocant | 11:10 | ||
but that might have changed too | |||
lizmat | yes, it has | 11:11 | |
suggestions for improvement welcome :-) | 11:12 | ||
dalek | kudo/nom: b3c26ed | (Elizabeth Mattijsen)++ | src/core/IO/Spec.pm: Deprecate IO::Spec.tmpdir in favour of $*TMPDIR IO::Spec.tmpdir also now returns a Str, rather than (the recently changed) IO::Path. This unbreaks testing of File::Directory::Tree. |
11:17 | |
lizmat | colomon: ^^^ | ||
colomon | lizmat++ # launching rerun of spec test | 11:19 | |
11:34
prevost joined
11:43
araujo joined
11:45
bartolin left,
Ulti left
11:46
Ulti joined,
Hor|zon left
11:50
kjs_ left
11:51
rurban joined
11:56
pepl left
11:57
kjs_ joined
12:01
brrt joined
|
|||
brrt | \o | 12:01 | |
lizmat | brrt o/ | 12:04 | |
FROGGS | olá | 12:06 | |
brrt | \o lizmat | 12:08 | |
how p6 been doing since.. last week? | 12:09 | ||
and how are the preparations for APW going along? | |||
12:11
Mouq joined,
woolfy left
|
|||
colomon | lizmat: huh, now OpenSSL is broken instead. :\ | 12:13 | |
lizmat goes check | 12:14 | ||
installs ok here, but I have additional changes | 12:15 | ||
dalek | kudo/nom: fc75710 | (Elizabeth Mattijsen)++ | src/core/ (2 files): Deprecate IO::Handle.slurp|copy |
12:16 | |
lizmat | pretty sure this won't make a change, though | ||
what is the error with OpenSSL (on which OS/VM ?) | 12:17 | ||
12:17
woolfy1 joined
12:19
denis_boyun joined
12:30
kaare_ left
|
|||
dalek | kudo/nom: 0d20bdd | (Elizabeth Mattijsen)++ | src/core/IO/ (4 files): Give up on IO::Path.all on parrot Just too many strange errors, segfaults, repr_unbox_whatever errors that just take too much time. If someone wants to use this newer feature on parrot, they are welcome to provide a fix! |
12:32 | |
colomon | lizmat: sorry for spacing out there. | 12:33 | |
lizmat: rebuilding rakudo, then I'll give it a try directly and see what happens | 12:34 | ||
lizmat | colomon++ | ||
12:34
pecastro left
|
|||
lizmat | m: say "foo".IO ~~ :d | 12:40 | |
camelia | rakudo-moar b3c26e: OUTPUT«False» | ||
lizmat | m: say "foo".IO ~~ :d:r | 12:41 | |
camelia | rakudo-moar b3c26e: OUTPUT«===SORRY!=== Error while compiling /tmp/y0saYFSJjzYou can't adverb thatat /tmp/y0saYFSJjz:1------> say "foo".IO ~~ :d:r⏏<EOL> expecting any of: pair value» | ||
lizmat | would be nice if the above would be syntactic sugar for "foo".IO.all(<d r>) | ||
colomon | hmmm, works if I invoke Panda directly. | ||
12:43
pecastro joined
|
|||
dalek | ecs: 6b22f92 | (Elizabeth Mattijsen)++ | S03-operators.pod: Don't give people the wrong idea :-) File tests are primarily for paths, *not* for handles |
12:43 | |
colomon | lizmat: either it was just something transient or your change fixed it, because it's working fine for me in the smoker now. | 12:44 | |
lizmat | ok, good to hear! | ||
arnsholt | jnthn: github.com/jnthn/zavolaj/issues/47...t-58010593 looks like a Moar internals thing, no? | 12:45 | |
FROGGS | arnsholt: likely | 12:46 | |
lichtkind | is there a shortcut in p6 to rotate values like $a += 2; $a = 0 if $a > 10 ? | 12:50 | |
lizmat | something with mod comes to mind? | ||
lichtkind | ah thats an idea thanks | 12:51 | |
12:51
psch joined
|
|||
lichtkind | would even work in p5 | 12:51 | |
psch | hi #perl6 o/ | ||
dalek | kudo/nom: 0730d44 | (Elizabeth Mattijsen)++ | src/core/IO/Path.pm: Allow all possible file tests on .chdir/chdir() Except on parrot, because it doesn't like IO::Path.all, so the old restriction to <r>, <r w> and <r w x> remains there. |
||
arnsholt | lichtkind: Maybe %= could work? | 12:52 | |
12:53
dwarring left
|
|||
moritz | $a = ($a + 2) % 10; | 12:55 | |
colomon | what moritz++ said. Clean, simple, and straightforward | 12:56 | |
lichtkind | true :) | ||
lizmat | except lichtkind's code said $a > 10 | 12:57 | |
I guess that would work, yes, as the check is after the addition :-) | |||
12:57
SamuraiJack_ joined
|
|||
lichtkind | yeah but i can adapt :) | 12:59 | |
colomon | sure, so it's % 11 | ||
lichtkind | it was an example and not with actual numbers i need anyway :) | 13:00 | |
13:00
kjs_ left
|
|||
lizmat | now for an excercise, turn this into a rot10 operator :-) | 13:00 | |
using macros :-) | |||
moritz | a meta operator, please | 13:01 | |
lizmat | where the "10" would become one of the parameters to the function | ||
moritz | $a = 42 rot10+ 5 | ||
$a rot10+= 2; | |||
eeeks | |||
lizmat | of course, rotN would do something differently on strings, e.g. rot13 :-) | 13:03 | |
lichtkind | haha | ||
critcs are right perl ahs builtin encryption :) | |||
colomon | wouldn't it be much more sane to define a modular group? | 13:04 | |
lichtkind | we can stack that metaop on the parser grammer anyway | ||
sure | |||
lizmat | .oO( I still have a Perl 5 IO layer module on CPAN doing rot13, would anybody be interested in maintaining that ? ) |
||
lichtkind | haha | ||
shit no original idea from me today | 13:05 | ||
not now | |||
13:05
notfix is now known as xfix
13:09
abraxxa joined
|
|||
abraxxa | arnsholt: hi! | 13:09 | |
arnsholt: thanks for your help so far! | |||
arnsholt | Not a problem | 13:10 | |
13:10
kurahaupo joined
|
|||
arnsholt | From looking at the test suite, it looks like it dies in DBIish.install_driver | 13:13 | |
Try making a test script with install_driver inlined and see if that explodes with the same error | 13:14 | ||
13:15
kjs_ joined
|
|||
colomon | gist.github.com/colomon/fbdee769ed36d9836cbb # kind of awkward but works for addition | 13:15 | |
arnsholt | And perhaps try to eliminate the use of EVAL and just put in the code that's called for the Oracle code | ||
abraxxa: If it still errors out without the EVAL, see if it's the act of using DBDish::Oracle that causes the failure, or the call to DBDish::Oracle.new | 13:16 | ||
abraxxa | arnsholt: ok | 13:17 | |
arnsholt | Actually, try the use DBDish::Oracle first | ||
The error from serialisation might point in that direction | 13:18 | ||
abraxxa | arnsholt: my $drh = DBIish.install_driver($*mdriver); directly in t/45... throws Serialization Error: Unimplemented case of read_ref | 13:21 | |
maybe my DBDish class doesn't implement enough methods to be compatible so far? | |||
arnsholt | That sounds weird | 13:22 | |
Try to have a file with just "use DBDish::Oracle; say 'alive';" in it | |||
(And the library paths set up correctly, obviously) | |||
abraxxa | perl6 -e 'use DBDish::Oracle; say "alive";' | 13:23 | |
same | |||
arnsholt | Yeah | ||
abraxxa | ah, -Ilib works | ||
arnsholt | Yeah, that might work | ||
abraxxa | now t/45... also executes ok | ||
arnsholt | Since that won't use the precompiled modules, but compile it directly on the fly | 13:24 | |
abraxxa | original t/45 now Segmentation fault (core dumped) | ||
arnsholt | So your module somehow triggers an edge case in serialisation/deserialisation | ||
abraxxa | so that was the difference between panda install . and using perl6 directly | ||
i thought it's passing a pointer to an unreserved memory segment | 13:25 | ||
arnsholt | Nah | ||
abraxxa | the OCIEnvNlsCreate call is fine, if i put a die in the if i get -1 as return value | 13:26 | |
arnsholt | Yeah, that sounds reasonable | ||
dalek | q: e1ed104 | pmichaud++ | answers.md: s/backtrace/backtrack/ when talking about 'rule' and regexes. |
||
arnsholt | If there's an error, the handle probably won't be valid =) | ||
13:27
Hor|zon joined
|
|||
abraxxa | arnsholt: but that's how you shoud get the error text according to the oracle oci docs | 13:28 | |
arnsholt: docs.oracle.com/cd/E11882_01/appdev...LNOCI16220 | |||
13:29
Mouq left
|
|||
arnsholt | abraxxa: From docs.oracle.com/cd/E11882_01/appdev...tm#i540516 it looks like you need to use the "environment handle", whatever that is | 13:32 | |
abraxxa | OCIEnvNlsCreate should return this handle | 13:33 | |
arnsholt | Oh, that's the thing created by the Create call | ||
Right | 13:34 | ||
abraxxa | i tried OCI_DEFAULT instead of OCI_THREADED, also segfaults | ||
colomon | gist.github.com/colomon/3a2861c1b9e492836b75 # hard to recognize Unicode twist | ||
abraxxa | do i need to pass the memory allocation functions to it? | 13:35 | |
does NativeCall expose them? | |||
arnsholt | Oh, I think I see it | ||
Or maybe not | |||
What type does OraText correspond to? | |||
dalek | q: e6aa625 | pmichaud++ | answers.md: A bit more rigor in describing "Any". |
13:36 | |
jnthn | arnsholt: Does it work if the module ain't pre-comp'd? It looks like something was written bogus serialization data, or is trying to read it in a bogus way... | ||
13:36
Hor|zon left
|
|||
arnsholt | jnthn: Yeah, sounds like that from what abraxxa says | 13:36 | |
abraxxa: It looks like OraText is a character type, from the descriptions in the manpage | 13:37 | ||
jnthn | arnsholt: That error sounds like a silly bug ratehr than a deep one | ||
13:38
nebuchadnezzar left
|
|||
jnthn | arnsholt: As in, something is writing one format and the reader is reading it differently | 13:38 | |
arnsholt | Right, right | ||
abraxxa | arnsholt: yes, that's why I've defined the pointer as my @errortextp := CArray[Str].new; | 13:39 | |
13:39
Hor|zon joined
|
|||
arnsholt | abraxxa: There's a type mismatch in your use of ErrorGet. The errorcodep argument is declared as OpaquePointer, but your passing a CArray | 13:39 | |
13:39
nebuchadnezzar joined
|
|||
arnsholt | abraxxa: Yeah, but that array is empty. So it only has a small amount of storage allocated intially (from memory) | 13:39 | |
13:39
yeahnoob joined
|
|||
arnsholt | And you're claiming that it's 512 bytes, which it certainly isn't | 13:39 | |
abraxxa | arnsholt: correct, that's why I asked if i have to preallocate it by e.g. filling it with zeros | 13:40 | |
arnsholt | But I suspect OraText* corresponds to Str, not CArray[Str] | ||
abraxxa | arnsholt: but i have to pass a pointer to a Str | ||
arnsholt | Well, that depends on what OraText is. Is it a char-like type, or a string-like type? | 13:41 | |
abraxxa | I've interpreted your response on github that I should use CArray to get a pointer to it | ||
arnsholt | Well for a char** type argument that's correct | ||
abraxxa | how do I find out the details of OraText? | ||
arnsholt | But the description of OCIErrorGet only really makes sense if the argument is char* | ||
abraxxa | oratypes.h has typedef OraText *string; | 13:42 | |
13:42
Mouq joined
|
|||
arnsholt | From docs.oracle.com/cd/E11882_01/appdev...#BGBCCBGF: static OraText *username = (OraText *) "HR"; | 13:42 | |
It's definitely a character type | 13:43 | ||
13:43
FROGGS left
|
|||
abraxxa | paste.scsys.co.uk/428318 | 13:43 | |
arnsholt | Which gets into a different weak point of NativeCall | ||
13:43
bartolin joined
|
|||
arnsholt | The correct type for that argument is CArray[int8] | 13:44 | |
abraxxa | i tried int32 | ||
nah, that was errorcodep | |||
arnsholt | So you'll have to make a CArray[int8] and write a 0 to the element with index 511 (that'll resize and zero all the preceding slots) and pass that in | ||
errorcodep should be CArray[int32] | 13:45 | ||
abraxxa | still segfaults | 13:46 | |
Native call expected object with CPointer representation, but got something else | 13:47 | ||
but it doesn't print which call and arg | |||
arnsholt | I think it's errorcodep | 13:49 | |
dalek | kudo/nom: ef945a7 | (Elizabeth Mattijsen)++ | src/core/IO/Handle.pm: Some more parameter sanity and cleanup |
||
arnsholt | You've declared it as OpaquePointer but you're passing a CArray | ||
abraxxa | is my definition wrong or the call? | ||
because I need to access the value the pointer points at | 13:50 | ||
arnsholt | Assuming you actually want to look at the value, it should be CArray[int32] | ||
Which means that both the definition and the call is wrong, since you're actually passing a CArray[Str] =) | |||
abraxxa | i've changed both, looks good now | 13:51 | |
how do i get at the CArray[int8] errortext now? | 13:52 | ||
arnsholt | Then you copy the contents of the CArray into a Buf, which you can decode (or is it encode, I never remember which is which) to a string | 13:53 | |
13:53
Mouq left
|
|||
abraxxa | arnsholt: i've tried that in the past, there is a problem with that... | 13:54 | |
13:54
[particle] joined
13:56
guru joined,
guru is now known as Guest27186
|
|||
dalek | kudo/nom: 8f625c9 | (Elizabeth Mattijsen)++ | / (4 files): IO::FileTestable is no more |
13:56 | |
arnsholt | You're comparing the errorcode as if it's a string too, BTW | 13:57 | |
13:57
Guest27186 is now known as ajr_
|
|||
abraxxa | is there a channel log? | 13:59 | |
arnsholt | irc.perl6.org | ||
moritz | yes, at irc.perl6.org | ||
abraxxa | we've discussed the Buf problem on the 12th September says my log | ||
starts here irclog.perlgeek.de/perl6/2014-09-12#i_9343864 | 14:00 | ||
Malformed termination of UTF-8 string | 14:01 | ||
;) | |||
we got an error message | |||
14:02
slavik left,
eternaleye joined
|
|||
abraxxa | regarding OCI_DEFAULT vs OCI_THREADED, which one should I use? I thought for Perl 6 OCI_THREADED would make sense but I'm not sure if that is supported by NativeCall | 14:02 | |
arnsholt | I have no idea what those mean | 14:03 | |
What's the difference between the two modes of operation? | |||
nine | Regarding the suggestion of an "a bit more stable than nom" branch. How about calling it "master"? nom would be an integration branch and master a continuously releasable branch like in many other projects. | 14:06 | |
arnsholt | abraxxa: Anyways, it should work if you copy the int8 elements of the CArray into a Buf[int8] and then decode that into a Str | 14:07 | |
abraxxa | arnsholt: I 'guess' threading support | ||
moritz | nine: release/master or master/dev would be a good pair | ||
arnsholt | From the usage example of OraText I linked earlier, it's clearly not a UTF-16 string | ||
14:07
psch left
|
|||
arnsholt | abraxxa: In that case, I'd go with default until you know what threaded mode does =) | 14:08 | |
abraxxa | ok | ||
14:08
psch joined
|
|||
[Coke] | japhb: so, the issue with the daily runs keeping track of what's the latest stable build: roast. We don't have a way to say "this passes all spectests at <rev>", just "at some point". | 14:08 | |
14:08
molaf joined
|
|||
abraxxa | arnsholt: see newest commit | 14:09 | |
let me look up why i encode this as UTF-16 | |||
nine | abraxxa: I'm curious. How's your Oracle driver coming along? | 14:10 | |
abraxxa | nine: GAH! | ||
:P | |||
I found a poor soul with github issue (arnsholt) who helps me understand | |||
arnsholt++ | |||
arnsholt | That looks more reasonable | 14:11 | |
abraxxa | i guess it was a misinterpretation of OraText | ||
arnsholt | Yeah, OraText is a terrible (TERRIBLE!) name for it | ||
So you get a sane error message out now? | 14:12 | ||
abraxxa | can i define OraText in the perl 6 module with the same name as CArray[int8] to use the same name everywhere? | ||
'Malformed termination of UTF-8 string' is the error text | |||
so how do i have to pass the username and password to OCILogon2? | 14:13 | ||
no, that can't be the problem as that happens later | |||
arnsholt | The malformed termination error comes from the call to NlsCreate? | 14:14 | |
abraxxa | AH | ||
docs.oracle.com/cd/E11882_01/appdev...tm#i562098 | |||
read charset(IN) | |||
i'm passing OCI_UTF16ID | 14:15 | ||
14:15
slavik joined
|
|||
abraxxa | that's why I'm encoding the username and password to UTF-16 later down | 14:15 | |
arnsholt | Right. Just make it UTF-8 instead | 14:16 | |
That'll probably save you some grief in the end | |||
14:17
pmurias joined
|
|||
abraxxa | arnsholt: not supported | 14:18 | |
arnsholt: i'm not so sure any more @error | 14:19 | ||
i wonder if i have to use OCINlsCharSetConvert everywhere | 14:21 | ||
14:22
eternaleye left
|
|||
arnsholt | Could be | 14:22 | |
I've absolutely no idea how the OCI API works | 14:23 | ||
abraxxa | arnsholt: is that the correct invocation? github.com/abraxxa/DBIish/blob/mas...e.pm6#L467 | ||
arnsholt: me neither | |||
arnsholt | It looks reasonable, but I'm not entirely sure how the Buf API works | ||
abraxxa | can the error come from this call? | 14:24 | |
arnsholt | Entirely possible. Try putting a say on either side of it | 14:25 | |
dalek | ast: 938728b | (Elizabeth Mattijsen)++ | S32-io/dir.t: Esthetics |
||
ast: 2c843cc | (Elizabeth Mattijsen)++ | S32-io/spurt.t: Properly plan and fudge for niecza |
|||
arnsholt | If only the one is called, it's Buf that's unhappy | ||
It could be that it doesn't like getting the CArray as an argument | |||
abraxxa | yeah, coming from decode | 14:26 | |
arnsholt | Try copying over the elements one by one | ||
14:26
eternaleye joined
|
|||
arnsholt | r: for 0..^3 { .say } | 14:26 | |
abraxxa | arnsholt: that should be fine according to doc.perl6.org/routine/new#class_Buf | ||
camelia | rakudo-{parrot,moar} 0730d4: OUTPUT«(timeout)» | 14:27 | |
arnsholt | abraxxa: Try copying over the bytes one by one, but stopping when you reach a NULL byte | 14:28 | |
It might not like the trailing zeroes | 14:29 | ||
abraxxa | arnsholt: is there a helper function available in NativeCall? | 14:30 | |
arnsholt | Oh. It might be that the resize doesn't actually zero the array | 14:31 | |
I thought it did, but now that I think about it, I don't think it does | |||
abraxxa | DBDish::Pg uses CArray[Str], maybe there is support for this already? | ||
github.com/abraxxa/DBIish/blob/mas...Pg.pm6#L22 | |||
arnsholt | Try setting all the elements to 0 | ||
No, there's no support for this particular use case | 14:32 | ||
It's something we've discussed in the past, but we haven't really figured out how to best handle it yet | |||
Or actually | |||
You could also get away with copying from the CArray one by one and stopping at the first NULL byte | |||
14:33
FROGGS joined
|
|||
arnsholt | Which you'll probably end up doing anyways, since if it's nulled, you'll get a Str with a lot of trailing nulls | 14:33 | |
14:34
laben joined
|
|||
laben | hai #perl6 o/ | 14:34 | |
abraxxa | arnsholt: what's the neatest syntax of setting all 512 int's to 0? | 14:35 | |
arnsholt | Neatest syntax is 0..^512, IIRC | 14:37 | |
sjn | \o | ||
arnsholt | Fastest syntax is probably while $i < 512 | ||
for 0..^512, that is | |||
xfix | And 0..^512 can be shortened to ^512, right? | 14:38 | |
masak | hejhej, #perl6 | ||
abraxxa | but i'd need the iterator number for the array access, or should i use push? | ||
masak | xfix: right. | ||
moritz | ho ho masak | ||
lizmat | masak moritz o/ | ||
masak | moritz: ho ho ho! | ||
arnsholt | xfix: Yeah, I think so | 14:39 | |
abraxxa: Either way probably works | |||
dalek | p-js: 7f00d5e | (Pawel Murias)++ | src/vm/js/QAST/Compiler.nqp: Remove misleading comment. |
14:41 | |
pmurias | masak: hi | ||
laben | lizmat: i have something strange going on, can you help me? | ||
lizmat | sure | ||
laben | m: my @a=1..5; for @a { indir "foo", { say "OK"; }} | 14:42 | |
camelia | rakudo-moar 0730d4: OUTPUT«(timeout)» | ||
laben | this errors out | ||
oops i put m: | |||
abraxxa | Cannot call 'push'; none of these signatures match | ||
@errortextp.push(0) for ^512; | |||
laben | it says Unknown tesst r w | ||
abraxxa | it seems CArray doesn't support push | 14:43 | |
lizmat | laben: what VM ? | ||
laben | moarvm ofc | ||
moritz | @errortextp[$_] = 0 for ^512; | ||
laben | i pulled 2h ago | ||
arnsholt | Oh, for CArray you're stuck with array indices, yeah | ||
lizmat | laben: confirmed | ||
arnsholt | push isn't there because for a pointer returned from C we don't know anything about how many elements there are or how much room is available | 14:44 | |
abraxxa | moritz: thanks | 14:45 | |
14:45
[Sno] left
|
|||
masak | Mouq: if you example irclog.perlgeek.de/perl6/2014-10-05#i_9460255 -- was it deliberate to do `sub where` rather than `macro where`? you seem to return a quasi at the end, just like from a macro. | 14:45 | |
lizmat | laben: fixing now | 14:46 | |
laben | lizmat: perfect :-) it's great having such active devs | ||
abraxxa | arnsholt: the values aren't overwritten by the call but still both contain zeros | 14:47 | |
laben | btw, "filename".IO.slurp and slurp "filename" both return deprecation warnings now, what is recommended? | 14:48 | |
arnsholt | abraxxa: Not sure I understand what you mean | ||
abraxxa | after calling OCIErrorGet the values still only contain the zeros i"ve prefilled them with | ||
arnsholt | Huh. That's odd | 14:49 | |
Not sure what's going on in that case | |||
14:49
eternaleye left
|
|||
lizmat | "filename".IO.slurp shouldn't give a deprecation warning, not should slurp "filename|" ? | 14:50 | |
hmmm... | |||
14:50
Hor|zon left
|
|||
dalek | kudo/nom: 9818ba1 | (Elizabeth Mattijsen)++ | src/core/IO/Path.pm: Fix issue with indir, spotted by laben++ |
14:52 | |
laben | lizmat: i'll rebuild and retest ASAP | 14:53 | |
xfix | I wonder how easy would it be to create a domain specific language in Perl 6 that would allow you to write code like `if (SELECT first_name || ' ' || second_name AS $name FROM users WHERE id = 1) { say "User #001's name is $name." }`. | 14:55 | |
moritz shouts "macros", just to annoy masak++ :-) | 14:57 | ||
14:58
eternaleye joined
15:02
Hor|zon joined
|
|||
laben | lizmat: indir fixed, many thanks to lizmat++ | 15:04 | |
deprec warnings remain though | |||
lizmat | it was only a 1 character change :-) | ||
yes, working on that | |||
masak | moritz: probably more of a slang, but time will tell ;) | 15:10 | |
moritz | masak: I think so too | ||
masak: but it's more fun to annoy you with "macro!" :-) | 15:11 | ||
jnthn | moritz: no no, to annoy masak, should MARCO! | ||
masak | auugh | ||
moritz | jnthn: macro polo! | ||
jnthn swiftly decommutes :) | |||
15:13
kaare_ joined
15:15
denis_boyun left
|
|||
pmurias | somebody should write a marco module that allows users to write 'use marco; marco foo {...}' ;) | 15:16 | |
15:16
eternaleye left
|
|||
masak | "defining keyword synonyms". got it. | 15:19 | |
lizmat | Mu $!path Mu $!PIO int $!ins Mu $!chomp | 15:21 | |
P6opaque: no such attribute '$!PIO' | |||
hmmm.. something wrong in this picture | 15:22 | ||
15:23
eternaleye joined
|
|||
japhb | [Coke]: Part of the reason I was thinking of the daily runs is that we could time them to run during the lull when Europe is mostly asleep, when commits are mostly idle. And that might put gentle pressure on people not to push a major refactor to nom just before going to sleep, analogous to at most companies not pushing new software releases on Friday evening. | 15:25 | |
timotimo | so much backlog i just skipped because i don't want to touch anything related to the oracle database ... :P | ||
15:28
treehug88 joined
|
|||
carlin | just think about how much Larry Ellison's networth increased by while you were scrolling past it | 15:28 | |
15:31
Akagi201 left
|
|||
abraxxa | x | 15:32 | |
dalek | kudo/nom: c24537e | (Elizabeth Mattijsen)++ | src/core/IO/Path.pm: Fix deprecation warning on IO::Path.slurp |
||
lizmat | laben: ^^^ | ||
15:32
yeahnoob left
|
|||
lizmat | cycling& | 15:32 | |
15:32
brrt left
|
|||
abraxxa | arnsholt: the problem was that I defined $envhp as OpaquePointer and assigned @envhpp[0] to it hoping that I later can use $envhp which isn't the case | 15:33 | |
laben | lizmat: retest coming right up | ||
abraxxa | instead I have to assign @envhpp[0] to $envhp to get the filled pointer out | 15:34 | |
15:36
fhelmberger left
15:37
zakharyas left
|
|||
abraxxa | arnsholt: ORA-24483: Invalid parameters were passed into environment creation call | 15:41 | |
YEAH | |||
15:42
eternaleye left
15:43
Hor|zon left
15:44
[Sno] joined
|
|||
abraxxa | how do i pass null to NativeCall? | 15:45 | |
15:46
ghostlines left
15:47
eternaleye joined
15:49
Hor|zon joined
15:51
cognome left
|
|||
timotimo | just use OpaquePointer | 15:51 | |
15:52
ribasushi left
|
|||
timotimo | any type object will be treated as NULL, but OpaquePointer's type object seems like a common one to use | 15:52 | |
15:58
ajr_ left
15:59
guru joined,
guru is now known as Guest3129
16:00
tinyblak joined,
Hor|zon left
16:01
Guest3129 is now known as ajr_
|
|||
laben | lizmat: sorry i did not answer quickly, i got a little busy. Everything is fine now, no deprec warnings :) | 16:02 | |
16:08
ribasushi joined,
raiph joined,
eternaleye left
|
|||
abraxxa | timotimo: thanks | 16:10 | |
passing OpaquePointer instead of a CArray[OpaquePointer] fixed the OCIEnvNlsCreate call | 16:13 | ||
16:13
Hor|zon joined
16:15
njmurphy left
16:17
eternaleye joined
|
|||
[Coke] | japhb: I think having something like this is a good idea; I'll play with it and let you know. Maybe good enough will be good enough. | 16:18 | |
japhb | [Coke]: OK, cool, thank you. | 16:21 | |
tony-o | carlin: np, thank you for creating the merge req | 16:23 | |
16:25
liztormato joined
16:28
raiph left
16:35
liztormato left,
virtualsue left
16:36
eternaleye left,
cognome joined
16:38
kjs_ left
16:39
Mso150 joined
|
|||
psch | does --no-regex-lib in the invocation for compiling NQPHLL.nqp mean that i don't get any regex and thus no grammars? | 16:41 | |
...and would that segfault if i use a grammar anyway? | |||
pmurias | you don't get any regex or grammar support | ||
16:42
xinming left
|
|||
pmurias | it's not supposed to segfault (haven't actually tried it so it might) | 16:42 | |
colomon ponders planned segfaults... | |||
psch | pmurias: thanks. i suppose the segfault isn't really much of a problem if i'm doing something that shouldn't be done. | ||
i guess i'd have to get parsing of command line options out of NQPHLL-land then | 16:43 | ||
i also wish i'd have asked earlier, heh | |||
but then moritz++ did raise a good point with 'multiple -e might not really make sense and people should write a proper script when it gets complicated' | 16:44 | ||
i'll repurpose my nqp PR for multiple -e towards "forbid multiples of options we definitely don't want more than one of" i think | |||
16:44
rurban left
16:45
eternaleye joined
|
|||
PerlJam | multiple -e might make sense in conjunction with multiple -I | 16:45 | |
pmurias | multiple -I is something we really want | 16:46 | |
PerlJam | for a completely made-up example: perl6 -e 'perl 6 here' -IInline::Python -e 'python here' -ISome::Other::Slang -e 'you get the idea' | 16:47 | |
er, ... sorry that should have been -M, not -I | 16:48 | ||
my brain or something isn't quite working right. | |||
16:49
laben left
16:50
erkan left
|
|||
PerlJam | (But, yeah, multiple -I is certainly wanted :) | 16:50 | |
16:51
erkan joined,
pmurias left
16:52
gfldex joined
16:55
eternaleye left
16:59
dakkar left
17:03
chipotle joined
17:05
Hor|zon left
17:08
Hor|zon joined
|
|||
masak | PerlJam: how does Perl 5's `perl` work in that regard? it already has both multiple -M and multiple -e | 17:09 | |
tony-o | i use multiple I with p5 pretty regularly, i just did it to time min/max vs single loop | ||
17:10
MikeFair_ joined
|
|||
leont | perl 5 has use semantics for -M | 17:12 | |
psch | masak: gist.github.com/peschwa/0864c6a62a16218a17a8 | 17:14 | |
-Ms seem to get prepended | |||
at least if O=Deparse isn't cheating more than it's supposed to | |||
tony-o | interesting | ||
masak | psch: very interesting. | 17:19 | |
given what I know of the cmdflags codegen, this makes sense. | 17:20 | ||
17:23
MikeFair_ is now known as MikeFair
17:26
_slade_ joined
|
|||
moritz | rakudo currently stops parsing after the first -e | 17:31 | |
which IMHO makes a lot of sense, because everything after going into @*ARGS is a very simple and natural rule | 17:32 | ||
multiple -e would imply a more complicated rule for deciding when to stop | 17:33 | ||
and until I've seen a good use case for multiple -e, I'm against more complicated rules | |||
I've nobody objects, I'll patch S19 accordingly | |||
PerlJam | so, that implies that -e must be the last option? | 17:34 | |
moritz | yes | ||
PerlJam | or, that -e is effectively a stopper for future options. (like -- normally does) | ||
wfm I guess. I have no real need of multiple -e | |||
moritz | those two are equivalent, no? | ||
tony-o | i treat them that way but i think it'd be confusing to people who don't | 17:35 | |
17:35
molaf left,
leont left
|
|||
tony-o | like the argument ordering in OSX vs linux | 17:35 | |
17:35
kaare__ joined
|
|||
moritz | who are arguments ordered in OSX? | 17:36 | |
17:36
chipotle left
|
|||
tony-o | rm folder -Rf in OSX won't remove a folder | 17:36 | |
it won't parse -Rf until after it tries to remove the folder | 17:37 | ||
abraxxa | arnsholt: it starts to work! look at my latest commits if you like | ||
tony-o | same argument order works fine in gnu 'rm' which is what most linux distros come with iirc | ||
moritz | tony-o: so 'rm a -Rf b' would remove b/ but not a/ ? | ||
tony-o: or would it try to rm files 'a', '-Rf' and 'b' ? | |||
17:37
kaare_ left
|
|||
tony-o | it errors out as: rm a: is a dir rm: -Rf: no such file or directory | 17:38 | |
moritz | so, the latter | ||
ok, thanks | |||
tony-o | same error with b, it treats the non flag argument as the end of flags | ||
masak | PerlJam: or alternatively, that -e '...' has the same effect on (wrt later arguments) as <scriptfile> does | ||
moritz: +1 to only one -e | 17:39 | ||
s/on / | |||
tony-o | +1 | ||
PerlJam | moritz++ | 17:40 | |
psch | i don't have a particular use case that makes -e very useful. if anything the one PerlJam brought up before is the only one. | 17:42 | |
additionally, i feel like my solution would need much more time to get working properly, which i'll probably be lacking in the near future | 17:43 | ||
17:44
kjs_ joined
17:46
dwarring joined
|
|||
dalek | kudo-star-daily: a210212 | coke++ | log/MoarVM-version.log: today (automated commit) |
17:46 | |
kudo-star-daily: 7bdc24f | coke++ | log/MoarVM-version.log: today (automated commit) |
|||
rl6-roast-data: 9180fe1 | coke++ | / (4 files): today (automated commit) |
|||
rl6-roast-data: 70cccd9 | coke++ | / (4 files): today (automated commit) |
|||
[Coke] | I never thought -e was a stopper for args. | 17:47 | |
moritz | [Coke]: what did you think was a stopper for args? | ||
[Coke]: also, current rakudo already implements -e as a stopper. Did that ever surprise you? | 17:48 | ||
17:50
eternaleye joined
|
|||
[Coke] | moritz: -- | 17:50 | |
moritz: hasn't come up | 17:51 | ||
17:51
prevost left
|
|||
moritz | [Coke]: so in the case of perl -e 'program' more stuff here, the "more stuff here" is always part of the command line arguments to perl, not the program? | 17:51 | |
[Coke] | also, it doesn't seem true: "perl -E 'say 3' -d" puts me in the debugger. | 17:52 | |
(same with -e) | 17:53 | ||
moritz | [Coke]: rakudo currently implements -e as a stopper, not perl5 | ||
[Coke] | I thought the argument was "we're doing this because perl 5 does." | 17:54 | |
my bad. | |||
moritz | we're doing that because | ||
dalek | c: 4b84000 | Mouq++ | lib/Language/functions.pod: Stub functions.pod |
||
moritz | 1) p5's disambiguation means that some arguments are interpreted as options to p5, and some as options to the program | 17:55 | |
2) those rules change when there's a new command line option | |||
and | |||
3) they are much more complicated than they need to be | |||
17:56
Mouq joined
|
|||
[Coke] | I will make my -1 tentative instead of firm, then. :) | 17:56 | |
moritz | noted, thanks | ||
Mouq | masak: Yes, I meant macro. And I was fighting the syntax in that example, but I was trying to express some sort of macro for pattern-matching | 17:57 | |
nine | If perl6 should one day replace perl even for Perl 5 programs, it should be as compatible as possible. | 17:59 | |
PerlJam | Doing the conservative thing first, then opening it up in the future is far easier than if it were the other way around (ie. we decided after allowing multiple -e that we really only want one and for it to be a stoppper for args) | 18:01 | |
nine: I think when that day comes, compatibility with Perl 5 probably won't matter :) | |||
18:02
treehug8_ joined
|
|||
nine | PerlJam: you seem to think that this day is far in the future? | 18:02 | |
masak | Mouq: I am intrigued by your example. | 18:03 | |
PerlJam | nine: I dunno, but judging by the time scale of previous Perl cultural shifts, yes. | 18:04 | |
masak | Mouq: could you maybe give an example input, too? i.e. how would that macro be used? the more concrete, the better. | ||
18:04
abraxxa left,
treehug88 left
|
|||
nine | PerlJam: I don't see a cultural shift needed. I'd say lower start up time, a stricter adherence to S01 and automatic loading of Inline::Perl5 is all it needs. And those are not that far out. | 18:05 | |
Mouq | masak: It came up in another project where I wanted to do something similar, although I think in both cases it runs into the issue with blocks in quasis | 18:06 | |
masak | yes, that's what I thought | ||
18:06
kjs_ left
|
|||
Mouq | masak: I have class soon, but I'll try to write something up soonish | 18:06 | |
masak | \o/ | ||
Mouq | masak: :) | ||
\o | |||
18:06
Mouq left
|
|||
masak | quite often I find myself wishing that a macro could flaunt TTIAR a little. | 18:06 | |
tadzik | heheh | ||
don't we all :) | |||
PerlJam | nine: The cultural shift is convincing p5p that that's all it needs (or that the role of p5p changes) | ||
18:06
treehug8_ left
|
|||
masak | I guess that comes down to macros being more grammar-y than they are now. | 18:07 | |
18:08
rindolf left
18:12
treehug88 joined
18:16
ajr_ left
18:31
_slade_ left
18:35
prevost joined
18:36
spider-mario joined
|
|||
dalek | ast: cb72de7 | usev6++ | S32-exceptions/misc.t: Add test for RT #71800 |
18:39 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=71800 | ||
18:45
rindolf joined
18:48
kjs_ joined
18:51
treehug8_ joined
18:52
leont joined
18:54
treehug88 left
18:58
SamuraiJack_ left
|
|||
dalek | nda/CPAN: 29e0bcb | (Elizabeth Mattijsen)++ | lib/Panda/Fetcher.pm: Fix Panda breakage caused by S16|S32/IO refactor |
19:01 | |
panda/CPAN: 7398d28 | (Elizabeth Mattijsen)++ | / (3 files): | |||
panda/CPAN: Use $*CWD instead of cwd() | |||
19:01
dalek left
|
|||
FROGGS | (not to worry, that's just a branch merge) | 19:01 | |
19:01
dalek joined,
ChanServ sets mode: +v dalek
19:02
molaf joined
19:05
Hor|zon left,
kjs_ left
19:06
Mso150_y joined
|
|||
dalek | ecs: 8f8c840 | moritz++ | S19-commandline.pod: [S19] simplify rules for command line parsing -e now stops command line parsing. This means only one -e is now interpreted. Use proper scripts instead. Rationale: p5's disambiguation rule is that everything after the -e program is considered an option to perl if it's a valid perl option. This means that 1) you have to memorize an arbitrary list of options that apply to the compiler to know where an option belongs to 2) introducing an option to the compiler is a backwards incompatible change 3) the rules are more complicated |
19:06 | |
19:07
Mso150 left
19:10
Hor|zon joined
19:15
Mso150_y left,
Hor|zon left
19:16
psch left,
Mso150_y joined
19:19
Hor|zon joined
19:23
Hor|zon left
19:30
darutoko left
19:33
itz_ is now known as itz
19:35
ajr joined
19:36
ajr is now known as Guest95252,
Guest95252 is now known as ajr_,
fhelmberger joined
19:40
fhelmberger left
19:43
Hor|zon joined
19:45
Psyche^ joined
19:49
Psyche^_ left,
Hor|zon left
19:55
camelia left
19:56
kjs_ joined
20:00
treehug8_ left,
treehug88 joined
20:01
camelia joined
20:02
ChanServ sets mode: +v camelia
20:04
ribasushi left
20:06
kjs_ left
20:11
virtualsue joined
20:12
bjz left
20:13
rmgk is now known as Guest43032,
rmgk_ joined,
Guest43032 left,
rmgk_ is now known as rmgk
20:14
kjs_ joined,
spider-mario left
20:15
Hor|zon joined
|
|||
lichtkind | good night | 20:15 | |
20:16
rurban joined
20:18
bjz joined,
rurban left
20:20
Hor|zon left,
Mso150_y left
20:25
chipotle joined
20:26
ribasushi joined
|
|||
japhb | moritz: FWIW (after you made the spec change): 1. I've actually used the multiple -e with perl5 before. 2. IIRC this was to get around some confusing bit of shell parsing. 3. The benefit gained over just breaking down and writing my code to a file was not, on balance, worth the ugliness in the default option parsing. So in other words, as someone who has used the feature you are declaring dead, I think you made the right decision. | 20:26 | |
20:27
kaare__ left
|
|||
moritz | japhb: thanks | 20:29 | |
20:31
FROGGS left
20:32
kjs_ left
20:33
tinyblak left
20:36
lichtkind left
|
|||
leont is just at horror at the general behavior, and wonders if it can break MakeMaker (which is using -e + @ARGV in many of the ExtUtils::Command lines) | 20:42 | ||
20:43
kjs_ joined
|
|||
leont | I'm looking for a roommate in Salzburg, anyone up for that? | 20:45 | |
20:45
kjs_ left
20:47
denis_boyun_ joined
20:57
xfix is now known as notfix
21:00
bartolin left
|
|||
dalek | ast: 059caa0 | (David Warring [email@hidden.address] | / (2 files): snick in a test for RT #122896 |
21:01 | |
synopsebot | Link: rt.perl.org/rt3//Public/Bug/Displa...?id=122896 | ||
timotimo | nine: is it safe to say that there's not that much to report on Inline::Perl5 because it's already so close to being done? and you're now spending time on the secret thing you want to unveil at APW? | 21:04 | |
21:13
beastd joined
21:15
gfldex left
21:16
rindolf left
21:23
chipotle left
|
|||
japhb | nine: And as a followup to timotimo's question, what is *not* done for Inline::Perl5? | 21:27 | |
21:32
kurahaupo left
21:41
prevost left,
chipotle joined
21:43
bjz left
21:52
dolmen joined
21:55
lichtkind joined
|
|||
lichtkind | there was some talking about closing specs in 2014 | 21:55 | |
is it still relevant? | 21:56 | ||
or is it next chsitmas :) | |||
christman | |||
lizmat | It is my goal to get clarity about that at the APW | 21:57 | |
lichtkind | allright so i delete this sentence | 21:58 | |
thanks | 21:59 | ||
sorry cant make it to apw | |||
japhb | As a mantle developer, it does not appear to me that Rakudo's core functionality is sufficiently complete to declare specs closed. | ||
lichtkind | still 2 exams left | ||
lizmat | japhb: clarity does not necessarily equate to closing the specs | ||
for me, it will equate to specifying things we want *for sure* in 6.0 and marking them as such in the spec | 22:00 | ||
japhb | lizmat: I don't disagree there. I'm saying more along the lines of "I mostly expect the clarity to be 'We can't close the specs yet.'" | ||
lizmat | I would take such an outcome as not meeting my expectation | 22:01 | |
22:02
dolmen left
|
|||
japhb | I cautiously accept your optimism. ;-) | 22:03 | |
timotimo | tony-o: just looking at your DB::ORM::Quicky; you're doing $username ~= chr((65 .. 90).pick) for 0 .. 10; which i think is more simply written as my $username = [~] ("a".."z").roll(10) | ||
lizmat | japhb: to me it's more important that we set what we want for 6.0, and that we can tell the world what that would be | 22:06 | |
tony-o | timotimo: nice, thank you! | 22:07 | |
dalek | kudo/nom: 26e285b | (Elizabeth Mattijsen)++ | src/core/IO/Spec.pm: Deprecate what we can from IO::Spec |
||
tony-o | m: my $username = [~] ("a".."z").roll(10); say $username; $username = [~] ('a'..'z').roll(10); say $username; | 22:09 | |
camelia | rakudo-moar c24537: OUTPUT«kkxtznlqjiwnsmvkhrjo» | ||
japhb | lizmat: I just haven't seen evidence that any of our previous predictions about solid parts of the spec has actually turned out to be that way *once we actually implemented those parts* | ||
(And I use 'our' loosely here, because I've not made such a prediction that I can recall -- for reasons that recurse with my above statement.) | 22:10 | ||
lizmat | well, things have been moving very fast the past 6 months | 22:11 | |
japhb is of the "Versioned specs are what happens after unversioned specs get implemented" school of thought, rather than the "Versioned specs are what comes out of committee and gets implemented" school | 22:12 | ||
lizmat: Oh sure, and that's *fantastic*. | |||
tony-o | timotimo: as soon as i figure out why i have the wrong version of m-CORE i'll push the change | ||
japhb | (everyone who committed this year)++ for that | ||
lizmat | :-) | 22:13 | |
japhb finds this reminiscent of the w3c specs that got enshrined in versioned spec and never came to be -- much less came to be in the same form | |||
timotimo | tony-o: you will need to reinstall/recompile all modules after you've rebuilt your rakudo | 22:14 | |
lizmat | let's not make the same mistakes :-) | ||
tony-o | is there a quick way to do that with panda? | ||
lizmat runs a rebootstrap.pl to make sure she didn't break panda | |||
japhb | lizmat: *chuckle*. Yes, well, ... I'm aiming for mistake #0. :-) | ||
tony-o | really tired of vendors who roll their own "secure" VPN software | 22:15 | |
s/vendors/customers/ | 22:16 | ||
22:16
Hor|zon joined
22:18
chipotle_ joined,
chipotle left
|
|||
timotimo | "rebootstrap.pl" will remember what packages you've had installed and will install them again | 22:19 | |
22:19
chipotle_ is now known as chipotle
22:20
Hor|zon left
|
|||
japhb | tony-o: <sarcasm>But it's just so *easy* to do, why wouldn't everyone make their own? After all, they can add all the extra security ideas they had back in college, plus use one-time pads for everything! What could go wrong?</sarcasm> | 22:21 | |
.oO( Reviewing C++ commits is making me snarky ... ) |
|||
timotimo | japhb: "and use a one-time pad for everything!" :P | 22:22 | |
tony-o | i normally don't mind because i can do p6 stuff while the customer fixes their half working VPN stuff but this one wants to do all of this mobile stuff with phones and ipads so they can get their data without being on the network but their VPN doesn't work with mobile devices (inc windows phone), or OSX, or linux, or even firefox|chrome|opera|safari|ie10+ on windows | 22:24 | |
timotimo | m( | 22:25 | |
tony-o | guess it's better than no customer | 22:27 | |
timotimo | except if you're expected to fix such things for them | 22:28 | |
22:29
virtualsue left
|
|||
tony-o | hah | 22:31 | |
22:34
virtualsue joined
22:37
jack_rabbit joined
22:38
njmurphy joined,
BenGoldberg joined
|
|||
tony-o | timotimo: pushed changes | 22:39 | |
22:39
lichtkind left,
treehug88 left
22:43
virtualsue left,
denis_boyun_ left
22:45
Hor|zon joined,
beastd left
22:52
Hor|zon left
|
|||
timotimo | posted the weekly, too | 22:54 | |
tony-o | link? | ||
22:54
dwarring left
|
|||
timotimo | p6weekly.wordpress.com | 22:56 | |
22:57
chipotle_ joined
22:58
chipotle left,
chipotle_ is now known as chipotle
23:00
colomon left
23:02
kurahaupo joined
|
|||
tony-o | oh cool, i made one :-) | 23:05 | |
is p6 represented at yapc? | 23:07 | ||
japhb | Which YAPC? | ||
tony-o | whichever happens in the US | 23:08 | |
i think it was in texas this year | |||
japhb | That was last year (I went to that one). It was in Orlando this year, IIRC. | 23:09 | |
tony-o | yea i'm seeing that now - | ||
japhb | I dunno where the next one is. | ||
tony-o | i think i'm gonna try to go this year even though perl has nothing to do with what i do for a living | 23:10 | |
japhb | It's usually announced at the conference. | ||
tony-o | this coming year* | ||
japhb | nodnod | ||
23:12
colomon joined
|
|||
woolfy1 | The next YAPC::NA will be in Salt Lake City in Utah. | 23:18 | |
On 8-10 June, 2015. | 23:19 | ||
Perl 6 was represented at this year's YAPC::NA, and last year's YAPC::NA, and the year before that too... | 23:20 | ||
timotimo | is the next yapc::eu location known yet? | ||
woolfy1 | Yep, YAPC::EU in 2015 will be in Granada, Spain, in september 2015. | ||
Exact date... not know yet. | 23:21 | ||
But september. Not august. | |||
If you want a lot of Perl 6, you gotta go this week to Salzburg, Austria, for the Austrian Perl Workshop & Hackathon. act.useperl.at/apw2014/ | 23:24 | ||
Lots of Perl 6 people at the hackathon. It is going to be great! | |||
tony-o | austria would be a lot of fun | 23:25 | |
woolfy1 | Salzburg is one of the most beautiful cities on this planet! | 23:27 | |
japhb | Wish I could be there. | ||
tony-o | füssen in germany has been my favorite so far | 23:28 | |
woolfy1 | Füssen, Bavaria, Germany: population of 14,631; town is known for its violinmaking industry. :-) | 23:29 | |
tony-o | i stayed there for a week when i was 18 or 19, i like the solitude and german folks | 23:30 | |
leont | What does the jit-by-default mean for rakudobrew? Is the moar versus moar_jit distinction still relevant? | 23:31 | |
timotimo | i think we'll want to turn that into "moar" and "moar_nojit" | 23:32 | |
as it stands, the "moar" target will give you a moar-jit and "moar_jit" will give you a "--enable-jit is no longer needed" message | |||
23:37
fhelmberger joined
23:41
fhelmberger left
23:50
Akagi201 joined
23:59
_slade_ joined
|