samcv | $ water | zoffix # command not found: water | 00:19 | |
Zoffix could sure use definedness-based defaults right about now :| gist.github.com/zoffixznet/8f52e9f...decd6ce77b | 00:24 | ||
I guess it's my fault tho. Since I was given green light to do them in a module and then move it to core, but I never bothered :} | |||
Ah, I remember why I didn't do them now... I'm a n00b | 00:26 | ||
Wonder if lizmat's stash of iterators got one that's "GiveNThenSinkAll | 00:57 | ||
" | |||
AllButLastNValues is almost good... but it's eager and doesn't sink | 01:01 | ||
Pretty good collection, but none that suit my needs. Gonna write one. Will use it in IO::Handle.lines, .words, .comb, and .split to handle $limits that'll auto-close the handle for users if needed. | 01:08 | ||
FirstNSinkAll | 01:09 | ||
Great. Not only do I now not have water, but tobacco smoke is going into my apartment from the hole in the wall. | 01:14 | ||
ZofBot: can I stay at your place tonight? | |||
ZofBot | Zoffix, *), 0) [1 | ||
Zoffix | ZofBot: c'mon, don't be an ass | ||
ZofBot | Zoffix, Or if acronyms make you happy, there are a variety to pick from: Most Universal More Undefined Modern Undef Master Union Meta Ur Mega Up Or just think of it as a sound a cow makes, which simultaneously means everything and nothing | ||
Zoffix | huggable: Mu | 01:15 | |
huggable | Zoffix, The root of the Perl 6 type hierarchy.: docs.perl6.org/type/Mu | ||
Zoffix | huggable: Mu :is: The root of the Perl 6 type hierarchy.: docs.perl6.org/type/Mu Or if acronyms make you happy, there are a variety to pick from: Most Universal More Undefined Modern Undef Master Union Meta Ur Mega Up Or just think of it as a sound a cow makes, which simultaneously means everything and nothing | ||
huggable | Zoffix, Added Mu as The root of the Perl 6 type hierarchy.: docs.perl6.org/type/Mu Or if acronyms make you happy, there are a variety to pick from: Most Universal More Undefined Modern Undef Master Union Meta Ur Mega Up Or just think of it as a sound a cow makes, which simultaneously means everything and nothing | ||
Zoffix | ZofBot++ # I love you, buddy | ||
AlexDaniel slaps ZofBot | 01:42 | ||
Zoffix: he refused to talk to me today | 01:46 | ||
ā¦ *it* refused | |||
Zoffix | AlexDaniel: he doesn't talk in #perl6 | 01:50 | |
AlexDaniel | ZofBot: in any case, I'm sorry | 01:55 | |
ZofBot | AlexDaniel, PBP "Perl Best Practices" | ||
mst vomits | 01:56 | ||
Zoffix | ZofBot: vomit best practices | 02:01 | |
ZofBot | Zoffix, As in Perl 5, it is possible to "goto" into a lexical scope, but only for lexical scopes that require no special initialization of parameters | ||
Zoffix | uhuh, you keep trying | 02:02 | |
mst | I have perl5 code that uses goto as longjmp | 02:05 | |
geekosaur | scaring people away, are we? | ||
samcv | how can you make a Label in perl 6:? | 02:07 | |
that you can `goto`? | |||
ZofBot, vomit | 02:08 | ||
ZofBot | samcv, The following does *not* cube "2/3": 2/3**3 # 2/(3**3), not (2/3)**3 Decimal fractions not using "e" notation are also treated as literal "Rat" values: 6 | ||
Zoffix | m: LABEL: { say "meow" } | ||
camelia | meow | ||
samcv | m: if 0 { thislabel: { say 'label' }; }; goto thislabel | 02:09 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared routine: thislabel used at line 1 |
||
[Coke] | ENOGOTO | ||
Zoffix | You can use labels, but we ain't got a goto yet :) | ||
samcv | :( | ||
how do i get the label? | 02:10 | ||
m: thislabel: { 'foo' }; goto thislabel | |||
camelia | WARNINGS for <tmp>: Useless use of constant string "foo" in sink context (line 1) Label.goto() not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
samcv | ok got proper error here | 02:11 | |
Zoffix | m: thislabel: { 'foo' }; dd thislabel.^name | ||
camelia | WARNINGS for <tmp>: Useless use of constant string "foo" in sink context (line 1) "Label" |
||
Zoffix | m: thislabel: { $ = 'foo' }; dd thislabel.^name | ||
camelia | "Label" | ||
samcv | m: thislabel: { 'foo' }; next thislabel | ||
camelia | WARNINGS for <tmp>: Useless use of constant string "foo" in sink context (line 1) labeled next without loop construct in block <unit> at <tmp> line 1 |
||
samcv | m: thislabel: { 'foo' }; thislabel.goto | 02:12 | |
camelia | WARNINGS for <tmp>: Useless use of constant string "foo" in sink context (line 1) Label.goto() not yet implemented. Sorry. in block <unit> at <tmp> line 1 |
||
Zoffix | Seems my water crisis is beneficial to Perl 6. Normally, I would've been asleep 2 hours ago, but now I almost finished hacking up penultimate user-facing IO thing with .lines, .words, .comb, and .split IO::Path/IO::Handle methods :) | 02:15 | |
I think then it's IO::Path.child and I'm done with user-facing changes. | |||
Oh, and IO::CatHandle and that's it. | |||
\o/ | |||
[Coke] | Zoffix: nice | 02:24 | |
Zoffix | m: say Whatever ~~ Cool | 02:40 | |
camelia | False | ||
Zoffix | That's just uncool. | ||
m: say Whatever ~~ Numeric | |||
camelia | False | ||
Zoffix | The Whatever is a thorn in the side in any place where it's used to mean same thing as Inf | 02:41 | |
We should toss that meaning in 6.e :) | 02:45 | ||
Or better yet, make Whatever Numeric that Numifies to Inf | |||
\o/ \o/ Praise the Noodly Lord \o/ \o/ I can hear water int he pipes | 03:12 | ||
:| celebrated too soon | 03:43 | ||
It's off again, aparently. 11:43pm. Fuckers. | |||
samcv | my last apartment they worked on the water like 4 times or more during a year | 03:44 | |
i know your pain | |||
Zoffix | :'( | ||
geekosaur | the water main out front of this place has burst in two successive years | 03:46 | |
geekosaur keeps bottled water around now | |||
Zoffix | m: use nqp; class { has int $.x = -1; method !SET-SELF ($!x) {self}; method new(\n) {nqp::create(self)!SET-SELF(n) } }.new(42).x.say | 04:12 | |
camelia | 42 | ||
Zoffix | wtf... same code in core refuses to compile | ||
In this line: gist.github.com/zoffixznet/4eb8630...-diff-L121 | 04:13 | ||
m: use nqp; role Foo { has int $.x = -1; method !SET-SELF ($!x) {self}; }; class :: does Foo { method new(\n) {nqp::create(self)!SET-SELF(n) } }.new(42).x.say | 04:14 | ||
camelia | Cannot modify an immutable int in method SET-SELF at <tmp> line 1 in method new at <tmp> line 1 in block <unit> at <tmp> line 1 |
||
Zoffix | boooo | ||
Man, I'm a slow coder. 4 hours on this commit I'm working on that's barely 2 screens of content and nothing arcane :( | 04:32 | ||
Finally managed to get it to compile... | 04:33 | ||
Geth | rakudo/nom: 172341c590 | (Zoffix Znet)++ | src/core/Rakudo/Iterator.pm Remove trailing whitespace |
04:37 | |
Zoffix | THERE! *phew*. Finally done. | 04:38 | |
:} | |||
it's not it | |||
I guess 5 hours :/ | 04:48 | ||
OMG just compile already | 04:51 | ||
yeah, fuck it. Will take 1 minute to finish tomorrow | 04:52 | ||
So sleepy, latest compilation error was due to $!source.sink-call; instead of $!source.sink-all; | 04:53 | ||
Zoffix drops to bed | |||
holy crap | 05:02 | ||
ZOFVM: Files=1238, Tests=133657, 108 wallclock secs (18.16 usr 2.85 sys + 2235.48 cusr 147.87 csys = 2404.36 CPU) | |||
Fastest time yet | |||
Geth | rakudo/nom: 29f58cd256 | (Zoffix Znet)++ | src/core/Rakudo/Iterator.pm Implement R::Iter.FirstNThenSinkAll iterator - Gives at most N values - When done, calls .sink-all and calls an optional Callable - Will be used in IO::Handle .lines, .words, .comb, and .split to auto-close the handle when given a limit and asked for closing ... (6 more lines) |
05:03 | |
Zoffix | Oh wait. | 05:04 | |
Oh nevermind. | |||
For a second I thought I misrememberd the final decision on the IO Plan, but I didnt :) | |||
Geth | rakudo/nom: 90da80f620 | (Zoffix Znet)++ | 2 files [io grant] Rework read methods in IO::Path/IO::Handle IO::Path: .line, .comb, .words, .split - Don't pass Capture to .open(), pass it to the method - Revert eager IO::Path.lines; make it lazy again IO::Handle.lines: ... (5 more lines) |
05:06 | |
Zoffix | k, NOW I can sleep | ||
Zoffix drops to bed again | |||
Geth | roast: 413b0a62bf | usev6++ | S32-io/io-path-extension.t Use unicode characters supported on JVM |
05:57 | |
rakudo/nom: e0173b9ec3 | usev6++ | t/spectest.data Don't run chdir-process.t on JVM because chdir is not available there. |
06:08 | ||
roast: 4bb68889a6 | usev6++ | 3 files [JVM] Fudge tests affected by io grant |
06:18 | ||
[Tux] | This is Rakudo version 2017.03-229-ge0173b9ec built on MoarVM version 2017.03-128-gc9ab59c6 | 07:15 | |
csv-ip5xs 3.189 | |||
test 12.754 | |||
test-t 5.024 - 5.121 | |||
csv-parser 13.462 | |||
Geth | rakudo: samcv++ created pull request #1060: Better align the --help output of the perl6 cmd |
07:35 | |
rakudo/nom: d3c93ad36d | (Samantha McVey)++ | src/Perl6/Compiler.nqp Better align the --help output of the perl6 cmd Make some changes to make the indentation a little more consistent. |
10:00 | ||
rakudo/nom: e7e47b302f | (Zoffix Znet)++ (committed using GitHub Web editor) | src/Perl6/Compiler.nqp Merge pull request #1060 from samcv/help Better align the --help output of the perl6 cmd |
|||
Zoffix | ZofBot: You know you didn't get a long enough sleep when you load IRC window and can still see youself saying you're going to bed | 10:07 | |
ZofBot | Zoffix, In particular, list generators are not flattened until they need to be, if ever | ||
dogbert17 | samcv: are you making changes in the same area as RT #130760? | 10:26 | |
synopsebot6 | Link: rt.perl.org/rt3/Public/Bug/Display...?id=130760 | ||
Zoffix | m: my $x = 4; $x Ć·= 3; say $x | 11:33 | |
camelia | 1.333333 | ||
Zoffix | (Perl 6)++ Letting me type examples of meta assign op on my phone without needing to switch keyboard sections :) | 11:34 | |
m: my $x = 4; $x Ć= 3; say $x | |||
camelia | 12 | ||
Zoffix | ZofBot: awesome | 11:35 | |
ZofBot | Zoffix, 456"; $num++; # 124 | ||
jnthn | grmbl...so on Windows my app with a load of module deps takes twice as long to load as on Linux (with everything precompiled) | 11:40 | |
So, --profile-compile to the rescue | |||
41% of time is spen tin canon-cat | 11:41 | ||
*spent in | |||
Can we, uh, fire it? :P | |||
Zoffix: Dunno if you know anything about this, given your recent I/O work? :) | |||
Zoffix | jnthn, yes, I know everything about that. On *nix that stuff is highly optimized but on Windows not at all. Was planning to improve it as part of the grant, hopefully this weekend, before the release | 11:43 | |
jnthn | Oh, that would be awesome :) | 11:44 | |
moritz | elsif $volume.chars && $volume !~~ / '\\' $/ { | ||
jnthn | eek | ||
That should just be .ends-with, no? :) | |||
moritz | looks like that could be cahnged to an ends-with | ||
Zoffix | Yeah, nix version is a bunch of nqp ops while windows bersion is a bunch of unoptimized regexes | 11:45 | |
jnthn | I wonder if this affects dir speed too | ||
Zoffix | looks like yeah; at least some branches in conditionals do call canonpath | 11:49 | |
Zoffix & | |||
jnthn | OK, that could also help us | 11:50 | |
++Zoffix :) | |||
RabidGravy | If I have a C "struct foo { unsigned char _ [64];}" could I just do "class Foo is repr('CPointer') { method new() { malloc(64) }}" ? | 12:35 | |
timotimo | you'd also want to nativecast the result of malloc | 13:19 | |
so that it ends up actually being a Foo | |||
RabidGravy | yeah | 13:35 | |
it really doesn't like it if you don't | |||
was just looking at that ZMQ thing | |||
Geth | nqp: MasterDuke17++ created pull request #351: Make errors in QASTOperationsMAST more awesome |
13:48 | |
rakudo/nom: fbc6697da6 | (Zoffix Znet)++ (committed using GitHub Web editor) | src/core/IO/Path.pm Fix typo in comment |
13:52 | ||
nqp: 513d4ebfbf | MasterDuke17++ | src/vm/moar/QAST/QASTOperationsMAST.nqp Make errors in QASTOperationsMAST more awesome Make the wording a bit more consistent and include relevant information where possible. E.g., if the number of arguments to an op is wrong, say both the number expected and received; if the type of an argument is wrong, say both the type expected and received. |
14:11 | ||
nqp: 7194ff46c7 | (Zoffix Znet)++ (committed using GitHub Web editor) | src/vm/moar/QAST/QASTOperationsMAST.nqp Merge pull request #351 from MasterDuke17/make_errors_in_QASTOperationsMAST_more_awesome Make errors in QASTOperationsMAST more awesome |
|||
timotimo | m: use nqp; nqp::sayfh(1, "hello", 999999) | ||
camelia | This type cannot unbox to a native string: P6opaque, Int in block <unit> at <tmp> line 1 |
||
timotimo | it didn't give us wrong-number-of-args errors? | 14:12 | |
Geth | nqp: a70dabf240 | (Zoffix Znet)++ (committed using GitHub Web editor) | src/vm/moar/QAST/QASTOperationsMAST.nqp s/two/2/ To follow convention established in github.com/perl6/nqp/pull/351 |
14:13 | |
Zoffix | Need more comments: github.com/rakudo/rakudo/pull/1053 | 14:18 | |
(that's Make `my @a = ^10; my @b = @a[*]` 30-40x faster; by making it return self and not reify) | |||
And this too: github.com/rakudo/rakudo/pull/1020 I feel like rejecting it, simply because it's shifting semi-broken code to another semi-broken state while introducing breakage in 6.c-errata. So, it's not fixing anything really | 14:20 | ||
And this: "Use foldcase in QASTRegexCompilier" github.com/perl6/nqp/pull/350 | 14:27 | ||
Don't know anything about that code. | |||
.ask samcv Is this good to merge? github.com/perl6/nqp/pull/350 | |||
yoleaux | Zoffix: I'll pass your message to samcv. | ||
Zoffix | Alright. Enough PR reviewing for me for a 'lil while | 14:47 | |
huggable: hug MasterDuke | |||
huggable hugs MasterDuke | |||
Zoffix | ZofBot: hug huggable | 14:50 | |
ZofBot | Zoffix, } The current topic is always aliased to the special variable $_ | ||
Zoffix | Speaking of $_ and current topic. I find I often need to reach for a temp var when doing nqp code. I've been using $_, like here: github.com/rakudo/rakudo/blob/nom/...th.pm#L586 | 14:51 | |
Are there pros/cons to binding to $_ instead of doing my $somevar := instead? | 14:52 | ||
Looks like using my $var instead of $_ uses 2.8MB more RAM, but I see no speed diff | 14:57 | ||
When testing with /usr/bin/time perl6 -e 'sub foo { $_ := rand.abs }; for ^1000_000 { $ = foo }; say now - INIT now' | |||
Oh, that's the result on my weird box that uses waaay more RAM in perl6 -e '' than other boxes. | 14:59 | ||
On my normal box the diff is just 668kb | |||
Zoffix reads some of the old 6guts posts | 15:36 | ||
Wow! Perl 6 really come a long way :o Here's talk about adding dynamic typing: 6guts.wordpress.com/2010/08/22/rak...oad-ahead/ | |||
Also, crazy how long some of you've been here for :) I'm a n00b by comparison. | 15:39 | ||
ZofBot: engage de-n00bifying protocols | 15:40 | ||
ZofBot | Zoffix, There is no fail-over either from subroutine to method dispatch or vice versa | ||
Zoffix | ZofBot: what's a fail-over | ||
ZofBot | Zoffix, The "is symbol" and "is encoding" (for strings) traits also apply to variables | ||
Zoffix | reaaaly | ||
m: my $var is symbol('meows') = 42; say meows | |||
camelia | 5===SORRY!5=== Error while compiling <tmp> Can't use unknown trait 'is symbol' in a variable declaration. at <tmp>:1 ------> 3my $var is symbol('meows')7ā5 = 42; say meows expecting any of: TypeObject default ā¦ |
||
Zoffix | ZofBot: you lied! | 15:41 | |
ZofBot | Zoffix, op Ops are "opcode"s that belong to the "NQP" interpreter or that are dynamically charged by the interpreter of another language | ||
geekosaur | didn't lie, just didn't tell the whle truth :) is symbol is a NativeCall thing | 16:14 | |
iirc | |||
Zoffix | Yeah, it is. | 16:17 | |
Geth | nqp/uncurse: 02c141f7f6 | TimToady++ | 7 files remove now-useless .CURSOR calls |
16:59 | |
rakudo/uncurse: 10 commits pushed by (Zoffix Znet)++, usev6++, (Timo Paulssen)++, TimToady++ review: github.com/rakudo/rakudo/compare/6...331c51f85d |
|||
Zoffix | c: 2017.03,HEAD my $b1 = bag(<a b c>); my $b2 = bag(<a b c d e>); for ^100_000 { $ = $b1 (<+) $b2 }; say now - INIT now | 17:27 | |
committable6 | Zoffix, Ā¦2017.03: Ā«2.1880892Ā» Ā¦HEAD(fbc6697): Ā«0.2272940Ā» | ||
Zoffix | m: say (2.22-.06)/(0.227-.06) | ||
camelia | 12.934132 | ||
Zoffix | Looks like (<+) is ~13x faster, but 38b341a/928a406 list it as 5x/6x faster + apparently they had a bug and there was some reverting in 0672082 | 17:28 | |
Zoffix logs it as about 12x faster and will keep an eye for any relevant newer commits in the list of ones I still need to log | |||
c: 2017.03,HEAD my $b1 = bag(|()); my $b2 = bag(<a b c d e>); for ^100_000 { $ = $b1 (<+) $b2 }; say now - INIT now | 17:29 | ||
oops | |||
committable6 | Zoffix, Ā¦2017.03: Ā«1.11477996Ā» Ā¦HEAD(fbc6697): Ā«0.1135088Ā» | ||
Zoffix | Ah, k, it gets slower the more items you got | 17:30 | |
Ah, the 6x/5x are the worst case, as I now see is stated in commit bodies | 17:32 | ||
NeuralAnomaly: status | 17:33 | ||
NeuralAnomaly | Zoffix, [ā] Next release will be in 1 day and 10 hours. Since last release, there are 24 new still-open tickets (0 unreviewed and 1 blockers) and 107 unreviewed commits. See perl6.fail/release/stats for details | ||
Zoffix | Shaping out to be a very nice release. Still 107+ commits to log and I ALREADY have a full screen of performance improvement changes :) | ||
ZofBot: the good thing about you is you always listen. Others... Others just scroll. | 17:44 | ||
ZofBot | Zoffix, The use of "<( | ||
Zoffix | ZofBot: that's the chicken-balancing-two-rice-grains-on-its-beak operator! | ||
ZofBot | Zoffix, meta | ||
Zoffix | Ah, righ, *meta* operator | ||
timotimo | :D | ||
Geth | roast: 418466f8bc | usev6++ | S32-io/open.t Remove newly added test for open with :ra mode This combination (READ + append) is explicitely disallowed for the JVM backend [1] and it doesn't make too much sense, anyway. [1] docs.oracle.com/javase/8/docs/api/...ribute...- |
17:48 | |
bartolin | Zoffix: ^^ we talked about that one earlier. for the other tests I fudged for r-j this morning, I'll open a ticket, since they don't look wrong to me. | 17:51 | |
Zoffix | bartolin++ thanks | 17:55 | |
cygx | o/ | 18:36 | |
bartolin, Zoffix: note that :ra is a perfectly sensible, if obscure mode | 18:37 | ||
fopen() has supported it at least since the ANSI days | |||
Geth | nqp/uncurse: fcff8e222e | TimToady++ | src/QRegex/Cursor.nqp allow !cursor_init to be used by a BUILD |
18:53 | |
rakudo/uncurse: 5069294b56 | TimToady++ | 2 files Capture and Match shouldn't provide method new (Especially when BUILD will work just fine.) Otherwise we force new grammars that have their own attributes to declare their own new, which should be unnecessary. |
|||
rakudo/uncurse: 18bb9be217 | TimToady++ | src/core/Match.pm do not override nqp's make/made methods NQPMatchRole from nqp now provides all our $!made service. |
|||
Zoffix | noted | 19:00 | |
we can emulate it on JVM with | 19:01 | ||
we can emulate it on JVM with :rw + .seek to end, I think | |||
bartolin | hi cygx, I just now found the commit message where you added :ra | 19:04 | |
github.com/rakudo/rakudo/commit/36f773eb01 | 19:05 | ||
Geth | roast: 053189ec05 | usev6++ | S32-io/open.t Revert "Remove newly added test for open with :ra mode" This reverts commit 418466f8bc0d5dc304d1ad0541a8a688c3ad3a1f. cmp. irclog.perlgeek.de/perl6-dev/2017-...i_14424307 |
19:06 | |
cygx | Zoffix: that should work, though we'll have to figure out how to do it best | 19:10 | |
first idea would be adding a flag and conditionally seeking in SyncHandle.write, but that's rather smelly | |||
Zoffix | I was thinking just nqp::seekfh() in the end of IO::Handle.open in #ifjvm conditionals | 19:11 | |
Is that bad? | |||
cygx | the position has to be changed before every write | 19:12 | |
Zoffix | Ohhh | ||
cygx | :ra allows you to interleave reading, seeking and writing, but you'll only ever write to the end | ||
Zoffix | s: IO::Handle, 'open' | 19:15 | |
Geth | roast: 84feaafd1f | TimToady++ | S02-types/WHICH.t Cursor is going away And Cursor was always considered to be mostly internal anyway, not really part of the official Perl 6 language. So don't test for it. (We will still have Cursor for now, but only as an alias to Match.) |
19:16 | |
Zoffix | :/ the hack bots are in split limbo again... can't reconnect after shutting down either :\ | 19:17 | |
ZofBot: where are the robots when you need 'em! | |||
ZofBot | Zoffix, ) A type variable can be used anywhere a type name can, but instead of asserting that the value must conform to a particular type, it captures the actual "kind" of the object and also declares a package/type name by which you can refer to that kind later in the signature or body | ||
Zoffix | Oh, cool | ||
cygx | bartolin: you can blame me for not properly documenting this stuff | ||
Zoffix | m: class Bar {}; constant Foo = Bar; sub (Foo) { say "we made it" }($_) for Foo, Bar | 19:18 | |
camelia | we made it we made it |
||
bartolin doesn't want to blame anyone :-) | |||
whatever, I send a bug report for the failing test on JVM -- it didn't make it to RT, yet | 19:19 | ||
Zoffix | m: with "foo".IO { .spurt: "meows\n"; with .open(:ra) { .spurt: "foos"; .lines.say; .close }; .lines.say } | ||
camelia | () (meows foos) |
||
Zoffix | m: with "foo".IO { .spurt: "meows\n"; with .open(:ra) { .lines.say; .spurt: "foos"; .lines.say; .close }; .lines.say } | 19:20 | |
camelia | (meows) () (meows foos) |
||
Zoffix | m: "foo".IO.unlink | ||
camelia | ( no output ) | ||
Zoffix | So it seeks to-end on first write, looks like. | ||
This smells a bit outta my league | |||
cygx | on every write - throw in a seek(0) (or whatever it's called after your refactor) to see the effect | 19:21 | |
geekosaur | it seeks to end on every write, if we're talking about what the O_APPEND flag does on POSIX | ||
Zoffix | .seek ended up unchanged in my refactor. And it's .seek(0, SeekFromEnd); .seek(0) seeks to start | 19:22 | |
geekosaur | that was the idea | ||
seek to start and watch it automatically go back to the end on the next write | |||
Zoffix | Ah. Thanks | ||
bartolin | for the records: RT #131145 | 19:23 | |
rt.perl.org/Ticket/Display.html?id=131145 | 19:24 | ||
Zoffix | ZofBot: all these humans with there open modes. You should never need more than: read, write, and corrupt-all-the-data | ||
ZofBot | Zoffix, json" file contains this "resource" section: "resource" : { "images" : [ "fido | ||
Zoffix | ZofBot: that's wrong. We changed it. It's now "resource": { "images/fido" } | 19:25 | |
ZofBot | Zoffix, Any quoting form that includes "qq" or ":qq" in its semantic derivation (including the normal double quote form) assumes that all backslashes are to be considered meaningful | ||
Zoffix & | |||
cygx | bartolin: the idea was that the one and two letter variants mirror C11 (to some degree), whereas the long forms correspond to the POSIX flags, which need to be combined | 19:29 | |
eg :append needs to be combined with :mode<wo> or :mode<rw> | |||
bartolin | ah, I see. | 19:31 | |
but then a test for only :append does not make much sense, does it? github.com/perl6/roast/blob/84feaa...pen.t#L216 | |||
cygx | you're right: the combination of :mode<ro> (the default) with :append isn't particularly useful | 19:32 | |
Zoffix | Wonder if we should have some sort of [pseudo] test in roast for "undefined" behaviour. Basically to *spec* that current behaviour was consciously made to be undefined. | 19:38 | |
.oO( that sounds more like a Markdown list: "- `open :append`" |
19:39 | ||
) | |||
Geth | nqp: MasterDuke17++ created pull request #352: Make errors in QASTCompilerMAST more awesome |
19:43 | |
nqp: 66dfddd219 | MasterDuke17++ | src/vm/moar/QAST/QASTCompilerMAST.nqp Make errors in QASTCompilerMAST more awesome Make the wording a bit more consistent and include relevant information where possible. Similar to 513d4eb. |
19:48 | ||
nqp: fbd18cc687 | (Zoffix Znet)++ (committed using GitHub Web editor) | src/vm/moar/QAST/QASTCompilerMAST.nqp Merge pull request #352 from MasterDuke17/make_errors_in_QASTCompilerMAST_more_awesome Make errors in QASTCompilerMAST more awesome |
|||
roast: 3b9b031186 | usev6++ | 2 files [JVM] Fudge some tests for large natives |
20:08 | ||
cygx | something like gist.github.com/cygx/795dc8f57e0f5...3cca650574 (untested, not even syntax checked) should make :ra (as well as a few other obscure flag combinations) work on the JVM | 20:09 | |
it would be better to use the proper APPEND mode where possible and not pessimize all writes | 20:19 | ||
though in practice the latter probably won't matter as IO tands to be... IO bound | 20:20 | ||
*tends | |||
Geth | rakudo: MasterDuke17++ created pull request #1061: Make errors in BOOTSTRAP more awesome |
22:07 | |
Zoffix | Need comments. A proposal to alter 6.c-errata to NOT test for exact text of error message (the error message text is being improved): github.com/rakudo/rakudo/pull/1061...-294035688 | 22:15 | |
lizmat | . | 22:16 | |
timotimo | Zoffix: we can potentially match the exception text up in rakudo land and throw a typed exception instead | 22:24 | |
then the attributes could be checked | |||
rather than the message | |||
Zoffix | It seems a bit weird to match texts. We can throw typed exceptions from VM, right? | 22:34 | |
Or from NQP, I dunno | |||
timotimo | oh, of course we can | ||
we have an installation mechanism for error generators | 22:35 | ||
it's somewhere in Exception.pm, probably to the ned? | |||
Zoffix | sweet | ||
Maybe that's a better way to go. | |||
timotimo | ah yes | ||
bindhllsym P6EX | |||
Zoffix leaves to take the evening off before a 4 day hackathon :D | 22:36 | ||
ZofBot: night! | |||
ZofBot | Zoffix, 1> * :2<10> ** :2<10> 6 So we write those as :2<1 | ||
timotimo | have a good one! | 22:37 | |
Geth | nqp: ec85612664 | (Samantha McVey)++ | src/vm/moar/QAST/QASTRegexCompilerMAST.nqp [moar] Use foldcase in QASTRegexCompilier The only remaining places in QASTRegexCompilier for MVM are used for character ranges, which need to stay lc and uc to make character ranges make sense. This takes advantage of the MoarVM case insensitive string index operator, giving us at least 1.8x speed boost doing case insensitive regex. |
23:42 | |
nqp: 7d9f43c99a | (Samantha McVey)++ | src/vm/moar/QAST/QASTRegexCompilerMAST.nqp Make sure to push in the sval node before the indexic_s op timotimo++ |
|||
nqp: 1b3f6cf40d | (Samantha McVey)++ (committed using GitHub Web editor) | src/vm/moar/QAST/QASTRegexCompilerMAST.nqp Merge pull request #350 from samcv/foldcase [moar] Use nqp::indexic op in QASTRegexCompilier |
|||
samcv | yay merged Zoffix++++ for reminding me | ||
samcv | i would have been sad if it hadn't gotten into the release and my indexic improvments weren't used :( |