Parrot 4.0.0 "Hyperstasis" | parrot.org | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC
Set by moderator on 18 January 2012.
whiteknight msg NotFound I have some syntax ideas for winxed: gist.github.com/1741304 Let me know what you like or don't like. I'll make the patches for anything you want 00:17
aloha OK. I'll deliver the message.
00:20 rurban_ joined
whiteknight msg bacek you mentioned that vtables were not a good interface. Do you have a suggestion for a better one? I want to start designing a replacement 01:06
aloha OK. I'll deliver the message.
04:28 simcop2387 joined 07:14 zby_home joined 07:33 alvis_ joined 09:47 Psyche^ joined 10:05 lucian joined 10:33 mj41 joined 11:14 lucian joined 12:44 whiteknight joined 12:46 jsut joined 12:48 simcop2387 joined
whiteknight good morning, #parrot 12:50
13:04 simcop2387 joined
tadzik good morning whiteknight 13:20
whiteknight hello tadzik, how are you? 13:41
13:43 PacoAir joined
tadzik not bad, the exam session is coming to an end. How about you? 13:45
14:03 jsut_ joined 14:11 jsut joined
whiteknight tadzik: going well. Finally have a weekend where everybody is healthy and we aren't busy with prior committments 14:41
so we're able to get lots of overdue housework done 14:42
NotFound ~~ 14:45
whiteknight: function foo(var x = "default") any expression can appear there <--- You mean any, or only compile time evaluable? 14:47
whiteknight NotFound: Any. It gets transformed into an if statement where the expression is evaluated
NotFound It may be tricky to stablish the appropiate scope. 14:48
Mmmmm... no, the only tricky part may diagnosing wrong usage of other arguments.
whiteknight: the "static" one, you mean just adding nsentry, or droping method? 14:50
whiteknight For static, I don't know. Dropping method might be closer to the java/c++/C# usage 14:51
NotFound I've tought about static methods but not decided yet a solution. Maybe we should wait for a new object model that allows adding method to the Class. 14:53
whiteknight yeah 14:54
If you see any ideas in there that you like let me know and I'll implement them
they're my crazy ideas, after all
I'm trying to think of ways to use flags and things in a cleaner way than using the [] brackets all over 14:55
NotFound I like the use of modifiers instead of specific syntax because doesn't get in the way of possible future syntax additions.
lucian static methods or class methods? 14:57
whiteknight NotFound: these are the possible future syntax additions
Not
NotFound The "=" for defaults is a well known usage, tough, that may be acceptable.
lucian in languages with mutable data structures defaults may be tricky
whiteknight I'll try to make a patch. I'll send it to you for review when it's ready
NotFound whiteknight: yes, but the ones that already can be done with modifiers are less urgent.
lucian def bla(x=[]) in python gives all calls the same list 14:58
the if option is better (also what coffeescript does)
whiteknight NotFound: it's not "urgent", but these are things I would like to work on
lucian: We're only talking about Winxed, not all Parrot languages
NotFound lucian: but winxed does not belong to that family. 14:59
lucian whiteknight: i know, i'm just pointing out what other languages do and why
whiteknight lucian: Oh, okay.
lucian NotFound: winxed has mutable data structures, doesn't it?
NotFound lucian: winxed uses only parrot PMCs, doesn't add any on its own. 15:00
lucian NotFound: right, so a parrot array used as a default could become shared between calls
NotFound: or do you mean about methods?
whiteknight It would create a new one each time the method or function was called 15:01
unless we explicitly referenced a global item
NotFound lucian: Ah, understood. But the = in that case is a initialization, and winxed initialization of arrays creates new ones. 15:02
lucian NotFound: right, but is it initialised at call-time, or function creation time? 15:03
NotFound Unless you assign to a var an array that comes from some ohter part, in that case you should know what you are doing.
lucian: call time. 15:04
lucian NotFound: ok, then there's no problem :)
NotFound Is inefficient for constant arrays of constant values, but an optimization for such usages is waiting for new ways of creating PBCs. 15:06
lucian sure
it doesn't matter, it would be unsafe to share mutable objects that way
the programmer would have to default it to null and create it in an if to make sure it's safe 15:07
NotFound Winxed is a low level beast, sometimes it needs to provide unsafe ways and trust the programmers.
whiteknight: I see a litlle problem: if you do (var a = [ "a", "b", "c" ] ) you get the default as a PMC array, when you probaly want a string array. With the current syntax the kinf of array can't be specified. 15:12
s/kinf/kind 15:13
whiteknight NotFound: Sure, but that seems like a small issue and something we can fix later
NotFound Ok 15:14
dalek sella: 4d6d1fa | Whiteknight++ | src/test/ (2 files):
A few doc fixes
15:59
sella: f52c3a4 | Whiteknight++ | src/reflect/ (2 files):
[Reflect] Add in a new get_context builtin, and use it to optimize a few functions
sella: 85ec3a5 | Whiteknight++ | src/ (3 files):
[Core] Move the get_context inline to the core builtins list. Use it in one more place in Core where I was getting the context the hard way
sella: 49fa10e | Whiteknight++ | setup.winxed:
[Date] Fix a dependency issue. Date relies on Core. Fixes a build warning
sella: c801ffd | Whiteknight++ | src/harness/View.winxed:
[Harness] clean up the View
sella: 862df5f | Whiteknight++ | src/harness/ (5 files):
[Harness] Fix up harness output to more closely match prove and other harnesses
sella: 74f7fc6 | Whiteknight++ | / (4 files):
[Harness] Fix test failures from View/TapParser changes
kudo/nom: a177364 | tadzik++ | / (2 files):
Remove trailing whitespace in declarator blocks
16:55
nxed/optional_args: f8f1a54 | Whiteknight++ | winxedst2.winxed:
First draft of using an = syntax for easier optional arguments
17:12
whiteknight msg NotFound here's my first draft of the optional syntax: github.com/Whiteknight/winxed/commit/f8f1a544a5
aloha OK. I'll deliver the message.
whiteknight msg NotFound here's an example: gist.github.com/1746639 17:14
aloha OK. I'll deliver the message.
whiteknight that new syntax has potential to help me really clean up Rosella 17:17
19:26 mj41 joined 19:34 cosimo joined 20:15 zby_home_ joined
dalek kudo/nom: 5a2c7d2 | moritz++ | / (3 files):
make List.tree more useful
20:15
20:25 Psyche^ joined 20:53 Hunger joined 20:57 Psyche^ joined
bacek_at_work ~~ 22:45
whiteknight hello bacek_at_work 22:51