|
Parrot 3.6.0 "P�jaros del Caribe" released | parrot.org | Log: irclog.perlgeek.de/parrot/today | #parrotsketch meeting Tuesday 19:30 UTC Set by moderator on 31 July 2011. |
|||
|
00:02
whiteknight left
|
|||
| dalek | tracwiki: v1 | cotto++ | HBDBPlanning | 00:07 | |
| tracwiki: original schedule | |||
| tracwiki: trac.parrot.org/parrot/wiki/HBDBPla...ction=diff | |||
| kudo/nom: c26878d | tadzik++ | src/core/Parameter.pm: Fill in some Parameter accessors |
00:21 | ||
| kudo/nom: 124bec3 | tadzik++ | src/core/Parameter.pm: Fix Parameter.named, add Parameter.slurpy |
|||
|
00:30
Kulag left
|
|||
| Coke | cotto_work: pong | 00:30 | |
|
00:35
theory left
00:36
Kulag joined
|
|||
| cotto_work | Coke: dukeleto answered my question | 00:37 | |
| dalek | tracwiki: v2 | cotto++ | HBDBPlanning | 00:38 | |
| tracwiki: remove timeline items that don't list specific features | |||
| tracwiki: trac.parrot.org/parrot/wiki/HBDBPla...ction=diff | |||
|
00:44
Kulag left
00:55
rdesfo left
|
|||
| Coke | cotto_work: unpong. | 01:06 | |
|
01:13
preflex left
|
|||
| Felipe | unpong, that's new. | 01:16 | |
| cotto_work | That's what happens when you forget to unping someone. | ||
| Felipe | hehe | 01:17 | |
|
01:21
bubaflub joined
|
|||
| bubaflub | ~ | 01:21 | |
| Felipe | ~ | ||
|
01:27
GodFather joined
01:32
woosley joined
01:33
GodFather left
|
|||
| cotto | ~~ | 01:48 | |
|
01:50
kid51 joined
02:10
jsut joined
02:14
jsut_ left
02:16
preflex joined
02:33
daniel-s joined
02:48
theory joined
02:49
kid51 left
|
|||
| Tene | In cotto's recent blog post, it took me several readings of "C89 Implementation" to understand that it was an implementation of M0 written in C89, and not what I initially read it as, an implementation of C89 in M0 | 02:55 | |
| dalek | TT #2169 created by jkeenan++: tools/dev/parrot_api.pl: What is this program meant to do? Do we still ... | 02:59 | |
| TT #2169: trac.parrot.org/parrot/ticket/2169 | |||
| cotto | Tene, fixed (I hope) | 03:04 | |
| Now both people who read it in the future will be less confused. | 03:18 | ||
|
03:26
rdesfo joined
03:29
theory left
03:31
theory joined
03:32
rdesfo left
03:49
theory left
03:52
theory joined
05:01
woosley left
|
|||
| dalek | rrot: 7db4473 | dukeleto++ | / (4 files): [TT#2169] Removed useless,untested and broken nm.pl and parrot_api.pl |
05:20 | |
| TT #2169 closed by dukeleto++: tools/dev/parrot_api.pl: What is this program meant to do? Do we still ... | 05:21 | ||
| TT #2169: trac.parrot.org/parrot/ticket/2169 | |||
|
05:27
rdesfo joined
05:33
rdesfo left
05:48
theory left
06:32
dngor left
06:34
dngor joined
06:55
fperrad joined
|
|||
| cotto | dukeleto, you up? | 07:00 | |
|
07:10
mj41 joined
07:27
rdesfo joined
07:33
rdesfo left
|
|||
| dalek | rrot/m0-spec: fc4b167 | cotto++ | docs/pdds/draft/pdd32_m0.pod: describe primitive string layout, make INSP sizes less self-contradictory |
07:42 | |
|
07:42
contingencyplan joined
07:58
rdesfo joined,
rdesfo left,
cosimo left
|
|||
| dalek | rrot/m0-spec: 8af0e30 | cotto++ | docs/pdds/draft/pdd32_m0.pod: tighten conversion semantics |
08:07 | |
| rrot/m0-spec: 6e776a4 | cotto++ | docs/pdds/draft/pdd32_m0.pod: specify what happens with out-of-range conversions |
|||
|
08:13
dafrito joined
|
|||
| dafrito | ~~ | 08:14 | |
|
08:16
lucian joined
08:42
dngor left
|
|||
| dalek | kudo/nom: 2dd618f | moritz++ | tools/lib/NQP/Configure.pm: [build] fix lookup of defined-but-false configure options while generating the Makefile |
09:57 | |
| kudo/nom: 293215f | moritz++ | README: fix thinko on README, mls++ |
|||
|
09:58
contingencyplan left
10:07
lucian left
10:24
lucian joined
|
|||
| Felipe | morning | 10:48 | |
|
11:10
darbelo left
11:13
Kulag joined
|
|||
| dalek | TT #2096 closed by jkeenan++: t/dynoplibs/debug.t: fails one test on some Darwin | 11:53 | |
| TT #2096: trac.parrot.org/parrot/ticket/2096 | |||
|
12:19
jsut_ joined
12:20
jsut left
12:28
dngor joined
12:29
dngor left,
dngor joined
12:32
whiteknight joined,
Coke left,
Coke joined
12:37
cosimo joined
12:38
dngor left
|
|||
| whiteknight | good morning, #parrot | 12:40 | |
| tadzik | good morning whiteknight | 12:41 | |
| whiteknight | hello tadzik | ||
| tadzik | how are things? | 12:42 | |
| whiteknight | bleh. You? | ||
| tadzik | pretty good | ||
| the gsoc project got a decent progress hit recently, even got mentioned on the Perl Weekly Newsletter | |||
| whiteknight | yeah, I've been seeing some news about it | 12:43 | |
| congrats about getting merged into nom | |||
| tadzik | thanks | 12:44 | |
|
12:47
dngor joined
12:54
darbelo joined
13:00
darbelo left
|
|||
| bubaflub | ~ | 13:00 | |
| whiteknight | good morning, bubaflub | 13:04 | |
| bubaflub | morning whiteknight | ||
|
13:05
kurahaupo left
|
|||
| whiteknight | msg soh_cah_toa I'm playing with hbdb here and it's looking like it works pretty well. step, run, quit, and list operations all work as expected. I am seeing what you are talking about with breakpoints. I'll look at it and do what I can | 13:12 | |
| aloha | OK. I'll deliver the message. | ||
|
13:20
cosimo left
13:21
darbelo joined
13:22
cosimo joined
13:27
lucian_ joined
13:33
lucian left
|
|||
| whiteknight | msg soh_cah_toa Look at src/sub.c The functions Parrot_sub_get_line_from_pc and Parrot_sub_get_filename_from_pc look promising. See also Parrot_sub_context_get_infostr for an idea of how things go together. Take those things, put together a line-number breakpoint system, and we will fix it till it works | 13:48 | |
| aloha | OK. I'll deliver the message. | 13:49 | |
| dalek | kudo/nom: d9323d4 | moritz++ | t/spectest.data: comb.t needs ICU |
13:57 | |
|
13:59
Casan joined
|
|||
| dalek | kudo/nom: ffe522a | Coke++ | t/spectest.data: track failure modes |
14:06 | |
|
14:08
Felipe left
14:14
davidfetter left
14:15
woosley joined
|
|||
| dalek | kudo/nom: b3869b4 | Coke++ | t/spectest.data: run another fudged test |
14:17 | |
|
14:21
daniel-s left
14:25
MvG joined
14:26
Felipe joined
|
|||
| MvG | Hi! I've just pushed a fix for TT2107 to github, and wanted to add a comment to the ticket itself. Registered and logged in, but still get no comment tex box. Are newly registered users by default forbidden to comment on existing tickets? | 14:27 | |
| moritz | MvG: seems like, in response to massive spamming | 14:28 | |
| MvG | Could someone powerful enough please add a link to github.com/parrot/parrot/pull/144 to that ticket? Unless you plan to merge that pull request into master pretty soon, that is. | ||
| moritz | MvG: what's your trac username? | ||
| somebody might give you permission | |||
| MvG | Or grant me the required permissions, but I guess that would take someone with even more permissions than adding a simple comment. | ||
| I've registered as "gagern". | |||
| whiteknight | Mvg: try it now | 14:30 | |
| moritz | I"ve added a comment | ||
| MvG | Yes, comment box is there now. Thanks, moritz! | 14:31 | |
| Coke | whiteknight++ # trac adminning so I can sleep. | 14:32 | |
| whiteknight | sleep++ | ||
| atrodo | sleep++ | ||
| Coke | (I'm not actually sleeping) | 14:33 | |
| dalek | rrot: ff9ad45 | (Martin von Gagern)++ | src/dynext.c: [TT#2107] Fix dynloading of libraries from exact file name. |
14:47 | |
| rrot: 2d6e52a | jimmy++ | src/dynext.c: Merge pull request #144 from gagern/tt2107-dynext-get_path [TT#2107] Fix dynloading of libraries from exact file name. |
|||
| whiteknight | MvG++ | ||
| MvG | Thanks! | 14:50 | |
| moritz | does prefix ! has looser precdence than comparison operators (<=) in C? | 14:55 | |
| or asked differently, does that patch parse as !(STRING_length(lib) >= 3) && ... | 14:56 | ||
| or as (!STRING_length(lib)) >= 3 ? | |||
| whiteknight | the ! binds more closely than >= | 14:58 | |
| he removed them, because they were nonsensical there | |||
| moritz | ok | 14:59 | |
|
15:01
rdesfo joined
15:05
JimmyZ joined
15:08
rdesfo left
15:50
woosley left
15:55
cosimo left
16:08
lucian_ left
16:10
spinclad_ left
16:15
mj41 left
16:28
darbelo left
16:32
theory joined
16:38
JimmyZ left
16:44
lucian joined
16:51
jsut joined,
jsut_ left
|
|||
| benabik | Are all of parrot's tests written in perl? | 16:52 | |
| bubaflub | benabik: nope - there are some in PIR and PASM and even a few in NQP | 16:54 | |
|
17:02
rdesfo joined,
Casan left
17:11
rdesfo left
17:12
darbelo joined
17:15
jsut_ joined
|
|||
| Coke | the general goal is (was) to move tests to PIR to avoid having N invocations of parrot per test file. | 17:18 | |
| and also to eat our own dogfood. | |||
| benabik | All the tests in t/compilers/pct are in Perl… Is there a PIR test I should copy the style of instead? | 17:20 | |
|
17:20
jsut left
|
|||
| NotFound | benabik: $ ack '!\\./parrot$' t/ | 17:25 | |
| benabik | NotFound: Yeah, I did something similar already. | ||
| Coke | t/pmc/boolean.t, e.g. | ||
| benabik | Although mine involved a pipe with find, read, head, and grep... | ||
| NotFound | benabik: ack is great | 17:26 | |
| benabik | NotFound: I don't know a way to get ack to print the first line of all files matching *.t | ||
| NotFound: Since I didn't know beforehand what the #! line would be for PIR tests... | |||
| benabik supposes he could have used ack '#!' | 17:27 | ||
| NotFound | benabik: you can also write tests with winxed, but there is none of that kind in core yet. | 17:28 | |
| benabik | NotFound: Learning winxed is on my TODO list, but I'm sticking with PIR and NQP for GSoC. | ||
| NotFound | I tend to use winxed just the avoid to write pir by hand. | 17:30 | |
| cotto_work | ~~ | ||
| whiteknight | Unfortunately, in Parrot core you don't have Rosella around to make tests easy | 17:31 | |
| </shameless plug> | |||
| atrodo | That's quite the shame | ||
| NotFound | For things that are usually done in PIR, winxed and Test/More is easy enough. | 17:32 | |
| whiteknight | NotFound: I have some questions for you, if you have a minute | 17:34 | |
| NotFound | Shot | 17:35 | |
| whiteknight | NotFound: Did those __CLASS__ and __NAMESPACE__ additions make it into the snapshot yet? | ||
| I haven't had time to look, but I didn't see them in the commits list | |||
| NotFound | whiteknight: no, sorry, I forgot you wanted it. | ||
| whiteknight | it's no big deal, I haven't had time yet to use it | ||
| NotFound: Also, how hard would it be to create an easier syntax for closures, like C# lambdas? | 17:36 | ||
| (var x) => { ... } | |||
| maybe not exactly like that, but shorter than the function syntax? | 17:37 | ||
| NotFound | I've thought about it, but it looks like people are not exactly claming for more syntax. | ||
| whiteknight | okay | ||
| The one thing I like most about NQP is the short block syntax: { ... } | 17:38 | ||
| of course, they don't have hash literal syntax, so it is a trade-off | |||
| NotFound | I'm refreshing a bit my java skills, maybe I find some inspiration from it. | ||
| Yes. the hash and array literal syntax makes difficult to borrow some constructs from other languages. | 17:39 | ||
| whiteknight | yeah | 17:40 | |
| A syntax like => { ... } would be like function() { .. } but shorter | |||
| or -> {...} | |||
| NotFound | But people have to learn it. function () is almost self-teaching. | ||
| lucian | i think fun or fn would be enough of an improvement | 17:41 | |
| fn(){} vs CoffeeScript's () -> | 17:42 | ||
| pretty good if you ask me | |||
| whiteknight | I would be fine with a syntax that didn't take parameters, like NQP blocks | 17:43 | |
| NotFound | I think the potential user base of winxed cares more for simple and easy syntax than for brevity. | ||
| whiteknight | nqp pointy blocks are fine too | ||
| NotFound | Key question: there is any functionality hard to reach with the current means, or is just brevity and style? | 17:45 | |
| whiteknight | just brevity and style | ||
| Next question: Do you have any other big changes planned for winxed? | 17:46 | ||
| lucian | fwiw, js harmony folks think a short lambda syntax is important | ||
| they're planning to copy CS's i think | 17:47 | ||
| NotFound | I'm still working in scope search and using statements, not sure if some change related to that may be big- | ||
|
17:47
jsut joined
|
|||
| whiteknight | I have everything I need from winxed in terms of syntax and features. It's a very good language so far | 17:49 | |
| lucian nods | |||
| NotFound | lucian: I stop worrying about javascript variants and proposals in the early stages of winxed design, when I realized that a high degree of compatibility will not be doable. | 17:50 | |
| lucian | NotFound: yes, of course. my point was on general language design (i.e. "short lambdas are desirable") rather than any particular compatibility with js | ||
| NotFound | My view on that is that adding an alternate syntax with no real difference between it and the current way is just confusing. | 17:52 | |
|
17:52
jsut_ left
|
|||
| lucian | yes, perhaps | 17:52 | |
| NotFound | Confusing for beginners. And I need beginners, there are no long experienced winxed users ;) | 17:53 | |
| lucian nods | 17:54 | ||
| benabik | whiteknight: PackfileView's perldoc has a METHOD trigger(STRING *flag), but it doesn't appear to be in the code. | ||
| lucian | although the argument could be made that the language is young enough for such changes to be beneficial | ||
| NotFound | whiteknight: the biggest change in the horizon may be the addition of multi, but I've not even looked at that, and maybe I'll wait after 6model introduction. | 17:55 | |
| benabik | NotFound: No multi? Ouch. That's a very commonly used feature in PCT. | 17:56 | |
| NotFound: Does it handle multiple return values? (NQP doesn't to my irritation) | |||
| NotFound | benabik: yes, there is specific syntax for that. | 17:57 | |
| lucian | benabik: yes | ||
| the syntax isn't particularly nice or intuitive | |||
| but it works :) | |||
| NotFound | I failed to find a clean way to enable it without adding syntax. | ||
|
17:59
kurahaupo joined
|
|||
| NotFound | The problem was the need to enable all calling conventions modifiers. Without that, the functionality will be poor. | 18:00 | |
| benabik | Huh? | ||
| NotFound | optional, named... | 18:01 | |
| benabik | With multi? | ||
| NotFound | With multiple return. | ||
| lucian | NotFound: yeah, i realise that | 18:03 | |
| whiteknight | Multi is actually one thing I really do want still | 18:08 | |
| I am getting along without it, but I have lots of functions with similar names | |||
| lucian | i've been wondering for a while if python/js style function references and function overloading could be made to work together | 18:09 | |
| NotFound | I'm also thinking about some way of generics or templates, but that I'm positively sure must wait after 6model. | ||
| whiteknight | yes, 6model is an important enabler for that | 18:10 | |
| NotFound | Also, I'm re-reading "The Design and Evolution of C++" to learn how to deal with the demands of the users ;) | 18:14 | |
|
18:16
lucian left
|
|||
| whiteknight | I'm not demanding! Who's demanding? | 18:17 | |
|
18:18
lucian joined
|
|||
| NotFound | I'm just being preventive. | 18:18 | |
|
18:24
darbelo left
|
|||
| atrodo | NotFound> You mean ignoring users? | 18:24 | |
|
18:25
darbelo joined
|
|||
| NotFound | atrodo: you have not readed the book, haven't you? | 18:25 | |
| whiteknight | that is a book I need to get a copy of some day | ||
| atrodo | NotFound> Actually, not | ||
| lucian | whiteknight: me too. i'm curious how on earth such an atrocious language grew so popular | 18:26 | |
| whiteknight | you can't deny it's power or its performance, in general | 18:27 | |
| NotFound | Long story short: he recommend hear the users, but not be afraid of saying "No". | ||
| lucian | sound advice | ||
|
18:28
lucian left
|
|||
| whiteknight | and so long as you don't try to throw exceptions from destructors, or actually overload operators, or abuse polymorphism in ways that are unreadable or untraceable, or try to interact with software compiled by a different C++ compiler, try to interact with most C code, or do a bunch of other stuff, it's awesome | 18:28 | |
| NotFound | lucian: try to rewrite winxed stage 0 in C, and you'll know why C++ got popular. | ||
| atrodo | I'd be quite glad to be able to call one language from another language, for any pair of languages | ||
| whiteknight | Object-oriented features, if you cut out all the crufty old C-style code, and you are very cautious about using templates, can actually be quite nice | 18:30 | |
| and operator overloading. I've never seen a single example of operator overloading that did anything more than obscure the code and make it less readable | 18:31 | ||
| NotFound | whiteknight << "Here is one"; | ||
| benabik | Operator overloading is useful iff you're defining a mathmatical object. | ||
| whiteknight | NotFound: I disagree strongly. I hate that overloading | ||
|
18:31
contingencyplan joined
|
|||
| NotFound | whiteknight: You hate less printf, sprintf, and family? | 18:32 | |
|
18:32
lucian joined
|
|||
| benabik | complex c1(0,1), c2(1,0), c3; c3 = c1 + c2 | 18:32 | |
| whiteknight | NotFound: yes, I like printf and sprintf | ||
| benabik: maybe, sure. But then what happens when you're adding c1 + d1, a double? or c1 + i1 an integer? | |||
| NotFound | whiteknight: One day I must make a recount of the number of bugs in printf-alike parrot functions I've fixed. | 18:33 | |
| whiteknight | And what if one of the arguments is the result of a templating STL operation, and the type of the operands is not obvious from reading it? | ||
| benabik | whiteknight: There are rules for designing implicit casting for those situations, IIRC. | ||
| whiteknight | NotFound: buggy implementation says nothing about the goodness of the interface | ||
| benabik: my point is, it's extremely easy for such a simple case to spiral out of control | 18:34 | ||
| NotFound | whiteknight: bugs in its usages, wich says a lot about the interface. | ||
| whiteknight | and even then, if the operator throws some kind of exception, or has side-effects, or... | ||
| benabik | Being complicated is not a good reason to toss it out wholesale. Problems about types are the same for operators as they are for methods. Ditto exceptions and side-effects. | 18:35 | |
| NotFound | The more frequent one: using %s instead of s with parrot strings. | ||
| %Sa | 18:36 | ||
| Urgh. | |||
| %Ss | |||
| whiteknight | there's a difference between the Parrot_sprintf and the sprintf_s_s_p opcode | 18:37 | |
| C-level interfaces throughout Parrot are all shitty, but the idea of sprintf is not a bad idea | |||
| and it's obvious that it's a function call | |||
| NotFound | Anyway, I like more the C++ approach than the java style tostring everyhting. | 18:38 | |
| whiteknight | Java is certainly not the best alternative to C++ | ||
|
18:42
lucian left
|
|||
| NotFound | Well, if you plan to read the book, Stroustrup will explain you his rationale far better than me. | 18:42 | |
| atrodo | I'm no longer sure where I lay on the operator overloading argument. Clearly C++ is wrong, the shift operator is not a pipe, print(concat(concat("but", "I"), concat("can", "relate"))) to the noise the lack creates | 18:43 | |
| whiteknight | I will, one day. I have a long reading list | ||
| NotFound | That remembers me, I'm still not sure if iI should add the , operator to winxed. | 18:46 | |
| (Someone has noticed its absence?) | |||
| (The point that makes me remeber it: was one of the alternatives considered for <<) | 18:49 | ||
| whiteknight | what would that operator do? | ||
| same as in C (nothing)? | |||
| NotFound | Aye | ||
|
18:50
lucian joined
|
|||
| NotFound | The only important use case I have in mind is if for loops. | 18:50 | |
| I had the idea of adding an special case for that, but nobody asked. | 18:51 | ||
| lucian | whiteknight: r.e. Java, in fact it has the exact same thing if you know where to look | ||
|
18:51
dmalcolm joined
|
|||
| benabik | Now that I think about it, my biggest usage of operator overloading in C++ recently has been making an iterator look like a pointer. | 18:52 | |
|
18:52
Eclesia joined
|
|||
| Eclesia | hi | 18:52 | |
| whiteknight | hello Eclesia | 18:55 | |
| Eclesia | whiteknight: do you have something in rosella to manipulate zip,tar or whatever archove ? | 18:56 | |
| archive* | |||
| whiteknight | Eclesia: No. Parrot doesn't always have those things. You need to compile specially with the right dependencies | ||
| Rosella tries to avoid dependencies | |||
| Eclesia | whiteknight: ho, that would explain the : "load_bytecode" couldn't find file 'gziphandle.pbc' | 18:57 | |
| whiteknight | yeah, you need optional dependencies | 18:58 | |
| I don't remember what. libtar-dev or something like that | |||
| Eclesia | :'( | ||
| whiteknight | yeah, it's a pain and is not documented well enough | 18:59 | |
| Eclesia | dynpmc/gziphandle.pmc | 19:01 | |
| Need a parrot built with zlib | 19:02 | ||
| damn | |||
| whiteknight | yeah | 19:03 | |
|
19:04
alester joined
19:05
rdesfo joined
19:12
rdesfo left
|
|||
| cotto_work almost forgot about #ps in 18 | 19:14 | ||
| whiteknight | oh shoot, I almost forgot too | ||
| atrodo | It is Tuesday, isn't it? | ||
| nopaste | "Eclesia" at 192.168.1.3 pasted "rosella installation missing file for whiteknight" (25 lines) at nopaste.snit.ch/66684 | ||
| whiteknight | Eclesia: damn. I thought I fixed that yesterday | 19:15 | |
| cotto_work | www.isittuesday.co.uk/ | ||
| atrodo | cotto_work++ | 19:17 | |
| Eclesia | whiteknight: I've pulled parrot and rosella a few minutes ago. | 19:18 | |
| whiteknight | Eclesia: okay, let me take a look at it | 19:20 | |
| Eclesia | whiteknight: It's not urgent ... even if I now have prrot with zlib, I still don't know how to zip and unzip files :D | 19:21 | |
| whiteknight | I don't like to leave it broken | 19:22 | |
| benabik | imcc-- | 19:23 | |
| whiteknight | benabik: what's that for? | ||
| benabik | whiteknight: Debugging PCT is a huge pain because of the line numbers. | 19:24 | |
| whiteknight | benabik: do you have any example PIR files handy where the line numbers are wrong? | ||
| benabik | whiteknight: Inserting debug statements involve re-bootstrapping and recompiling large portions of parrot. | ||
| whiteknight: Apparently compilers/pct/src/PAST.pir | 19:25 | ||
| NotFound | whiteknight: I have a short one: compile setup.winxed to pbc. Only the first sub get correct numbers. | ||
| benabik | whiteknight: But that's a huge concatenation of other PIR files. | ||
| whiteknight | ok | 19:26 | |
| NotFound | Well, at least pbc_disassemble doesn't show them correct. Don't know if the problem is in the pbc or in the disassembler. | 19:27 | |
| whiteknight | Eclesia: Can you try git pull Rosella again? I fixed that bug yesterday | 19:29 | |
| cotto_work | #ps in 2 | 19:30 | |
| Eclesia testing | |||
| whiteknight: Already up-to-date. :/ | |||
| whiteknight | Eclesia: damn. Can you nopaste your setup.winxed file? | ||
| #ps in now | 19:31 | ||
| cotto_work | d'oh. slow clock | ||
| nopaste | "Eclesia" at 192.168.1.3 pasted "setup.winxed" (514 lines) at nopaste.snit.ch/66688 | ||
| Eclesia | whiteknight: here it is | ||
| whiteknight | Eclesia: Very weird. test.nqp.winxed doesn't appear there | 19:32 | |
| er, test.nqp.template | |||
| Eclesia | for some reason it now passes ... clean build install ... exact same call | 19:33 | |
| weird | |||
| have to go ++ | 19:36 | ||
|
19:36
Eclesia left
19:37
MvG left
|
|||
| dalek | kudo/nom: 20edd76 | moritz++ | NOMMAP.markdown: update NOMMAP |
19:38 | |
|
19:39
mikehh joined
|
|||
| benabik | NotFound: As a note about :multi in Winxed… that would prevent me from writing any of the Compiler classes from PCT in Winxed. Which is a shame, because I think it would work better in some cases than NQP. | 19:39 | |
| lucian | morepypy.blogspot.com/2011/08/pypy-...tring.html | 19:40 | |
| whiteknight | lucian: yeah, I saw that | ||
| lucian | the previous post is also interesting | 19:41 | |
| benabik | Did NQP (non -rx) turn $a.push($b) and new('c') into pir::push($a, $b) and pit::new('c')? | 19:49 | |
| Because the PBC generation code has lots of things where I look at it and go "how did this ever work?" | 19:50 | ||
|
19:58
alester left
|
|||
| moritz | benabik: I think $a.push($b) simply calls a method on the PMC | 20:00 | |
| whiteknight | yeah, I think so | ||
| benabik | moritz: You are correct, but bacek's code seems to think it will call the VTABLE. So I'm wondering why. | ||
| whiteknight | the method calls the vtable | 20:03 | |
| it is the circle of life | |||
|
20:04
kurahaupo left
|
|||
| benabik | Except it doesn't. | 20:04 | |
| Anyway... | |||
| moritz | wouldn't the op also call the vtable in the end? | ||
| whiteknight | teh failz! | ||
| it should all fall back to teh vtable | |||
| benabik | Is the get_string VTABLE for $S0 = $P0, or is it for $P0['value']? | ||
| NotFound | benabik: $S0 = $P0 | 20:05 | |
| moritz | the former | ||
| the latter would be get_*_keyed_str | |||
| NotFound | moritz: unfortunately, is not. | ||
| benabik | Thanks... | ||
| NotFound | $P0['value'] uses gte_*_keyed, wich can later be routed to keyed_str, depending on the PMC | 20:07 | |
| whiteknight | get_*_keyed_str are rarely used in practice | 20:19 | |
| I've always maintained that they could probably be deprecated and removed | |||
| a handful of types fall back get_*_keyed to get_*_keyed_str, but otherwise it is not used | |||
|
20:20
ambs joined
|
|||
| moritz | if we keeped it, it should be the other way round | 20:21 | |
| jnthn__ | SixModelObject papers over that behavior. | ||
| It always unpacks a PMC key and delegates. | 20:22 | ||
| moritz | $P0[$S0] calling get_*_keyed_str if it is defined, and falling back to _keyed otherwise | ||
| jnthn__ | Even if you declare a override for the PMC vtable, it'll land up in get_*_keyed_str if it's originally come from a foo['bar'] | ||
| NotFound | Is used from C. | 20:25 | |
| It will be complicated to always have to build a key in C usages. | 20:26 | ||
| jnthn__ | NotFound: I'd like the op we compile to for foo['bar'] to always call the _str variant. | 20:27 | |
| And the one for foo[0] to always use the int variant. | |||
| NotFound | Me too | ||
| The int already does. | |||
| jnthn__ | That's the semantics I've made SixModelObject emulate. | ||
| ah, I think it may well do, yes. | |||
|
20:27
whiteknight left
|
|||
| NotFound | string doesn't and I think num also doesn't | 20:29 | |
| String is used a lot more than num, num is probably not important. | 20:30 | ||
| dalek | rrot/NotFound/nci_as_string: 9192eb0 | NotFound++ | src/pmc/unmanagedstruct.pmc: bare implementatiion of as_string, returning a null string |
20:42 | |
| benabik | msg whiteknight I'm getting a segfault in Parrot_pf_subs_by_flag. It appears that self is NULL. This is by way of $packfile.view().subs_by_flag('load'). I'm digging into it, but thought you might be able to figure it out faster. | 20:47 | |
| aloha | OK. I'll deliver the message. | ||
|
20:47
lucian left
21:06
rdesfo joined
|
|||
| dalek | TT #2170 created by NotFound++: as_string method to get strings from NCI results | 21:07 | |
| TT #2170: trac.parrot.org/parrot/ticket/2170 | |||
|
21:09
lucian joined
21:14
AzureStone left,
AzureSto_ joined
|
|||
| benabik | msg whiteknight Hm. It appears I'm generating an invalid packfile. subs_by_flag still shouldn't segfault I'd think. | 21:21 | |
| aloha | OK. I'll deliver the message. | ||
|
21:21
rdesfo left
21:26
lucian left
21:27
ambs left
|
|||
| dalek | rrot/NotFound/nci_as_string: 5553bfa | NotFound++ | / (2 files): implement as_string and add a minimal test for it |
21:29 | |
|
21:43
Psyche^ joined
21:47
fperrad left
21:49
Patterner left,
Psyche^ is now known as Patterner
22:04
kurahaupo joined
|
|||
| dalek | rrot/nqp_pct: 4c2c749 | benabik++ | compilers/pct/src/POST/Compiler.pm: POST::Compiler - use pir::new instead of new() |
22:06 | |
| rrot/nqp_pct: 6f099e3 | benabik++ | compilers/pct/Rules.mak: PCT: include POST::VanillaAllocator in PAST.pbc |
|||
| rrot/nqp_pct: 985baf2 | benabik++ | compilers/pct/src/P (23 files): Rebootstrap PCT |
|||
| Heuristic branch merge: pushed 40 commits to parrot/nqp_pct by Benabik | 22:07 | ||
| rrot/nqp_pct: 73577f7 | benabik++ | compilers/pct/Rules.mak: [POST] Compile VanillaAllocator separately This had triggered the default .pir.pbc rule, which turns out to be pretty useless. (It doesn't wait for $(PARROT) to be built.) |
|||
| rrot/nqp_pct: 2053152 | benabik++ | compilers/pct/src/PAST/Compiler.pm: War on Q:PIR - PAST::Compiler.as_post(Val) This needs to generate POST::Val nodes, but converting it as is to NQP didn't take too long and makes a good starting point. |
22:08 | ||
| rrot/nqp_pct: 2bfeb7c | benabik++ | / (46 files): Merge remote-tracking branch 'origin/master' into nqp_pct |
|||
| rrot/nqp_pct: 43a292a | benabik++ | / (5 files): Add PAST::NewCompiler It compiles to newPOST instead of oldPOST. Needed because newPOST doesn't compile to PIR properly. :-( |
22:09 | ||
| rrot/nqp_pct: d57244a | benabik++ | / (7 files): Split POST->PBC from POST->PIR |
|||
| rrot/nqp_pct: 7082b8f | benabik++ | compilers/pct/src/POST/PBCCompiler.pm: PBCCompiler - use PackfileView PMC whiteknight++ for his hard work on making this sensible |
|||
| rrot/nqp_pct: 9949e55 | benabik++ | compilers/pct/src/P (2 files): PCT::HLLCompiler - Add pbc and newpost stages This allows an HLL to easily use PAST::NewCompiler and POST::PBCCompiler |
|||
| rrot/nqp_pct: 5f2c12a | benabik++ | compilers/pct/src/POST/PBCCompiler.pm: POST::PBCCompiler - use old method to compile Use the code from bacek's PIR::Compiler to generate a PBC file. |
|||
| rrot/nqp_pct: f8abf4c | benabik++ | compilers/pct/src/POST/PBCCompiler.pm: POST::PBCCompiler - Use opcodes, not method calls - .push() doesn't always call the push viable - new() and defined() need pir:: to work |
|||
| rrot/nqp_pct: ab6d017 | benabik++ | compilers/pct/src/POST/PBCCompiler.pm: POST - Fix storing sub name in packfile |
|||
| rrot/nqp_pct: d36426d | benabik++ | t/compilers/pct/newpost.t: Test POST::PBCCompiler This file will allow me to test newPOST one small portion at a time. |
|||
| tadzik | ...whoa | ||
| benabik | I hadn't pushed in a while. | ||
| Done now. | |||
| (Partially because I've abandoned at least two lines of work along the way.) | |||
| tadzik | I'd ++ you, but you may get sick :) | ||
| benabik | Well, so far I'm not hugely pleased… It's generating invalid PBC. | 22:11 | |
| tadzik | that's only one step from valid PBC :) | ||
| benabik | No, it's several steps... | 22:13 | |
| newPOST isn't in the shape I had hoped it was. | |||
| dalek | rrot/nqp_pct: f5c3560 | benabik++ | compilers/pct/src/P (25 files): Re-bootstrap PCT Forgot to include the changes from several of the previous commmits. |
22:16 | |
| rrot/nqp_pct: 0a20e91 | benabik++ | MANIFEST: Include new test file in MANIFEST |
|||
|
23:15
rdesfo joined
23:22
rdesfo left
23:39
dmalcolm left
|
|||