MasterDuke | hmm, i'm getting a 'java.io.IOException: Class not found' exception, but i thought it would look inside the jar (CORE.setting.jar). if i extract the jar into the rakudo src director it finds the class | 00:32 | |
./perl6-j --ll-exception -e 'say 1/0' | 05:38 | ||
Attempt to divide 1 by zero using div | |||
in throw (SETTING::src/core/Exception.pm:64) | |||
in throw (SETTING::src/core/Failure.pm:40) | |||
psch | that looks pretty good i'd say :) | 05:39 | |
MasterDuke | it's not pretty | ||
psch | is the indent-inconsistency copied correctly? | 05:40 | |
MasterDuke | no, that's just a copy/paste error | ||
there a still some things to work through. it still requires CORE.setting.jar to be unzipped | 05:41 | ||
psch | oh | ||
maybe you're looking in the wrong classloader? | |||
MasterDuke | no idea | 05:43 | |
it's time for me to sleep, but i'll gist the diff | 05:45 | ||
psch | cool, i'll have a look | 05:46 | |
MasterDuke | gist.github.com/MasterDuke17/6a984...e191617fe1 | 05:51 | |
heh, not only does it require the jar to be unzipped, but it only works if you run from the directory where you unzipped it | 05:55 | ||
well, at least some progress was made today, but hopefully the rest of the problems (and bad Java code) can be fixed | 05:56 | ||
psch | .tell MasterDuke SourceFilenameAttribute didn't make it into the gist. but fwiw, you should get it work if instead of feeding the class name into the new ClassReader you get the byte[] (via 'mumble.getClassLoader().getResourceAsStream(className)') | 06:19 | |
yoleaux2 | psch: I'll pass your message to MasterDuke. | ||
psch | .tell MasterDuke well, except getResourceAsStream returns an InputStream, but that usually can be converted to a byte[] rather easily :) | 06:20 | |
yoleaux2 | psch: I'll pass your message to MasterDuke. | ||
psch | .tell orrr you use the InputStream directly, 'cause i just notice ClassReader has a constructor that takes an InputStream... | 06:21 | |
yoleaux2 | psch: I'll pass your message to orrr. | ||
psch | err | ||
.tell MasterDuke orrr you use the InputStream directly, 'cause i just notice ClassReader has a constructor that takes an InputStream... | |||
yoleaux2 | psch: I'll pass your message to MasterDuke. | ||
[TuxCM] | This is Rakudo version 2016.11-5-ge9487d6 built on MoarVM version 2016.11-8-gb582aeb | 09:07 | |
csv-ip5xs 3.118 | |||
test 13.771 | |||
test-t 6.541 | |||
csv-parser 14.087 | |||
FROGGS | o/ | 09:08 | |
lizmat | Files=1154, Tests=53760, 211 wallclock secs (12.78 usr 3.73 sys + 1287.16 cusr 123.43 csys = 1427.10 CPU) | 11:07 | |
FROGGS | perl tools/build/gen-version.pl > gen/moar/main-version.nqp | 11:16 | |
fatal: No tags can describe '2432c469763dd01cf0f72b6b37fa0e4bf9c86b5f'. | |||
FROGGS reads this as "It is sooo disgusting!" | 11:17 | ||
dalek | ast: 5ee33ec | niner++ | S05-capture/match-object.t: Test equality and identity of Match objects |
11:53 | |
kudo/nom: 7f26e8b | niner++ | src/core/Match.pm: Fix Match pretending to be a value type when it is not Comparing the identity of Match objects wrongly resulted in them being treated as equals. Happened because Match is a subclass of Capture which is a value type and therefor provides a WHICH method. Matches are most certainly no value types as they are mutable. So we circumvent Capture's WHICH method. |
11:55 | ||
lizmat | nine: good catch! | 11:59 | |
nine | vendethiel found the bug :) | 12:01 | |
vendethiel | well, nine++ for fixing it so quickly | 12:02 | |
nine | What scares me is that both the test code and the fix worked on the very first try with no typos or other errors. I'm not sure that has ever happened before ;) | ||
Of course it's been a rather trivial bug :) | 12:03 | ||
jnthn | Match objects are mutable? | 12:29 | |
yoleaux2 | 19 Nov 2016 23:58Z <lizmat> jnthn: was there a reason why native shaped str arrays are not implemented? or was it an oversight that they aren't? | ||
jnthn | Ah, I guess .ast is... | 12:30 | |
lizmat: They just didn't seem especially useful, and time was short. :) | 12:31 | ||
I've no problem with adding support for them. | |||
lizmat | jnthn: does that require work at the VM level ? | ||
jnthn | Shouldn't. | 12:33 | |
After all, nqp::list_s already exists :) | |||
nine | jnthn: yes .made is | 12:36 | |
MasterDuke | would native shaped str arrays be useful for Text::CSV? | 12:40 | |
yoleaux2 | 06:19Z <psch> MasterDuke: SourceFilenameAttribute didn't make it into the gist. but fwiw, you should get it work if instead of feeding the class name into the new ClassReader you get the byte[] (via 'mumble.getClassLoader().getResourceAsStream(className)') | ||
06:20Z <psch> MasterDuke: well, except getResourceAsStream returns an InputStream, but that usually can be converted to a byte[] rather easily :) | |||
06:21Z <psch> MasterDuke: orrr you use the InputStream directly, 'cause i just notice ClassReader has a constructor that takes an InputStream... | |||
lizmat | jnthn: ok, will look at doing that | 12:47 | |
MasterDuke: it might, there are a number of Str @ in CSV.pm | 12:50 | ||
dalek | kudo/nom: 939d273 | lizmat++ | src/core/operators.pm: Make indirect type lookup 3x as fast Should have a positive effect on bare startup time, since we do at least 5 of these every time we start. |
13:24 | |
masak | I'm still flummoxed as to why people like the methos name ".made" at all... :P | 13:41 | |
method* | |||
MasterDuke doesn't, fwiw | 13:42 | ||
masak | maybe it's just one of those unfortunate word-person combinations, where the chemistry totally doesn't work ;) | ||
you can't have a Match object and go "ok, get me the made" with a straight face | |||
lizmat | well, it's the counterpart of "make" conceptually, no? | 13:43 | |
masak | oh, I understand that bit | ||
lizmat | still prefer it to .ast | ||
masak | which is fine | 13:44 | |
we can live in a world where we prefer different things -- I'm ok with that :) | |||
lizmat | indeed :-) | 13:45 | |
afk& | |||
masak | maybe I would be more comfortable with ".made" if "make" also wasn't largely grabbed out of thin air | ||
it's a short word meaning, roughly, "associate a piece of data with this Match object" | |||
MasterDuke | anybody have any idea why this line: "new ClassReader(info.compUnit.getClass().getClassLoader().getResourceAsStream(kls)).accept(" would throw "java.lang.ArrayIndexOutOfBoundsException: 60673"? | 13:46 | |
masak | and if you don't know that bit, ".made" is doubly confusing in the code | ||
MasterDuke finds it amusing that working on a Project Euler problem in Perl 6 led to working on Perl 6 itself, in Perl 6, Perl 5, NQP, Java, C++, C, HTML, Markup, Bash, and JavaScript | 13:51 | ||
psch | MasterDuke: ArrayIndexOutOfBounds in code dealing with objectweb.asm usually seems to mean something missing (or too much) on the stack in the generated classfile | 13:52 | |
MasterDuke | and /me still hasn't solved the original PE problem! | ||
psch: i haven't been able to get it working with getClassLoader(), etc. yet | 13:53 | ||
but wouldn't i have had the same error the way it was doing it before? | 13:54 | ||
psch | i'm not sure | 13:56 | |
i mean, when you get the resource from the classloader you're walking a loaded class in memory | |||
maybe that messes things up somewhere, somehow..? | |||
MasterDuke | psch: fyi, just added SourceFilenameAttribute.java to the gist. i wanted to just use an anonymous subclass of Attribute, but couldn't get that working | ||
psch | objectweb.asm error reporting is kinda lacking i find | ||
MasterDuke | i'm away for a bit, but if you're curious, i pushed my current (not quite working) code here: github.com/MasterDuke17/nqp/tree/s...ers_on_jvm | 14:00 | |
ugjka | whos that usuckirc guy | 16:02 | |
getting k-lined | |||
viki | Hm, they joined my #zofbot channel too.... | 16:09 | |
nine | MasterDuke: took me 7 months of working on module management from "I'd like to create rakudo rpm packages for openSUSE for installation on our servers" to finally being able to do just that. | 17:18 | |
MasterDuke: and I've yet to get around to creating packages for Perl 6 modules ;) | 17:19 | ||
dalek | kudo/nom: 2706221 | lizmat++ | tools/build/makeNATIVE_SHAPED_ARRAY.pl6: Introducing makeNATIVE_SHAPED_ARRAY.pl6 Support script for generating the shaped(int|num|str)array roles. So far, only copied the current state of the code in native_array.pm |
20:11 | |
kudo/nom: 486155e | lizmat++ | src/core/native_array.pm: shaped(int|num|str)array roles are now generated This also introduces the shapedstrarray role, but this is not used yet. |
20:13 | ||
travis-ci | Rakudo build failed. Elizabeth Mattijsen 'Introducing makeNATIVE_SHAPED_ARRAY.pl6 | 21:01 | |
travis-ci.org/rakudo/rakudo/builds/177491853 github.com/rakudo/rakudo/compare/9...06221ac9c0 | |||
buggable | [travis build above] ☠ Did not recognize some failures. Check results manually. | ||
dalek | kudo/nom: cf451f1 | lizmat++ | src/core/native_array.pm: Use the same sig everywhere in shaped role |
21:06 | |
kudo/nom: f25ab3a | lizmat++ | src/core/ShapedArray.pm: Some more signature streamlining |
|||
kudo/nom: 0cb765f | lizmat++ | / (4 files): Move shared AT-POS code to ShapedArrayCommon role |
22:09 | ||
travis-ci | Rakudo build passed. Elizabeth Mattijsen 'Some more signature streamlining' | 22:11 | |
travis-ci.org/rakudo/rakudo/builds/177500978 github.com/rakudo/rakudo/compare/4...5ab3a28e38 | |||
dalek | kudo/nom: d07ab04 | lizmat++ | / (4 files): Move shared ASSIGN-POS code to ShapedArrayCommon role |
22:34 | |
kudo/nom: 0fc5580 | lizmat++ | src/core/ (3 files): Move shared EXISTS-POS code to ShapedArrayCommon role |
22:46 | ||
lizmat | .tell moritz in blogpost: "and nothing as fixed" s/as/was/ ? | 22:51 | |
yoleaux2 | lizmat: I'll pass your message to moritz. | ||
dalek | kudo/nom: 014d4cf | lizmat++ | src/core/native_array.pm: Activate native shaped str array Alas, it's not working yet: $ 6 'use nqp; say nqp::multidimref_s(my str @a[5],nqp::list_i(0))' No str positional reference type registered for current HLL So we need some more hookup work somewhere |
23:19 | |
lizmat | .tell jnthn something needs fixing in the bowels: github.com/rakudo/rakudo/commit/014d4cff2f | 23:21 | |
yoleaux2 | lizmat: I'll pass your message to jnthn. | ||
lizmat | good night, #perl6-dev! |