Parrot 4.5.0 "Buff-faced Pygmy Parrot" | parrot.org/ | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC
Set by moderator on 19 June 2012.
00:15 plobsing joined 01:07 darbelo joined
kid51 once again builds blead on ancient iBook 01:13
We're up to the dist/ tests!
I love it when ExtUtils::ParseXS passes the tests I wrote ;-) 01:14
Oh, that was meant for #p5p 01:21
dalek kudo/nom: 29607d8 | duff++ | docs/ (2 files):
update release announcement
01:24
02:36 contingencyplan joined
pmichaud gist.github.com/3bbd7a08c1c220fbf0e3 # is this a parrot bug? 02:51
benabik The index of ''? 02:55
What's the expected behavior?
pmichaud I would've expected zero.
benabik It's listed as returning -1 for null string or substring... 02:56
pmichaud pmichaud@kiwi:~$ perl -e 'print index("hello", "", 0), "\\n";' 02:57
0
okay, so Parrot just has a different meaning there. Weird.
benabik Yeah. It seems to treat '' as null. 03:00
So it's working more-or-less as spec.
pmichaud I've never encountered an instance where index($somestr, '') would return the equivalent of "string not found"
(in languages and libraries other than Parrot)
benabik Hm. Perl, ruby, and python all agree with 0. 03:03
My initial response is "that's a non-sensical request", but I have no strong opinion on changing it.
pmichaud the empty string is a substring of all strings (that's the normal way of thinking of it) 03:04
gist.github.com/2969947 # more directly 03:07
anyway, we'll just work around it in rakudo.
benabik huh. Yes, I see that. I guess it's a bug? 03:08
pmichaud well, since Parrot is following its documented semantics, it's not a bug.
it's just weird semantics.
from src/ops/string.ops:
If the string is null, or the substring is not found or is null,
B<index> returns "-1".
weirdness. 03:09
benabik Right. And it tests for null as "STRING_length(foo) == 0"
eh. I can see arguments for changing it.
03:17 contingencyplan joined
dalek kudo/nom: 2427656 | pmichaud++ | src/core/Cool.pm:
Fix handling of Str.index() for empty needle strings.
03:40
04:43 darbelo joined
alvis '#define PARROT_MAGIC 0x13155a1' defined in 'include/parrot/parrot.h' is useless. I just built parrot without it. 05:18
Moreover, 't/native_pbc/header.t' tests for 'is( $h{magic}, "\\xfe\\x50\\x42\\x43\\x0a\\x1a\\x0a", "magic string 0xfePBC0x0a0x1a0x0a len=7" );' which is the current magic in our *.pbc files, e.g., 'pbc_to_exe.pbc' and 'winxed.pbc'.
I ran across this while trying to figure out which one of 'docs/parrotbyte.pod' or 'docs/pdds/draft/pdd13_bytecode.pod' lays out the correct description of parrot bytecode. 05:20
One final note on this: ack-ing through parrot, 'include/parrot/parrot.h' contains the only reference to 'PARROT_MAGIC'. 05:26
My plan: Review, closely, 'docs/parrotbyte.pod' and 'docs/pdds/draft/pdd13_bytecode.pod' this weekend and nuke whichever is incorrect or out of date, unless someone objects. 05:30
I will post to parrot-dev about this first though.
05:31 kuku joined
dalek rrot: 1bd030e | alvis++ | include/parrot/parrot.h:
Make 'PARROT_MAGIC', at least, agree with the '*.pbc' files; although, it's unused and, evidently, useless.
05:56
alvis will be happier if someone corrects him(me) on this. 05:57
karma alvis 05:58
aloha, karma alvis
aloha karma alvis 06:00
moritz karma alvis
ENOALOHA 06:01
sorear ENOBACEK
alvis and here i just thought it was too low to report! :) 06:02
dalek kudo/nom: 26c9da1 | duff++ | tools/build/NQP_REVISION:
[release] bump NQP revision
06:21
kudo/nom: 193256c | duff++ | VERSION:
[release] bump VERSION
kudo/nom: 9006475 | duff++ | docs/release_guide.pod:
use generic YYYY.MM for VERSION
07:25 particle1 joined 08:18 lucian joined 08:20 darbelo joined, particle joined 08:43 hernan joined 08:56 JimmyZ joined 09:03 alvis joined 09:06 Patterner joined 09:17 JimmyZ joined 09:20 alvis_ joined 10:42 particle1 joined 10:44 woosley joined 11:29 JimmyZ joined 11:48 JimmyZ joined 11:56 darbelo joined 12:06 kid51 joined
dalek rrot: 5a43b68 | jkeenan++ | src/runcore/subprof.c:
[codingstd] Move ASSERT_ARGS to immediately after start of function. ayardley++
12:15
: f35ebb2 | jimmy++ | src/ (2 files):
clean up a bit
12:47
kudo/nom: bbc5b70 | (Carl MƤsak)++ | src/SAFE.setting:
[SAFE.setting] restricted &rmdir
12:56
13:09 Psyche^ joined 13:25 kuku_ joined
dalek kudo/nom: 69e6ec2 | masak++ | src/core/IO.pm:
[core/IO.pm] return IO objects from &dir

There's a tension between wanting the full path and wanting just the file name from this function. That indicates that we really want to return a data structure that can easily be turned into either form. Made it so.
13:31
: 3895287 | jimmy++ | src/gencode.c:
free more unused regs
13:32
14:22 kuku_ joined
dalek p: 777e36f | jnthn++ | src/how/NQPClassHOW.pm:
Tentatively add a way to re-parent a class to NQP's class meta-object, so we'll (hopefully) be able to get Perl 6's meta-objects to say they're ~~ Any.
14:24
p: 0db5015 | jnthn++ | src/ (2 files):
Get NQP to use a BUILDPLAN just like Rakudo does. Improves build methods support also.
p: fcc9a23 | jnthn++ | src/how/NQPClassHOW.pm:
Implement attribute introspection in the non-:local case.
14:24 PacoAir joined, dmalcolm joined
14:30 mtk joined
timo i'm having trouble adding a method to socket_api.c 14:40
it seems like the headerizer didn't pick it up or i have to do it manually? but how does it work?
no, hold on, i was actually adding it to socket.c 14:41
dalek kudo/nom: a56bf75 | jnthn++ | src/Perl6/Metamodel/ (2 files):
Provide a way to cleanly set name/ver/auth.
15:18
kudo/nom: 04ec0c0 | jnthn++ | tools/build/NQP_REVISION:
Bump to latest NQP for meta-model improvements.
kudo/nom: f740e37 | jnthn++ | src/core/PseudoStash.pm:
Fix a thinko that somehow wented undetected; guess we only cared about the .WHO of the created thing so it sorta worked out.
kudo/nom: 86b3009 | jnthn++ | src/ (12 files):
Make the various Metamodel:: classes be re-parented to inherit from Any. This means you can 'say 42.HOW' now, but more usefully you can write custom metaclasses without having to do the extra multiple inheritance from Mu/Any.
15:33 brrt joined, darbelo joined 15:37 darbelo joined 15:41 jashwanth joined 15:55 JimmyZ joined
jashwanth hello dukeleto 16:03
dukeleto jashwanth: hola 16:57
jashwanth dukeleto, github.com/jashwanth9/parrot-lapac...rse.winxed 16:58
dukeleto, was getting a segfault 16:59
dukeleto, output:gist.github.com/2955387 17:00
dukeleto: am getting "get_pointer() not implemented in class 'String' " 17:09
am getting "get_pointer() not implemented in class 'String' "
can you tell me the function needed to put in class string so as to return a pointer 17:11
dukeleto jashwanth: well, the problem is that get_pointer should never be called on a String 17:18
jashwanth: it is good to see you using gdb :) It is your friend.
jashwanth: do you know which line of inverse.winxed actually causes the coredump? 17:19
jashwanth: i assume it is github.com/jashwanth9/parrot-lapac...winxed#L48 17:20
jashwanth yes
dukeleto jashwanth: one of the things you are passing to that function is a String, but shouldn't be, is my first guess 17:21
jashwanth dukeleto: there is no string there in inverse.winxed
dukeleto:which line are you referring to 17:23
dukeleto jashwanth: something is wrong about the NCI signature "vppppppp", but I am not sure exactly what 17:24
jashwanth dukeleto:why do you think so? 17:25
dukeleto:www.netlib.org/lapack/explore-html/...2dcc2d2e10 17:26
dalek kudo/nom: f2e4257 | pmichaud++ | / (2 files):
Deprecate SAFE.setting in favor of RESTRICTED.setting.
17:31
kudo/nom: 3888832 | pmichaud++ | docs/announce/2012.07:
Add draft announcement for 2012.07 release.
dukeleto jashwanth: i see that dgetri takes integers and pointers, so "vppppppp" doesn't seem like the correct signature 17:32
jashwanth: it seems like you are passing in NumMatrix2D (from PLA) to lapack. I am not sure that will work 17:34
jashwanth dukeleto:it actually did work in the first program 17:35
dukeleto:i.e Double.winxed
dukeleto:the error "get_pointer() not implemented in class 'String' " is not related to the inverse.winxed 17:37
dukeleto jashwanth: ok, good to know. where do you actually get that error? I don't see that in the gdb output
jashwanth dukeleto:inverse.winxed dosent have this error it gives a segfault at line 48 17:38
dukeleto:sorry by this error I ment "get_pointer() not implemented in class 'String' " 17:39
dukeleto jashwanth: which line of code gives you the "get_pointer" error ? 17:40
jashwanth dukeleto:the get_pointer error is an error in eigenvalues.winxed which is recent and unrelated to code in inverse.winxed 17:42
dukeleto jashwanth: i don't see eigenvalues.winxed on github 17:44
jashwanth dukeleto:yes completed it just now will push it by today
dukeleto jashwanth: push early and often :) 17:46
jashwanth dukeleto:done 17:47
dukeleto jashwanth: you have been making lots of progress! Very nicely done.
jashwanth dukeleto:thanks
dukeleto:would have started writing tests for inverse calculation if the segfault was fixed 17:48
dukeleto:but couldnt figure out how to fix it 17:49
dukeleto jashwanth: understandable. Keep writing tests and we can circle back 17:52
jashwanth dukeleto:had a doubt with some part of variables of the function can you tell me about them 17:54
dukeleto jashwanth: sure. what is your question?
jashwanth dukeleto:www.netlib.org/lapack/explore-html/...db8f98ec83 17:55
dukeleto jashwanth: i have a phone call in a few mins, so I will step away for a bit
jashwanth: which variables do you have a doubt about? 17:56
jashwanth dukeleto:there there is JOBVL and JOBVR
dukeleto:k tell me when you are free 17:57
dukeleto jashwanth: they seem to be strings of length 1, i.e. "characters"
jashwanth dukeleto:yes read the description I cant get what are those cases 17:58
dukeleto jashwanth: it tells the function whether to compute left and right eigenvectors 18:00
jashwanth: for a square matrix, a left eigenvector is the same as a right eigenvector
jashwanth dukeleto:thats ok but are thesecase for a non square matrix 18:01
dukeleto jashwanth: but for non-square matrices, there is a difference between x = A^(-1)*b and x = b*A^(-1)
jashwanth: you tell the function "compute both left and right eigenvectors" or only one or the other. 18:02
jashwanth: VV is compute both
jashwanth: NV is compute only right
jashwanth: VN is compute only left
jashwanth dukeleto, what if m>n for a m x n matrix the 18:03
dukeleto, then we compute left right
18:37 tuxit joined
dalek kudo/nom: d677c0e | pmichaud++ | t/spectest.data:
(nomreg cleanup) Remove S03-smartmatch/any-array-slice.t
18:55
19:20 Liz joined 19:25 contingencyplan joined, particle joined
dalek kudo/nom: 5f0f3f0 | pmichaud++ | src/core/EnumMap.pm:
Update EnumMap.ACCEPTS(Positional) to test hash slice existence.
19:27
rrot/ayardley/documentation_revisions: af3efc5 | alvis++ | README:
There is no 'NEWS' -- (There's the truth of the signal, and then there's the puppet theatre .... :)
19:33
rrot/ayardley/documentation_revisions: 5edcd89 | alvis++ | docs/revisions/TODO_revisions:
Updating the TODOs
rrot/ayardley/documentation_revisions: 61c0956 | alvis++ | docs/revisions/TODO_revisions (2 files):
Updated the list of TODOs in the branch.
rrot/ayardley/documentation_revisions: ba0ecfe | alvis++ | docs/revisions/docs/mans/vmspec/ (24 files):
Minor edits, filled-in a simple, pod skeleton, and added two chapters, i.e., 'ch08_hll_interoperability.pod' and 'ch09_native_call_interface.pod'.
rrot/ayardley/documentation_revisions: d5dfea4 | alvis++ | docs/revisions/docs/mans/vmspec/app (2 files):
Removed redundant and misnamed files.
19:52 kuku joined
dalek kudo/nom: 1b6636f | pmichaud++ | src/core/EnumMap.pm:
Update EnumMap.ACCEPTS(Regex), removing another nom regression.
19:55
20:01 travis-ci joined
travis-ci [travis-ci] parrot/parrot#461 (documentation_revisions - d5dfea4 : Alvis Yardley): The build passed. 20:01
[travis-ci] Change view : github.com/parrot/parrot/compare/4...dfea431f99
[travis-ci] Build details : travis-ci.org/parrot/parrot/builds/1684765
20:01 travis-ci left 20:04 perlite_ joined
dalek kudo/ex-hardening: b9a332b | moritz++ | src/core/Backtrace.pm:
improve robustness of internal error reporting
20:21
kudo/ex-hardening: b68a884 | moritz++ | src/core/Backtrace.pm:
be more tight about :D in invocant
p: 4019f2a | jnthn++ | src/NQP/Grammar.pm:
Remove a leftover from the now-gone regex engine.
20:29 birdwind1pbird joined
dalek kudo/ex-hardening: 57d251f | moritz++ | src/core/Backtrace.pm:
fix previous commit
20:40
21:00 birdwindupbird joined 21:14 birdwindupbird joined 21:34 rich joined
dalek kudo/nom: b7bf63d | pmichaud++ | / (2 files):
Update build process for RESTRICTED.setting, other refactors.
21:47
kudo/nom: 06a7305 | pmichaud++ | src/SAFE.setting:
Add deprecation notice to SAFE.setting.
21:49
23:55 seiferteric joined