digitalmars.D - Tango vs Phobos
- Graham St Jack (8/8) Aug 08 2008 Quite a while ago there was talk of rearranging Tango and Phobos so that...
- Jarrett Billingsley (6/14) Aug 08 2008 Well D2 forked around the same time as the D conference last year, at wh...
- Graham St Jack (2/20) Aug 08 2008 Ok - well, I hope that will change soon.
- downs (2/23) Aug 08 2008 I think we all share that sentiment.
- Bill Baxter (6/26) Aug 08 2008 Doesn't sound like it will, now with "SafeD" and the "shared" variable
- Auria (2/32) Aug 09 2008 Yes, and even if i know this has been discussed to death, i'll allow mys...
- Bent Rasmussen (14/23) Aug 23 2008 There is a stable language, it's called D1.
- Sean Kelly (9/17) Aug 09 2008 I can update the Tango runtime once I find the time, but some of the cod...
- Lars Ivar Igesund (8/28) Aug 09 2008 There is a bugzilla entry (or two) that hinders porting Tango as it is. ...
- Nick B (7/29) Aug 10 2008 Sean
- Lars Ivar Igesund (23/30) Aug 10 2008 We don't expect const to be removed :) As it is, this must be resolved
- Nick B (8/33) Aug 10 2008 Lars
- Walter Bright (2/6) Aug 13 2008 They're already fixed in the latest update.
- Jarrett Billingsley (6/9) Aug 10 2008 Heap.
- Frank Benoit (9/23) Aug 10 2008 i second that.
- Sean Kelly (7/30) Aug 11 2008 Yup. Much like the change in meaning of "const," which I've admittedly
- bearophile (4/6) Aug 11 2008 We have already discussed why this is negative, when practically possibl...
- Sean Kelly (17/21) Aug 11 2008 the "safer" version (what "safer" is can be debated).
- bearophile (17/21) Aug 11 2008 I agree that:
- Simen Kjaeraas (12/19) Aug 12 2008 Why not make it
- Nick B (6/31) Aug 12 2008 Sean
- Alexander Panek (4/7) Aug 12 2008 I suppose he means that there's no guarantee that bugs are fixed. They
- Lars Ivar Igesund (12/20) Aug 12 2008 Well, it would rather be more that we cannot guarantee that things opera...
- Sean Kelly (9/47) Aug 14 2008 For example, Tango currently provides guarantees about hidden memory
- dsimcha (11/11) Aug 12 2008 What about, at least initially, releasing a subset of Tango for D2 and g...
- Lars Ivar Igesund (17/32) Aug 12 2008 There isn't really a subset of Tango that can run on top of any Phobos
- Nick B (8/41) Aug 13 2008 So what is the plan to resolve these creative differences ?
- Lars Ivar Igesund (7/42) Aug 13 2008 Bugzilla entries exists, it is up to Walter to decide the way forward.
- Denis Koroskin (5/44) Aug 13 2008 The biggest issue is diffent Tango and Phobos runtime implementation, I ...
- Lars Ivar Igesund (8/57) Aug 13 2008 Oh, I actually misinterpreted Nick's meaning. Whether it is an issue or ...
- Walter Bright (2/8) Aug 13 2008 Please see my other post here on this topic.
- Moritz Warning (5/8) Aug 13 2008 I haven't taken a look at those runtime implementation differences,
- Sean Kelly (4/12) Aug 13 2008 Unfortunately, for this to be resolved it requires cooperation from both
- Robert Fraser (2/17) Aug 13 2008 I see the D community heading for a split. One side will be D1 (hopefull...
- Don (6/24) Aug 13 2008 I desperately hope not. I'm strongly active in both camps.
- Walter Bright (2/6) Aug 13 2008 And I appreciate your efforts here and can't thank you enough.
- Sean Kelly (8/34) Aug 14 2008 I don't particularly like the status quo either, but as the maintainer
- Benji Smith (8/9) Aug 13 2008 That might be okay in an open source project, where the community can
- Robert Fraser (4/15) Aug 13 2008 D1 is definitely not dead. LLVMDC only supports D1 and is soon to come
- Benji Smith (12/28) Aug 13 2008 Sure, that's the case now.
- Lars Ivar Igesund (9/46) Aug 14 2008 You probably have a point, but Java 1.0 was really dead in the water - I
- Walter Bright (11/20) Aug 14 2008 When you ship a Java application, you are reliant on it running on the
- Bruno Medeiros (13/36) Aug 15 2008 The issue is not just about outdated VMs, or outdated compilers. If you
- Jarrett Billingsley (3/34) Aug 14 2008 People are still using C89. *shrug*
- bearophile (6/7) Aug 13 2008 D2 is good, I can see only one or two problems in it, so making LLVMDC s...
- Walter Bright (3/8) Aug 13 2008 I have no idea what would prevent a backend that works with D1 from
- Tomas Lindquist Olsen (8/17) Aug 13 2008 Except for all our changes to the dmd frontend sources, I don't see any ...
- Walter Bright (3/5) Aug 13 2008 I suppose this process can be aided if you're willing to send me some
- Tomas Lindquist Olsen (12/14) Aug 13 2008 I'll most likely hold you up on that ;)
- Walter Bright (4/16) Aug 13 2008 Yes, I agree. Absolutely!
- Tomas Lindquist Olsen (8/14) Aug 13 2008 I just had a tiny look, and it looks like you forgot the file(s) with th...
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (12/26) Aug 14 2008 GDC has a couple of those portability changes too, that might be
- Lars Ivar Igesund (8/39) Aug 14 2008 This is actually an intended topic at the Tango conference, if many
- Bruno Medeiros (11/33) Aug 15 2008 Walter, thank you for agreeing with those changes!
- Paul D. Anderson (8/9) Aug 13 2008 First, let me say that I have the highest regard, both personally and pr...
- Koroskin Denis (6/54) Aug 13 2008 May I ask why is this post called like that?
- superdan (3/21) Aug 13 2008 bet you wish you'd read earlier what walt wrote in this thread eh.
- Walter Bright (17/21) Aug 13 2008 In order for this to happen, I need a clear and unambiguous statement
- Paul D. Anderson (4/31) Aug 13 2008 Thanks for clarifying this, and I apologize, Walter, and reiterate my ap...
- Walter Bright (7/15) Aug 13 2008 I have not spoken out on it before out of respect for the Tango
- BCS (3/22) Aug 13 2008 If nothing else it will notify everyone who needs to do something to mak...
- Nick B (4/22) Aug 14 2008 Walter
- Sean Kelly (5/23) Aug 14 2008 I don't want to speak for others, but I believe that the issue with
- Denis Koroskin (3/23) Aug 14 2008 That's a merger - a process so many people are waiting for!
- Bruno Medeiros (7/25) Aug 15 2008 Thanks for bringing it out, at least it helps us "observers" have a
- lurker (6/41) Aug 13 2008 Hullo,
- Christopher Wright (7/16) Aug 13 2008 Dozens of people have worked on Tango. Tracking who owns the code is
- Walter Bright (4/7) Aug 13 2008 I understand that. But my understanding (I am not a lawyer) of copyright...
- Chris R. Miller (7/15) Aug 13 2008 I too am not a lawyer, but I was under the impression that contributions
- Sean Reque (8/26) Aug 13 2008 There could be cause for concern. This is from http://www.sqlite.org/cop...
- Brad Roberts (5/39) Aug 13 2008 The number of people that have touched the runtime layer of Tango is ver...
- Chris R. Miller (39/75) Aug 13 2008 o
- Lars Ivar Igesund (8/79) Aug 14 2008 Tango as a project don't have copyright. It is kept by the individual
- Yigal Chripun (18/22) Aug 14 2008 wouldn't it be better that Tango as a project would own the copyright
- Thomas Brix Larsen (2/26) Aug 14 2008
- Lars Ivar Igesund (7/15) Aug 14 2008 At the very least you need some body (foundation, company) for that.
- Yigal Chripun (4/15) Aug 14 2008 Of course and I'm sure it's a hassle to create one. but it is better to
- Sean Kelly (12/30) Aug 14 2008 Although the contributors retain copyright to their contributions they
- Sean Kelly (17/53) Aug 14 2008 So limited, in fact, that the two Tango members who have not given
- Steven Schveighoffer (19/31) Aug 14 2008 Eh? As far as I know, if you don't put your name on it, you don't own i...
- Lars Ivar Igesund (9/23) Aug 14 2008 In many (most) countries, writing it means you have copyright. Whether y...
- Steven Schveighoffer (15/35) Aug 14 2008 I would think that only comes into play if someone else publishes the co...
- Walter Bright (9/17) Aug 14 2008 That would not be good, but at least I would have taken reasonable steps...
- Jason House (6/9) Aug 15 2008 I'd hate for this thread to end with an apparent resolution only to flai...
- Sean Kelly (7/20) Aug 15 2008 The Tango team has provided such a release for quite a while now. It's
- Lars Ivar Igesund (10/32) Aug 15 2008 There are other compilers than DMD, so I (as the current Tango release
- Jason House (4/15) Aug 15 2008 Yes, that's the way it is now, and it's not something I really expect to...
- Walter Bright (4/12) Aug 15 2008 At the moment what we are planning to do with the runtime drop Sean
- Sean Kelly (14/35) Aug 14 2008 Tango is actually dual licensed under both the BSD and an artistic
- Lars Ivar Igesund (7/39) Aug 14 2008 Academic, not artistic ;)
- Sean Kelly (3/37) Aug 14 2008 Whatever, the difference is academic ;-) (I am on a roll with the bad jo...
- Jason House (2/29) Aug 13 2008 I prefer a looser tongue as long as it remains polite. (I consider your ...
- Lars Ivar Igesund (8/35) Aug 14 2008 And we have on equally many occasions told you that the code you need is
- Helmut Leitner (13/25) Aug 14 2008 As a peripheral observer I see this partly as a communication problem,
- Walter Bright (11/20) Aug 14 2008 I respectfully disagree. The Tango team has stopped short of providing a...
- Lars Ivar Igesund (11/26) Aug 14 2008 No, this is not correct. Neither me nor Kris (who have been the ones
- superdan (3/26) Aug 14 2008 cut the oxpoop. `is not of relevance' afforded you to say brad and walte...
- Jarrett Billingsley (7/28) Aug 14 2008 Slightly OT, and directed at this whole situation: I just sit back and
- Yigal Chripun (20/29) Aug 14 2008 Someone once told me that the place with the most politics is academia.
- Dee Girl (5/39) Aug 14 2008 I do not know any thing about this. I am sorry if this does not help. I ...
- superdan (4/37) Aug 14 2008 intercourse yeah. applies to any place with low stakes. the lower the st...
- Sean Reque (3/37) Aug 14 2008 If I understand correctly, this is an issue not for political reasons, b...
- Steven Schveighoffer (16/62) Aug 14 2008 I don't know the details of the license that Walter gave to the Tango de...
- Sean Kelly (14/64) Aug 14 2008 Walter has been updating to the PD license in modules when has has some
- Walter Bright (16/30) Aug 14 2008 It's as I posted here. Tango may use any part of Phobos and *relicense*
- Steven Schveighoffer (23/54) Aug 14 2008 Easy. Don't say you wrote the Tango portions :) Both Tango and Phobos ...
- Sean Kelly (14/33) Aug 14 2008 I believe the issue is fear of "taint." In short, if Walter so much as
- Steven Schveighoffer (23/49) Aug 14 2008 Copyright law is not that rediculous (aside from the US DMCA). Looking ...
- Sean Kelly (8/57) Aug 14 2008 For what it's worth, if having compatible runtimes is the only issue the...
- Yigal Chripun (14/15) Aug 14 2008 US DMCA is not only ridiculous but also illegal since it violates the US
- Robert Fraser (6/21) Aug 14 2008 I've had very mixed feelings about all this. One one hand, the letter of...
- Yigal Chripun (45/50) Aug 14 2008 Of course you have the right to have your own opinion (that's also in
- Robert Fraser (31/89) Aug 14 2008 Some philosopher said that all philosophical debates were inherently
- Yigal Chripun (54/156) Aug 14 2008 I won't argue about wording and linguistics with you. this would be just
- Robert Fraser (31/89) Aug 14 2008 Indeed, the discussion is about that right.
- Jesse Phillips (35/206) Aug 14 2008 I'm sorry this just seems like crap logic. I probably will be unhappy
-
Brad Roberts
(6/6)
Aug 14 2008
- Yigal Chripun (2/10) Aug 15 2008 Sure IP exists. How could we communicate here otherwise? ;)
- Bruno Medeiros (5/16) Aug 15 2008 With tubes of course...
- Robert Fraser (3/11) Aug 15 2008 Indeed, that would be the mature thing to do... but (like all internet
- BCS (2/15) Aug 15 2008 WE NEED A digitalmars.D.OT!
- downs (10/113) Aug 15 2008 Apparently the concept is not clear, because we're not talking about "ta...
- Sean Kelly (8/46) Aug 14 2008 I think this is arguably a reasonable first step, but working towards a
- Walter Bright (3/15) Aug 14 2008 If the cores are compatible at the API level, then one should be able to...
- Jarrett Billingsley (8/23) Aug 14 2008 Why one would want to do that is beyond me.
- Jarrett Billingsley (9/29) Aug 14 2008 No, don't interpret this as standard-library-fanboyism. By this I mean ...
- Robert Fraser (3/31) Aug 14 2008 I think the idea is you could, say, use DWT (Tango) and DMDScript
- Walter Bright (3/10) Aug 14 2008 I don't think anyone expects to mix up Stream and Conduit. But they
- Sean Kelly (6/23) Aug 14 2008 I think it will turn out to be more complicated than that. The runtime
- Koroskin Denis (3/25) Aug 14 2008 Isn't it part of a runtime, i.e. something that is about to be unified?
- Sean Kelly (5/32) Aug 14 2008 But this is more than just duplicating functionality. If the user wants...
- Steven Schveighoffer (16/38) Aug 15 2008 As far as threads, I agree. One must be chosen.
- Sean Kelly (45/82) Aug 15 2008 This decision camw fairly late in the game, and the basic reasoning was
- Robert Fraser (4/15) Aug 15 2008 I suppose the magic of aliases and templates couldn't help at all here
- Sean Kelly (5/22) Aug 15 2008 Currently, it's the opposite with Tango/Tangobos (std.thread.Thread
- Steven Schveighoffer (8/29) Aug 15 2008 The tango.core.Thread alias would be a convenience for backwards
- Sean Kelly (18/46) Aug 15 2008 I would very much like to see a single standard library for D. But
- Steven Schveighoffer (35/116) Aug 15 2008 I didn't mean exceptions need to be defined in individual modules, they ...
- Sean Kelly (31/158) Aug 15 2008 My original goal was to have Walter maintain the DMD compiler runtime
- Steven Schveighoffer (27/77) Aug 15 2008 Again, for the purposes of simplicity, I said Walter, but I meant 'Phobo...
- Lars Ivar Igesund (18/31) Aug 15 2008 Based on historical evidence, this doesn't sound like a particularly goo...
- Lutger (9/37) Aug 15 2008 How does it ignore it? It sounds rather like the opposite to me: the ver...
- Lars Ivar Igesund (17/55) Aug 16 2008 Unification, yes. You misunderstood my point, which is that the runtime
- Yigal Chripun (15/67) Aug 16 2008 I don't understand your point. are you suggesting that things like the
- Lars Ivar Igesund (9/83) Aug 16 2008 A common interface (API and ABI) would make this easier, but I just tend...
- Yigal Chripun (17/95) Aug 16 2008 What's important to the end user IMHO is the API and ABI. having one
- Sean Kelly (11/105) Aug 18 2008 I'd prefer being able to choose the GC I want without needing the
- Yigal Chripun (13/38) Aug 23 2008 If we compare to Java than Sun provides more than one GC with its
- Vincent Richomme (5/43) Aug 23 2008 What I would like to know now: is there any progress between this Tango...
- Brian Price (19/19) Aug 23 2008 My take on the Tango vs Phobos situation is:
- Sean Kelly (20/39) Aug 25 2008 It's also worth mentioning that whatever is decided, no changes are
- superdan (4/49) Aug 25 2008 u realize if u don't want that to look like fud u better back that up. i...
- Sean Kelly (34/95) Aug 25 2008 A bit. I ported the Tango runtime to D2 once. The rest comes from
- superdan (14/113) Aug 25 2008 not sure why you keep on sneaking that `theoretically' word in. duplicat...
- Robert Fraser (13/20) Aug 25 2008 I see the first as a problem, too. An enum is an _enumeration_. It
- superdan (23/46) Aug 25 2008 that's not an abuse. it's just use.
- Sean Kelly (11/50) Aug 26 2008 That's fine. I'd be okay with enumerated types containing floating
- Christopher Wright (18/31) Aug 25 2008 Take C# this example from my job:
- Sean Kelly (12/39) Aug 26 2008 Right. I simply disagree with the suggestion that a label is a label
- Sean Kelly (25/149) Aug 26 2008 My problem isn't with the concept, it's with the word. That's why I
- superdan (21/89) Aug 26 2008 then anonymous classes should be illegal too?
- Jason House (5/10) Aug 25 2008 What if D1 was augmented to allow the keyword invariant in those cases w...
- Walter Bright (3/8) Aug 25 2008 I would agree. D1 was about at the limit of my abilities. D2 goes way
- Sean Kelly (3/45) Aug 25 2008 Yes.
- Sean Kelly (7/41) Aug 25 2008 Fortunately, Tango provides such a "standard API" so no source changes
- Josh Szepietowski (2/48) Aug 25 2008 Just wanted to voice that being able to overload the GC functions as in ...
- Sean Kelly (14/83) Aug 18 2008 I think it's worth distinguishing a bit more detail:
- Lutger (14/27) Aug 16 2008 Ok I think I understand and agree that some room for this potential woul...
- Lars Ivar Igesund (11/38) Aug 16 2008 A way to ensure that there are common, good and well defined interfaces ...
- Sean Kelly (7/32) Aug 18 2008 This is why the Tango runtime is designed the way it is -- it eliminates...
- sambeau (2/4) Aug 15 2008 * sigh *
- Walter Bright (5/6) Aug 15 2008 The threading issue is more problematic. D 2.0 is doing a ground up
- Sean Kelly (5/12) Aug 15 2008 So is classic threading going to be thrown out entirely? If so then I
- Walter Bright (4/14) Aug 15 2008 I don't know. Bartosz is working on it. He understands the issues far
- Moritz Warning (10/25) Aug 15 2008 Sounds like a nifty feature, but please keep in mind that users like
- Walter Bright (19/25) Aug 14 2008 No, I do not "need my name" on the Phobos code. I have no interest in
- Yigal Chripun (35/66) Aug 14 2008 Walter,
- Walter Bright (3/6) Aug 14 2008 Sean has sent me a zip of the runtime code that he owns. I think that
- Christopher Wright (19/42) Aug 14 2008 From phobos/phoboslicense.txt:
- Sean Kelly (7/47) Aug 14 2008 Walter is asking for us to give him the right to distribute any and all
- Walter Bright (4/9) Aug 14 2008 Because you guys are the leaders and spokesmen for Tango. But that's
- Walter Bright (12/61) Aug 14 2008 Why is it a bit much to ask?
- Robert Fraser (5/14) Aug 14 2008 From reading this thread, it seems Sean gave permission for the Tango
- Christopher Wright (20/89) Aug 14 2008 If you had assigned your copyright to the Tango developers, then the
- superdan (5/48) Aug 14 2008 you're not following what walt says eh. his problem is not he wanna stea...
- Steven Schveighoffer (23/87) Aug 14 2008 The problem is, there is never a guarantee of that. Joe Shmoe can come
- superdan (8/104) Aug 14 2008 i gather you don't quite read all messages. walt don't want to deliver a...
- Steven Schveighoffer (57/193) Aug 15 2008 I'm glad you see the futility in it :) I was going off of the messages ...
- Vincent Richomme (12/218) Aug 15 2008 I don't really understand all this battle between Phobos and Tango but I...
- Sean Kelly (9/238) Aug 15 2008 As an aside, I think the most expedient approach for you would be to
- Christopher Wright (8/17) Aug 15 2008 He wanted permission to license Tango as Phobos is licensed. Phobos was
- Adam D. Ruppe (12/14) Aug 15 2008 What about the users of the language? Suppose the standard library was
- lihong (21/21) Aug 15 2008 We offer World of Warcraft Power Leveling and World of Warcraft powerlev...
- Steven Schveighoffer (34/54) Aug 14 2008 The BSD license of Tango is here
- Sean Kelly (15/58) Aug 14 2008 This documentation requirement for binaries is why Tango adopted a dual
- Walter Bright (8/12) Aug 14 2008 So could anyone with code in Phobos that I wrote and labeled Public
- Bruno Medeiros (7/23) Aug 15 2008 Then, regardless of the Tango-Phobos runtime integration discussion,
- Sean Kelly (25/47) Aug 14 2008 Personally, I've never met a corporate lawyer who would authorize use of...
- Moritz Warning (6/60) Aug 14 2008 That issue will probably be sorted out (I hope).
- Sean Kelly (3/63) Aug 14 2008 I think so, but Walter apparently disagrees.
- Nick B (10/37) Aug 14 2008 [Don wrote] The number of people that have touched the runtime layer of
- Sean Kelly (7/46) Aug 14 2008 Mikola Lysenko is the only one I can think of offhand, as Tango's Fiber
- Tiago Carvalho (6/69) Aug 14 2008 I'm not an active participant in this thread, but I'm a anxious reader a...
- bobef (7/39) Aug 14 2008 It is not the same as shoplifting as you are not depriving anyone from a...
- Koroskin Denis (26/96) Aug 15 2008 Can't stand away of the topic.
- downs (8/118) Aug 15 2008 Nope, but I don't see how that changes the terminology.
- Mike Parker (3/7) Aug 16 2008 Yeah, because capturing vessels on the high seas has a lot more in
- downs (2/11) Aug 16 2008 Verily, I have gotten 'burned'.
- Yigal Chripun (10/19) Aug 16 2008 Why can't we fu*king call the dog by his name?
- downs (5/23) Aug 16 2008 "Infringing a copyright": 7 syllables.
- Yigal Chripun (3/29) Aug 16 2008 remember the old rule - each line of code is read 100 times more than
- superdan (3/30) Aug 16 2008 "what the intercourse are you talking about": 9 syllables.
- superdan (2/14) Aug 16 2008 ain't it funny. ever since i stopped fuckshitting everyone and their dog...
- Mike Parker (24/51) Aug 15 2008 Yeah, all are happy. I'm sure the developer is ecstatic that you have no...
- downs (11/84) Aug 15 2008 There are two kind of arguments: logical arguments and emotional argumen...
- Jarrett Billingsley (4/7) Aug 15 2008 Oh don't give me that bullshit. If anything, another company came up wi...
- Mike Parker (7/17) Aug 16 2008 Oh, come on! "software is a product" makes sense -- as in "you buy it
- Jarrett Billingsley (8/24) Aug 16 2008 Oh I agree that MS didn't "come up" with the idea that software is a
- Jb (4/9) Aug 15 2008 You must have so ******* fancy chairs in your house, sorry.. erm.. pala...
- =?iso-8859-1?Q?Julio=20C=e9sar=20Carrascal=20Urquijo?= (3/6) Aug 15 2008 Maybe this one:
- downs (3/15) Aug 16 2008 Ah. Looks like they started the "stealing" thing too.
- Bruce Adams (4/10) Aug 18 2008 Whatever happened to that hard-working underpaid idealist? :p
- downs (3/15) Aug 16 2008 To clarify this point: you still have a *temporary* right to control the...
- Mike Parker (6/21) Aug 16 2008 But it *is* the same right.
- downs (3/33) Aug 16 2008 So ..
- Mike Parker (73/104) Aug 16 2008 No, I'm not. My assertion is that the creator of a thing has a right to
- Yigal Chripun (45/127) Aug 17 2008 your train of thought here is going backwards. No one "suddenly" decided
- Mike Parker (34/154) Aug 17 2008 But you want to take the choice of how they do so out of their hands.
- Yigal Chripun (36/81) Aug 17 2008 Again, I do not take that choice. You claim that a software developer
- Lars Ivar Igesund (11/13) Aug 17 2008 See my other post, you are making an artificial distinction yourself bet...
- Mike Parker (29/89) Aug 17 2008 Someone else already pointed out to you in this thread your confusion
- Jesse Phillips (6/93) Aug 17 2008 At this point I merely wish for you to define what information is to you...
- Jb (21/63) Aug 17 2008 Again you are making an utterly pointless distinction. When we talk abou...
- Jb (32/68) Aug 17 2008 No rights exist a priori, and it adds nothing to this discusion to point...
- Jesse Phillips (62/171) Aug 16 2008 Ok, let us leave out the chairs and discuss books (books of fiction).
- Yigal Chripun (57/127) Aug 16 2008 My major issue with what you wrote is this:
- Jesse Phillips (51/185) Aug 16 2008 Sorry your beef with the past does not work. Back in those days blacks
- Christopher Wright (26/39) Aug 17 2008 Unless someone else decides to take away that corn by force. Which is my...
- Jesse Phillips (12/58) Aug 17 2008 Ok, so you claim that stealing is your right if you can get away with it...
- Christopher Wright (14/54) Aug 17 2008 That is my natural right, since it is my ability. I do not claim that it...
- Jesse Phillips (2/64) Aug 17 2008 I will move this to the "does IP exist" thread.
- Jb (46/95) Aug 16 2008 One of the consequences of the abolition of slavery was that those peopl...
- Adam D. Ruppe (17/21) Aug 16 2008 Then why is this debate about rights? Rights are irrelevant - what
- Yigal Chripun (19/44) Aug 17 2008 I agree with you.
- Mike Parker (16/61) Aug 17 2008 This has been mentioned before, but there's a difference between liberty...
- Jb (18/35) Aug 17 2008 Because rights are what lead us to those results. Human rights are what ...
- Adam D. Ruppe (101/109) Aug 17 2008 My own position is may be a little weird. As far as rights to informatio...
- Jb (25/35) Aug 17 2008 I wish you'd put that paragraph first and then I wouldnt have spent 30
- Adam D. Ruppe (62/78) Aug 17 2008 Heh, yes, I do tend to ramble. (One reason why I generally lurk rather
- Steven Schveighoffer (36/58) Aug 18 2008 Nope. The original author of the software cannot possibly copyright all...
- Adam D. Ruppe (8/15) Aug 18 2008 Conceded.
- Steven Schveighoffer (13/23) Aug 18 2008 Hm... depending on the information about the specific implementation, th...
- Lars Ivar Igesund (12/42) Aug 18 2008 I have seen commercial libraries implement exact same API as other
- Jb (34/60) Aug 18 2008 If i remember correctly this came up when someone got a pre release scre...
- Adam D. Ruppe (65/78) Aug 18 2008 This isn't because of copyright. Copyright has been around since about 1...
- Jb (46/89) Aug 18 2008 I know people who have done things like this. They get 1000s of download...
- Adam D. Ruppe (68/94) Aug 18 2008 That's not the same. What I'm proposing is that the software plain
- Benji Smith (8/22) Aug 18 2008 Adam, you have some mind-bogglingly weird ideas about software
- Adam D. Ruppe (7/8) Aug 18 2008 Which means you gave them $25 in a vote saying you want them to make
- Jb (74/167) Aug 18 2008 I know I was just emphasising how reluctant people are to part with thei...
- Adam D. Ruppe (20/20) Aug 18 2008 This is taking way more time than I bargained for, so this will probably
- Jussi Jumppanen (7/9) Aug 18 2008 The $100,000 is the about enough to pay the wage of
- Mike Parker (11/33) Aug 17 2008 Copyright has no relevance to the spread of information. That's what
- Lars Ivar Igesund (8/16) Aug 15 2008 So in effect you are saying that software developers expecting to live o...
- bobef (6/21) Aug 15 2008 Haha. I didn't say they are silly. But it is a fact that people in gener...
- Lutger (13/16) Aug 14 2008 I find this all to be a bit confusing. A 'split' was kind of inevitable
- Bruno Medeiros (9/27) Aug 15 2008 Oh, it would definitely be bad, that's for sure. Any such duplication of...
- Walter Bright (16/18) Aug 13 2008 For my part, I have explicitly allowed the Tango team to look at, use
- Brad Roberts (12/40) Aug 13 2008 Additionally, Sean has had commit access to phobos for well over a year....
- Brad Roberts (7/11) Aug 13 2008 Sorry.. the implication was that Sean made the accusations which isn't t...
- Sean Kelly (4/15) Aug 14 2008 As an aside... that code change review tool you had set up on PureMagic
- Lars Ivar Igesund (11/54) Aug 14 2008 To be fair, there was anger at the approach chosen on your side when
- Sean Kelly (8/45) Aug 14 2008 I don't even have time to maintain the Tango runtime, let alone the
- Jason House (2/43) Aug 13 2008 I recognize a number of core Tango folks participating in this thread. I...
- Walter Bright (4/9) Aug 13 2008 I don't understand. I fixed the one issue you identified to me that was
- Lars Ivar Igesund (10/20) Aug 14 2008 I wasn't aware that 2204 was a duplicate of 1644, and I guess Steven was...
- Denis Koroskin (3/21) Aug 14 2008 Too bad 2204 was marked as an acceptable solution :)
- Steven Schveighoffer (15/31) Aug 14 2008 In fact, I wasn't aware. 2204 was a legitimate bug, which worked in D
- Steven Schveighoffer (5/11) Aug 15 2008 Confirmed that both issues are fixed in 2.018, at least for the given te...
- Bruno Medeiros (13/29) Aug 15 2008 But does delegate usage cause that much erroneous outer variable heap
- Sean Kelly (7/42) Aug 15 2008 From what I've been told, it does. But I haven't personally tested D
- Bruno Medeiros (8/24) Aug 18 2008 Is there any bug report or code sample of such situation? I recall you
- Lars Ivar Igesund (7/21) Aug 18 2008 I believe others have shown that it can disrupt normal running.
- Bruno Medeiros (12/28) Aug 18 2008 I was asking for a piece of code were the compiler would unnecessarily
- Walter Bright (3/8) Aug 18 2008 It doesn't do it in every situation. It does it in a situation where a
- Bruno Medeiros (9/18) Aug 25 2008 Hum, that's right, I hadn't noticed. My previous comment was due to the
- Sean Kelly (4/28) Aug 18 2008 No, guarantees by Tango. Like how the STL provides "big O" guarantees
- Frank Benoit (6/12) Aug 11 2008 I think this is not a bug in the compiler. Instead it shows the bug in
- Sean Kelly (9/21) Aug 11 2008 Yup. It's essentially the same as heap allocating for the scope created...
- Koroskin Denis (40/68) Aug 12 2008 If I understand the issue correctly, it's not a delegate itself that
- Lars Ivar Igesund (7/15) Aug 10 2008 Heap. Stack. Hack. Ehrm ... sorry ...
- Koroskin Denis (11/40) Aug 11 2008 We need some other kind of `version' for this, I'm afraid. Something lik...
- Koroskin Denis (11/60) Aug 11 2008 I would also like to have something like this:
- PJP (2/3) Aug 10 2008 I'll second that.
Quite a while ago there was talk of rearranging Tango and Phobos so that they share the same runtime, allowing BOTH libraries to be available in the same compiler installation. It looks to me as though D2 is stabilising, so now seems to be a good time to rationalise the two libraries in D2. I use D2 because I want the const stuff (and some other nice things too), but that locks me out of Tango and all the other libraries that use it, most notably GUI libraries. Is anything happening on this front?
Aug 08 2008
"Graham St Jack" <graham.stjack internode.on.net> wrote in message news:g7j16v$tfs$1 digitalmars.com...Quite a while ago there was talk of rearranging Tango and Phobos so that they share the same runtime, allowing BOTH libraries to be available in the same compiler installation. It looks to me as though D2 is stabilising, so now seems to be a good time to rationalise the two libraries in D2. I use D2 because I want the const stuff (and some other nice things too), but that locks me out of Tango and all the other libraries that use it, most notably GUI libraries. Is anything happening on this front?Well D2 forked around the same time as the D conference last year, at which that conclusion was reached, and since then W has made very little progress on merging the Phobos and Tango runtime libraries, instead focusing on new D2 features. *shrug*
Aug 08 2008
On Sat, 09 Aug 2008 00:32:38 -0400, Jarrett Billingsley wrote:"Graham St Jack" <graham.stjack internode.on.net> wrote in message news:g7j16v$tfs$1 digitalmars.com...Ok - well, I hope that will change soon.Quite a while ago there was talk of rearranging Tango and Phobos so that they share the same runtime, allowing BOTH libraries to be available in the same compiler installation. It looks to me as though D2 is stabilising, so now seems to be a good time to rationalise the two libraries in D2. I use D2 because I want the const stuff (and some other nice things too), but that locks me out of Tango and all the other libraries that use it, most notably GUI libraries. Is anything happening on this front?Well D2 forked around the same time as the D conference last year, at which that conclusion was reached, and since then W has made very little progress on merging the Phobos and Tango runtime libraries, instead focusing on new D2 features. *shrug*
Aug 08 2008
Graham St Jack wrote:On Sat, 09 Aug 2008 00:32:38 -0400, Jarrett Billingsley wrote:I think we all share that sentiment."Graham St Jack" <graham.stjack internode.on.net> wrote in message news:g7j16v$tfs$1 digitalmars.com...Ok - well, I hope that will change soon.Quite a while ago there was talk of rearranging Tango and Phobos so that they share the same runtime, allowing BOTH libraries to be available in the same compiler installation. It looks to me as though D2 is stabilising, so now seems to be a good time to rationalise the two libraries in D2. I use D2 because I want the const stuff (and some other nice things too), but that locks me out of Tango and all the other libraries that use it, most notably GUI libraries. Is anything happening on this front?Well D2 forked around the same time as the D conference last year, at which that conclusion was reached, and since then W has made very little progress on merging the Phobos and Tango runtime libraries, instead focusing on new D2 features. *shrug*
Aug 08 2008
On Sat, Aug 9, 2008 at 1:54 PM, Graham St Jack <graham.stjack internode.on.net> wrote:On Sat, 09 Aug 2008 00:32:38 -0400, Jarrett Billingsley wrote:Doesn't sound like it will, now with "SafeD" and the "shared" variable ideas apparently on the to-do list. There's always something big, always just beyond the horizon. --bb"Graham St Jack" <graham.stjack internode.on.net> wrote in message news:g7j16v$tfs$1 digitalmars.com...Ok - well, I hope that will change soon.Quite a while ago there was talk of rearranging Tango and Phobos so that they share the same runtime, allowing BOTH libraries to be available in the same compiler installation. It looks to me as though D2 is stabilising, so now seems to be a good time to rationalise the two libraries in D2. I use D2 because I want the const stuff (and some other nice things too), but that locks me out of Tango and all the other libraries that use it, most notably GUI libraries. Is anything happening on this front?Well D2 forked around the same time as the D conference last year, at which that conclusion was reached, and since then W has made very little progress on merging the Phobos and Tango runtime libraries, instead focusing on new D2 features. *shrug*
Aug 08 2008
Bill Baxter Wrote:On Sat, Aug 9, 2008 at 1:54 PM, Graham St Jack <graham.stjack internode.on.net> wrote:Yes, and even if i know this has been discussed to death, i'll allow myself to add i really dislike the direction D is taking. D's homepage states it is driven by practical experience and not academical feats. Hasn't a solid standard library been shown over time to be absolutely necessary for any language to become popular and highly usable? It seems like D is taking the direction of adding lots of sugar features, and misses basic practical experience stuff. All that sugar is totally useless if D doesn't even have a standard library upon which everything can be builtOn Sat, 09 Aug 2008 00:32:38 -0400, Jarrett Billingsley wrote:Doesn't sound like it will, now with "SafeD" and the "shared" variable ideas apparently on the to-do list. There's always something big, always just beyond the horizon. --bb"Graham St Jack" <graham.stjack internode.on.net> wrote in message news:g7j16v$tfs$1 digitalmars.com...Ok - well, I hope that will change soon.Quite a while ago there was talk of rearranging Tango and Phobos so that they share the same runtime, allowing BOTH libraries to be available in the same compiler installation. It looks to me as though D2 is stabilising, so now seems to be a good time to rationalise the two libraries in D2. I use D2 because I want the const stuff (and some other nice things too), but that locks me out of Tango and all the other libraries that use it, most notably GUI libraries. Is anything happening on this front?Well D2 forked around the same time as the D conference last year, at which that conclusion was reached, and since then W has made very little progress on merging the Phobos and Tango runtime libraries, instead focusing on new D2 features. *shrug*
Aug 09 2008
There is a stable language, it's called D1. D2 should not be preempted by standard libraries, except experimental ones, built to assist the language design, so it is known to be sound. It is great to have two experts like Andrei and Walter work in tandem in a feedback loop. I'm also enthusiastic about the "leave no issue behind" mantra - within limits of course. It's sure to make D2 more coherent, dispite it's plethora of features. It looks to me as if there are new libraries being built side-by-side with D2. At least foundational ones. It is hard to build higher-level ones when D2 is not stable; wasted work, one might say. Also, I'm not sure what "misses basic practical experience stuff" means in the context of Andrei and Walter. My newb impression at least :) BentYes, and even if i know this has been discussed to death, i'll allow myself to add i really dislike the direction D is taking. D's homepage states it is driven by practical experience and not academical feats. Hasn't a solid standard library been shown over time to be absolutely necessary for any language to become popular and highly usable? It seems like D is taking the direction of adding lots of sugar features, and misses basic practical experience stuff. All that sugar is totally useless if D doesn't even have a standard library upon which everything can be built
Aug 23 2008
== Quote from Graham St Jack (graham.stjack internode.on.net)'s articleQuite a while ago there was talk of rearranging Tango and Phobos so that they share the same runtime, allowing BOTH libraries to be available in the same compiler installation.This has been the case for ages via the Tango / Tangobos bundled release.It looks to me as though D2 is stabilising, so now seems to be a good time to rationalise the two libraries in D2. I use D2 because I want the const stuff (and some other nice things too), but that locks me out of Tango and all the other libraries that use it, most notably GUI libraries. Is anything happening on this front?I can update the Tango runtime once I find the time, but some of the coding approaches in the Tango user code aren't entirely compatible with D 2.0. This was the original inspiration for the "scoped const" proposal. In short, it wouldn't be unreasonable to expect the Tango runtime to support D 2.0, but my understanding is that making the user code support D 2.0 would require a redesign in some cases, which is unlikely to occur. Sean
Aug 09 2008
Sean Kelly wrote:== Quote from Graham St Jack (graham.stjack internode.on.net)'s articleThere is a bugzilla entry (or two) that hinders porting Tango as it is. One issue was fixed with the latest release (2.018). -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoQuite a while ago there was talk of rearranging Tango and Phobos so that they share the same runtime, allowing BOTH libraries to be available in the same compiler installation.This has been the case for ages via the Tango / Tangobos bundled release.It looks to me as though D2 is stabilising, so now seems to be a good time to rationalise the two libraries in D2. I use D2 because I want the const stuff (and some other nice things too), but that locks me out of Tango and all the other libraries that use it, most notably GUI libraries. Is anything happening on this front?I can update the Tango runtime once I find the time, but some of the coding approaches in the Tango user code aren't entirely compatible with D 2.0. This was the original inspiration for the "scoped const" proposal. In short, it wouldn't be unreasonable to expect the Tango runtime to support D 2.0, but my understanding is that making the user code support D 2.0 would require a redesign in some cases, which is unlikely to occur.
Aug 09 2008
Sean So what is the plan to transition Tango to D2.0 ? Is the Tango team waiting for const to be removed from D2.0, or will Tango continue to use D1.0 forever, or is the team waiting to see the final form of D2.0 before deciding what to do ? Nick B Sean Kelly wrote:== Quote from Graham St Jack (graham.stjack internode.on.net)'s articleQuite a while ago there was talk of rearranging Tango and Phobos so that they share the same runtime, allowing BOTH libraries to be available in the same compiler installation.This has been the case for ages via the Tango / Tangobos bundled release.It looks to me as though D2 is stabilising, so now seems to be a good time to rationalise the two libraries in D2. I use D2 because I want the const stuff (and some other nice things too), but that locks me out of Tango and all the other libraries that use it, most notably GUI libraries. Is anything happening on this front?I can update the Tango runtime once I find the time, but some of the coding approaches in the Tango user code aren't entirely compatible with D 2.0. This was the original inspiration for the "scoped const" proposal. In short, it wouldn't be unreasonable to expect the Tango runtime to support D 2.0, but my understanding is that making the user code support D 2.0 would require a redesign in some cases, which is unlikely to occur. Sean
Aug 10 2008
Nick B wrote:Sean So what is the plan to transition Tango to D2.0 ? Is the Tango team waiting for const to be removed from D2.0, or will Tango continue to use D1.0 forever, or is the team waiting to see the final form of D2.0 before deciding what to do ?We don't expect const to be removed :) As it is, this must be resolved before it is possible to properly port Tango: http://d.puremagic.com/issues/show_bug.cgi?id=2267 1644 was fixed now, but is in our opinion the lesser solution to the problem - we'd much rather have 1961. 2204 is still open I think. Also as long as closures are allocated on stack, that is likely to be rather detrimental to the performance. Once we have a resolution on that, work on the Tango D 2.0 branch will probably continue, and this branch will be available to all who need it. If possible, an official release may happen shortly after the time Walter calls D 2.0 to be stable. One other concern is that it is almost impossible to have code that is both D1 and D2 compatible, something which mean the mantainance of two branches, a potentially daunting task - it would be good if the "syntactical correctness" restriction on versioned out blocks could be removed for at least D1/D2 identifiers. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the Tango
Aug 10 2008
Lars Thanks for the response. Its good to know that the Tango team is planning to transition to D2.0, even if you still have some major issues to work through, and you have to wait until Walter fixes these critical bugs. cheers Nick B Lars Ivar Igesund wrote:We don't expect const to be removed :) As it is, this must be resolved before it is possible to properly port Tango: http://d.puremagic.com/issues/show_bug.cgi?id=2267 1644 was fixed now, but is in our opinion the lesser solution to the problem - we'd much rather have 1961. 2204 is still open I think. Also as long as closures are allocated on stack, that is likely to be rather detrimental to the performance. Once we have a resolution on that, work on the Tango D 2.0 branch will probably continue, and this branch will be available to all who need it. If possible, an official release may happen shortly after the time Walter calls D 2.0 to be stable. One other concern is that it is almost impossible to have code that is both D1 and D2 compatible, something which mean the mantainance of two branches, a potentially daunting task - it would be good if the "syntactical correctness" restriction on versioned out blocks could be removed for at least D1/D2 identifiers.
Aug 10 2008
Nick B wrote:Thanks for the response. Its good to know that the Tango team is planning to transition to D2.0, even if you still have some major issues to work through, and you have to wait until Walter fixes these critical bugs.They're already fixed in the latest update.
Aug 13 2008
"Lars Ivar Igesund" <larsivar igesund.net> wrote in message news:g7mboq$qcl$1 digitalmars.com...Also as long as closures are allocated on stack, that is likely to be rather detrimental to the performance.Heap. That is another major blocker for me besides const. Most of my code uses nested functions that are never supposed to be closures, and this "feature" would cause it all to unnecessarily allocate memory.
Aug 10 2008
Jarrett Billingsley schrieb:"Lars Ivar Igesund" <larsivar igesund.net> wrote in message news:g7mboq$qcl$1 digitalmars.com...i second that. It is an closure solution which was implemented too easy, imho. 1.) it breaks the semantic of an existing syntax. So existing code can be broken without any warning. (change in runtime behaviour) 2.) there is still no alternative syntax to get the old behaviour 3.) the closures are not really closures. E.g. const variables can change value. (Bug 2043) This is definately a blocker to switch from D1 to D2.Also as long as closures are allocated on stack, that is likely to be rather detrimental to the performance.Heap. That is another major blocker for me besides const. Most of my code uses nested functions that are never supposed to be closures, and this "feature" would cause it all to unnecessarily allocate memory.
Aug 10 2008
Frank Benoit wrote:Jarrett Billingsley schrieb:Yup. Much like the change in meaning of "const," which I've admittedly complained about perhaps overmuch."Lars Ivar Igesund" <larsivar igesund.net> wrote in message news:g7mboq$qcl$1 digitalmars.com...i second that. It is an closure solution which was implemented too easy, imho. 1.) it breaks the semantic of an existing syntax. So existing code can be broken without any warning. (change in runtime behaviour)Also as long as closures are allocated on stack, that is likely to be rather detrimental to the performance.Heap. That is another major blocker for me besides const. Most of my code uses nested functions that are never supposed to be closures, and this "feature" would cause it all to unnecessarily allocate memory.2.) there is still no alternative syntax to get the old behaviourI would prefer that the old behavior the the default and that "new &fn" or something similar would be used for full closures.3.) the closures are not really closures. E.g. const variables can change value. (Bug 2043)This one, at least, is clearly a bug. Sean
Aug 11 2008
Sean Kelly:I would prefer that the old behavior the the default and that "new &fn" or something similar would be used for full closures.We have already discussed why this is negative, when practically possible in D the default has to be the "safer" version (what "safer" is can be debated). Bye, bearophile
Aug 11 2008
== Quote from bearophile (bearophileHUGS lycos.com)'s articleSean Kelly:the "safer" version (what "safer" is can be debated). It's just a matter of opinion, I suppose. As D is a systems language, I don't agree with many arguments about safety when that safety conflicts with my ability to control what the language is doing behind the scenes. Portability between versions is also an issue--code that is correctly designed for D 1.0 may be unusable on D 2.0 because the default behavior for certain language features is different, although the syntax is still completely legal. Also, there isn't any way to easily grep for the use of delegates so finding such trouble spots requires a manual code review. Because one of Tango's core design goals was to have no hidden allocations, this behavior is a major concern for me because it forces me to choose between elegant algorithm design (which works fine in D 1.0) and a design that's portable between language versions in a way I find acceptable. I think if/when Tango is ever released for D 2.0 necessity may dictate that it be an unsupported release for reasons such as this. SeanI would prefer that the old behavior the the default and that "new &fn" or something similar would be used for full closures.We have already discussed why this is negative, when practically possible in D the default has to be
Aug 11 2008
Sean Kelly:It's just a matter of opinion, I suppose. As D is a systems language, I don't agree with many arguments about safety when that safety conflicts with my ability to control what the language is doing behind the scenes.I agree that: - a system language has to be efficient; - there must be a short, readable and nice way to disable heap allocation of closures (that I think has to happen by default); - that sometimes safety has to be put aside (that's why I have said "practically possible": if a safe feature slows down code too much it's not much fit for a system language, especially when compiling in release mode). - I'm using D instead of Python because sometimes I need a modern language that runs my programs faster (this isn't a system purpose). Despite that, there are tons of situations where a "fast language" can help avoid bugs with little or no performance penalty (and adding a statement to disable the heap allocation of closures leads to no performance penalty). Examples of other possible improvements: foreach (i, x in array) instead of: foreach (i, x; array) (But people here have explained me that despite this being better for the programmer it's worse for the compiler, making it more complex etc, and in the end a worse compiler is bad for the programmer too). Or a switch() statement with a semantic safer than then C switch, or various other things that help you decrease bug count and on average produce a correctly running code in less time :-)Portability between versions is also an issue--code that is correctly designed for D 1.0 may be unusable on D 2.0 because the default behavior for certain language features is different, although the syntax is still completely legal.<I have written a library that despite being surely tiny compared to Tango, is currently already 817 KB of code, with no redundancy inside, and it's written for D 1.x, so I understand your pain of porting things to D 2.x. Despite this, D is a young language still, and it's developing quickly still, so it's too much early now to impose too many backward constraints... D 1.x may die and be forgotten, and maybe D 2.x too (Walter already says that AST macros are for D 3.x) so every current big lib for D will probably need one or two major rewrites. In 5 years we may have CPUs with several cores, that the currently mostly-sequential code used in my libs and Tango will be partially obsolete, that may require large changes in the libs and maybe in the language too... Bye, bearophile
Aug 11 2008
bearophile <bearophileHUGS lycos.com> wrote:Examples of other possible improvements: foreach (i, x in array) instead of: foreach (i, x; array) (But people here have explained me that despite this being better for the programmer it's worse for the compiler, making it more complex etc, and in the end a worse compiler is bad for the programmer too).Why not make it foreach (i, x of ar) ? Oh right. Because that would add keywords to the language. Other ideas (that do not add keywords): foreach (i, x with ar) foreach (i, x for ar) foreach (i, x scope ar) and of course, there's my favorite: foreach (i, x enum ar) -- Simen
Aug 12 2008
Sean Kelly wrote:== Quote from bearophile (bearophileHUGS lycos.com)'s articleSean Can you explain what you mean by a "unsupported release" ? Do you mean that all bugs will not fixed or only a certain sub-set of bugs ? Nick BSean Kelly:the "safer" version (what "safer" is can be debated). It's just a matter of opinion, I suppose. As D is a systems language, I don't agree with many arguments about safety when that safety conflicts with my ability to control what the language is doing behind the scenes. Portability between versions is also an issue--code that is correctly designed for D 1.0 may be unusable on D 2.0 because the default behavior for certain language features is different, although the syntax is still completely legal. Also, there isn't any way to easily grep for the use of delegates so finding such trouble spots requires a manual code review. Because one of Tango's core design goals was to have no hidden allocations, this behavior is a major concern for me because it forces me to choose between elegant algorithm design (which works fine in D 1.0) and a design that's portable between language versions in a way I find acceptable. I think if/when Tango is ever released for D 2.0 necessity may dictate that it be an unsupported release for reasons such as this. SeanI would prefer that the old behavior the the default and that "new &fn" or something similar would be used for full closures.We have already discussed why this is negative, when practically possible in D the default has to be
Aug 12 2008
Nick B wrote: > Can you explain what you mean by a "unsupported release" ?Do you mean that all bugs will not fixed or only a certain sub-set of bugs ?I suppose he means that there's no guarantee that bugs are fixed. They may or may not be.
Aug 12 2008
Alexander Panek wrote:Nick B wrote: > Can you explain what you mean by a "unsupported release" ?Well, it would rather be more that we cannot guarantee that things operates as intended as long as there is no way to specify what we need to specify, or that the D spec don't have the necessary guarantees for the operation of the language. Potentially unbounded running time due to unexpected allocations would be one such thing. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoDo you mean that all bugs will not fixed or only a certain sub-set of bugs ?I suppose he means that there's no guarantee that bugs are fixed. They may or may not be.
Aug 12 2008
Nick B wrote:Sean Kelly wrote:For example, Tango currently provides guarantees about hidden memory allocations -- ie. it doesn't perform any, really. But with the new closure rules in D2 we can't provide the same guarantee without a redesign. So I'd consider Tango on D2 to be unsupported because it won't be able to provide the guarantees we provide on D1 without a rewrite, which we aren't planning on doing.== Quote from bearophile (bearophileHUGS lycos.com)'s articleCan you explain what you mean by a "unsupported release" ?Sean Kelly:the "safer" version (what "safer" is can be debated). It's just a matter of opinion, I suppose. As D is a systems language, I don't agree with many arguments about safety when that safety conflicts with my ability to control what the language is doing behind the scenes. Portability between versions is also an issue--code that is correctly designed for D 1.0 may be unusable on D 2.0 because the default behavior for certain language features is different, although the syntax is still completely legal. Also, there isn't any way to easily grep for the use of delegates so finding such trouble spots requires a manual code review. Because one of Tango's core design goals was to have no hidden allocations, this behavior is a major concern for me because it forces me to choose between elegant algorithm design (which works fine in D 1.0) and a design that's portable between language versions in a way I find acceptable. I think if/when Tango is ever released for D 2.0 necessity may dictate that it be an unsupported release for reasons such as this.I would prefer that the old behavior the the default and that "new &fn" or something similar would be used for full closures.We have already discussed why this is negative, when practically possible in D the default has to beDo you mean that all bugs will not fixed or only a certain sub-set of bugs ?See above. I wouldn't consider these bugs per se, just documented behavior. Sean
Aug 14 2008
What about, at least initially, releasing a subset of Tango for D2 and gradually porting more as issues are fixed? For example, just for now, just release whatever subset of Tango is high-level enough to run on top of the D2 Phobos runtime and isn't plagued too severely by const issues, even if it doesn't mesh perfectly, i.e. requires some casting, etc. on the part of client code. I'm not really sure, but I would guess that this would leave a reasonably large subset with plenty of useful things. To be honest, I'm not sure how feasible this is, but I thought I would throw it out there as a suggestion. Tango is a huge library with tons of nice stuff, and it seems like a shame that D2 users can't use any of it if only parts of it are broken.
Aug 12 2008
dsimcha wrote:What about, at least initially, releasing a subset of Tango for D2 and gradually porting more as issues are fixed? For example, just for now, just release whatever subset of Tango is high-level enough to run on top of the D2 Phobos runtime and isn't plagued too severely by const issues, even if it doesn't mesh perfectly, i.e. requires some casting, etc. on the part of client code.There isn't really a subset of Tango that can run on top of any Phobos runtime. The Tango runtime probably works fine with D2 without any major changes, it is the user library that is problematic. The work on the porting has begun in a branch in Tango's svn repository, but cannot be continued properly until certain issues are fixed.I'm not really sure, but I would guess that this would leave a reasonably large subset with plenty of useful things. To be honest, I'm not sure how feasible this is, but I thought I would throw it out there as a suggestion. Tango is a huge library with tons of nice stuff, and it seems like a shame that D2 users can't use any of it if only parts of it are broken.It is typically the behaviour of certain core parts (text manipulation, io) that doesn't work properly, and so most of the other parts of Tango won't work either. Right now it isn't really compilable either if I understand correctly. But we got people on it! :) Really, it would be swell if Tango could work with D2, but currently D2 is not usable for a library like Tango. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the Tango
Aug 12 2008
Lars Ivar Igesund wrote:dsimcha wrote:So what is the plan to resolve these creative differences ? When is the Tango team and Walter going to get in the same room to thrash though these differences, because if these issues are not resolved, then the split will get wider, and wider. Finally, both communities will go their separate ways, and the community (both D and Tango) will burn and die. Nick BWhat about, at least initially, releasing a subset of Tango for D2 and gradually porting more as issues are fixed? For example, just for now, just release whatever subset of Tango is high-level enough to run on top of the D2 Phobos runtime and isn't plagued too severely by const issues, even if it doesn't mesh perfectly, i.e. requires some casting, etc. on the part of client code.There isn't really a subset of Tango that can run on top of any Phobos runtime. The Tango runtime probably works fine with D2 without any major changes, it is the user library that is problematic. The work on the porting has begun in a branch in Tango's svn repository, but cannot be continued properly until certain issues are fixed.I'm not really sure, but I would guess that this would leave a reasonably large subset with plenty of useful things. To be honest, I'm not sure how feasible this is, but I thought I would throw it out there as a suggestion. Tango is a huge library with tons of nice stuff, and it seems like a shame that D2 users can't use any of it if only parts of it are broken.It is typically the behaviour of certain core parts (text manipulation, io) that doesn't work properly, and so most of the other parts of Tango won't work either. Right now it isn't really compilable either if I understand correctly. But we got people on it! :) Really, it would be swell if Tango could work with D2, but currently D2 is not usable for a library like Tango.
Aug 13 2008
Nick B wrote:Lars Ivar Igesund wrote:Bugzilla entries exists, it is up to Walter to decide the way forward. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the Tangodsimcha wrote:So what is the plan to resolve these creative differences ?What about, at least initially, releasing a subset of Tango for D2 and gradually porting more as issues are fixed? For example, just for now, just release whatever subset of Tango is high-level enough to run on top of the D2 Phobos runtime and isn't plagued too severely by const issues, even if it doesn't mesh perfectly, i.e. requires some casting, etc. on the part of client code.There isn't really a subset of Tango that can run on top of any Phobos runtime. The Tango runtime probably works fine with D2 without any major changes, it is the user library that is problematic. The work on the porting has begun in a branch in Tango's svn repository, but cannot be continued properly until certain issues are fixed.I'm not really sure, but I would guess that this would leave a reasonably large subset with plenty of useful things. To be honest, I'm not sure how feasible this is, but I thought I would throw it out there as a suggestion. Tango is a huge library with tons of nice stuff, and it seems like a shame that D2 users can't use any of it if only parts of it are broken.It is typically the behaviour of certain core parts (text manipulation, io) that doesn't work properly, and so most of the other parts of Tango won't work either. Right now it isn't really compilable either if I understand correctly. But we got people on it! :) Really, it would be swell if Tango could work with D2, but currently D2 is not usable for a library like Tango.
Aug 13 2008
On Wed, 13 Aug 2008 15:25:29 +0400, Lars Ivar Igesund <larsivar igesund.net> wrote:Nick B wrote:The biggest issue is diffent Tango and Phobos runtime implementation, I think. I didn't find any bugzilla reports on this subject, though. :(Lars Ivar Igesund wrote:Bugzilla entries exists, it is up to Walter to decide the way forward.dsimcha wrote:So what is the plan to resolve these creative differences ?What about, at least initially, releasing a subset of Tango for D2 and gradually porting more as issues are fixed? For example, just for now, just release whatever subset of Tango is high-level enough to run on top of the D2 Phobos runtime and isn't plagued too severely by const issues, even if it doesn't mesh perfectly, i.e. requires some casting, etc. on the part of client code.There isn't really a subset of Tango that can run on top of any Phobos runtime. The Tango runtime probably works fine with D2 without any major changes, it is the user library that is problematic. The work on the porting has begun in a branch in Tango's svn repository, but cannot be continued properly until certain issues are fixed.I'm not really sure, but I would guess that this would leave a reasonably large subset with plenty of useful things. To be honest, I'm not sure how feasible this is, but I thought I would throw it out there as a suggestion. Tango is a huge library with tons of nice stuff, and it seems like a shame that D2 users can't use any of it if only parts of it are broken.It is typically the behaviour of certain core parts (text manipulation, io) that doesn't work properly, and so most of the other parts of Tango won't work either. Right now it isn't really compilable either if I understand correctly. But we got people on it! :) Really, it would be swell if Tango could work with D2, but currently D2 is not usable for a library like Tango.
Aug 13 2008
Denis Koroskin wrote:On Wed, 13 Aug 2008 15:25:29 +0400, Lars Ivar Igesund <larsivar igesund.net> wrote:Oh, I actually misinterpreted Nick's meaning. Whether it is an issue or not, depends on the POV. Doing anything with it, is in Walter's ballpark. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoNick B wrote:The biggest issue is diffent Tango and Phobos runtime implementation, I think. I didn't find any bugzilla reports on this subject, though. :(Lars Ivar Igesund wrote:Bugzilla entries exists, it is up to Walter to decide the way forward.dsimcha wrote:So what is the plan to resolve these creative differences ?What about, at least initially, releasing a subset of Tango for D2 and gradually porting more as issues are fixed? For example, just for now, just release whatever subset of Tango is high-level enough to run on top of the D2 Phobos runtime and isn't plagued too severely by const issues, even if it doesn't mesh perfectly, i.e. requires some casting, etc. on the part of client code.There isn't really a subset of Tango that can run on top of any Phobos runtime. The Tango runtime probably works fine with D2 without any major changes, it is the user library that is problematic. The work on the porting has begun in a branch in Tango's svn repository, but cannot be continued properly until certain issues are fixed.I'm not really sure, but I would guess that this would leave a reasonably large subset with plenty of useful things. To be honest, I'm not sure how feasible this is, but I thought I would throw it out there as a suggestion. Tango is a huge library with tons of nice stuff, and it seems like a shame that D2 users can't use any of it if only parts of it are broken.It is typically the behaviour of certain core parts (text manipulation, io) that doesn't work properly, and so most of the other parts of Tango won't work either. Right now it isn't really compilable either if I understand correctly. But we got people on it! :) Really, it would be swell if Tango could work with D2, but currently D2 is not usable for a library like Tango.
Aug 13 2008
Lars Ivar Igesund wrote:Please see my other post here on this topic.The biggest issue is diffent Tango and Phobos runtime implementation, I think. I didn't find any bugzilla reports on this subject, though. :(Oh, I actually misinterpreted Nick's meaning. Whether it is an issue or not, depends on the POV. Doing anything with it, is in Walter's ballpark.
Aug 13 2008
On Wed, 13 Aug 2008 15:29:45 +0400, Denis Koroskin wrote:The biggest issue is diffent Tango and Phobos runtime implementation, I think. I didn't find any bugzilla reports on this subject, though. :(I haven't taken a look at those runtime implementation differences, but I wonder why there are no activities to solve this issue. It makes it look like the participants are playing the golden throne game...
Aug 13 2008
== Quote from Moritz Warning (moritzwarning web.de)'s articleOn Wed, 13 Aug 2008 15:29:45 +0400, Denis Koroskin wrote:Unfortunately, for this to be resolved it requires cooperation from both sides. It takes two to Tango, as they say (sorry, bad joke). SeanThe biggest issue is diffent Tango and Phobos runtime implementation, I think. I didn't find any bugzilla reports on this subject, though. :(I haven't taken a look at those runtime implementation differences, but I wonder why there are no activities to solve this issue. It makes it look like the participants are playing the golden throne game...
Aug 13 2008
Sean Kelly Wrote:== Quote from Moritz Warning (moritzwarning web.de)'s articleI see the D community heading for a split. One side will be D1 (hopefully a D 1.5) +tango, and the other side will be D2+phobos. I don't think of this as a bad thing nessescarily, just two different directions.On Wed, 13 Aug 2008 15:29:45 +0400, Denis Koroskin wrote:Unfortunately, for this to be resolved it requires cooperation from both sides. It takes two to Tango, as they say (sorry, bad joke). SeanThe biggest issue is diffent Tango and Phobos runtime implementation, I think. I didn't find any bugzilla reports on this subject, though. :(I haven't taken a look at those runtime implementation differences, but I wonder why there are no activities to solve this issue. It makes it look like the participants are playing the golden throne game...
Aug 13 2008
Robert Fraser wrote:Sean Kelly Wrote:I desperately hope not. I'm strongly active in both camps. I'm heartily sick of this situation. std.math and tango.math.Math/ tango.math.IEEE are now a cut and paste of each other, barring a very small number of lines. I want a single code base, but I'm not sure what more I can do.== Quote from Moritz Warning (moritzwarning web.de)'s articleI see the D community heading for a split. One side will be D1 (hopefully a D 1.5) +tango, and the other side will be D2+phobos. I don't think of this as a bad thing nessescarily, just two different directions.On Wed, 13 Aug 2008 15:29:45 +0400, Denis Koroskin wrote:Unfortunately, for this to be resolved it requires cooperation from both sides. It takes two to Tango, as they say (sorry, bad joke). SeanThe biggest issue is diffent Tango and Phobos runtime implementation, I think. I didn't find any bugzilla reports on this subject, though. :(I haven't taken a look at those runtime implementation differences, but I wonder why there are no activities to solve this issue. It makes it look like the participants are playing the golden throne game...
Aug 13 2008
Don wrote:std.math and tango.math.Math/ tango.math.IEEE are now a cut and paste of each other, barring a very small number of lines. I want a single code base, but I'm not sure what more I can do.And I appreciate your efforts here and can't thank you enough.
Aug 13 2008
Don wrote:Robert Fraser wrote:I don't particularly like the status quo either, but as the maintainer of the runtime there's little I can do for Phobos. It's already been established that the Phobos user code will run on the Tango runtime with basically no modifications (the reverse isn't true), and D2 support simply requires time I don't have at the moment. I'm not sure what else to do here. SeanSean Kelly Wrote:I desperately hope not. I'm strongly active in both camps. I'm heartily sick of this situation. std.math and tango.math.Math/ tango.math.IEEE are now a cut and paste of each other, barring a very small number of lines. I want a single code base, but I'm not sure what more I can do.== Quote from Moritz Warning (moritzwarning web.de)'s articleI see the D community heading for a split. One side will be D1 (hopefully a D 1.5) +tango, and the other side will be D2+phobos. I don't think of this as a bad thing nessescarily, just two different directions.On Wed, 13 Aug 2008 15:29:45 +0400, Denis Koroskin wrote:Unfortunately, for this to be resolved it requires cooperation from both sides. It takes two to Tango, as they say (sorry, bad joke).The biggest issue is diffent Tango and Phobos runtime implementation, I think. I didn't find any bugzilla reports on this subject, though. :(I haven't taken a look at those runtime implementation differences, but I wonder why there are no activities to solve this issue. It makes it look like the participants are playing the golden throne game...
Aug 14 2008
Robert Fraser wrote:I see the D community heading for a split. One side will be D1 (hopefully a D 1.5) +tango, and the other side will be D2+phobos. I don't think of this as a bad thing nessescarily, just two different directions.That might be okay in an open source project, where the community can just fork the project and go their separate ways. But my assumption is that D1 will eventually be end-of-life'd, maybe when D3 eventually arrives. What happens to the D1 people then? Especially given the incompatibilities between D1 and D2. They won't be able to easily port their code, and my assumption is that they'll just be screwed. --benji
Aug 13 2008
Benji Smith Wrote:Robert Fraser wrote:D1 is definitely not dead. LLVMDC only supports D1 and is soon to come out. Dil... I'm not sure how alive it is, but that's D1-only, too. Most D projects/libraries right now are D1-only.I see the D community heading for a split. One side will be D1 (hopefully a D 1.5) +tango, and the other side will be D2+phobos. I don't think of this as a bad thing nessescarily, just two different directions.That might be okay in an open source project, where the community can just fork the project and go their separate ways. But my assumption is that D1 will eventually be end-of-life'd, maybe when D3 eventually arrives. What happens to the D1 people then? Especially given the incompatibilities between D1 and D2. They won't be able to easily port their code, and my assumption is that they'll just be screwed. --benji
Aug 13 2008
Robert Fraser wrote:Benji Smith Wrote:Sure, that's the case now. But imagine yourself back in 1997, supporting Java 1.0 but (for whatever reason) not wanting to jump into Java 1.1. At the time, you wouldn't have had any problem with compilers, libraries, or JVMs. But eventually, you'd be screwed. Nobody can develop anything in Java 1.0 anymore. It's just not possible. My assumption is that D1 will eventually be as anachronistic as Java 1.0, and those who aren't willing to move their code to D2 will have to pick up their toys and go home. --benjiRobert Fraser wrote:D1 is definitely not dead. LLVMDC only supports D1 and is soon to come out. Dil... I'm not sure how alive it is, but that's D1-only, too. Most D projects/libraries right now are D1-only.I see the D community heading for a split. One side will be D1 (hopefully a D 1.5) +tango, and the other side will be D2+phobos. I don't think of this as a bad thing nessescarily, just two different directions.That might be okay in an open source project, where the community can just fork the project and go their separate ways. But my assumption is that D1 will eventually be end-of-life'd, maybe when D3 eventually arrives. What happens to the D1 people then? Especially given the incompatibilities between D1 and D2. They won't be able to easily port their code, and my assumption is that they'll just be screwed. --benji
Aug 13 2008
Benji Smith wrote:Robert Fraser wrote:You probably have a point, but Java 1.0 was really dead in the water - I started programming in Java in 1998 back at the university, using 1.1, and I don't think I came over a single 1.0 reference. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoBenji Smith Wrote:Sure, that's the case now. But imagine yourself back in 1997, supporting Java 1.0 but (for whatever reason) not wanting to jump into Java 1.1. At the time, you wouldn't have had any problem with compilers, libraries, or JVMs. But eventually, you'd be screwed. Nobody can develop anything in Java 1.0 anymore. It's just not possible. My assumption is that D1 will eventually be as anachronistic as Java 1.0, and those who aren't willing to move their code to D2 will have to pick up their toys and go home. --benjiRobert Fraser wrote:D1 is definitely not dead. LLVMDC only supports D1 and is soon to come out. Dil... I'm not sure how alive it is, but that's D1-only, too. Most D projects/libraries right now are D1-only.I see the D community heading for a split. One side will be D1 (hopefully a D 1.5) +tango, and the other side will be D2+phobos. I don't think of this as a bad thing nessescarily, just two different directions.That might be okay in an open source project, where the community can just fork the project and go their separate ways. But my assumption is that D1 will eventually be end-of-life'd, maybe when D3 eventually arrives. What happens to the D1 people then? Especially given the incompatibilities between D1 and D2. They won't be able to easily port their code, and my assumption is that they'll just be screwed. --benji
Aug 14 2008
Benji Smith wrote:Robert Fraser wrote:When you ship a Java application, you are reliant on it running on the customer's Java VM that is not under your control. If they don't have a Java 1.1 VM, your application doesn't work. The situation is different with a native compiler, because the customer doesn't need anything beyond the target machine/OS to run the application. Furthermore, you can continue to build those executables, regardless of future changes to the compiler, by simply saving a copy of the needed compiler. Even if you didn't save a copy of the compiler, all the various shipped versions of dmd are freely available on the Digital Mars site.D1 is definitely not dead. LLVMDC only supports D1 and is soon to come out. Dil... I'm not sure how alive it is, but that's D1-only, too. Most D projects/libraries right now are D1-only.Sure, that's the case now. But imagine yourself back in 1997, supporting Java 1.0 but (for whatever reason) not wanting to jump into Java 1.1.
Aug 14 2008
Walter Bright wrote:Benji Smith wrote:The issue is not just about outdated VMs, or outdated compilers. If you are developing an application that uses third-party libraries (which is very common in web-apps, and other big enterprise software), and those libraries require a newer version of your language, you will feel quite compelled to upgrade to the newer version in order to use that libraries. And eventually, if most libraries only support version X of the language, almost all software ends up using version X, and then version X-1 might become effectively dead (and that's something that could happen to D1). -- Bruno Medeiros - Software Developer, MSc. in CS/E graduate http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#DRobert Fraser wrote:When you ship a Java application, you are reliant on it running on the customer's Java VM that is not under your control. If they don't have a Java 1.1 VM, your application doesn't work. The situation is different with a native compiler, because the customer doesn't need anything beyond the target machine/OS to run the application. Furthermore, you can continue to build those executables, regardless of future changes to the compiler, by simply saving a copy of the needed compiler. Even if you didn't save a copy of the compiler, all the various shipped versions of dmd are freely available on the Digital Mars site.D1 is definitely not dead. LLVMDC only supports D1 and is soon to come out. Dil... I'm not sure how alive it is, but that's D1-only, too. Most D projects/libraries right now are D1-only.Sure, that's the case now. But imagine yourself back in 1997, supporting Java 1.0 but (for whatever reason) not wanting to jump into Java 1.1.
Aug 15 2008
"Benji Smith" <dlanguage benjismith.net> wrote in message news:g7vlkg$2gmg$1 digitalmars.com...Robert Fraser wrote:People are still using C89. *shrug*Benji Smith Wrote:Sure, that's the case now. But imagine yourself back in 1997, supporting Java 1.0 but (for whatever reason) not wanting to jump into Java 1.1. At the time, you wouldn't have had any problem with compilers, libraries, or JVMs. But eventually, you'd be screwed. Nobody can develop anything in Java 1.0 anymore. It's just not possible. My assumption is that D1 will eventually be as anachronistic as Java 1.0, and those who aren't willing to move their code to D2 will have to pick up their toys and go home. --benjiRobert Fraser wrote:D1 is definitely not dead. LLVMDC only supports D1 and is soon to come out. Dil... I'm not sure how alive it is, but that's D1-only, too. Most D projects/libraries right now are D1-only.I see the D community heading for a split. One side will be D1 (hopefully a D 1.5) +tango, and the other side will be D2+phobos. I don't think of this as a bad thing nessescarily, just two different directions.That might be okay in an open source project, where the community can just fork the project and go their separate ways. But my assumption is that D1 will eventually be end-of-life'd, maybe when D3 eventually arrives. What happens to the D1 people then? Especially given the incompatibilities between D1 and D2. They won't be able to easily port their code, and my assumption is that they'll just be screwed. --benji
Aug 14 2008
Robert Fraser:LLVMDC only supports D1 and is soon to come out.D2 is good, I can see only one or two problems in it, so making LLVMDC support D 2.x too looks important to me. What are the issues left in LLVMDC? I see the LLVM backend as the most (the only, maybe) important for the future of D (more important than the closed and not community-hackable backend of DMD, and the complex GCC), are such issues important? If they aren't important then it may be better for Walter to change the specs of D 2.x to made D 2.x fit for LLMV. Because D is meant as a language easy to compile too, but if has some features that can't be implemented well on free backends like the ones of GCC and LLMV then such features look like fit to be removed/modified, otherwise no fully complaint alternative implementations of D may appear, and this sounds silly. Two persons have already answered me regarding the idea of LLVM becoming the reference backend for the D language (that Walter too switches to work on), that most people can improve and tune, but I haven't understood the problems they have explained to me. Bye, bearophile
Aug 13 2008
bearophile wrote:Robert Fraser:I have no idea what would prevent a backend that works with D1 from working with D2.LLVMDC only supports D1 and is soon to come out.D2 is good, I can see only one or two problems in it, so making LLVMDC support D 2.x too looks important to me.
Aug 13 2008
Walter Bright wrote:bearophile wrote:Except for all our changes to the dmd frontend sources, I don't see any problem with updating LLVMDC to D2.0. Of course it would be a bit of work to implement the new expression/statement variations, but I'd assume nothing _too_ major. However the plan right now is to make a fully working D1.0 compiler, until that's done no work will go into future D2.0 support! TomasRobert Fraser:I have no idea what would prevent a backend that works with D1 from working with D2.LLVMDC only supports D1 and is soon to come out.D2 is good, I can see only one or two problems in it, so making LLVMDC support D 2.x too looks important to me.
Aug 13 2008
Tomas Lindquist Olsen wrote:Except for all our changes to the dmd frontend sources, I don't see any problem with updating LLVMDC to D2.0.I suppose this process can be aided if you're willing to send me some diffs so I can incorporate the changes.
Aug 13 2008
Walter Bright wrote:I suppose this process can be aided if you're willing to send me some diffs so I can incorporate the changes.I'll most likely hold you up on that ;) ... Most of the changes we've made are to fix portability/platform related issues. For example, extensive use of printf formatting flags unsupported by ming32, assumptions that target is 32bit, etc. These would be really nice to get fixed in your tree as they make up the majority of the changes, and it would make merging in your DMD updates quite a bit easier. Also it would probably help other people use the frontend for different things in the future. We're still at 1.033 in LLVMDC, but once I find the time to merge in 1.034 I'll take a look at this and see if I can conjure up some patches for review. Tomas
Aug 13 2008
Tomas Lindquist Olsen wrote:Most of the changes we've made are to fix portability/platform related issues. For example, extensive use of printf formatting flags unsupported by ming32,Umm, those are standard C flags? Hasn't ming32 been updated yet?assumptions that target is 32bit, etc. These would be really nice to get fixed in your tree as they make up the majority of the changes, and it would make merging in your DMD updates quite a bit easier. Also it would probably help other people use the frontend for different things in the future.Yes, I agree. Absolutely!We're still at 1.033 in LLVMDC, but once I find the time to merge in 1.034 I'll take a look at this and see if I can conjure up some patches for review.I'm looking forward to it.
Aug 13 2008
Walter Bright wrote:Tomas Lindquist Olsen wrote:I just had a tiny look, and it looks like you forgot the file(s) with the implementations for all the new arrayOp stuff like: Expression::buildArrayIdent Expression::buildArrayLoop Expression::arrayOp I'm guessing this is not intentional... Could you mail this to me? This address should work. TomasWe're still at 1.033 in LLVMDC, but once I find the time to merge in 1.034 I'll take a look at this and see if I can conjure up some patches for review.I'm looking forward to it.
Aug 13 2008
Walter Bright wrote:GDC has a couple of those portability changes too, that might be useful to merge back into DMD where that hasn't happened already... It also seems that Tango is having some problems with GDC, because it doesn't follow the DMD specification (sometimes for portability) Like: http://d.puremagic.com/issues/show_bug.cgi?id=670 http://d.puremagic.com/issues/show_bug.cgi?id=1066 http://d.puremagic.com/issues/show_bug.cgi?id=2191 Might be something worthwhile looking into, after the runtime issues between Phobos and Tango (i.e. the differences between DMD and GDC) --andersMost of the changes we've made are to fix portability/platform related issues. For example, extensive use of printf formatting flags unsupported by ming32,Umm, those are standard C flags? Hasn't ming32 been updated yet?assumptions that target is 32bit, etc. These would be really nice to get fixed in your tree as they make up the majority of the changes, and it would make merging in your DMD updates quite a bit easier. Also it would probably help other people use the frontend for different things in the future.Yes, I agree. Absolutely!
Aug 14 2008
Anders F Björklund wrote:Walter Bright wrote:This is actually an intended topic at the Tango conference, if many enough/right persons show up :) -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoGDC has a couple of those portability changes too, that might be useful to merge back into DMD where that hasn't happened already... It also seems that Tango is having some problems with GDC, because it doesn't follow the DMD specification (sometimes for portability) Like: http://d.puremagic.com/issues/show_bug.cgi?id=670 http://d.puremagic.com/issues/show_bug.cgi?id=1066 http://d.puremagic.com/issues/show_bug.cgi?id=2191 Might be something worthwhile looking into, after the runtime issues between Phobos and Tango (i.e. the differences between DMD and GDC)Most of the changes we've made are to fix portability/platform related issues. For example, extensive use of printf formatting flags unsupported by ming32,Umm, those are standard C flags? Hasn't ming32 been updated yet?assumptions that target is 32bit, etc. These would be really nice to get fixed in your tree as they make up the majority of the changes, and it would make merging in your DMD updates quite a bit easier. Also it would probably help other people use the frontend for different things in the future.Yes, I agree. Absolutely!
Aug 14 2008
Walter Bright wrote:Tomas Lindquist Olsen wrote:Walter, thank you for agreeing with those changes! As the toolset of a language is highly important to its productivity, so does that mean that the more help the community gets in reusing and improving each others tools, the better D will be (especially since we don't have the backing of a large corporation, and most of D's contributers are volunteers/hobbyists). And even more important if that tool is the compiler (which is already being used in several projects). -- Bruno Medeiros - Software Developer, MSc. in CS/E graduate http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#DMost of the changes we've made are to fix portability/platform related issues. For example, extensive use of printf formatting flags unsupported by ming32,Umm, those are standard C flags? Hasn't ming32 been updated yet?assumptions that target is 32bit, etc. These would be really nice to get fixed in your tree as they make up the majority of the changes, and it would make merging in your DMD updates quite a bit easier. Also it would probably help other people use the frontend for different things in the future.Yes, I agree. Absolutely!We're still at 1.033 in LLVMDC, but once I find the time to merge in 1.034 I'll take a look at this and see if I can conjure up some patches for review.I'm looking forward to it.
Aug 15 2008
Robert Fraser Wrote:I see the D community heading for a split. One side will be D1 (hopefully a D 1.5) +tango, and the other side will be D2+phobos. I don't think of this as a bad thing nessescarily, just two different directions.First, let me say that I have the highest regard, both personally and professionally, for Walter (and Andre and Bartosz and the others who are working on D 2.0) and also for the Tango development team. Both groups have a lot of talent and have worked hard to give us (at no cost!) a great language and a great library. The Tango developers have done important and valuable work, providing sturdy, efficient and rigorous implementations of many common software components. They have not only provided the Tango library, but they've also wrung out the language and pushed its capabilities to give us all a better picture of what is possible. (I'd love to see what they could do with the new features in D 2.0.) And they have been careful not to step on Walter's toes while they do this. They discussed the problem with Walter at the first D Language Conference and agreed on a solution: a common runtime module. They have narrowed the incompatibilities between phobos and tango to a minimal set and are waiting for Walter to meet them there. To live up to his part of the bargain, to put it bluntly. A year later he still hasn't done so. But Walter drives development his own way. Walter himself has said that the only difference between himself (and D) and a lot of other replacements for C/C++ is that he's stayed with it longer than they have. And so Walter will listen and respond to criticism, new concepts, alternative implementations and frantic pleas, but, at the end of the day, he will work toward what he sees as the best solution to the most pressing problems. This is mostly a good thing -- Walter has a long-term vision for the D programming language and he is determined to see it through. Of course, this also has a downside. Work that doesn't advance the main line that he has mapped out doesn't get his attention, or his time. It's not that he's unwilling, but he's doing a lot of work on developing what he sees as more fundamental things. So I don't think it is likely that Walter will delay or disturb his current effort to get D 2.0 pushed out the door. And he's made it clear that he not interested in going back to "fix" D 1.0. But what I would really like to see (and I don't think it's asking too much) is a clear statement from Walter that he will indeed make the changes the Tango developers are asking for at some future date. I don't think he even needs to commit himself to a specific date, just a reference point -- when D 2.0 is final, or when the functional programming stuff is in place, or whenever. I think all that we really NEED at this point is assurance that the two groups are not working at cross purposes. If this has already happened, if there is some agreement in place that I just don't know about, then I apologize for this rant. But it seems like little enough to ask. Paul
Aug 13 2008
On Thu, 14 Aug 2008 02:05:37 +0400, Paul D. Anderson <paul.d.removethis.anderson comcast.andthis.net> wrote:Robert Fraser Wrote:May I ask why is this post called like that? Walter has just responded that he is ready to make the asked changes to the runtime, and is waiting for a permission from some Tango members to do this. We will see a resolution pretty soon, hopefully!I see the D community heading for a split. One side will be D1 (hopefully a D 1.5) +tango, and the other side will be D2+phobos. I don't think of this as a bad thing nessescarily, just two different directions.First, let me say that I have the highest regard, both personally and professionally, for Walter (and Andre and Bartosz and the others who are working on D 2.0) and also for the Tango development team. Both groups have a lot of talent and have worked hard to give us (at no cost!) a great language and a great library. The Tango developers have done important and valuable work, providing sturdy, efficient and rigorous implementations of many common software components. They have not only provided the Tango library, but they've also wrung out the language and pushed its capabilities to give us all a better picture of what is possible. (I'd love to see what they could do with the new features in D 2.0.) And they have been careful not to step on Walter's toes while they do this. They discussed the problem with Walter at the first D Language Conference and agreed on a solution: a common runtime module. They have narrowed the incompatibilities between phobos and tango to a minimal set and are waiting for Walter to meet them there. To live up to his part of the bargain, to put it bluntly. A year later he still hasn't done so. But Walter drives development his own way. Walter himself has said that the only difference between himself (and D) and a lot of other replacements for C/C++ is that he's stayed with it longer than they have. And so Walter will listen and respond to criticism, new concepts, alternative implementations and frantic pleas, but, at the end of the day, he will work toward what he sees as the best solution to the most pressing problems. This is mostly a good thing -- Walter has a long-term vision for the D programming language and he is determined to see it through. Of course, this also has a downside. Work that doesn't advance the main line that he has mapped out doesn't get his attention, or his time. It's not that he's unwilling, but he's doing a lot of work on developing what he sees as more fundamental things. So I don't think it is likely that Walter will delay or disturb his current effort to get D 2.0 pushed out the door. And he's made it clear that he not interested in going back to "fix" D 1.0. But what I would really like to see (and I don't think it's asking too much) is a clear statement from Walter that he will indeed make the changes the Tango developers are asking for at some future date. I don't think he even needs to commit himself to a specific date, just a reference point -- when D 2.0 is final, or when the functional programming stuff is in place, or whenever. I think all that we really NEED at this point is assurance that the two groups are not working at cross purposes. If this has already happened, if there is some agreement in place that I just don't know about, then I apologize for this rant. But it seems like little enough to ask. Paul
Aug 13 2008
Paul D. Anderson Wrote:Robert Fraser Wrote:bet you wish you'd read earlier what walt wrote in this thread eh. i thought pretty much along the same lines. but in fact walt's statement is revealing. changes perspective on the issue 180 radians (joke!). looks like he wasn't the bad (or careless or uninterested or unfocused... whatever) dood afterall? he was just being discreet? i take it there's been talks and stuff and walt just didn't get permission to mess with tango's code? why? for how long has this been goin' on, walt? and why didn't you tell this earlier? whoa. this is an epic moment. like one of those twists in a whodunit. killer wasn't her, it was her sister!I see the D community heading for a split. One side will be D1 (hopefully a D 1.5) +tango, and the other side will be D2+phobos. I don't think of this as a bad thing nessescarily, just two different directions.First, let me say that I have the highest regard, both personally and professionally, for Walter (and Andre and Bartosz and the others who are working on D 2.0) and also for the Tango development team. Both groups have a lot of talent and have worked hard to give us (at no cost!) a great language and a great library. The Tango developers have done important and valuable work, providing sturdy, efficient and rigorous implementations of many common software components. They have not only provided the Tango library, but they've also wrung out the language and pushed its capabilities to give us all a better picture of what is possible. (I'd love to see what they could do with the new features in D 2.0.) And they have been careful not to step on Walter's toes while they do this. They discussed the problem with Walter at the first D Language Conference and agreed on a solution: a common runtime module. They have narrowed the incompatibilities between phobos and tango to a minimal set and are waiting for Walter to meet them there. To live up to his part of the bargain, to put it bluntly. A year later he still hasn't done so. But Walter drives development his own way. Walter himself has said that the only difference between himself (and D) and a lot of other replacements for C/C++ is that he's stayed with it longer than they have. And so Walter will listen and respond to criticism, new concepts, alternative implementations and frantic pleas, but, at the end of the day, he will work toward what he sees as the best solution to the most pressing problems. This is mostly a good thing -- Walter has a long-term vision for the D programming language and he is determined to see it through. Of course, this also has a downside. Work that doesn't advance the main line that he has mapped out doesn't get his attention, or his time. It's not that he's unwilling, but he's doing a lot of work on developing what he sees as more fundamental things. So I don't think it is likely that Walter will delay or disturb his current effort to get D 2.0 pushed out the door. And he's made it clear that he not interested in going back to "fix" D 1.0. But what I would really like to see (and I don't think it's asking too much) is a clear statement from Walter that he will indeed make the changes the Tango developers are asking for at some future date. I don't think he even needs to commit himself to a specific date, just a reference point -- when D 2.0 is final, or when the functional programming stuff is in place, or whenever. I think all that we really NEED at this point is assurance that the two groups are not working at cross purposes. If this has already happened, if there is some agreement in place that I just don't know about, then I apologize for this rant. But it seems like little enough to ask. Paul
Aug 13 2008
Paul D. Anderson wrote:But what I would really like to see (and I don't think it's asking too much) is a clear statement from Walter that he will indeed make the changes the Tango developers are asking for at some future date.In order for this to happen, I need a clear and unambiguous statement from the Tango developers that Phobos can incorporate parts of the Tango runtime and place them under the Phobos license. I have already provided a reciprocal license to Tango. I've asked for that for over a year, and so far only Sean and Don have done so. Such an agreement is necessary for the following reasons: 1. To ensure Phobos is free of any legal taint and any accusations of stealing code. 2. To avoid the untenable issue of a single module in Phobos having different license for different lines of code. I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)
Aug 13 2008
Walter Bright Wrote:Paul D. Anderson wrote:Thanks for clarifying this, and I apologize, Walter, and reiterate my appreciation for what you do. But I was expressing my frustration at what I thought the situation was. If there was discussion about licensing issues I missed it. (I missed your earlier post in this thread because I was busy "composing" my tirade.) From my point of view this puts the ball squarely back in Tango's court. Is there a fundamental problem here? Can we move forward? PaulBut what I would really like to see (and I don't think it's asking too much) is a clear statement from Walter that he will indeed make the changes the Tango developers are asking for at some future date.In order for this to happen, I need a clear and unambiguous statement from the Tango developers that Phobos can incorporate parts of the Tango runtime and place them under the Phobos license. I have already provided a reciprocal license to Tango. I've asked for that for over a year, and so far only Sean and Don have done so. Such an agreement is necessary for the following reasons: 1. To ensure Phobos is free of any legal taint and any accusations of stealing code. 2. To avoid the untenable issue of a single module in Phobos having different license for different lines of code. I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)
Aug 13 2008
Paul D. Anderson wrote:Thanks for clarifying this, and I apologize, Walter, and reiterate my appreciation for what you do. But I was expressing my frustration at what I thought the situation was. If there was discussion about licensing issues I missed it. (I missed your earlier post in this thread because I was busy "composing" my tirade.) From my point of view this puts the ball squarely back in Tango's court. Is there a fundamental problem here? Can we move forward?I have not spoken out on it before out of respect for the Tango developers' right to license Tango as they see fit. These discussions have been done via email, not on a public forum. I know that not all of the Tango developers were involved with it, as quite a diverse group has worked on Tango, and I apologize for that. But it is clearly time to bring this out into the open.
Aug 13 2008
Reply to Walter,Paul D. Anderson wrote:If nothing else it will notify everyone who needs to do something to make it work.Thanks for clarifying this, and I apologize, Walter, and reiterate my appreciation for what you do. But I was expressing my frustration at what I thought the situation was. If there was discussion about licensing issues I missed it. (I missed your earlier post in this thread because I was busy "composing" my tirade.) From my point of view this puts the ball squarely back in Tango's court. Is there a fundamental problem here? Can we move forward?I have not spoken out on it before out of respect for the Tango developers' right to license Tango as they see fit. These discussions have been done via email, not on a public forum. I know that not all of the Tango developers were involved with it, as quite a diverse group has worked on Tango, and I apologize for that. But it is clearly time to bring this out into the open.
Aug 13 2008
Walter Bright wrote:Paul D. Anderson wrote:Walter Thank you for bring these private discussions into the open. Nick B.Thanks for clarifying this, and I apologize, Walter, and reiterate my appreciation for what you do. But I was expressing my frustration at what I thought the situation was. If there was discussion about licensing issues I missed it. (I missed your earlier post in this thread because I was busy "composing" my tirade.) From my point of view this puts the ball squarely back in Tango's court. Is there a fundamental problem here? Can we move forward?I have not spoken out on it before out of respect for the Tango developers' right to license Tango as they see fit. These discussions have been done via email, not on a public forum. I know that not all of the Tango developers were involved with it, as quite a diverse group has worked on Tango, and I apologize for that. But it is clearly time to bring this out into the open.
Aug 14 2008
Walter Bright wrote:Paul D. Anderson wrote:I don't want to speak for others, but I believe that the issue with opening up the license for Tango concerns the user code, not the runtime. The initial request was for rights to all of Tango. SeanThanks for clarifying this, and I apologize, Walter, and reiterate my appreciation for what you do. But I was expressing my frustration at what I thought the situation was. If there was discussion about licensing issues I missed it. (I missed your earlier post in this thread because I was busy "composing" my tirade.) From my point of view this puts the ball squarely back in Tango's court. Is there a fundamental problem here? Can we move forward?I have not spoken out on it before out of respect for the Tango developers' right to license Tango as they see fit. These discussions have been done via email, not on a public forum. I know that not all of the Tango developers were involved with it, as quite a diverse group has worked on Tango, and I apologize for that. But it is clearly time to bring this out into the open.
Aug 14 2008
On Thu, 14 Aug 2008 22:15:50 +0400, Sean Kelly <sean invisibleduck.org> wrote:Walter Bright wrote:That's a merger - a process so many people are waiting for!Paul D. Anderson wrote:I don't want to speak for others, but I believe that the issue with opening up the license for Tango concerns the user code, not the runtime. The initial request was for rights to all of Tango. SeanThanks for clarifying this, and I apologize, Walter, and reiterate my appreciation for what you do. But I was expressing my frustration at what I thought the situation was. If there was discussion about licensing issues I missed it. (I missed your earlier post in this thread because I was busy "composing" my tirade.) From my point of view this puts the ball squarely back in Tango's court. Is there a fundamental problem here? Can we move forward?I have not spoken out on it before out of respect for the Tango developers' right to license Tango as they see fit. These discussions have been done via email, not on a public forum. I know that not all of the Tango developers were involved with it, as quite a diverse group has worked on Tango, and I apologize for that. But it is clearly time to bring this out into the open.
Aug 14 2008
Walter Bright wrote:Paul D. Anderson wrote:Thanks for bringing it out, at least it helps us "observers" have a better picture of why the current status quo. And indeed I was thinking that the ball was almost entirely in your court. ~~' -- Bruno Medeiros - Software Developer, MSc. in CS/E graduate http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#DThanks for clarifying this, and I apologize, Walter, and reiterate my appreciation for what you do. But I was expressing my frustration at what I thought the situation was. If there was discussion about licensing issues I missed it. (I missed your earlier post in this thread because I was busy "composing" my tirade.) From my point of view this puts the ball squarely back in Tango's court. Is there a fundamental problem here? Can we move forward?I have not spoken out on it before out of respect for the Tango developers' right to license Tango as they see fit. These discussions have been done via email, not on a public forum. I know that not all of the Tango developers were involved with it, as quite a diverse group has worked on Tango, and I apologize for that. But it is clearly time to bring this out into the open.
Aug 15 2008
Paul D. Anderson Wrote:Walter Bright Wrote:Hullo, Thats not happening now or recently. The ball its been rotting in Tango's court for one year plus. This is huge. I might need a couple days to process this information. Naming names is scary but, ..... is Walter saying Kris and Lars "MI Is Evil" Igesund deliberately prevented unification progress? One thing for sure. assert(cat !in bag); -LurkerPaul D. Anderson wrote:Thanks for clarifying this, and I apologize, Walter, and reiterate my appreciation for what you do. But I was expressing my frustration at what I thought the situation was. If there was discussion about licensing issues I missed it. (I missed your earlier post in this thread because I was busy "composing" my tirade.) From my point of view this puts the ball squarely back in Tango's court. Is there a fundamental problem here? Can we move forward? PaulBut what I would really like to see (and I don't think it's asking too much) is a clear statement from Walter that he will indeed make the changes the Tango developers are asking for at some future date.In order for this to happen, I need a clear and unambiguous statement from the Tango developers that Phobos can incorporate parts of the Tango runtime and place them under the Phobos license. I have already provided a reciprocal license to Tango. I've asked for that for over a year, and so far only Sean and Don have done so. Such an agreement is necessary for the following reasons: 1. To ensure Phobos is free of any legal taint and any accusations of stealing code. 2. To avoid the untenable issue of a single module in Phobos having different license for different lines of code. I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)
Aug 13 2008
lurker wrote:Hullo, Thats not happening now or recently. The ball its been rotting in Tango's court for one year plus. This is huge. I might need a couple days to process this information. Naming names is scary but, ..... is Walter saying Kris and Lars "MI Is Evil" Igesund deliberately prevented unification progress? One thing for sure. assert(cat !in bag); -LurkerDozens of people have worked on Tango. Tracking who owns the code is nontrivial, as is contacting some of them. It might be impossible to get a license change cleared. Of course, if Walter replaced the Phobos runtime entirely with Tango's, that might not be an issue. But it would involve using the BSD license for those parts.
Aug 13 2008
Christopher Wright wrote:Dozens of people have worked on Tango. Tracking who owns the code is nontrivial, as is contacting some of them. It might be impossible to get a license change cleared.I understand that. But my understanding (I am not a lawyer) of copyright law is that a couple of lines of code are not copyrightable. But major contributors to Tango should be reachable.
Aug 13 2008
Walter Bright wrote:Christopher Wright wrote:tDozens of people have worked on Tango. Tracking who owns the code is nontrivial, as is contacting some of them. It might be impossible to get a license change cleared.=20 I understand that. But my understanding (I am not a lawyer) of copyrigh=law is that a couple of lines of code are not copyrightable. But major contributors to Tango should be reachable.I too am not a lawyer, but I was under the impression that contributions to Tango are still property of Tango and subject to the global Tango license. Maybe someone should ask a lawyer... there's a good radio phone-a-lawyer guy in my area I could call.
Aug 13 2008
Chris R. Miller Wrote:Walter Bright wrote:There could be cause for concern. This is from http://www.sqlite.org/copyright.html """ Contributed Code In order to keep SQLite completely free and unencumbered by copyright, all new contributors to the SQLite code base are asked to dedicate their contributions to the public domain. If you want to send a patch or enhancement for possible inclusion in the SQLite source tree, please accompany the patch with the following statement: The author or authors of this code dedicate any and all copyright interest in this code to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this code under copyright law. We are not able to accept patches or changes to SQLite that are not accompanied by a statement such as the above. In addition, if you make changes or enhancements as an employee, then a simple statement such as the above is insufficient. You must also send by surface mail a copyright release signed by a company officer. A signed original of the copyright release should be mailed to: """Christopher Wright wrote:I too am not a lawyer, but I was under the impression that contributions to Tango are still property of Tango and subject to the global Tango license. Maybe someone should ask a lawyer... there's a good radio phone-a-lawyer guy in my area I could call.Dozens of people have worked on Tango. Tracking who owns the code is nontrivial, as is contacting some of them. It might be impossible to get a license change cleared.I understand that. But my understanding (I am not a lawyer) of copyright law is that a couple of lines of code are not copyrightable. But major contributors to Tango should be reachable.
Aug 13 2008
On Wed, 13 Aug 2008, Sean Reque wrote:Chris R. Miller Wrote:The number of people that have touched the runtime layer of Tango is very limited. The upper layers are of no concern for this thread. Later, BradWalter Bright wrote:There could be cause for concern. This is from http://www.sqlite.org/copyright.html """ Contributed Code In order to keep SQLite completely free and unencumbered by copyright, all new contributors to the SQLite code base are asked to dedicate their contributions to the public domain. If you want to send a patch or enhancement for possible inclusion in the SQLite source tree, please accompany the patch with the following statement: The author or authors of this code dedicate any and all copyright interest in this code to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this code under copyright law. We are not able to accept patches or changes to SQLite that are not accompanied by a statement such as the above. In addition, if you make changes or enhancements as an employee, then a simple statement such as the above is insufficient. You must also send by surface mail a copyright release signed by a company officer. A signed original of the copyright release should be mailed to: """Christopher Wright wrote:I too am not a lawyer, but I was under the impression that contributions to Tango are still property of Tango and subject to the global Tango license. Maybe someone should ask a lawyer... there's a good radio phone-a-lawyer guy in my area I could call.Dozens of people have worked on Tango. Tracking who owns the code is nontrivial, as is contacting some of them. It might be impossible to get a license change cleared.I understand that. But my understanding (I am not a lawyer) of copyright law is that a couple of lines of code are not copyrightable. But major contributors to Tango should be reachable.
Aug 13 2008
Brad Roberts wrote:On Wed, 13 Aug 2008, Sean Reque wrote: =20sChris R. Miller Wrote:Walter Bright wrote:Christopher Wright wrote:Dozens of people have worked on Tango. Tracking who owns the code i=onontrivial, as is contacting some of them. It might be impossible t=ightget a license change cleared.I understand that. But my understanding (I am not a lawyer) of copyr=orlaw is that a couple of lines of code are not copyrightable. But maj=onscontributors to Tango should be reachable.I too am not a lawyer, but I was under the impression that contributi=opyright.htmlto Tango are still property of Tango and subject to the global Tango license. Maybe someone should ask a lawyer... there's a good radio phone-a-lawyer guy in my area I could call.There could be cause for concern. This is from http://www.sqlite.org/c=all new contributors to the SQLite code base are asked to dedicate their= contributions to the public domain. If you want to send a patch or enhan= cement for possible inclusion in the SQLite source tree, please accompany= the patch with the following statement:""" Contributed Code In order to keep SQLite completely free and unencumbered by copyright,=interest in this code to the public domain. We make this dedication for t= he benefit of the public at large and to the detriment of our heirs and s= uccessors. We intend this dedication to be an overt act of relinquishment= in perpetuity of all present and future rights to this code under copyri= ght law.=20The author or authors of this code dedicate any and all copyright =companied by a statement such as the above. In addition, if you make chan= ges or enhancements as an employee, then a simple statement such as the a= bove is insufficient. You must also send by surface mail a copyright rele= ase signed by a company officer. A signed original of the copyright relea= se should be mailed to:We are not able to accept patches or changes to SQLite that are not ac=ry=20"""=20 The number of people that have touched the runtime layer of Tango is ve=limited. The upper layers are of no concern for this thread.Well why not try to establish a precedent for all of Tango? Tango is dual licensed Academic Free and BSD. So long as Walter + friends include a notice in the Readme file, it's completely legal for him to use any or ALL of Tango. That's a reality, since it's common practice to consider a note in the readme fulfillment of the BSD attribution clause. Most popular video games do this to legally use the ZLib compression libraries. As for the Sqlite disclaimer, I would think that's just an insurance. Plenty of other organizations don't do that. I've been on the Linux Kernel Janitor's list for two years now, and none of the patches that actually go into the Holy Kernel Itself are ever "protected" by any such disclaimer from the contributors. I would argue that by contributing to Tango/LKJ/Sqlite/OSS you are implicitly stating that you're /giving/ that code to the organization. No strings attached, released under the organization's license. Just my $0.02. IANAL, but from all I've observed, that is the way things work (if not legally, then in a de facto way).
Aug 13 2008
Chris R. Miller wrote:Brad Roberts wrote:Tango as a project don't have copyright. It is kept by the individual contributors. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoOn Wed, 13 Aug 2008, Sean Reque wrote:Well why not try to establish a precedent for all of Tango? Tango is dual licensed Academic Free and BSD. So long as Walter + friends include a notice in the Readme file, it's completely legal for him to use any or ALL of Tango. That's a reality, since it's common practice to consider a note in the readme fulfillment of the BSD attribution clause. Most popular video games do this to legally use the ZLib compression libraries. As for the Sqlite disclaimer, I would think that's just an insurance. Plenty of other organizations don't do that. I've been on the Linux Kernel Janitor's list for two years now, and none of the patches that actually go into the Holy Kernel Itself are ever "protected" by any such disclaimer from the contributors. I would argue that by contributing to Tango/LKJ/Sqlite/OSS you are implicitly stating that you're /giving/ that code to the organization. No strings attached, released under the organization's license.Chris R. Miller Wrote:The number of people that have touched the runtime layer of Tango is very limited. The upper layers are of no concern for this thread.Walter Bright wrote:There could be cause for concern. This is from http://www.sqlite.org/copyright.html """ Contributed Code In order to keep SQLite completely free and unencumbered by copyright, all new contributors to the SQLite code base are asked to dedicate their contributions to the public domain. If you want to send a patch or enhancement for possible inclusion in the SQLite source tree, please accompany the patch with the following statement: The author or authors of this code dedicate any and all copyright interest in this code to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this code under copyright law. We are not able to accept patches or changes to SQLite that are not accompanied by a statement such as the above. In addition, if you make changes or enhancements as an employee, then a simple statement such as the above is insufficient. You must also send by surface mail a copyright release signed by a company officer. A signed original of the copyright release should be mailed to: """Christopher Wright wrote:I too am not a lawyer, but I was under the impression that contributions to Tango are still property of Tango and subject to the global Tango license. Maybe someone should ask a lawyer... there's a good radio phone-a-lawyer guy in my area I could call.Dozens of people have worked on Tango. Tracking who owns the code is nontrivial, as is contacting some of them. It might be impossible to get a license change cleared.I understand that. But my understanding (I am not a lawyer) of copyright law is that a couple of lines of code are not copyrightable. But major contributors to Tango should be reachable.
Aug 14 2008
Lars Ivar Igesund wrote:Tango as a project don't have copyright. It is kept by the individual contributors.wouldn't it be better that Tango as a project would own the copyright for all the code? In case that the project wants to change the license or give someone specific permission to the code base (like Walter asks for) that would be easier to accomplish by the Tango's maintainers. in the current state of affairs you need to contact each contributer and get his personal approval. Linux has the same policy and thus if Linus wants to move from GPLv2 to v3 he can't since he needs approval of all the thousands of contributers to the Linux kernel, some of which are dead. This is why all the GNU code is assigned to the FSF and without your agreement to transfer your copyrights to the FSF they won't accept your code. This is also standard practice in almost all OSS projects (with Linux a notable exception as described above). Of course, the sooner such a move is decided upon the easier it'll be to accomplish. Linux, for example, cannot change the license without talking to the dead or reimplementing parts of the code.
Aug 14 2008
Yigal Chripun wrote:Lars Ivar Igesund wrote:I'm not so sure about that. KDE and Wine atleast isn't copyrighted by their project foundations, but by their contributors, just like Linux.Tango as a project don't have copyright. It is kept by the individual contributors.wouldn't it be better that Tango as a project would own the copyright for all the code? In case that the project wants to change the license or give someone specific permission to the code base (like Walter asks for) that would be easier to accomplish by the Tango's maintainers. in the current state of affairs you need to contact each contributer and get his personal approval. Linux has the same policy and thus if Linus wants to move from GPLv2 to v3 he can't since he needs approval of all the thousands of contributers to the Linux kernel, some of which are dead. This is why all the GNU code is assigned to the FSF and without your agreement to transfer your copyrights to the FSF they won't accept your code. This is also standard practice in almost all OSS projects (with Linux a notable exception as described above).Of course, the sooner such a move is decided upon the easier it'll be to accomplish. Linux, for example, cannot change the license without talking to the dead or reimplementing parts of the code.
Aug 14 2008
Yigal Chripun wrote:Lars Ivar Igesund wrote:At the very least you need some body (foundation, company) for that. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoTango as a project don't have copyright. It is kept by the individual contributors.wouldn't it be better that Tango as a project would own the copyright for all the code?
Aug 14 2008
Lars Ivar Igesund wrote:Yigal Chripun wrote:Of course and I'm sure it's a hassle to create one. but it is better to have such a body in the long term in order to facilitate the growth of the community, I think.Lars Ivar Igesund wrote:At the very least you need some body (foundation, company) for that.Tango as a project don't have copyright. It is kept by the individual contributors.wouldn't it be better that Tango as a project would own the copyright for all the code?
Aug 14 2008
Yigal Chripun wrote:Lars Ivar Igesund wrote:Although the contributors retain copyright to their contributions they still must agree to place their code under the Tango license. This has never been an issue for us in the past, but then no one has ever asked us to change our license before :-)Tango as a project don't have copyright. It is kept by the individual contributors.wouldn't it be better that Tango as a project would own the copyright for all the code? In case that the project wants to change the license or give someone specific permission to the code base (like Walter asks for) that would be easier to accomplish by the Tango's maintainers. in the current state of affairs you need to contact each contributer and get his personal approval.Linux has the same policy and thus if Linus wants to move from GPLv2 to v3 he can't since he needs approval of all the thousands of contributers to the Linux kernel, some of which are dead.It's a good point, though the current Tango license is so loose that I don't foresee us ever needing to change it. All the artistic license requires is basically that the author information not be removed from the source code. That's as close to Public Domain as you can get without actually being Public Domain.Of course, the sooner such a move is decided upon the easier it'll be to accomplish. Linux, for example, cannot change the license without talking to the dead or reimplementing parts of the code.Definitely. Sean
Aug 14 2008
Brad Roberts wrote:On Wed, 13 Aug 2008, Sean Reque wrote:So limited, in fact, that the two Tango members who have not given permission to use their code have never actually touched the runtime. I'm very diligent about the "author" labels in the runtime modules, so this is easy to see. However, the problem is that there is no way to prove this to Walter, and he refuses to even look at Tango without permission from all of us for fear of "taint." Thus the impasse. Given Walter's experience with copyright issues I think his caution is certainly well-founded, but it does make things somewhat difficult if all of the contributors to Tango as a whole either can not or will not make their contributions Public Domain for use by Phobos. To be honest, I would even much rather have stuck with an artistic license at least for my portion, but what can you do. Fortunately, I trust that Walter isn't going to start trying to sell my code to companies and claim it's his own (my only real issue with the Public Domain license to begin with). SeanChris R. Miller Wrote:The number of people that have touched the runtime layer of Tango is very limited. The upper layers are of no concern for this thread.Walter Bright wrote:There could be cause for concern. This is from http://www.sqlite.org/copyright.html """ Contributed Code In order to keep SQLite completely free and unencumbered by copyright, all new contributors to the SQLite code base are asked to dedicate their contributions to the public domain. If you want to send a patch or enhancement for possible inclusion in the SQLite source tree, please accompany the patch with the following statement: The author or authors of this code dedicate any and all copyright interest in this code to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this code under copyright law. We are not able to accept patches or changes to SQLite that are not accompanied by a statement such as the above. In addition, if you make changes or enhancements as an employee, then a simple statement such as the above is insufficient. You must also send by surface mail a copyright release signed by a company officer. A signed original of the copyright release should be mailed to: """Christopher Wright wrote:I too am not a lawyer, but I was under the impression that contributions to Tango are still property of Tango and subject to the global Tango license. Maybe someone should ask a lawyer... there's a good radio phone-a-lawyer guy in my area I could call.Dozens of people have worked on Tango. Tracking who owns the code is nontrivial, as is contacting some of them. It might be impossible to get a license change cleared.I understand that. But my understanding (I am not a lawyer) of copyright law is that a couple of lines of code are not copyrightable. But major contributors to Tango should be reachable.
Aug 14 2008
"Sean Kelly" wroteEh? As far as I know, if you don't put your name on it, you don't own it. If I copyright something by putting a copyright notice on it after I release it, it doesn't magically copyright all the previously released versions that didn't have that copyright notice. *Especially* if there is an existing copyright notice in the file attributed to someone else, and the file is in the project that I am contributing to! This should be a non-issue. How could you ever "prove" this to anyone without videotaping them typing in the code? I respect that certain Tango authors do not want to have their code imported into Phobos, but that should not be a blocker if their code isn't in question. And even if contributors do not want their code in Phobos, too bad so sad. They agreed to license their code under the BSD license, and that means anyone can use the code for any reason as long as the original authors get credit.The number of people that have touched the runtime layer of Tango is very limited. The upper layers are of no concern for this thread.So limited, in fact, that the two Tango members who have not given permission to use their code have never actually touched the runtime. I'm very diligent about the "author" labels in the runtime modules, so this is easy to see. However, the problem is that there is no way to prove this to Walter, and he refuses to even look at Tango without permission from all of us for fear of "taint." Thus the impasse.Given Walter's experience with copyright issues I think his caution is certainly well-founded, but it does make things somewhat difficult if all of the contributors to Tango as a whole either can not or will not make their contributions Public Domain for use by Phobos.I think his caution is a little too overzealous (if this is the reason). The whole point of an open-source license is code reuse. Phobos has an open source license. Tango has an open source license. Where is the conflict? -Steve
Aug 14 2008
Steven Schveighoffer wrote:"Sean Kelly" wroteIn many (most) countries, writing it means you have copyright. Whether you put your name there or not is irrelevant. Some have even stronger protection of the connection between code/work and author. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoEh? As far as I know, if you don't put your name on it, you don't own it.The number of people that have touched the runtime layer of Tango is very limited. The upper layers are of no concern for this thread.So limited, in fact, that the two Tango members who have not given permission to use their code have never actually touched the runtime. I'm very diligent about the "author" labels in the runtime modules, so this is easy to see. However, the problem is that there is no way to prove this to Walter, and he refuses to even look at Tango without permission from all of us for fear of "taint." Thus the impasse.
Aug 14 2008
"Lars Ivar Igesund" wroteSteven Schveighoffer wrote:I would think that only comes into play if someone else publishes the code after stealing it from you. If you release it with someone else's name as the copyright holder, I don't see how you can prove your rights. It shouldn't be hard to prove who contributed what since all the history is in svn. To this end, even if Walter DID get permission from all the Tango devs, this does not preclude the possibility that someone else's code (not even from Tango) was stolen and contributed to Tango. There is no way to be 100% sure, so this whole issue is rather petty to me. But wouldn't it be enough for all the Tango devs (who didn't write the runtime) to put that in a signed statement? I can't see how releasing *all* of Tango in PD (or even the runtime, for that matter, but that's up to the devs of the runtime) makes it any more valid. -Steve"Sean Kelly" wroteIn many (most) countries, writing it means you have copyright. Whether you put your name there or not is irrelevant. Some have even stronger protection of the connection between code/work and author.Eh? As far as I know, if you don't put your name on it, you don't own it.The number of people that have touched the runtime layer of Tango is very limited. The upper layers are of no concern for this thread.So limited, in fact, that the two Tango members who have not given permission to use their code have never actually touched the runtime. I'm very diligent about the "author" labels in the runtime modules, so this is easy to see. However, the problem is that there is no way to prove this to Walter, and he refuses to even look at Tango without permission from all of us for fear of "taint." Thus the impasse.
Aug 14 2008
Steven Schveighoffer wrote:To this end, even if Walter DID get permission from all the Tango devs, this does not preclude the possibility that someone else's code (not even from Tango) was stolen and contributed to Tango. There is no way to be 100% sure, so this whole issue is rather petty to me.That would not be good, but at least I would have taken reasonable steps and that's all that could be expected. In my experience with legal cases, taking reasonable steps carries the day. Frankly, the whole economy would collapse if you could not take a signed statement at face value.But wouldn't it be enough for all the Tango devs (who didn't write the runtime) to put that in a signed statement? I can't see how releasing *all* of Tango in PD (or even the runtime, for that matter, but that's up to the devs of the runtime) makes it any more valid.Sean has emailed me an archive of the code that he owns the rights to. I believe this is probably sufficient to get compatibility, in which case that is plenty good enough.
Aug 14 2008
Walter Bright Wrote:Sean has emailed me an archive of the code that he owns the rights to. I believe this is probably sufficient to get compatibility, in which case that is plenty good enough.I'd hate for this thread to end with an apparent resolution only to flair up after another year of no progress. What are the next steps? I assume it'll take a few months to fully integrate the two code bases, but we should be able to know sooner than that if what Sean sent you want enough to integrate the runtimes or not. I assume that the risk of legal taint will prevent you from doing a combined release of dmd v1.x, common runtime, phobos, and tango? Even without that, I assume releasing Tango with the dmd compiler may hamper the overall release process. Even so, once there's a common runtime, it'd be nice if we could have a combined releases of dmd+phobos+tango. If a community member provided a combo release (probably following a Tango release), would you put it up as a downloadable item on the digital mars site?
Aug 15 2008
Jason House wrote:Walter Bright Wrote:The Tango team has provided such a release for quite a while now. It's the binary release with Tangobos bundled, and includes the latest DMD, Tango, and Phobos (as Tangobos) all in a single package. We could even produce a nightly binary snapshot bundle if anyone cared... right now we're just producing a plain old Tango binary snapshot. SeanSean has emailed me an archive of the code that he owns the rights to. I believe this is probably sufficient to get compatibility, in which case that is plenty good enough.I'd hate for this thread to end with an apparent resolution only to flair up after another year of no progress. What are the next steps? I assume it'll take a few months to fully integrate the two code bases, but we should be able to know sooner than that if what Sean sent you want enough to integrate the runtimes or not. I assume that the risk of legal taint will prevent you from doing a combined release of dmd v1.x, common runtime, phobos, and tango? Even without that, I assume releasing Tango with the dmd compiler may hamper the overall release process. Even so, once there's a common runtime, it'd be nice if we could have a combined releases of dmd+phobos+tango. If a community member provided a combo release (probably following a Tango release), would you put it up as a downloadable item on the digital mars site?
Aug 15 2008
Jason House wrote:Walter Bright Wrote:There are other compilers than DMD, so I (as the current Tango release manager) see no practical way to coordinate releases of Tango and DMD. Tango bundles latest stable DMD when it is released, and if Tango is ever bundled with DMD, I would assume that to work in the same manner. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoSean has emailed me an archive of the code that he owns the rights to. I believe this is probably sufficient to get compatibility, in which case that is plenty good enough.I'd hate for this thread to end with an apparent resolution only to flair up after another year of no progress. What are the next steps? I assume it'll take a few months to fully integrate the two code bases, but we should be able to know sooner than that if what Sean sent you want enough to integrate the runtimes or not. I assume that the risk of legal taint will prevent you from doing a combined release of dmd v1.x, common runtime, phobos, and tango? Even without that, I assume releasing Tango with the dmd compiler may hamper the overall release process. Even so, once there's a common runtime, it'd be nice if we could have a combined releases of dmd+phobos+tango. If a community member provided a combo release (probably following a Tango release), would you put it up as a downloadable item on the digital mars site?
Aug 15 2008
Lars Ivar Igesund Wrote:Jason House wrote:DMD.Even so, once there's a common runtime, it'd be nice if we could have a combined releases of dmd+phobos+tango. If a community member provided a combo release (probably following a Tango release), would you put it up as a downloadable item on the digital mars site?There are other compilers than DMD, so I (as the current Tango release manager) see no practical way to coordinate releases of Tango andTango bundles latest stable DMD when it is released, and if Tango is ever bundled with DMD, I would assume that to work in the same manner.Yes, that's the way it is now, and it's not something I really expect to change except that the non-runtime phobos pieces would be left in. The key question hidden in my last paragraph is if Walter would treat the Tango bundles as a first-class release of dmd. That means including it for one-click download from the download page with appropriate markings. Maybe using the combined Tango release as the beta version and dmd+phobos as the alpha version? I'm not too sure, but I'd really love to see a commitment to a unified D standard library (even if it bleeding edge releases miss some parts of the standard library)
Aug 15 2008
Jason House wrote:The key question hidden in my last paragraph is if Walter would treat the Tango bundles as a first-class release of dmd. That means including it for one-click download from the download page with appropriate markings. Maybe using the combined Tango release as the beta version and dmd+phobos as the alpha version? I'm not too sure, but I'd really love to see a commitment to a unified D standard library (even if it bleeding edge releases miss some parts of the standard library)At the moment what we are planning to do with the runtime drop Sean provided us is to move towards core api compatibility. It's a good first step.
Aug 15 2008
Christopher Wright wrote:lurker wrote:Tango is actually dual licensed under both the BSD and an artistic license. We had actually considered a public domain license before Tango was announced until it was pointed out (by Thomas Kuehne, I believe) that copyright laws in some countries don't allow public domain as an option and treat such code as if the owner had not licensed it at all. Then we considered the ZLib license because it doesn't require attribution like the BSD license, but there were objections for this being a nonstandard license. So we finally settled on a dual BSD and artistic license to allow Tango to be the most broadly usable. To address the second issue, I think the only practical solution is for Phobos to run on top of the Tango runtime, quite similar to the Tango / Tangobos bundle we already provide. But this is simply my opinion. SeanHullo, Thats not happening now or recently. The ball its been rotting in Tango's court for one year plus. This is huge. I might need a couple days to process this information. Naming names is scary but, ..... is Walter saying Kris and Lars "MI Is Evil" Igesund deliberately prevented unification progress? One thing for sure. assert(cat !in bag); -LurkerDozens of people have worked on Tango. Tracking who owns the code is nontrivial, as is contacting some of them. It might be impossible to get a license change cleared. Of course, if Walter replaced the Phobos runtime entirely with Tango's, that might not be an issue. But it would involve using the BSD license for those parts.
Aug 14 2008
Sean Kelly wrote:Christopher Wright wrote:Academic, not artistic ;) -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the Tangolurker wrote:Tango is actually dual licensed under both the BSD and an artistic license. We had actually considered a public domain license before Tango was announced until it was pointed out (by Thomas Kuehne, I believe) that copyright laws in some countries don't allow public domain as an option and treat such code as if the owner had not licensed it at all. Then we considered the ZLib license because it doesn't require attribution like the BSD license, but there were objections for this being a nonstandard license. So we finally settled on a dual BSD and artistic license to allow Tango to be the most broadly usable.Hullo, Thats not happening now or recently. The ball its been rotting in Tango's court for one year plus. This is huge. I might need a couple days to process this information. Naming names is scary but, ..... is Walter saying Kris and Lars "MI Is Evil" Igesund deliberately prevented unification progress? One thing for sure. assert(cat !in bag); -LurkerDozens of people have worked on Tango. Tracking who owns the code is nontrivial, as is contacting some of them. It might be impossible to get a license change cleared. Of course, if Walter replaced the Phobos runtime entirely with Tango's, that might not be an issue. But it would involve using the BSD license for those parts.
Aug 14 2008
== Quote from Lars Ivar Igesund (larsivar igesund.net)'s articleSean Kelly wrote:Whatever, the difference is academic ;-) (I am on a roll with the bad jokes lately) SeanChristopher Wright wrote:Academic, not artistic ;)lurker wrote:Tango is actually dual licensed under both the BSD and an artistic license. We had actually considered a public domain license before Tango was announced until it was pointed out (by Thomas Kuehne, I believe) that copyright laws in some countries don't allow public domain as an option and treat such code as if the owner had not licensed it at all. Then we considered the ZLib license because it doesn't require attribution like the BSD license, but there were objections for this being a nonstandard license. So we finally settled on a dual BSD and artistic license to allow Tango to be the most broadly usable.Hullo, Thats not happening now or recently. The ball its been rotting in Tango's court for one year plus. This is huge. I might need a couple days to process this information. Naming names is scary but, ..... is Walter saying Kris and Lars "MI Is Evil" Igesund deliberately prevented unification progress? One thing for sure. assert(cat !in bag); -LurkerDozens of people have worked on Tango. Tracking who owns the code is nontrivial, as is contacting some of them. It might be impossible to get a license change cleared. Of course, if Walter replaced the Phobos runtime entirely with Tango's, that might not be an issue. But it would involve using the BSD license for those parts.
Aug 14 2008
Walter Bright Wrote:Paul D. Anderson wrote:I prefer a looser tongue as long as it remains polite. (I consider your posts in this thread to be polite)But what I would really like to see (and I don't think it's asking too much) is a clear statement from Walter that he will indeed make the changes the Tango developers are asking for at some future date.In order for this to happen, I need a clear and unambiguous statement from the Tango developers that Phobos can incorporate parts of the Tango runtime and place them under the Phobos license. I have already provided a reciprocal license to Tango. I've asked for that for over a year, and so far only Sean and Don have done so. Such an agreement is necessary for the following reasons: 1. To ensure Phobos is free of any legal taint and any accusations of stealing code. 2. To avoid the untenable issue of a single module in Phobos having different license for different lines of code. I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)
Aug 13 2008
Walter Bright wrote:Paul D. Anderson wrote:And we have on equally many occasions told you that the code you need is available. :) -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoBut what I would really like to see (and I don't think it's asking too much) is a clear statement from Walter that he will indeed make the changes the Tango developers are asking for at some future date.In order for this to happen, I need a clear and unambiguous statement from the Tango developers that Phobos can incorporate parts of the Tango runtime and place them under the Phobos license. I have already provided a reciprocal license to Tango. I've asked for that for over a year, and so far only Sean and Don have done so. Such an agreement is necessary for the following reasons: 1. To ensure Phobos is free of any legal taint and any accusations of stealing code. 2. To avoid the untenable issue of a single module in Phobos having different license for different lines of code. I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)
Aug 14 2008
Lars Ivar Igesund wrote:Walter Bright wrote:As a peripheral observer I see this partly as a communication problem, which does not put blame on one side or the other (have neither the intention nor the information nor the position to do so) but this doesn't make the problem less serious, quite to the contrary. Primarily I understand Walter. In his position I would really hate to be confronted with individual code contributor's notions, so that the license problem can't be solved for all the affected code and once for all, with a calculable (not a linear) effort. Assuming to understand Walter's character a little, I would think that there are principles of efficiency involved, that are also at the basis of D'S language design that we appreciate, that are not negotiable. HelmutI have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)
Aug 14 2008
Lars Ivar Igesund wrote:Walter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit. I've dealt with lawyers many times, and spelling it out directly and explicitly avoids a lot of future potential problems. Furthermore, if Phobos has a wishy-washy legal pedigree, corporate lawyers will not buy off on allowing D to be used in their companies. This issue must be settled in advance of looking at Tango, not after the fact.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)
Aug 14 2008
Walter Bright wrote:Lars Ivar Igesund wrote:No, this is not correct. Neither me nor Kris (who have been the ones involved) have any sort of copyright on the runtime. Sean have, and he has given you this explicit agreemeent. As asserted elsewhere, and by others, the copyrights on the rest of Tango not pertaining to the runtime, is not of relevance. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoWalter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)
Aug 14 2008
Lars Ivar Igesund Wrote:Walter Bright wrote:cut the oxpoop. `is not of relevance' afforded you to say brad and walter are stealing code from tango. walter is effing right to be pissed. if anyone told me that i'd bury their effing nose in their face. why have you been stalling for a year, lars? time to come clean.Lars Ivar Igesund wrote:No, this is not correct. Neither me nor Kris (who have been the ones involved) have any sort of copyright on the runtime. Sean have, and he has given you this explicit agreemeent. As asserted elsewhere, and by others, the copyrights on the rest of Tango not pertaining to the runtime, is not of relevance.Walter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)
Aug 14 2008
"Lars Ivar Igesund" <larsivar igesund.net> wrote in message news:g813qj$amf$2 digitalmars.com...Walter Bright wrote:Slightly OT, and directed at this whole situation: I just sit back and laugh. *This* is open-source software? *This* is the supposed "freedom" and "openness" that the whole movement is about? People bickering for a _year_ over minutiae of licenses which are supposed to promote free use? What have we accomplished?Lars Ivar Igesund wrote:No, this is not correct. Neither me nor Kris (who have been the ones involved) have any sort of copyright on the runtime. Sean have, and he has given you this explicit agreemeent. As asserted elsewhere, and by others, the copyrights on the rest of Tango not pertaining to the runtime, is not of relevance.Walter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)
Aug 14 2008
Jarrett Billingsley wrote:Slightly OT, and directed at this whole situation: I just sit back and laugh. *This* is open-source software? *This* is the supposed "freedom" and "openness" that the whole movement is about? People bickering for a _year_ over minutiae of licenses which are supposed to promote free use? What have we accomplished?Someone once told me that the place with the most politics is academia. the professors have so little decision power that they argue (intensely) about the smallest and stupidest of things. I guess you can say the same thing here: all the code is "open" and therefore everyone argues about the smallest details left to argue about like who's name is written on the copyright (and in what order) and stuff like that. besides, how can a person steal free code?! the problem with OSS is that it's free. if it where closed than it would be a matter of the amount of money which can be negotiated and agree upon. OSS is free therefore the only thing that matters is one's pride and that cannot be negotiated. In this Specific case: Walter needs his name on all the Phobos code and he stated his valid reasons for it. Tango developers want their names on the Tango code and rightly so, since they wrote it. in case of a merger of those two code bases you get one joint code base but *two* teams that want their name on the code. someone has to be first. all I can say is that I hope this gets resolved soon for the benefit of everyone here.
Aug 14 2008
Yigal Chripun Wrote:Jarrett Billingsley wrote:I do not know any thing about this. I am sorry if this does not help. I have algorithm.d open in my editor. I see this * Copyright (C) 2004-2006 by Digital Mars, www.digitalmars.com * Written by Andrei Alexandrescu, www.erdani.org Maybe it is because Andrei works for Digital Mars also? I do not know. What I see is Walter name is not in this file at all. If this is mistake please ignore. Thank you, Dee GirlSlightly OT, and directed at this whole situation: I just sit back and laugh. *This* is open-source software? *This* is the supposed "freedom" and "openness" that the whole movement is about? People bickering for a _year_ over minutiae of licenses which are supposed to promote free use? What have we accomplished?Someone once told me that the place with the most politics is academia. the professors have so little decision power that they argue (intensely) about the smallest and stupidest of things. I guess you can say the same thing here: all the code is "open" and therefore everyone argues about the smallest details left to argue about like who's name is written on the copyright (and in what order) and stuff like that. besides, how can a person steal free code?! the problem with OSS is that it's free. if it where closed than it would be a matter of the amount of money which can be negotiated and agree upon. OSS is free therefore the only thing that matters is one's pride and that cannot be negotiated. In this Specific case: Walter needs his name on all the Phobos code and he stated his valid reasons for it. Tango developers want their names on the Tango code and rightly so, since they wrote it. in case of a merger of those two code bases you get one joint code base but *two* teams that want their name on the code. someone has to be first. all I can say is that I hope this gets resolved soon for the benefit of everyone here.
Aug 14 2008
Yigal Chripun Wrote:Jarrett Billingsley wrote:intercourse yeah. applies to any place with low stakes. the lower the stakes the weirder the contest. when i worked for intel i visited their facilities in india. long story. so there's these two young brothers heading the office in b'lore. i got to hang out with them for a while. they were first generation in their family to ever wear shoes and prolly their kids would be the first generation to not shit in the street. and they was rich by indian std. now each dood drove a mercedes from intel as a work perk. they didn't own the cars. that's how it works there. identical so far as i could tell. and after a month on indian roads all cars look the same. but i digress. so i get them a bit drunk (easy but i digress again) and their insecurities come fore. guess what was their problem. one said his merc is longer than his brothers'. the morons really start to quarrel. finally they get to the parking lot and start drawing signs in the dirt and measure stuff. i kid you not. one actually does win by 3cm. must've been diff in the bumper n mask paraphernalia. the other's pissed. it was priceless. i should've shot the whole thing on tape.Slightly OT, and directed at this whole situation: I just sit back and laugh. *This* is open-source software? *This* is the supposed "freedom" and "openness" that the whole movement is about? People bickering for a _year_ over minutiae of licenses which are supposed to promote free use? What have we accomplished?Someone once told me that the place with the most politics is academia. the professors have so little decision power that they argue (intensely) about the smallest and stupidest of things. I guess you can say the same thing here: all the code is "open" and therefore everyone argues about the smallest details left to argue about like who's name is written on the copyright (and in what order) and stuff like that. besides, how can a person steal free code?!the problem with OSS is that it's free. if it where closed than it would be a matter of the amount of money which can be negotiated and agree upon. OSS is free therefore the only thing that matters is one's pride and that cannot be negotiated. In this Specific case: Walter needs his name on all the Phobos code and he stated his valid reasons for it. Tango developers want their names on the Tango code and rightly so, since they wrote it. in case of a merger of those two code bases you get one joint code base but *two* teams that want their name on the code. someone has to be first. all I can say is that I hope this gets resolved soon for the benefit of everyone here.still tryin' to figure what interests are at play here. who cares about what? and who wants what? no idea. not holding my breath on resolving. they've been at it for a year.
Aug 14 2008
Yigal Chripun Wrote:Jarrett Billingsley wrote:If I understand correctly, this is an issue not for political reasons, but for legal and economic ones. Digital Mars as a company has to convince the corporate world that they can use the D tools offered without any legal ramifications. I do not see where pride is involved at all, at least on Walter's side. He said he has already given the Tango developers license to use re-license (Phobos?) code how they see fit, and is waiting for the same permission in return. Sean RequeSlightly OT, and directed at this whole situation: I just sit back and laugh. *This* is open-source software? *This* is the supposed "freedom" and "openness" that the whole movement is about? People bickering for a _year_ over minutiae of licenses which are supposed to promote free use? What have we accomplished?Someone once told me that the place with the most politics is academia. the professors have so little decision power that they argue (intensely) about the smallest and stupidest of things. I guess you can say the same thing here: all the code is "open" and therefore everyone argues about the smallest details left to argue about like who's name is written on the copyright (and in what order) and stuff like that. besides, how can a person steal free code?! the problem with OSS is that it's free. if it where closed than it would be a matter of the amount of money which can be negotiated and agree upon. OSS is free therefore the only thing that matters is one's pride and that cannot be negotiated. In this Specific case: Walter needs his name on all the Phobos code and he stated his valid reasons for it. Tango developers want their names on the Tango code and rightly so, since they wrote it. in case of a merger of those two code bases you get one joint code base but *two* teams that want their name on the code. someone has to be first. all I can say is that I hope this gets resolved soon for the benefit of everyone here.
Aug 14 2008
"Sean Reque" wroteYigal Chripun Wrote:I don't know the details of the license that Walter gave to the Tango devs, but according to Phobos' license, no explicit permission is needed as long as you obey the license terms (which is pretty free in its terms), and in fact, Tango has the Phobos license in the runtime anyways, and obeys the license that ships with Phobos. So I don't see how it is relevant that Walter gave a specific license to Tango, it was not required (at least that's my understanding). It should be the same thing for Walter to accept Tango's modified version of the runtime (just include a copy of Tango's license). My understanding is that Walter is against doing that for the purpose of avoiding having 2 licenses in phobos. Both licenses are very similar, and completely compatible. I see that Walter doesn't like it, but I don't see why it is a problem? Perhaps you could elaborate more, Walter. Also, I would like to know specifically what Walter needs from the Tango team. What could it be that he needs that the Tango team is against? -SteveJarrett Billingsley wrote:If I understand correctly, this is an issue not for political reasons, but for legal and economic ones. Digital Mars as a company has to convince the corporate world that they can use the D tools offered without any legal ramifications. I do not see where pride is involved at all, at least on Walter's side. He said he has already given the Tango developers license to use re-license (Phobos?) code how they see fit, and is waiting for the same permission in return.Slightly OT, and directed at this whole situation: I just sit back and laugh. *This* is open-source software? *This* is the supposed "freedom" and "openness" that the whole movement is about? People bickering for a _year_ over minutiae of licenses which are supposed to promote free use? What have we accomplished?Someone once told me that the place with the most politics is academia. the professors have so little decision power that they argue (intensely) about the smallest and stupidest of things. I guess you can say the same thing here: all the code is "open" and therefore everyone argues about the smallest details left to argue about like who's name is written on the copyright (and in what order) and stuff like that. besides, how can a person steal free code?! the problem with OSS is that it's free. if it where closed than it would be a matter of the amount of money which can be negotiated and agree upon. OSS is free therefore the only thing that matters is one's pride and that cannot be negotiated. In this Specific case: Walter needs his name on all the Phobos code and he stated his valid reasons for it. Tango developers want their names on the Tango code and rightly so, since they wrote it. in case of a merger of those two code bases you get one joint code base but *two* teams that want their name on the code. someone has to be first. all I can say is that I hope this gets resolved soon for the benefit of everyone here.
Aug 14 2008
Steven Schveighoffer wrote:"Sean Reque" wroteWalter has been updating to the PD license in modules when has has some reason to modify them for code changes, so many modules retained a BSD license until recently (in fact, I think some still may). One of the first things I did with Tango was to try and normalize the license documentation in the runtime to make things easier to deal with. Fortunately, since Tango is dual licensed under BSD it was easy enough to use a common license for everything and make sure that Walter was listed as the copyright owner. I don't actually recall offhand if the modules are still BSD only or dual-licensed, but since Walter has given us rights to the code I suppose it no longer matters--with it, the artistic license should no longer conflict with any lingering BSD license requirements in Phobos. SeanYigal Chripun Wrote:I don't know the details of the license that Walter gave to the Tango devs, but according to Phobos' license, no explicit permission is needed as long as you obey the license terms (which is pretty free in its terms)Jarrett Billingsley wrote:If I understand correctly, this is an issue not for political reasons, but for legal and economic ones. Digital Mars as a company has to convince the corporate world that they can use the D tools offered without any legal ramifications. I do not see where pride is involved at all, at least on Walter's side. He said he has already given the Tango developers license to use re-license (Phobos?) code how they see fit, and is waiting for the same permission in return.Slightly OT, and directed at this whole situation: I just sit back and laugh. *This* is open-source software? *This* is the supposed "freedom" and "openness" that the whole movement is about? People bickering for a _year_ over minutiae of licenses which are supposed to promote free use? What have we accomplished?Someone once told me that the place with the most politics is academia. the professors have so little decision power that they argue (intensely) about the smallest and stupidest of things. I guess you can say the same thing here: all the code is "open" and therefore everyone argues about the smallest details left to argue about like who's name is written on the copyright (and in what order) and stuff like that. besides, how can a person steal free code?! the problem with OSS is that it's free. if it where closed than it would be a matter of the amount of money which can be negotiated and agree upon. OSS is free therefore the only thing that matters is one's pride and that cannot be negotiated. In this Specific case: Walter needs his name on all the Phobos code and he stated his valid reasons for it. Tango developers want their names on the Tango code and rightly so, since they wrote it. in case of a merger of those two code bases you get one joint code base but *two* teams that want their name on the code. someone has to be first. all I can say is that I hope this gets resolved soon for the benefit of everyone here.
Aug 14 2008
Steven Schveighoffer wrote:I don't know the details of the license that Walter gave to the Tango devs,It's as I posted here. Tango may use any part of Phobos and *relicense* it under the Tango license that I have the power to do.but according to Phobos' license, no explicit permission is needed as long as you obey the license terms (which is pretty free in its terms), and in fact, Tango has the Phobos license in the runtime anyways, and obeys the license that ships with Phobos. So I don't see how it is relevant that Walter gave a specific license to Tango, it was not required (at least that's my understanding). It should be the same thing for Walter to accept Tango's modified version of the runtime (just include a copy of Tango's license). My understanding is that Walter is against doing that for the purpose of avoiding having 2 licenses in phobos. Both licenses are very similar, and completely compatible. I see that Walter doesn't like it, but I don't see why it is a problem? Perhaps you could elaborate more, Walter.I don't know what more needs to be elaborated. There are two reasons for this: 1. To ensure Phobos is free of any legal taint and any accusations of stealing code. 2. To avoid the untenable issue of a single module in Phobos having different license for different lines of code.Also, I would like to know specifically what Walter needs from the Tango team. What could it be that he needs that the Tango team is against?What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license. I have already provided a reciprocal agreement for the Tango team to use Phobos.
Aug 14 2008
"Walter Bright" wroteSteven Schveighoffer wrote:Easy. Don't say you wrote the Tango portions :) Both Tango and Phobos are well established, it is not like you are starting from scratch, and especially, both are maintained in SVN on a third-party site, so it is easy to see who wrote what when. I think you need to give a little on this...I don't know the details of the license that Walter gave to the Tango devs,It's as I posted here. Tango may use any part of Phobos and *relicense* it under the Tango license that I have the power to do.but according to Phobos' license, no explicit permission is needed as long as you obey the license terms (which is pretty free in its terms), and in fact, Tango has the Phobos license in the runtime anyways, and obeys the license that ships with Phobos. So I don't see how it is relevant that Walter gave a specific license to Tango, it was not required (at least that's my understanding). It should be the same thing for Walter to accept Tango's modified version of the runtime (just include a copy of Tango's license). My understanding is that Walter is against doing that for the purpose of avoiding having 2 licenses in phobos. Both licenses are very similar, and completely compatible. I see that Walter doesn't like it, but I don't see why it is a problem? Perhaps you could elaborate more, Walter.I don't know what more needs to be elaborated. There are two reasons for this: 1. To ensure Phobos is free of any legal taint and any accusations of stealing code.2. To avoid the untenable issue of a single module in Phobos having different license for different lines of code.Different *lines* of code? There is no reason to do that. Keep the license per module. If you make changes in a module that was licensed under Tango only, leave the license there. From my understanding, any code that Tango used from Phobos still has the original license that Phobos provided. I don't see a problem with that model.What is wrong with giving you permission to go over a given list of files that are specifically owned by people who don't mind you using their code? This should be adequate for creating a common core, as the core modules are well separated from the user portions. And why must they be relicensed? I don't really understand that part (but from Sean's messages, it looks like you already have that permission). What if someone gathered all the appropriate files together in a single package, and had the Tango developers sign off that Sean was the sole owner of the files in that package? Would that be enough?Also, I would like to know specifically what Walter needs from the Tango team. What could it be that he needs that the Tango team is against?What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.I have already provided a reciprocal agreement for the Tango team to use Phobos.Again, if this is the case, it was not used, because all of the Phobos-originated code (that I looked at anyways) still is licensed under the Phobos license. -Steve
Aug 14 2008
Steven Schveighoffer wrote:"Walter Bright" wroteI believe the issue is fear of "taint." In short, if Walter so much as glances at a module and it turns out that one of the authors isn't someone who has licensed his code to Walter then he could later accuse Walter of violating his copyright simply because something in Walters code looked vaguely similar. It's why Walter has never looked at GDC, for example, since he is in the business of writing compilers. Personally, I think copyright law is utterly ridiculous, but what can you do.Steven Schveighoffer wrote:What is wrong with giving you permission to go over a given list of files that are specifically owned by people who don't mind you using their code? This should be adequate for creating a common core, as the core modules are well separated from the user portions. And why must they be relicensed? I don't really understand that part (but from Sean's messages, it looks like you already have that permission).Also, I would like to know specifically what Walter needs from the Tango team. What could it be that he needs that the Tango team is against?What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.What if someone gathered all the appropriate files together in a single package, and had the Tango developers sign off that Sean was the sole owner of the files in that package? Would that be enough?I actually send Walter a bundled copy of the Tango runtime years ago for just this reason, and didn't realize that Walter had never looked at it until probably a year later when Walter said he'd never looked at Tango at all. Sean
Aug 14 2008
"Sean Kelly" wroteSteven Schveighoffer wrote:Copyright law is not that rediculous (aside from the US DMCA). Looking at code and then writing something that uses the same ideas as the code is not a copyright violation. Possibly a patent violation, but that is only if your country has software patents (which, sadly, mine does), and you are not protected from patent infringements even if you *don't* look at the code. You don't copyright the ideas, you copyright the literal text of the code itself (and the exact bytes of the binary). But in this instance, you WANT the code to be identical because you want it to be compatible. Yet there should be no issue because the code is open source. Many many companies use open source software and have no problems because they attribute credit where credit is due. This should be no different. Not looking at the Tango runtime source because some random contributor who has nothing to do with Tango's runtime might try to sue Walter (for what, I can't imagine), is sort of like not ever trying to walk for fear you might fall down and break an arm. I think, after reading all this stuff, that Tango has minimalized the risk to a very tiny reasonable level, and it is up to Walter to take the steps to actually make the change possible. The only further right that Walter gains with having Tango code in the public domain is to claim credit for their work. So I tend to agree with those who don't want their code released as PD. -Steve"Walter Bright" wroteI believe the issue is fear of "taint." In short, if Walter so much as glances at a module and it turns out that one of the authors isn't someone who has licensed his code to Walter then he could later accuse Walter of violating his copyright simply because something in Walters code looked vaguely similar. It's why Walter has never looked at GDC, for example, since he is in the business of writing compilers. Personally, I think copyright law is utterly ridiculous, but what can you do.Steven Schveighoffer wrote:What is wrong with giving you permission to go over a given list of files that are specifically owned by people who don't mind you using their code? This should be adequate for creating a common core, as the core modules are well separated from the user portions. And why must they be relicensed? I don't really understand that part (but from Sean's messages, it looks like you already have that permission).Also, I would like to know specifically what Walter needs from the Tango team. What could it be that he needs that the Tango team is against?What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.
Aug 14 2008
== Quote from Steven Schveighoffer (schveiguy yahoo.com)'s article"Sean Kelly" wroteFor what it's worth, if having compatible runtimes is the only issue then I do maintain a "standard" of sorts that outlines the public interfaces the runtime libraries must provide: http://dsource.org/projects/tango/wiki/LibraryIntegrationGuide I've mentioned this to Walter et al. in the past, but no one seemed interested. Can't say I understand the reasoning, but what can you do. SeanSteven Schveighoffer wrote:Copyright law is not that rediculous (aside from the US DMCA). Looking at code and then writing something that uses the same ideas as the code is not a copyright violation. Possibly a patent violation, but that is only if your country has software patents (which, sadly, mine does), and you are not protected from patent infringements even if you *don't* look at the code. You don't copyright the ideas, you copyright the literal text of the code itself (and the exact bytes of the binary). But in this instance, you WANT the code to be identical because you want it to be compatible. Yet there should be no issue because the code is open source. Many many companies use open source software and have no problems because they attribute credit where credit is due. This should be no different. Not looking at the Tango runtime source because some random contributor who has nothing to do with Tango's runtime might try to sue Walter (for what, I can't imagine), is sort of like not ever trying to walk for fear you might fall down and break an arm. I think, after reading all this stuff, that Tango has minimalized the risk to a very tiny reasonable level, and it is up to Walter to take the steps to actually make the change possible. The only further right that Walter gains with having Tango code in the public domain is to claim credit for their work. So I tend to agree with those who don't want their code released as PD."Walter Bright" wroteI believe the issue is fear of "taint." In short, if Walter so much as glances at a module and it turns out that one of the authors isn't someone who has licensed his code to Walter then he could later accuse Walter of violating his copyright simply because something in Walters code looked vaguely similar. It's why Walter has never looked at GDC, for example, since he is in the business of writing compilers. Personally, I think copyright law is utterly ridiculous, but what can you do.Steven Schveighoffer wrote:What is wrong with giving you permission to go over a given list of files that are specifically owned by people who don't mind you using their code? This should be adequate for creating a common core, as the core modules are well separated from the user portions. And why must they be relicensed? I don't really understand that part (but from Sean's messages, it looks like you already have that permission).Also, I would like to know specifically what Walter needs from the Tango team. What could it be that he needs that the Tango team is against?What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.
Aug 14 2008
Steven Schveighoffer wrote:Copyright law is not that rediculous (aside from the US DMCA).US DMCA is not only ridiculous but also illegal since it violates the US constitution. Sadly, I don't see any public outcry against this and other laws like eavesdropping without a court order and other violations of basic rights as written in the constitution. Should I care for this really sad situation in which "the greatest democracy" is in? unfortunately the answer is yes because the US government influences and puts pressure on other countries to adjust to their view and thus indirectly influences our local laws. This is evident in the raid on the pirate bay's servers which was illegal according to local law and was done due to pressure from the US administration. our local copyright law was recently changed to be more like the US one, due to similar reasons.
Aug 14 2008
Yigal Chripun Wrote:Steven Schveighoffer wrote: > Copyright law is not that rediculous (aside from the US DMCA). US DMCA is not only ridiculous but also illegal since it violates the US constitution. Sadly, I don't see any public outcry against this and other laws like eavesdropping without a court order and other violations of basic rights as written in the constitution. Should I care for this really sad situation in which "the greatest democracy" is in? unfortunately the answer is yes because the US government influences and puts pressure on other countries to adjust to their view and thus indirectly influences our local laws. This is evident in the raid on the pirate bay's servers which was illegal according to local law and was done due to pressure from the US administration. our local copyright law was recently changed to be more like the US one, due to similar reasons.I've had very mixed feelings about all this. One one hand, the letter of the law may be questionably constitutional. But millions of dollars every day are lost because people (including myself occasionally...) steal copyrighted material. Honestly, I think there should be much stricter penalties for things like internet piracy, because it's simply so widespread and damaging.
Aug 14 2008
Robert Fraser wrote:I've had very mixed feelings about all this. One one hand, the letterof thelaw may be questionably constitutional. But millions of dollars every day are lost because people (including myself occasionally...) steal copyrighted material. Honestly, I think there should be much stricter penalties for things like internet piracy, because it's simply so widespread and damaging.Of course you have the right to have your own opinion (that's also in the constitution) but all of the above is bullshit. (sorry for the language). stealing only applies to physical things like chairs and cars. that whole metaphor of information as physical entities is wrong. you sure can infringe someone's copyrights but you cannot steal anything since there's nothing to steal. Now that we cleared that out of the way, let's touch other nonsenses in what you wrote: A) "millions of dollars every day are lost..." - Not true. you assume that if a person doesn't pirate he would have payed for the stuff. this is a wrong assumption since the majority of people would just use other alternatives. if I wouldn't be able to pirate MS office I'd probably search for a cheap commercial solution or install Open Office which is good enough for me and most other private people and small companies. no one in their right mind would pay 500$ for an office suit. think globally: in US standards paying for software is not that expensive and is convenient (and you pay for that as well) but for most of the world those prices are high. in Israel 500$ translates to roughly 2000 NIS which is a lot. B)"it's simply so ... damaging" - not so. If you look at music and films than the image is backwards: since it's easy to pirate I can download a lot of stuff try it out and only keep what I like. If I like it I'll tell friends and more people will be exposed to the content. pirating actually makes money for the copyright holder and helps him get recognized since it's advertising they don't need to pay for. If what you said was true than Red Hat and Novel wouldn't lasted more than a day. after all you can legally download their products from their respective websites! The issue is not whether piracy is moral or not. it's a fact of life - the internet provides an efficient means for distribution of information. either you take advantage of it or you insist on your old irrelevant business model and go extinct. business 101 - "The customer is always right." the moment they (RIAA, MPAA, etc..) broke that rule because they refused to evolve with respect to new technology and business models is the moment they signed their death warrants. I prefer supporting music artists by going to a concert and paying 100$ for a ticket rather than paying for CDs with shitty music the records companies advertise and try to stick in my throat. one last thing, before suggesting more penalties and such please read the following: http://www.gnu.org/philosophy/right-to-read.html *after* reading this, are you sure still that this is the way to go?
Aug 14 2008
Yigal Chripun Wrote:Robert Fraser wrote: > I've had very mixed feelings about all this. One one hand, the letter of theSome philosopher said that all philosophical debates were inherently linguistic ones that stemmed from not having the words to represent the concepts being spoken about. We're using different definitions of "steal," but the concept is clear -- it's taking something you don't have the right to have taken without paying for, and the debate is over whether you do or should have that right.law may be questionably constitutional. But millions of dollars every day are lost because people (including myself occasionally...) steal copyrighted material. Honestly, I think there should be much stricter penalties for things like internet piracy, because it's simply so widespread and damaging.Of course you have the right to have your own opinion (that's also in the constitution) but all of the above is bullshit. (sorry for the language). stealing only applies to physical things like chairs and cars. that whole metaphor of information as physical entities is wrong. you sure can infringe someone's copyrights but you cannot steal anything since there's nothing to steal.Now that we cleared that out of the way, let's touch other nonsenses in what you wrote: A) "millions of dollars every day are lost..." - Not true. you assume that if a person doesn't pirate he would have payed for the stuff. this is a wrong assumption since the majority of people would just use other alternatives.Sure not everyone would have paid. But at least one person would have paid. Back in high school, I would have paid for a lot of the music I downloaded (perhaps not all of it) -- but I didn't since it was so easy for me to pirate it. The statement is that piracy costs at least $1 million/day in LOST SALES; if you would have used a free alternative, that's not factored into the argument.if I wouldn't be able to pirate MS officeMah paycheck!!! (that's paying me to post on D NGs...)I'd probably search for a cheap commercial solution or install Open Office which is good enough for me and most other private people and small companies. no one in their right mind would pay 500$ for an office suit. think globally: in US standards paying for software is not that expensive and is convenient (and you pay for that as well) but for most of the world those prices are high. in Israel 500$ translates to roughly 2000 NIS which is a lot. B)"it's simply so ... damaging" - not so. If you look at music and films than the image is backwards: since it's easy to pirate I can download a lot of stuff try it out and only keep what I like. If I like it I'll tell friends and more people will be exposed to the content. pirating actually makes money for the copyright holder and helps him get recognized since it's advertising they don't need to pay for.I'm going to cry bull**** here. Quite a few sites offer legit free music/ video. The content creators/producers have made this available for precisely the reason you said -- so people view it and tell their friends or choose to buy higher-quality versions of it. The stuff they DON'T make available for free is not there because it is more profitable for them not to make it available. The creators/producers choose what to share for free -- NOT the consumers.If what you said was true than Red Hat and Novel wouldn't lasted more than a day. after all you can legally download their products from their respective websites!Their business model is to make money off the support for their software, not the software itself.The issue is not whether piracy is moral or not. it's a fact of life - the internet provides an efficient means for distribution of information. either you take advantage of it or you insist on your old irrelevant business model and go extinct.Selling software/music/video/intellectual property for money is an extinct business model...? If that's your argument then o_O.business 101 - "The customer is always right." the moment they (RIAA, MPAA, etc..) broke that rule because they refused to evolve with respect to new technology and business models is the moment they signed their death warrants. I prefer supporting music artists by going to a concert and paying 100$ for a ticket rather than paying for CDs with shitty music the records companies advertise and try to stick in my throat. one last thing, before suggesting more penalties and such please read the following: http://www.gnu.org/philosophy/right-to-read.html *after* reading this, are you sure still that this is the way to go?I think what a lot of these arguments boil down to is people trying to justify taking stuff without paying for it. Plain and simple. I do on occasion download videos (these days only anime fansubs). And I don't feel bad about it. But I do know it's stealing. Downloading a $10 CD is really no better than shoplifting a $10 CD, because the people who worked to bring that CD into existence are not being paid for it.
Aug 14 2008
Warning: this can turn into a long debate... Robert Fraser wrote:Yigal Chripun Wrote:I won't argue about wording and linguistics with you. this would be just silly. I'll simply agree that my definition of what stilling is differs from yours. I do disagree on one thing though: everything in life is a balance and a compromise. Democracy is a compromise between the rights of the individual and that of the community he belongs to, for one example. this notion of compromise is inherit in our discussion as well: on the one hand we have the right of the content creator to do what he wants with his creation and on the other hand we have the right of the public to access that creation. So we disagree on where the balance lies. However, please do not claim "it's taking something you don't have the right to have taken" since that right is also is present.Robert Fraser wrote: > I've had very mixed feelings about all this. One one hand, the letter of theSome philosopher said that all philosophical debates were inherently linguistic ones that stemmed from not having the words to represent the concepts being spoken about. We're using different definitions of "steal," but the concept is clear -- it's taking something you don't have the right to have taken without paying for, and the debate is over whether you do or should have that right.law may be questionably constitutional. But millions of dollars every day are lost because people (including myself occasionally...) steal copyrighted material. Honestly, I think there should be much stricter penalties for things like internet piracy, because it's simply so widespread and damaging.Of course you have the right to have your own opinion (that's also in the constitution) but all of the above is bullshit. (sorry for the language). stealing only applies to physical things like chairs and cars. that whole metaphor of information as physical entities is wrong. you sure can infringe someone's copyrights but you cannot steal anything since there's nothing to steal.Hence, that statement is flawed since the vast majority of people would *NOT* have bought the content in question.Now that we cleared that out of the way, let's touch other nonsenses in what you wrote: A) "millions of dollars every day are lost..." - Not true. you assume that if a person doesn't pirate he would have payed for the stuff. this is a wrong assumption since the majority of people would just use other alternatives.Sure not everyone would have paid. But at least one person would have paid. Back in high school, I would have paid for a lot of the music I downloaded (perhaps not all of it) -- but I didn't since it was so easy for me to pirate it. The statement is that piracy costs at least $1 million/day in LOST SALES; if you would have used a free alternative, that's not factored into the argument.As I said above, it's all a matter of balance: people are willing to pay for the _convenience_ of being able to download music online in good [lossless probably] quality. people are also willing to buy merchandise to support their favorite artist and of course, people are willing to pay to attend a concert/performance/etc of the artist. Those are all logical business models. however, people *aren't* willing to pay for the /right/ to download music. Where's the balance? simple - The record companies where selling us a cat in the bag for years and demanding us to pay again {and a larger sum at that] each time they switch formats. That's unacceptable to me. I am willing to pay for the convenience of an online service if that service was in fact convenient and I could get a feeling what I'm paying for. This does not mean DRM [this is finally dawned upon the companies]. A consumer expects that just like when he buys a car where he can drive it on what ever road he wants, the same would happen with the music. Since Apple allow for non-drm music in itunes - this is the last thing that needs to change in order for me to buy my music there. (also, I think the price is a bit high but that's just a matter of pricing which is solved by market forces) As soon as those online service evolve into something that is really convenient there will be no reason for the average user to want to pirate. pirating will never completely disappear but they'll be a minor thing.if I wouldn't be able to pirate MS officeMah paycheck!!! (that's paying me to post on D NGs...)I'd probably search for a cheap commercial solution or install Open Office which is good enough for me and most other private people and small companies. no one in their right mind would pay 500$ for an office suit. think globally: in US standards paying for software is not that expensive and is convenient (and you pay for that as well) but for most of the world those prices are high. in Israel 500$ translates to roughly 2000 NIS which is a lot. B)"it's simply so ... damaging" - not so. If you look at music and films than the image is backwards: since it's easy to pirate I can download a lot of stuff try it out and only keep what I like. If I like it I'll tell friends and more people will be exposed to the content. pirating actually makes money for the copyright holder and helps him get recognized since it's advertising they don't need to pay for.I'm going to cry bull**** here. Quite a few sites offer legit free music/ video. The content creators/producers have made this available for precisely the reason you said -- so people view it and tell their friends or choose to buy higher-quality versions of it. The stuff they DON'T make available for free is not there because it is more profitable for them not to make it available. The creators/producers choose what to share for free -- NOT the consumers.exactly. just one of the million posibilities of viable business models that do not equate the consumer and end user of the product to thieves, pirates and sinners in general.If what you said was true than Red Hat and Novel wouldn't lasted more than a day. after all you can legally download their products from their respective websites!Their business model is to make money off the support for their software, not the software itself.That's partly my argument. When was the last time you used a telegraph? That technology was replaced be better technologies. So what what about all those people that where trained with Morse code and telegraph equipment? Should the government force us to use telegraphs in order for them to keep their jobs? What about silent film actors? today actors are required to be able to speak properly as part of their profession, So what about all those actors that cannot speak properly? There are of course more examples where a new technology deprecated some profession or job. Same goes for all the jobs at record companies - they are unneeded and the record company itself is redundant in a world where the artist can create he's work alone and reach his audience directly via the web.The issue is not whether piracy is moral or not. it's a fact of life - the internet provides an efficient means for distribution of information. either you take advantage of it or you insist on your old irrelevant business model and go extinct.Selling software/music/video/intellectual property for money is an extinct business model...? If that's your argument then o_O.business 101 - "The customer is always right." the moment they (RIAA, MPAA, etc..) broke that rule because they refused to evolve with respect to new technology and business models is the moment they signed their death warrants. I prefer supporting music artists by going to a concert and paying 100$ for a ticket rather than paying for CDs with shitty music the records companies advertise and try to stick in my throat. one last thing, before suggesting more penalties and such please read the following: http://www.gnu.org/philosophy/right-to-read.html *after* reading this, are you sure still that this is the way to go?I think what a lot of these arguments boil down to is people trying to justify taking stuff without paying for it. Plain and simple. I do on occasion download videos (these days only anime fansubs). And I don't feel bad about it. But I do know it's stealing. Downloading a $10 CD is really no better than shoplifting a $10 CD, because the people who worked to bring that CD into existence are not being paid for it.
Aug 14 2008
Yigal Chripun wrote:Warning: this can turn into a long debate...Eh; I'm enjoying it ;-P. Gives a good break from Windows Forms.Democracy is a compromise between the rights of the individual and that of the community he belongs to, for one example. this notion of compromise is inherit in our discussion as well: on the one hand we have the right of the content creator to do what he wants with his creation and on the other hand we have the right of the public to access that creation.Indeed, the discussion is about that right.No, _TAKING INTO ACCOUNT_ that some people would not have gotten the content "legally" and some would, I believe there's still over $1 million/day lost through piracy. Obviously, there's no way to measure this. Can we agree that there is at least one person who downloaded some content and if he had not been able to that he would have BOUGHT the content. If so, then there is a lost sale.Hence, that statement is flawed since the vast majority of people would *NOT* have bought the content in question.A) "millions of dollars every day are lost..." - Not true. you assume that if a person doesn't pirate he would have payed for the stuff. this is a wrong assumption since the majority of people would just use other alternatives.Sure not everyone would have paid. But at least one person would have paid. Back in high school, I would have paid for a lot of the music I downloaded (perhaps not all of it) -- but I didn't since it was so easy for me to pirate it. The statement is that piracy costs at least $1 million/day in LOST SALES; if you would have used a free alternative, that's not factored into the argument.As I said above, it's all a matter of balance: people are willing to pay for the _convenience_ of being able to download music online in good [lossless probably] quality. people are also willing to buy merchandise to support their favorite artist and of course, people are willing to pay to attend a concert/performance/etc of the artist. Those are all logical business models. however, people *aren't* willing to pay for the /right/ to download music.Right, and that's the problem ;-P. There are also people who will go into an electronics store and aren't willing to pay for the right to use a certain MP3 player so walk out with it under their shirt.Where's the balance? simple - The record companies where selling us a cat in the bag for years and demanding us to pay again {and a larger sum at that] each time they switch formats. That's unacceptable to me. I am willing to pay for the convenience of an online service if that service was in fact convenient and I could get a feeling what I'm paying for. This does not mean DRM [this is finally dawned upon the companies]. A consumer expects that just like when he buys a car where he can drive it on what ever road he wants, the same would happen with the music. Since Apple allow for non-drm music in itunes - this is the last thing that needs to change in order for me to buy my music there. (also, I think the price is a bit high but that's just a matter of pricing which is solved by market forces) As soon as those online service evolve into something that is really convenient there will be no reason for the average user to want to pirate. pirating will never completely disappear but they'll be a minor thing.There's already good DRM-free music sites (eMusic is one; Zune store is about half DRM-free and has an unlimited subscription plan). For video, most TV stations in the US provide free streams of their popular shows now, and Netflix has a good portion of its content available for streaming/instant-viewing. Many games are available for download via Direct2Drive, Steam, etc., and most productivity software is now licensed online so you never have to even go to the store. All this stuff is just as easy as piracy, the difference is you have to pay. Point: there are many paid alternatives that provide the same quality of experience that piracy does. People don't use them because they have to pay. Arguing "it's a better experience if you pirate" may have been valid 5 years ago, but it's not today. Anyways, music is a pretty bad example, since most online music sites are crap, record companies don't pay artists well, etc., etc. Let's restrict our domain to software, since we're both creators of software (I'm guessing) and it's our work that's being ripped off. Say you quit your day job, took out a loan, and spent two years, 10 hours a day developing a Photoshop-killer. Would you think people had the right to use it without paying you?Selling software/music/video/intellectual property for money is an extinct business model...? If that's your argument then o_O.That's partly my argument. When was the last time you used a telegraph? That technology was replaced be better technologies. So what what about all those people that where trained with Morse code and telegraph equipment? Should the government force us to use telegraphs in order for them to keep their jobs? What about silent film actors? today actors are required to be able to speak properly as part of their profession, So what about all those actors that cannot speak properly? There are of course more examples where a new technology deprecated some profession or job. Same goes for all the jobs at record companies - they are unneeded and the record company itself is redundant in a world where the artist can create he's work alone and reach his audience directly via the web.
Aug 14 2008
I'm sorry this just seems like crap logic. I probably will be unhappy about going into this but oh well. On Fri, 15 Aug 2008 05:25:08 +0300, Yigal Chripun wrote:Warning: this can turn into a long debate... Robert Fraser wrote:Why does the public have the right to access that creation? I'm sorry, I don't think me or Robert would agree with you that when something has been created everyone has the right to have access to that creation.Yigal Chripun Wrote:I won't argue about wording and linguistics with you. this would be just silly. I'll simply agree that my definition of what stilling is differs from yours. I do disagree on one thing though: everything in life is a balance and a compromise. Democracy is a compromise between the rights of the individual and that of the community he belongs to, for one example. this notion of compromise is inherit in our discussion as well: on the one hand we have the right of the content creator to do what he wants with his creation and on the other hand we have the right of the public to access that creation. So we disagree on where the balance lies. However, please do not claim "it's taking something you don't have the right to have taken" since that right is also is present.Robert Fraser wrote: > I've had very mixed feelings about all this. One one hand, the > letter of theSome philosopher said that all philosophical debates were inherently linguistic ones that stemmed from not having the words to represent the concepts being spoken about. We're using different definitions of "steal," but the concept is clear -- it's taking something you don't have the right to have taken without paying for, and the debate is over whether you do or should have that right.law may be questionably constitutional. But millions of dollars every day are lost because people (including myself occasionally...) steal copyrighted material. Honestly, I think there should be much stricter penalties for things like internet piracy, because it's simply so widespread and damaging.Of course you have the right to have your own opinion (that's also in the constitution) but all of the above is bullshit. (sorry for the language). stealing only applies to physical things like chairs and cars. that whole metaphor of information as physical entities is wrong. you sure can infringe someone's copyrights but you cannot steal anything since there's nothing to steal.Your claim is that most people only pirate for convenience. I can see this for some, but I do not see it as a majority. I know people will not only buy products the pirate because the like them, but pirate products they bought to have more control over them. I realize that helps your case and not mine, but I facts are good to have.Hence, that statement is flawed since the vast majority of people would *NOT* have bought the content in question.Now that we cleared that out of the way, let's touch other nonsenses in what you wrote: A) "millions of dollars every day are lost..." - Not true. you assume that if a person doesn't pirate he would have payed for the stuff. this is a wrong assumption since the majority of people would just use other alternatives.Sure not everyone would have paid. But at least one person would have paid. Back in high school, I would have paid for a lot of the music I downloaded (perhaps not all of it) -- but I didn't since it was so easy for me to pirate it. The statement is that piracy costs at least $1 million/day in LOST SALES; if you would have used a free alternative, that's not factored into the argument.As I said above, it's all a matter of balance: people are willing to pay for the _convenience_ of being able to download music online in good [lossless probably] quality. people are also willing to buy merchandise to support their favorite artist and of course, people are willing to pay to attend a concert/performance/etc of the artist. Those are all logical business models. however, people *aren't* willing to pay for the /right/ to download music. Where's the balance? simple - The record companies where selling us a cat in the bag for years and demanding us to pay again {and a larger sum at that] each time they switch formats. That's unacceptable to me. I am willing to pay for the convenience of an online service if that service was in fact convenient and I could get a feeling what I'm paying for. This does not mean DRM [this is finally dawned upon the companies]. A consumer expects that just like when he buys a car where he can drive it on what ever road he wants, the same would happen with the music. Since Apple allow for non-drm music in itunes - this is the last thing that needs to change in order for me to buy my music there. (also, I think the price is a bit high but that's just a matter of pricing which is solved by market forces) As soon as those online service evolve into something that is really convenient there will be no reason for the average user to want to pirate. pirating will never completely disappear but they'll be a minor thing.if I wouldn't be able to pirate MS officeMah paycheck!!! (that's paying me to post on D NGs...)I'd probably search for a cheap commercial solution or install Open Office which is good enough for me and most other private people and small companies. no one in their right mind would pay 500$ for an office suit. think globally: in US standards paying for software is not that expensive and is convenient (and you pay for that as well) but for most of the world those prices are high. in Israel 500$ translates to roughly 2000 NIS which is a lot. B)"it's simply so ... damaging" - not so. If you look at music and films than the image is backwards: since it's easy to pirate I can download a lot of stuff try it out and only keep what I like. If I like it I'll tell friends and more people will be exposed to the content. pirating actually makes money for the copyright holder and helps him get recognized since it's advertising they don't need to pay for.I'm going to cry bull**** here. Quite a few sites offer legit free music/ video. The content creators/producers have made this available for precisely the reason you said -- so people view it and tell their friends or choose to buy higher-quality versions of it. The stuff they DON'T make available for free is not there because it is more profitable for them not to make it available. The creators/producers choose what to share for free -- NOT the consumers.You can sell software/music... and not treat your customers as thieves. Your only say that this model makes it impossible for an end-user to become one.exactly. just one of the million posibilities of viable business models that do not equate the consumer and end user of the product to thieves, pirates and sinners in general.If what you said was true than Red Hat and Novel wouldn't lasted more than a day. after all you can legally download their products from their respective websites!Their business model is to make money off the support for their software, not the software itself.This statement shows that we are fight 2 different battles. I don't care about record companies, and I don't think Robert does either. If you aren't buying records/cds whatever it is they do to publish work, they don't need to make money. However, the creator/composer/programmer what- have-you can/should/does have the right to charge/limit/collect/deny... what-not his work in any manner he sees fit. If he goes through a record company that is the only legal distribution of his work that can be obtained. You do not have the right to decide his choice of distribution is invalid because it does not suit you. When you buy it you are also not buying the right to redistribute it. The owner also has the right to limit the medium to which his product can run. While I think these things, DRM, are stupid it is still their right, and thus I decided not to buy it. Unfortunately that is how the free market work. It is not a matter of, If I want the product I can access it by any means necessary, but I can either live with the choice of the author or boycott it. And boycotting fails because of the number of people that go with option 1. Question, a lot of your argument rides on the one that pirated either getting others to buy the product or purchasing other products from the creator. What if none of that happens and the creator makes no money on said pirate, is it still not stealing?That's partly my argument. When was the last time you used a telegraph? That technology was replaced be better technologies. So what what about all those people that where trained with Morse code and telegraph equipment? Should the government force us to use telegraphs in order for them to keep their jobs? What about silent film actors? today actors are required to be able to speak properly as part of their profession, So what about all those actors that cannot speak properly? There are of course more examples where a new technology deprecated some profession or job. Same goes for all the jobs at record companies - they are unneeded and the record company itself is redundant in a world where the artist can create he's work alone and reach his audience directly via the web.The issue is not whether piracy is moral or not. it's a fact of life - the internet provides an efficient means for distribution of information. either you take advantage of it or you insist on your old irrelevant business model and go extinct.Selling software/music/video/intellectual property for money is an extinct business model...? If that's your argument then o_O.business 101 - "The customer is always right." the moment they (RIAA, MPAA, etc..) broke that rule because they refused to evolve with respect to new technology and business models is the moment they signed their death warrants. I prefer supporting music artists by going to a concert and paying 100$ for a ticket rather than paying for CDs with shitty music the records companies advertise and try to stick in my throat. one last thing, before suggesting more penalties and such please read the following: http://www.gnu.org/philosophy/right-to-read.html *after* reading this, are you sure still that this is the way to go?I think what a lot of these arguments boil down to is people trying to justify taking stuff without paying for it. Plain and simple. I do on occasion download videos (these days only anime fansubs). And I don't feel bad about it. But I do know it's stealing. Downloading a $10 CD is really no better than shoplifting a $10 CD, because the people who worked to bring that CD into existence are not being paid for it.
Aug 14 2008
<snip thread arguing both sides of the is there such a thing as IP> Guys.. I highly suggest just dropping this part of the thread. Neither side will ever change the mind of the other. It's a waste of time and energy. Later, Brad
Aug 14 2008
Brad Roberts wrote:<snip thread arguing both sides of the is there such a thing as IP> Guys.. I highly suggest just dropping this part of the thread. Neither side will ever change the mind of the other. It's a waste of time and energy. Later, BradSure IP exists. How could we communicate here otherwise? ;)
Aug 15 2008
Yigal Chripun wrote:Brad Roberts wrote:With tubes of course... -- Bruno Medeiros - Software Developer, MSc. in CS/E graduate http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#D<snip thread arguing both sides of the is there such a thing as IP> Guys.. I highly suggest just dropping this part of the thread. Neither side will ever change the mind of the other. It's a waste of time and energy. Later, BradSure IP exists. How could we communicate here otherwise? ;)
Aug 15 2008
Brad Roberts wrote:<snip thread arguing both sides of the is there such a thing as IP> Guys.. I highly suggest just dropping this part of the thread. Neither side will ever change the mind of the other. It's a waste of time and energy. Later, BradIndeed, that would be the mature thing to do... but (like all internet wars), there's some fun to be had ;-P.
Aug 15 2008
Reply to Robert,Brad Roberts wrote:WE NEED A digitalmars.D.OT!<snip thread arguing both sides of the is there such a thing as IP> Guys.. I highly suggest just dropping this part of the thread. Neither side will ever change the mind of the other. It's a waste of time and energy. Later, BradIndeed, that would be the mature thing to do... but (like all internet wars), there's some fun to be had ;-P.
Aug 15 2008
Robert Fraser wrote:Yigal Chripun Wrote:Apparently the concept is not clear, because we're not talking about "taking". We're talking about copying. Not the same thing.Robert Fraser wrote: > I've had very mixed feelings about all this. One one hand, the letter of theSome philosopher said that all philosophical debates were inherently linguistic ones that stemmed from not having the words to represent the concepts being spoken about. We're using different definitions of "steal," but the concept is clear -- it's taking something you don't have the right to have taken without paying for, and the debate is over whether you do or should have that right.law may be questionably constitutional. But millions of dollars every day are lost because people (including myself occasionally...) steal copyrighted material. Honestly, I think there should be much stricter penalties for things like internet piracy, because it's simply so widespread and damaging.Of course you have the right to have your own opinion (that's also in the constitution) but all of the above is bullshit. (sorry for the language). stealing only applies to physical things like chairs and cars. that whole metaphor of information as physical entities is wrong. you sure can infringe someone's copyrights but you cannot steal anything since there's nothing to steal.Proof by anecdote. Good going.Now that we cleared that out of the way, let's touch other nonsenses in what you wrote: A) "millions of dollars every day are lost..." - Not true. you assume that if a person doesn't pirate he would have payed for the stuff. this is a wrong assumption since the majority of people would just use other alternatives.Sure not everyone would have paid. But at least one person would have paid. Back in high school, I would have paid for a lot of the music I downloaded (perhaps not all of it) -- but I didn't since it was so easy for me to pirate it. The statement is that piracy costs at least $1 million/day in LOST SALES; if you would have used a free alternative, that's not factored into the argument.I think he knows that.if I wouldn't be able to pirate MS officeMah paycheck!!! (that's paying me to post on D NGs...)I'd probably search for a cheap commercial solution or install Open Office which is good enough for me and most other private people and small companies. no one in their right mind would pay 500$ for an office suit. think globally: in US standards paying for software is not that expensive and is convenient (and you pay for that as well) but for most of the world those prices are high. in Israel 500$ translates to roughly 2000 NIS which is a lot. B)"it's simply so ... damaging" - not so. If you look at music and films than the image is backwards: since it's easy to pirate I can download a lot of stuff try it out and only keep what I like. If I like it I'll tell friends and more people will be exposed to the content. pirating actually makes money for the copyright holder and helps him get recognized since it's advertising they don't need to pay for.I'm going to cry bull**** here. Quite a few sites offer legit free music/ video. The content creators/producers have made this available for precisely the reason you said -- so people view it and tell their friends or choose to buy higher-quality versions of it. The stuff they DON'T make available for free is not there because it is more profitable for them not to make it available. The creators/producers choose what to share for free -- NOT the consumers.If what you said was true than Red Hat and Novel wouldn't lasted more than a day. after all you can legally download their products from their respective websites!Their business model is to make money off the support for their software, not the software itself.It's on its way out.The issue is not whether piracy is moral or not. it's a fact of life - the internet provides an efficient means for distribution of information. either you take advantage of it or you insist on your old irrelevant business model and go extinct.Selling software/music/video/intellectual property for money is an extinct business model...? If that's your argument then o_O.Then you are wrong. :)business 101 - "The customer is always right." the moment they (RIAA, MPAA, etc..) broke that rule because they refused to evolve with respect to new technology and business models is the moment they signed their death warrants. I prefer supporting music artists by going to a concert and paying 100$ for a ticket rather than paying for CDs with shitty music the records companies advertise and try to stick in my throat. one last thing, before suggesting more penalties and such please read the following: http://www.gnu.org/philosophy/right-to-read.html *after* reading this, are you sure still that this is the way to go?I think what a lot of these arguments boil down to is people trying to justify taking stuff without paying for it. Plain and simple. I do on occasion download videos (these days only anime fansubs). And I don't feel bad about it. But I do know it's stealing.Downloading a $10 CD is really no better than shoplifting a $10 CD, because the people who worked to bring that CD into existence are not being paid for it.And how many cents off that CD do you think the people who made it will ever see? Not that this is relevant, since it is. not. stealing.
Aug 15 2008
Walter Bright wrote:Steven Schveighoffer wrote:I think this is arguably a reasonable first step, but working towards a compatible core still means two separate cores, which means not being able to use Tango and Phobos together in the same app. So I'll admit to not completely understanding the reasoning behind this approach, but it's the only option so I'm happy to comply. Frankly, I don't want to be stuck maintaining the Tango runtime from now until doomsday anyway :-) SeanI don't know the details of the license that Walter gave to the Tango devs,It's as I posted here. Tango may use any part of Phobos and *relicense* it under the Tango license that I have the power to do.but according to Phobos' license, no explicit permission is needed as long as you obey the license terms (which is pretty free in its terms), and in fact, Tango has the Phobos license in the runtime anyways, and obeys the license that ships with Phobos. So I don't see how it is relevant that Walter gave a specific license to Tango, it was not required (at least that's my understanding). It should be the same thing for Walter to accept Tango's modified version of the runtime (just include a copy of Tango's license). My understanding is that Walter is against doing that for the purpose of avoiding having 2 licenses in phobos. Both licenses are very similar, and completely compatible. I see that Walter doesn't like it, but I don't see why it is a problem? Perhaps you could elaborate more, Walter.I don't know what more needs to be elaborated. There are two reasons for this: 1. To ensure Phobos is free of any legal taint and any accusations of stealing code. 2. To avoid the untenable issue of a single module in Phobos having different license for different lines of code.Also, I would like to know specifically what Walter needs from the Tango team. What could it be that he needs that the Tango team is against?What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.
Aug 14 2008
Sean Kelly wrote:If the cores are compatible at the API level, then one should be able to mix and match Tango/Phobos user level modules.What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.I think this is arguably a reasonable first step, but working towards a compatible core still means two separate cores, which means not being able to use Tango and Phobos together in the same app. So I'll admit to not completely understanding the reasoning behind this approach, but it's the only option so I'm happy to comply. Frankly, I don't want to be stuck maintaining the Tango runtime from now until doomsday anyway :-)
Aug 14 2008
"Walter Bright" <newshound1 digitalmars.com> wrote in message news:g82ua5$1l6d$1 digitalmars.com...Sean Kelly wrote:Why one would want to do that is beyond me. If/when this licensing bullshit ever gets sorted, we still have the problem of two standard libraries designed with different goals and duplicate functionality. What then? How is that a solution? If it takes over a year to sort this licensing stuff, how long will it take to (god forbid) merge the two libraries? What are we solving here?If the cores are compatible at the API level, then one should be able to mix and match Tango/Phobos user level modules.What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.I think this is arguably a reasonable first step, but working towards a compatible core still means two separate cores, which means not being able to use Tango and Phobos together in the same app. So I'll admit to not completely understanding the reasoning behind this approach, but it's the only option so I'm happy to comply. Frankly, I don't want to be stuck maintaining the Tango runtime from now until doomsday anyway :-)
Aug 14 2008
"Jarrett Billingsley" <kb3ctd2 yahoo.com> wrote in message news:g82uob$1mg2$1 digitalmars.com..."Walter Bright" <newshound1 digitalmars.com> wrote in message news:g82ua5$1l6d$1 digitalmars.com...No, don't interpret this as standard-library-fanboyism. By this I mean that even if you _could_ import modules from both phobos and tango, it would be next to impossible to use them together. They each have their own types, functions etc. for anything more complex than string manipulations and math (and even there they differ). You can't use a std.stream.Stream and a tango.io.Conduit together. You use one or the other. Hence, nothing has been solved.Sean Kelly wrote:Why one would want to do that is beyond me.If the cores are compatible at the API level, then one should be able to mix and match Tango/Phobos user level modules.What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.I think this is arguably a reasonable first step, but working towards a compatible core still means two separate cores, which means not being able to use Tango and Phobos together in the same app. So I'll admit to not completely understanding the reasoning behind this approach, but it's the only option so I'm happy to comply. Frankly, I don't want to be stuck maintaining the Tango runtime from now until doomsday anyway :-)
Aug 14 2008
Jarrett Billingsley wrote:"Jarrett Billingsley" <kb3ctd2 yahoo.com> wrote in message news:g82uob$1mg2$1 digitalmars.com...I think the idea is you could, say, use DWT (Tango) and DMDScript (Phobos) in the same application."Walter Bright" <newshound1 digitalmars.com> wrote in message news:g82ua5$1l6d$1 digitalmars.com...No, don't interpret this as standard-library-fanboyism. By this I mean that even if you _could_ import modules from both phobos and tango, it would be next to impossible to use them together. They each have their own types, functions etc. for anything more complex than string manipulations and math (and even there they differ). You can't use a std.stream.Stream and a tango.io.Conduit together. You use one or the other. Hence, nothing has been solved.Sean Kelly wrote:Why one would want to do that is beyond me.If the cores are compatible at the API level, then one should be able to mix and match Tango/Phobos user level modules.What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.I think this is arguably a reasonable first step, but working towards a compatible core still means two separate cores, which means not being able to use Tango and Phobos together in the same app. So I'll admit to not completely understanding the reasoning behind this approach, but it's the only option so I'm happy to comply. Frankly, I don't want to be stuck maintaining the Tango runtime from now until doomsday anyway :-)
Aug 14 2008
Jarrett Billingsley wrote:By this I mean that even if you _could_ import modules from both phobos and tango, it would be next to impossible to use them together. They each have their own types, functions etc. for anything more complex than string manipulations and math (and even there they differ). You can't use a std.stream.Stream and a tango.io.Conduit together. You use one or the other. Hence, nothing has been solved.I don't think anyone expects to mix up Stream and Conduit. But they should be able to mix up tango.io.Conduit with std.algorithm.
Aug 14 2008
Walter Bright wrote:Sean Kelly wrote:I think it will turn out to be more complicated than that. The runtime contains user-visible code as well as the compiler support code and GC: exception definitions, the thread code, etc. And Phobos vs. Tango have different exception hierarchies, at the very least. SeanIf the cores are compatible at the API level, then one should be able to mix and match Tango/Phobos user level modules.What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.I think this is arguably a reasonable first step, but working towards a compatible core still means two separate cores, which means not being able to use Tango and Phobos together in the same app. So I'll admit to not completely understanding the reasoning behind this approach, but it's the only option so I'm happy to comply. Frankly, I don't want to be stuck maintaining the Tango runtime from now until doomsday anyway :-)
Aug 14 2008
On Fri, 15 Aug 2008 09:29:31 +0400, Sean Kelly <sean invisibleduck.org> wrote:Walter Bright wrote:Isn't it part of a runtime, i.e. something that is about to be unified?Sean Kelly wrote:I think it will turn out to be more complicated than that. The runtime contains user-visible code as well as the compiler support code and GC: exception definitions, the thread code, etc. And Phobos vs. Tango have different exception hierarchies, at the very least. SeanIf the cores are compatible at the API level, then one should be able to mix and match Tango/Phobos user level modules.What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.I think this is arguably a reasonable first step, but working towards a compatible core still means two separate cores, which means not being able to use Tango and Phobos together in the same app. So I'll admit to not completely understanding the reasoning behind this approach, but it's the only option so I'm happy to comply. Frankly, I don't want to be stuck maintaining the Tango runtime from now until doomsday anyway :-)
Aug 14 2008
Koroskin Denis wrote:On Fri, 15 Aug 2008 09:29:31 +0400, Sean Kelly <sean invisibleduck.org> wrote:But this is more than just duplicating functionality. If the user wants to create a thread, what module does he import? Having compatible runtimes isn't quite the same has sharing a single common runtime. SeanWalter Bright wrote:Isn't it part of a runtime, i.e. something that is about to be unified?Sean Kelly wrote:I think it will turn out to be more complicated than that. The runtime contains user-visible code as well as the compiler support code and GC: exception definitions, the thread code, etc. And Phobos vs. Tango have different exception hierarchies, at the very least.If the cores are compatible at the API level, then one should be able to mix and match Tango/Phobos user level modules.What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.I think this is arguably a reasonable first step, but working towards a compatible core still means two separate cores, which means not being able to use Tango and Phobos together in the same app. So I'll admit to not completely understanding the reasoning behind this approach, but it's the only option so I'm happy to comply. Frankly, I don't want to be stuck maintaining the Tango runtime from now until doomsday anyway :-)
Aug 14 2008
"Sean Kelly" <sean invisibleduck.org> wrote in message news:g8347r$201b$1 digitalmars.com...Walter Bright wrote:As far as threads, I agree. One must be chosen. As far as exceptions, yes, one base must be chosen, and the exceptions put forth by the compiler must be chosen, but higher level exceptions do not have to be part of the runtime. For example, in Tango, socket exceptions are in the same module as array bound exception (which is needed by the compiler). These should be separated if we are to have a common runtime. And in that case, I think you can draw a clear line: what is needed to compile programs, and what is needed to start the runtime. Everything else should be standard library code, and should be relegated to whatever you fancy as the runtime. I propose these essential classes and modules be moved into a separate package, like std.runtime. So you would have std.runtime.thread, std.runtime.exception, etc. Or whatever. Then the line is even clearer. -SteveSean Kelly wrote:I think it will turn out to be more complicated than that. The runtime contains user-visible code as well as the compiler support code and GC: exception definitions, the thread code, etc. And Phobos vs. Tango have different exception hierarchies, at the very least.If the cores are compatible at the API level, then one should be able to mix and match Tango/Phobos user level modules.What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.I think this is arguably a reasonable first step, but working towards a compatible core still means two separate cores, which means not being able to use Tango and Phobos together in the same app. So I'll admit to not completely understanding the reasoning behind this approach, but it's the only option so I'm happy to comply. Frankly, I don't want to be stuck maintaining the Tango runtime from now until doomsday anyway :-)
Aug 15 2008
Steven Schveighoffer wrote:"Sean Kelly" <sean invisibleduck.org> wrote in message news:g8347r$201b$1 digitalmars.com...This decision camw fairly late in the game, and the basic reasoning was that we wanted to establish a formal exception hierarchy. So a bunch of relatively standard exceptions were moved into tango.core.Exception to populate the hierarchy. The alternative would have been for multiple packages in Tango to try and declare and share a common top-level Exception class, and that was just too messy. However, I think it's worth noting that none of the exceptions declared in tango.core are terribly specific. Even SocketException is extremely broad, and as applicable for end users as it is for Tango itself. For what it's worth, this is one of the few bits of the runtime that I didn't send to Walter because others were involved in designing the hierarchy. Since there's no real code involved in exception declarations it was probably over-cautious of me to omit it, but I didn't want there to be any risk of contention later.Walter Bright wrote:As far as threads, I agree. One must be chosen. As far as exceptions, yes, one base must be chosen, and the exceptions put forth by the compiler must be chosen, but higher level exceptions do not have to be part of the runtime. For example, in Tango, socket exceptions are in the same module as array bound exception (which is needed by the compiler). These should be separated if we are to have a common runtime.Sean Kelly wrote:I think it will turn out to be more complicated than that. The runtime contains user-visible code as well as the compiler support code and GC: exception definitions, the thread code, etc. And Phobos vs. Tango have different exception hierarchies, at the very least.If the cores are compatible at the API level, then one should be able to mix and match Tango/Phobos user level modules.What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.I think this is arguably a reasonable first step, but working towards a compatible core still means two separate cores, which means not being able to use Tango and Phobos together in the same app. So I'll admit to not completely understanding the reasoning behind this approach, but it's the only option so I'm happy to comply. Frankly, I don't want to be stuck maintaining the Tango runtime from now until doomsday anyway :-)And in that case, I think you can draw a clear line: what is needed to compile programs, and what is needed to start the runtime. Everything else should be standard library code, and should be relegated to whatever you fancy as the runtime.Tango was designed from the start such that the runtime (that is, the code which is loaded invisibly for every D application) consists of three distinct parts: * the compiler runtime (ie. language support code) * the garbage collector * some subset of the standard library which the compiler and GC code may depend upon This design has some great advantages: * People with special needs (such as kernel developers) can replace or stub out an entire subset of the runtime if the default version doesn't suit their needs * The compiler runtime is completely separate from the other runtime code and may be maintained entirely separately--ie. it has no dependencies on standard library code * The garbage collector is completely separate as well. In fact, the GC may be chosen at link-time simply by specifying a different library. Tango contains two GCs to demonstrate this: one is the classic mark/sweep GC and the other simply calls malloc and free. Unfortunately however, none of this gets around the issue that the standard library portion of the code must exist in only one location. And I expect that both the Phobos and Tango team have a vested interest in not changing how this stuff is exposed. In the case of Tango, this interest is backed by the fact that we have a book in print documenting this stuff, which also happens to be the only English book about D that I'm aware of.I propose these essential classes and modules be moved into a separate package, like std.runtime. So you would have std.runtime.thread, std.runtime.exception, etc. Or whatever. Then the line is even clearer.See above. That would be fine except for the confusion it would cause for readers of our book. Also, maintenance responsibility is a potential issue. None of these issues are addressed by a simple desire to share code. Sean
Aug 15 2008
Sean Kelly wrote:I suppose the magic of aliases and templates couldn't help at all here (i.e. make tango.Thread a compile-time wrapper around std.runtime.thread ...?)I propose these essential classes and modules be moved into a separate package, like std.runtime. So you would have std.runtime.thread, std.runtime.exception, etc. Or whatever. Then the line is even clearer.See above. That would be fine except for the confusion it would cause for readers of our book. Also, maintenance responsibility is a potential issue. None of these issues are addressed by a simple desire to share code. Sean
Aug 15 2008
Robert Fraser wrote:Sean Kelly wrote:Currently, it's the opposite with Tango/Tangobos (std.thread.Thread basically aliases tango.core.Thread.Thread). But I consider this to be too much of a hack to have as a long-term solution. SeanI suppose the magic of aliases and templates couldn't help at all here (i.e. make tango.Thread a compile-time wrapper around std.runtime.thread ...?)I propose these essential classes and modules be moved into a separate package, like std.runtime. So you would have std.runtime.thread, std.runtime.exception, etc. Or whatever. Then the line is even clearer.See above. That would be fine except for the confusion it would cause for readers of our book. Also, maintenance responsibility is a potential issue. None of these issues are addressed by a simple desire to share code. Sean
Aug 15 2008
"Sean Kelly" wroteRobert Fraser wrote:The tango.core.Thread alias would be a convenience for backwards compatibility. It can be discouraged in favor of std.runtime.Thread. The only palatable solution I see is for a common namespace to exist. If you insist on the thread portion living in a namespace such as tango.core.Thread, then I can't see Phobos adopting that, and you are killing this whole compatibility project :( -SteveSean Kelly wrote:Currently, it's the opposite with Tango/Tangobos (std.thread.Thread basically aliases tango.core.Thread.Thread). But I consider this to be too much of a hack to have as a long-term solution.I suppose the magic of aliases and templates couldn't help at all here (i.e. make tango.Thread a compile-time wrapper around std.runtime.thread ...?)I propose these essential classes and modules be moved into a separate package, like std.runtime. So you would have std.runtime.thread, std.runtime.exception, etc. Or whatever. Then the line is even clearer.See above. That would be fine except for the confusion it would cause for readers of our book. Also, maintenance responsibility is a potential issue. None of these issues are addressed by a simple desire to share code. Sean
Aug 15 2008
Steven Schveighoffer wrote:"Sean Kelly" wroteI would very much like to see a single standard library for D. But certainly you can see that what you're asking is for Tango to forego all the consideration that has gone into its current design simply because Phobos is somehow inviolate, while at the same time Phobos for some reason wants to benefit from all the work that has gone into Tango. I'd hardly consider this collaboration, so you can perhaps understand why some of the other Tango team members aren't quite so cooperative as I have been. Truth be told, my desire to be conciliatory has long since been replaced with a desire to simply be done with the drama. So regardless of my opinion above (which is admittedly rather jaded and defensive), or perhaps in light of the reasons behind it, I'm mostly interested in just moving on. And because of this, I don't feel it's fair for me to speak for the rest of the Tango team. I'm simply hoping to clear the air and am following through with the promises I made to Walter a year ago when we last discussed all this. SeanRobert Fraser wrote:The tango.core.Thread alias would be a convenience for backwards compatibility. It can be discouraged in favor of std.runtime.Thread. The only palatable solution I see is for a common namespace to exist. If you insist on the thread portion living in a namespace such as tango.core.Thread, then I can't see Phobos adopting that, and you are killing this whole compatibility project :(Sean Kelly wrote:Currently, it's the opposite with Tango/Tangobos (std.thread.Thread basically aliases tango.core.Thread.Thread). But I consider this to be too much of a hack to have as a long-term solution.I suppose the magic of aliases and templates couldn't help at all here (i.e. make tango.Thread a compile-time wrapper around std.runtime.thread ...?)I propose these essential classes and modules be moved into a separate package, like std.runtime. So you would have std.runtime.thread, std.runtime.exception, etc. Or whatever. Then the line is even clearer.See above. That would be fine except for the confusion it would cause for readers of our book. Also, maintenance responsibility is a potential issue. None of these issues are addressed by a simple desire to share code. Sean
Aug 15 2008
"Sean Kelly" wroteSteven Schveighoffer wrote:I didn't mean exceptions need to be defined in individual modules, they can live in one file, but the user-lib exceptions need to be separate, because Phobos isn't going to care about Tango's SocketException for instance (or vice versa). There is nothing wrong with having runtime exceptions in one module, and being publicly imported in the user lib's exception module (which could remain as tango.core.Exception)."Sean Kelly" <sean invisibleduck.org> wrote in message news:g8347r$201b$1 digitalmars.com...This decision camw fairly late in the game, and the basic reasoning was that we wanted to establish a formal exception hierarchy. So a bunch of relatively standard exceptions were moved into tango.core.Exception to populate the hierarchy. The alternative would have been for multiple packages in Tango to try and declare and share a common top-level Exception class, and that was just too messy. However, I think it's worth noting that none of the exceptions declared in tango.core are terribly specific. Even SocketException is extremely broad, and as applicable for end users as it is for Tango itself.Walter Bright wrote:As far as threads, I agree. One must be chosen. As far as exceptions, yes, one base must be chosen, and the exceptions put forth by the compiler must be chosen, but higher level exceptions do not have to be part of the runtime. For example, in Tango, socket exceptions are in the same module as array bound exception (which is needed by the compiler). These should be separated if we are to have a common runtime.Sean Kelly wrote:I think it will turn out to be more complicated than that. The runtime contains user-visible code as well as the compiler support code and GC: exception definitions, the thread code, etc. And Phobos vs. Tango have different exception hierarchies, at the very least.If the cores are compatible at the API level, then one should be able to mix and match Tango/Phobos user level modules.What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.I think this is arguably a reasonable first step, but working towards a compatible core still means two separate cores, which means not being able to use Tango and Phobos together in the same app. So I'll admit to not completely understanding the reasoning behind this approach, but it's the only option so I'm happy to comply. Frankly, I don't want to be stuck maintaining the Tango runtime from now until doomsday anyway :-)For what it's worth, this is one of the few bits of the runtime that I didn't send to Walter because others were involved in designing the hierarchy. Since there's no real code involved in exception declarations it was probably over-cautious of me to omit it, but I didn't want there to be any risk of contention later.I agree that Tango's runtime design makes it ideal for splitting out from the user code.And in that case, I think you can draw a clear line: what is needed to compile programs, and what is needed to start the runtime. Everything else should be standard library code, and should be relegated to whatever you fancy as the runtime.Tango was designed from the start such that the runtime (that is, the code which is loaded invisibly for every D application) consists of three distinct parts: * the compiler runtime (ie. language support code) * the garbage collector * some subset of the standard library which the compiler and GC code may depend upon This design has some great advantages: * People with special needs (such as kernel developers) can replace or stub out an entire subset of the runtime if the default version doesn't suit their needs * The compiler runtime is completely separate from the other runtime code and may be maintained entirely separately--ie. it has no dependencies on standard library code * The garbage collector is completely separate as well. In fact, the GC may be chosen at link-time simply by specifying a different library. Tango contains two GCs to demonstrate this: one is the classic mark/sweep GC and the other simply calls malloc and free.Unfortunately however, none of this gets around the issue that the standard library portion of the code must exist in only one location. And I expect that both the Phobos and Tango team have a vested interest in not changing how this stuff is exposed. In the case of Tango, this interest is backed by the fact that we have a book in print documenting this stuff, which also happens to be the only English book about D that I'm aware of.Exposure can be aliased (see below).This is my view (might not work, but I think it could). For purposes of simplicity, I'll assume Walter currently develops the Phobos runtime (not that he doesn't, but I'm really not sure :). Maintenance of the merged runtime would become Walter's responsibility, with your help if necessary (ideas and help understanding, and enhancements if you wish). Any changes desired for the runtime would go through Phobos (and Walter). The Tango lib would use the now tango-fied Phobos runtime, with alias imports for existing code (e.g. tango.core.Thread would either publicly import std.thread or would privately import it, and alias the Thread class). Phobos user lib code would do the same, although I'd suspect that since Walter is maintaining the runtime, he'd want to follow Phobos' package and naming conventions. The one requirement for it is that the Phobos runtime MUST be separate from the user lib, and not depend on it. So no calling on Andrei's fancy Phobos-only templates :) This is similar to how I wanted Thread to use TimeSpan, but we can't because TimeSpan is part of the user lib. People who have the book can still use the code and ideas presented in the book, because the imports will alias the real classes/structs from the new Phobos runtime. BTW, since the book was released, there have been a lot of breaking changes, so the edge of that point is dulled quite a bit. How does this sound (for both you and Walter)? -SteveI propose these essential classes and modules be moved into a separate package, like std.runtime. So you would have std.runtime.thread, std.runtime.exception, etc. Or whatever. Then the line is even clearer.See above. That would be fine except for the confusion it would cause for readers of our book. Also, maintenance responsibility is a potential issue. None of these issues are addressed by a simple desire to share code.
Aug 15 2008
Steven Schveighoffer wrote:"Sean Kelly" wroteMy original goal was to have Walter maintain the DMD compiler runtime and leave the rest to the appropriate parties. Walter clearly can't maintain the entire runtime because Tango includes compiler runtimes for GDC (currently) and LLVMC (soon), etc. Each of these should ideally be maintained by the respective compiler author. One of the problems in my mind is that Phobos isn't portable, as justified by the fact that GDC contains GPhobos. It's an untenable long-term solution.Steven Schveighoffer wrote:I didn't mean exceptions need to be defined in individual modules, they can live in one file, but the user-lib exceptions need to be separate, because Phobos isn't going to care about Tango's SocketException for instance (or vice versa). There is nothing wrong with having runtime exceptions in one module, and being publicly imported in the user lib's exception module (which could remain as tango.core.Exception)."Sean Kelly" <sean invisibleduck.org> wrote in message news:g8347r$201b$1 digitalmars.com...This decision camw fairly late in the game, and the basic reasoning was that we wanted to establish a formal exception hierarchy. So a bunch of relatively standard exceptions were moved into tango.core.Exception to populate the hierarchy. The alternative would have been for multiple packages in Tango to try and declare and share a common top-level Exception class, and that was just too messy. However, I think it's worth noting that none of the exceptions declared in tango.core are terribly specific. Even SocketException is extremely broad, and as applicable for end users as it is for Tango itself.Walter Bright wrote:As far as threads, I agree. One must be chosen. As far as exceptions, yes, one base must be chosen, and the exceptions put forth by the compiler must be chosen, but higher level exceptions do not have to be part of the runtime. For example, in Tango, socket exceptions are in the same module as array bound exception (which is needed by the compiler). These should be separated if we are to have a common runtime.Sean Kelly wrote:I think it will turn out to be more complicated than that. The runtime contains user-visible code as well as the compiler support code and GC: exception definitions, the thread code, etc. And Phobos vs. Tango have different exception hierarchies, at the very least.If the cores are compatible at the API level, then one should be able to mix and match Tango/Phobos user level modules.What specifically I'd like from the Tango team is explicit permission for the Phobos team to go over the Tango code and be able to copy/use whatever portions of it are necessary to get the two libraries to have a compatible core, and to relicense those parts under the corresponding Phobos license.I think this is arguably a reasonable first step, but working towards a compatible core still means two separate cores, which means not being able to use Tango and Phobos together in the same app. So I'll admit to not completely understanding the reasoning behind this approach, but it's the only option so I'm happy to comply. Frankly, I don't want to be stuck maintaining the Tango runtime from now until doomsday anyway :-)For what it's worth, this is one of the few bits of the runtime that I didn't send to Walter because others were involved in designing the hierarchy. Since there's no real code involved in exception declarations it was probably over-cautious of me to omit it, but I didn't want there to be any risk of contention later.I agree that Tango's runtime design makes it ideal for splitting out from the user code.And in that case, I think you can draw a clear line: what is needed to compile programs, and what is needed to start the runtime. Everything else should be standard library code, and should be relegated to whatever you fancy as the runtime.Tango was designed from the start such that the runtime (that is, the code which is loaded invisibly for every D application) consists of three distinct parts: * the compiler runtime (ie. language support code) * the garbage collector * some subset of the standard library which the compiler and GC code may depend upon This design has some great advantages: * People with special needs (such as kernel developers) can replace or stub out an entire subset of the runtime if the default version doesn't suit their needs * The compiler runtime is completely separate from the other runtime code and may be maintained entirely separately--ie. it has no dependencies on standard library code * The garbage collector is completely separate as well. In fact, the GC may be chosen at link-time simply by specifying a different library. Tango contains two GCs to demonstrate this: one is the classic mark/sweep GC and the other simply calls malloc and free.Unfortunately however, none of this gets around the issue that the standard library portion of the code must exist in only one location. And I expect that both the Phobos and Tango team have a vested interest in not changing how this stuff is exposed. In the case of Tango, this interest is backed by the fact that we have a book in print documenting this stuff, which also happens to be the only English book about D that I'm aware of.Exposure can be aliased (see below).This is my view (might not work, but I think it could). For purposes of simplicity, I'll assume Walter currently develops the Phobos runtime (not that he doesn't, but I'm really not sure :). Maintenance of the merged runtime would become Walter's responsibility, with your help if necessary (ideas and help understanding, and enhancements if you wish). Any changes desired for the runtime would go through Phobos (and Walter). The Tango lib would use the now tango-fied Phobos runtime, with alias imports for existing code (e.g. tango.core.Thread would either publicly import std.thread or would privately import it, and alias the Thread class).I propose these essential classes and modules be moved into a separate package, like std.runtime. So you would have std.runtime.thread, std.runtime.exception, etc. Or whatever. Then the line is even clearer.See above. That would be fine except for the confusion it would cause for readers of our book. Also, maintenance responsibility is a potential issue. None of these issues are addressed by a simple desire to share code.Phobos user lib code would do the same, although I'd suspect that since Walter is maintaining the runtime, he'd want to follow Phobos' package and naming conventions. The one requirement for it is that the Phobos runtime MUST be separate from the user lib, and not depend on it. So no calling on Andrei's fancy Phobos-only templates :) This is similar to how I wanted Thread to use TimeSpan, but we can't because TimeSpan is part of the user lib.Yeah, I wanted to move TimeSpan into the runtime so this would be possible but was out-voted. But I think we both agree that the Tango design is fairly close to ideal in that the runtime is entirely separate from the user code (aside from some of the necessary exported bits).People who have the book can still use the code and ideas presented in the book, because the imports will alias the real classes/structs from the new Phobos runtime.One concern I have about moving the runtime into Phobos is portability / flexibility. Will it be possible to use the runtime without the user code as it is in Tango? Will it continue to be compiler-agnostic? I'll admit that I completely fail to see the point of the language creator being the go-to man for the standard library as well.BTW, since the book was released, there have been a lot of breaking changes, so the edge of that point is dulled quite a bit.Few, if any, of those breaking changes were covered by the book as far as I'm aware.How does this sound (for both you and Walter)?When you get right down to it, I really don't want to be stuck working on Tango for the rest of my life, so my feelings are mixed. I think that D accepting Tango as the official standard library and Walter et al. collaborating with the Tango maintainers would be the optimal solution for all concerned. However, I also don't want to be placed in a position where I'm the linchpin holding everything together. My personal responsibilities have grown considerably since Tango was started and that's far more time and responsibility than I want, barring a considerable paycheck for doing so. So in short I think it would be a bad idea but I'd probably agree to it anyway because doing so is in my own best interest. Sean
Aug 15 2008
"Sean Kelly" wroteSteven Schveighoffer wrote:Again, for the purposes of simplicity, I said Walter, but I meant 'Phobos runtime developer'. I don't know who that is or will be.This is my view (might not work, but I think it could). For purposes of simplicity, I'll assume Walter currently develops the Phobos runtime (not that he doesn't, but I'm really not sure :). Maintenance of the merged runtime would become Walter's responsibility, with your help if necessary (ideas and help understanding, and enhancements if you wish). Any changes desired for the runtime would go through Phobos (and Walter). The Tango lib would use the now tango-fied Phobos runtime, with alias imports for existing code (e.g. tango.core.Thread would either publicly import std.thread or would privately import it, and alias the Thread class).My original goal was to have Walter maintain the DMD compiler runtime and leave the rest to the appropriate parties. Walter clearly can't maintain the entire runtime because Tango includes compiler runtimes for GDC (currently) and LLVMC (soon), etc. Each of these should ideally be maintained by the respective compiler author.One of the problems in my mind is that Phobos isn't portable, as justified by the fact that GDC contains GPhobos. It's an untenable long-term solution.Then let's make it portable :) At least the runtime portion.It has to be in order for both Tango and Phobos to use it. That is a requirement (one which should be satisfied by copying Tango's runtime).Phobos user lib code would do the same, although I'd suspect that since Walter is maintaining the runtime, he'd want to follow Phobos' package and naming conventions. The one requirement for it is that the Phobos runtime MUST be separate from the user lib, and not depend on it. So no calling on Andrei's fancy Phobos-only templates :) This is similar to how I wanted Thread to use TimeSpan, but we can't because TimeSpan is part of the user lib.Yeah, I wanted to move TimeSpan into the runtime so this would be possible but was out-voted. But I think we both agree that the Tango design is fairly close to ideal in that the runtime is entirely separate from the user code (aside from some of the necessary exported bits).People who have the book can still use the code and ideas presented in the book, because the imports will alias the real classes/structs from the new Phobos runtime.One concern I have about moving the runtime into Phobos is portability / flexibility. Will it be possible to use the runtime without the user code as it is in Tango?Will it continue to be compiler-agnostic?That, I can't say. But with effort, it can be maintained that way. Perhaps once the port is done, external compilers can own their respective compiler parts. If they are using the new runtime, it should also be compatible with Tango. My idea of the porting should involve repackaging the Tango runtime into a generic style (or at least one that suits whoever is maintaining it), and then porting both libs to use the new runtime. The checks and balances come when releases are made that break compatibility, we submit bugs, the runtime gets fixed. It works no different than Tango development does today, except that the runtime code lives in Phobos.As someone who prefers Tango, D accepting Tango as the standard library would be fine with me. But realistically, that ain't gonna happen :) You have to respect that Phobos developers have a lot of time and effort invested in Phobos, and to see it just get replaced would be a huge kick in the ass for them. I think the optimal solution is for both libraries to coexist, AND to be binary compatible.How does this sound (for both you and Walter)?When you get right down to it, I really don't want to be stuck working on Tango for the rest of my life, so my feelings are mixed. I think that D accepting Tango as the official standard library and Walter et al. collaborating with the Tango maintainers would be the optimal solution for all concerned.However, I also don't want to be placed in a position where I'm the linchpin holding everything together. My personal responsibilities have grown considerably since Tango was started and that's far more time and responsibility than I want, barring a considerable paycheck for doing so. So in short I think it would be a bad idea but I'd probably agree to it anyway because doing so is in my own best interest.I think you might only be a linchpin until the port is done, then if you don't want to continue maintaining, I'm sure that void will get filled. -Steve
Aug 15 2008
Steven Schveighoffer wrote:This is my view (might not work, but I think it could). For purposes of simplicity, I'll assume Walter currently develops the Phobos runtime (not that he doesn't, but I'm really not sure :). Maintenance of the merged runtime would become Walter's responsibility, with your help if necessary (ideas and help understanding, and enhancements if you wish). Any changes desired for the runtime would go through Phobos (and Walter). The Tango lib would use the now tango-fied Phobos runtime, with alias imports for existing code (e.g. tango.core.Thread would either publicly import std.thread or would privately import it, and alias the Thread class).Based on historical evidence, this doesn't sound like a particularly good idea. The current situation ensued for a reason. Also, I find that this discussion quite completely ignores the fact that DMD is not the only D compiler anymore, and Walter is not the only one with a vested interest in the functionality. In fact it looks like quite many of the Tango conference attendants wants to discuss the runtime. If there should be a common-common (not only "just" compatible) runtime, it shouldn't be controlled by one compiler vendor. Note that the Tango runtime consists of 3 parts, where only one is compiler specific. That particular part should probably be controlled/reviewed by the compiler vendor, the rest (GC, threading, other things) should be independent. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the Tango
Aug 15 2008
Lars Ivar Igesund wrote:Steven Schveighoffer wrote:How does it ignore it? It sounds rather like the opposite to me: the very existence of multiple runtimes and the vested interest in those runtimes (Tango's primarily) are the key reason for unification.This is my view (might not work, but I think it could). For purposes of simplicity, I'll assume Walter currently develops the Phobos runtime (not that he doesn't, but I'm really not sure :). Maintenance of the merged runtime would become Walter's responsibility, with your help if necessary (ideas and help understanding, and enhancements if you wish). Any changes desired for the runtime would go through Phobos (and Walter). The Tango lib would use the now tango-fied Phobos runtime, with alias imports for existing code (e.g. tango.core.Thread would either publicly import std.thread or would privately import it, and alias the Thread class).Based on historical evidence, this doesn't sound like a particularly good idea. The current situation ensued for a reason. Also, I find that this discussion quite completely ignores the fact that DMD is not the only D compiler anymore, and Walter is not the only one with a vested interest in the functionality. In fact it looks like quite many of the Tango conference attendants wants to discuss the runtime.If there should be a common-common (not only "just" compatible) runtime, it shouldn't be controlled by one compiler vendor. Note that the Tango runtime consists of 3 parts, where only one is compiler specific. That particular part should probably be controlled/reviewed by the compiler vendor, the rest (GC, threading, other things) should be independent.I'll admit my understanding is limited, but I'd guess that will lead to even further fragmentation and non-portability. Wasn't D supposed to be more portable between compiler implementations than C++ as opposed to less portable?
Aug 15 2008
Lutger wrote:Lars Ivar Igesund wrote:Unification, yes. You misunderstood my point, which is that the runtime implementation (not the compiler specific portion and direct language support) should, IMO, be independent. As long as Walter/DigitalMars is the developer of the language itself, it will be natural that eventual new features that the language requires from the runtime, will be bootstrapped by code from Walter, but I think Sean's work on the runtime in Tango shows that such initial implementation can have large potential for improvements.Steven Schveighoffer wrote:How does it ignore it? It sounds rather like the opposite to me: the very existence of multiple runtimes and the vested interest in those runtimes (Tango's primarily) are the key reason for unification.This is my view (might not work, but I think it could). For purposes of simplicity, I'll assume Walter currently develops the Phobos runtime (not that he doesn't, but I'm really not sure :). Maintenance of the merged runtime would become Walter's responsibility, with your help if necessary (ideas and help understanding, and enhancements if you wish). Any changes desired for the runtime would go through Phobos (and Walter). The Tango lib would use the now tango-fied Phobos runtime, with alias imports for existing code (e.g. tango.core.Thread would either publicly import std.thread or would privately import it, and alias the Thread class).Based on historical evidence, this doesn't sound like a particularly good idea. The current situation ensued for a reason. Also, I find that this discussion quite completely ignores the fact that DMD is not the only D compiler anymore, and Walter is not the only one with a vested interest in the functionality. In fact it looks like quite many of the Tango conference attendants wants to discuss the runtime.The compiler part would have to conform to the necessary interfaces, of course, but at some level the implementation details needs to be, and not all can be kept in the compiler itself, thus it must be somewhere in the runtime. I don't see this as a problem, just a necessary evil. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoIf there should be a common-common (not only "just" compatible) runtime, it shouldn't be controlled by one compiler vendor. Note that the Tango runtime consists of 3 parts, where only one is compiler specific. That particular part should probably be controlled/reviewed by the compiler vendor, the rest (GC, threading, other things) should be independent.I'll admit my understanding is limited, but I'd guess that will lead to even further fragmentation and non-portability.
Aug 16 2008
Lars Ivar Igesund wrote:Lutger wrote:I don't understand your point. are you suggesting that things like the GC will be independent from the compiler? It seems to me that the model suggested by Sean is the way to go: ie: my code ---------- standard library user code and standardized APIs to the runtime (threading, etc --------------------------------- compiler + runtime A | compiler + runtime B | ..... if a user isn't satisfied by runtime/compiler A he should just switch vendors. All the user facing APIs are standardized in the stdlib so all is needed is to recompile..Lars Ivar Igesund wrote:Unification, yes. You misunderstood my point, which is that the runtime implementation (not the compiler specific portion and direct language support) should, IMO, be independent. As long as Walter/DigitalMars is the developer of the language itself, it will be natural that eventual new features that the language requires from the runtime, will be bootstrapped by code from Walter, but I think Sean's work on the runtime in Tango shows that such initial implementation can have large potential for improvements.Steven Schveighoffer wrote:How does it ignore it? It sounds rather like the opposite to me: the very existence of multiple runtimes and the vested interest in those runtimes (Tango's primarily) are the key reason for unification.This is my view (might not work, but I think it could). For purposes of simplicity, I'll assume Walter currently develops the Phobos runtime (not that he doesn't, but I'm really not sure :). Maintenance of the merged runtime would become Walter's responsibility, with your help if necessary (ideas and help understanding, and enhancements if you wish). Any changes desired for the runtime would go through Phobos (and Walter). The Tango lib would use the now tango-fied Phobos runtime, with alias imports for existing code (e.g. tango.core.Thread would either publicly import std.thread or would privately import it, and alias the Thread class).Based on historical evidence, this doesn't sound like a particularly good idea. The current situation ensued for a reason. Also, I find that this discussion quite completely ignores the fact that DMD is not the only D compiler anymore, and Walter is not the only one with a vested interest in the functionality. In fact it looks like quite many of the Tango conference attendants wants to discuss the runtime.The compiler part would have to conform to the necessary interfaces, of course, but at some level the implementation details needs to be, and not all can be kept in the compiler itself, thus it must be somewhere in the runtime. I don't see this as a problem, just a necessary evil.If there should be a common-common (not only "just" compatible) runtime, it shouldn't be controlled by one compiler vendor. Note that the Tango runtime consists of 3 parts, where only one is compiler specific. That particular part should probably be controlled/reviewed by the compiler vendor, the rest (GC, threading, other things) should be independent.I'll admit my understanding is limited, but I'd guess that will lead to even further fragmentation and non-portability.
Aug 16 2008
Yigal Chripun wrote:Lars Ivar Igesund wrote:A common interface (API and ABI) would make this easier, but I just tend to think that a common implementation as long as possible would be even better - unification of efforts etc. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoLutger wrote:I don't understand your point. are you suggesting that things like the GC will be independent from the compiler? It seems to me that the model suggested by Sean is the way to go: ie: my code ---------- standard library user code and standardized APIs to the runtime (threading, etc --------------------------------- compiler + runtime A | compiler + runtime B | ..... if a user isn't satisfied by runtime/compiler A he should just switch vendors. All the user facing APIs are standardized in the stdlib so all is needed is to recompile..Lars Ivar Igesund wrote:Unification, yes. You misunderstood my point, which is that the runtime implementation (not the compiler specific portion and direct language support) should, IMO, be independent. As long as Walter/DigitalMars is the developer of the language itself, it will be natural that eventual new features that the language requires from the runtime, will be bootstrapped by code from Walter, but I think Sean's work on the runtime in Tango shows that such initial implementation can have large potential for improvements.Steven Schveighoffer wrote:How does it ignore it? It sounds rather like the opposite to me: the very existence of multiple runtimes and the vested interest in those runtimes (Tango's primarily) are the key reason for unification.This is my view (might not work, but I think it could). For purposes of simplicity, I'll assume Walter currently develops the Phobos runtime (not that he doesn't, but I'm really not sure :). Maintenance of the merged runtime would become Walter's responsibility, with your help if necessary (ideas and help understanding, and enhancements if you wish). Any changes desired for the runtime would go through Phobos (and Walter). The Tango lib would use the now tango-fied Phobos runtime, with alias imports for existing code (e.g. tango.core.Thread would either publicly import std.thread or would privately import it, and alias the Thread class).Based on historical evidence, this doesn't sound like a particularly good idea. The current situation ensued for a reason. Also, I find that this discussion quite completely ignores the fact that DMD is not the only D compiler anymore, and Walter is not the only one with a vested interest in the functionality. In fact it looks like quite many of the Tango conference attendants wants to discuss the runtime.The compiler part would have to conform to the necessary interfaces, of course, but at some level the implementation details needs to be, and not all can be kept in the compiler itself, thus it must be somewhere in the runtime. I don't see this as a problem, just a necessary evil.If there should be a common-common (not only "just" compatible) runtime, it shouldn't be controlled by one compiler vendor. Note that the Tango runtime consists of 3 parts, where only one is compiler specific. That particular part should probably be controlled/reviewed by the compiler vendor, the rest (GC, threading, other things) should be independent.I'll admit my understanding is limited, but I'd guess that will lead to even further fragmentation and non-portability.
Aug 16 2008
Lars Ivar Igesund wrote:Yigal Chripun wrote:What's important to the end user IMHO is the API and ABI. having one unified GC implementation (for example) independent of a specific vendor will remove some work from the compiler vendor but Id think this is rather a bad thing. I prefer each vendor to provide his own GC implementation (keeping with my example) which of course conforms to the standards (API, ABI, ...) so that I can change to a different vendor easily without any changes to my code (all I need to do is recompile). The benefit is that the vendors will compete for runtime performance which is good for the end user. I can choose vendor A's GC since it is more efficient with regards to memory (if I care for that) or vendor B's GC if it's faster, etc.. All I care is that everything that is visible to the end user is standardized - i.e. I can do GC.collect() in my code since it's in the APIs and don't care if I use llvmdc, dil, dmd, gdc, etc.. ( I'll care for performance reasons and such of course and for that I can just switch to a different vendor without any code changes)Lars Ivar Igesund wrote:A common interface (API and ABI) would make this easier, but I just tend to think that a common implementation as long as possible would be even better - unification of efforts etc.Lutger wrote:I don't understand your point. are you suggesting that things like the GC will be independent from the compiler? It seems to me that the model suggested by Sean is the way to go: ie: my code ---------- standard library user code and standardized APIs to the runtime (threading, etc --------------------------------- compiler + runtime A | compiler + runtime B | ..... if a user isn't satisfied by runtime/compiler A he should just switch vendors. All the user facing APIs are standardized in the stdlib so all is needed is to recompile..Lars Ivar Igesund wrote:Unification, yes. You misunderstood my point, which is that the runtime implementation (not the compiler specific portion and direct language support) should, IMO, be independent. As long as Walter/DigitalMars is the developer of the language itself, it will be natural that eventual new features that the language requires from the runtime, will be bootstrapped by code from Walter, but I think Sean's work on the runtime in Tango shows that such initial implementation can have large potential for improvements.Steven Schveighoffer wrote:How does it ignore it? It sounds rather like the opposite to me: the very existence of multiple runtimes and the vested interest in those runtimes (Tango's primarily) are the key reason for unification.This is my view (might not work, but I think it could). For purposes of simplicity, I'll assume Walter currently develops the Phobos runtime (not that he doesn't, but I'm really not sure :). Maintenance of the merged runtime would become Walter's responsibility, with your help if necessary (ideas and help understanding, and enhancements if you wish). Any changes desired for the runtime would go through Phobos (and Walter). The Tango lib would use the now tango-fied Phobos runtime, with alias imports for existing code (e.g. tango.core.Thread would either publicly import std.thread or would privately import it, and alias the Thread class).Based on historical evidence, this doesn't sound like a particularly good idea. The current situation ensued for a reason. Also, I find that this discussion quite completely ignores the fact that DMD is not the only D compiler anymore, and Walter is not the only one with a vested interest in the functionality. In fact it looks like quite many of the Tango conference attendants wants to discuss the runtime.The compiler part would have to conform to the necessary interfaces, of course, but at some level the implementation details needs to be, and not all can be kept in the compiler itself, thus it must be somewhere in the runtime. I don't see this as a problem, just a necessary evil.If there should be a common-common (not only "just" compatible) runtime, it shouldn't be controlled by one compiler vendor. Note that the Tango runtime consists of 3 parts, where only one is compiler specific. That particular part should probably be controlled/reviewed by the compiler vendor, the rest (GC, threading, other things) should be independent.I'll admit my understanding is limited, but I'd guess that will lead to even further fragmentation and non-portability.
Aug 16 2008
Yigal Chripun wrote:Lars Ivar Igesund wrote:I'd prefer being able to choose the GC I want without needing the compiler vendor to supply it. Otherwise, the compiler vendor either needs to know how to write a GC (unlikely) or they need to bundle a third-party GC. Also, different applications have different memory requirements. Tango allows the GC to be chosen at link-time, which allows for a great deal of flexibility.Yigal Chripun wrote:What's important to the end user IMHO is the API and ABI. having one unified GC implementation (for example) independent of a specific vendor will remove some work from the compiler vendor but Id think this is rather a bad thing. I prefer each vendor to provide his own GC implementation (keeping with my example) which of course conforms to the standards (API, ABI, ...) so that I can change to a different vendor easily without any changes to my code (all I need to do is recompile).Lars Ivar Igesund wrote:A common interface (API and ABI) would make this easier, but I just tend to think that a common implementation as long as possible would be even better - unification of efforts etc.Lutger wrote:I don't understand your point. are you suggesting that things like the GC will be independent from the compiler? It seems to me that the model suggested by Sean is the way to go: ie: my code ---------- standard library user code and standardized APIs to the runtime (threading, etc --------------------------------- compiler + runtime A | compiler + runtime B | ..... if a user isn't satisfied by runtime/compiler A he should just switch vendors. All the user facing APIs are standardized in the stdlib so all is needed is to recompile..Lars Ivar Igesund wrote:Unification, yes. You misunderstood my point, which is that the runtime implementation (not the compiler specific portion and direct language support) should, IMO, be independent. As long as Walter/DigitalMars is the developer of the language itself, it will be natural that eventual new features that the language requires from the runtime, will be bootstrapped by code from Walter, but I think Sean's work on the runtime in Tango shows that such initial implementation can have large potential for improvements.Steven Schveighoffer wrote:How does it ignore it? It sounds rather like the opposite to me: the very existence of multiple runtimes and the vested interest in those runtimes (Tango's primarily) are the key reason for unification.This is my view (might not work, but I think it could). For purposes of simplicity, I'll assume Walter currently develops the Phobos runtime (not that he doesn't, but I'm really not sure :). Maintenance of the merged runtime would become Walter's responsibility, with your help if necessary (ideas and help understanding, and enhancements if you wish). Any changes desired for the runtime would go through Phobos (and Walter). The Tango lib would use the now tango-fied Phobos runtime, with alias imports for existing code (e.g. tango.core.Thread would either publicly import std.thread or would privately import it, and alias the Thread class).Based on historical evidence, this doesn't sound like a particularly good idea. The current situation ensued for a reason. Also, I find that this discussion quite completely ignores the fact that DMD is not the only D compiler anymore, and Walter is not the only one with a vested interest in the functionality. In fact it looks like quite many of the Tango conference attendants wants to discuss the runtime.The compiler part would have to conform to the necessary interfaces, of course, but at some level the implementation details needs to be, and not all can be kept in the compiler itself, thus it must be somewhere in the runtime. I don't see this as a problem, just a necessary evil.If there should be a common-common (not only "just" compatible) runtime, it shouldn't be controlled by one compiler vendor. Note that the Tango runtime consists of 3 parts, where only one is compiler specific. That particular part should probably be controlled/reviewed by the compiler vendor, the rest (GC, threading, other things) should be independent.I'll admit my understanding is limited, but I'd guess that will lead to even further fragmentation and non-portability.The benefit is that the vendors will compete for runtime performance which is good for the end user. I can choose vendor A's GC since it is more efficient with regards to memory (if I care for that) or vendor B's GC if it's faster, etc..Better to choose the GC separately from the compiler, then, so you can use the best of breed of each.All I care is that everything that is visible to the end user is standardized - i.e. I can do GC.collect() in my code since it's in the APIs and don't care if I use llvmdc, dil, dmd, gdc, etc.. ( I'll care for performance reasons and such of course and for that I can just switch to a different vendor without any code changes)This is a standard library issue not a compiler runtime or GC issue. Sean
Aug 18 2008
Sean Kelly wrote:I'd prefer being able to choose the GC I want without needing the compiler vendor to supply it. Otherwise, the compiler vendor either needs to know how to write a GC (unlikely) or they need to bundle a third-party GC. Also, different applications have different memory requirements. Tango allows the GC to be chosen at link-time, which allows for a great deal of flexibility.If we compare to Java than Sun provides more than one GC with its runtime and you can get even more specialized version GC if you really need it (real-time for example). I guess there's nothing wrong in getting a third party GC either. The point is that in Java those GCs are chosen by the runtime (you can specify if you run your app as a server or a client app and based on that the GC is chosen) or you can specify explicitly your GC too, I guess. Non of that should affect your code (unless you choose to use specific extensions to the GC API provided but a specialized GC). So, the choice of a GC doesn't affect your code.it is an issue with the compiler runtime/GC if there isn't a standard API and when I change my GC/runtime I need to edit the source.The benefit is that the vendors will compete for runtime performance which is good for the end user. I can choose vendor A's GC since it is more efficient with regards to memory (if I care for that) or vendor B's GC if it's faster, etc..Better to choose the GC separately from the compiler, then, so you can use the best of breed of each.All I care is that everything that is visible to the end user is standardized - i.e. I can do GC.collect() in my code since it's in the APIs and don't care if I use llvmdc, dil, dmd, gdc, etc.. ( I'll care for performance reasons and such of course and for that I can just switch to a different vendor without any code changes)This is a standard library issue not a compiler runtime or GC issue.Sean
Aug 23 2008
Yigal Chripun a écrit :Sean Kelly wrote: > I'd prefer being able to choose the GC I want without needing theWhat I would like to know now: is there any progress between this Tango vs Phobos discussion... I still don't know if I can rely on Tango for my dev or on phobos and I think I am not the only one.compiler vendor to supply it. Otherwise, the compiler vendor either needs to know how to write a GC (unlikely) or they need to bundle a third-party GC. Also, different applications have different memory requirements. Tango allows the GC to be chosen at link-time, which allows for a great deal of flexibility.If we compare to Java than Sun provides more than one GC with its runtime and you can get even more specialized version GC if you really need it (real-time for example). I guess there's nothing wrong in getting a third party GC either. The point is that in Java those GCs are chosen by the runtime (you can specify if you run your app as a server or a client app and based on that the GC is chosen) or you can specify explicitly your GC too, I guess. Non of that should affect your code (unless you choose to use specific extensions to the GC API provided but a specialized GC). So, the choice of a GC doesn't affect your code.it is an issue with the compiler runtime/GC if there isn't a standard API and when I change my GC/runtime I need to edit the source.The benefit is that the vendors will compete for runtime performance which is good for the end user. I can choose vendor A's GC since it is more efficient with regards to memory (if I care for that) or vendor B's GC if it's faster, etc..Better to choose the GC separately from the compiler, then, so you can use the best of breed of each.All I care is that everything that is visible to the end user is standardized - i.e. I can do GC.collect() in my code since it's in the APIs and don't care if I use llvmdc, dil, dmd, gdc, etc.. ( I'll care for performance reasons and such of course and for that I can just switch to a different vendor without any code changes)This is a standard library issue not a compiler runtime or GC issue.Sean
Aug 23 2008
My take on the Tango vs Phobos situation is: For production use the only real choice is D1 (D2 being alpha) and it looks like there are going to be so many changes in the language that going from a D1 app to a D2 app is going to require more than a bit of work and thought. So, restricting the answer to D1, Tango seems to be a more full featured , robust, and maintained library than Phobos. I'd expect that to change in D2 and expect the natural choice there will be Phobos (barring a ton of work by the Tango crew). Regardless of the choice of library for use with D1, moving to D2 with either library looks like a chore since Phobos seems to be undergoing some (much needed) significant changes from D1 to D2 versions. As to the larger topic, D is potentially caught on the horns of a dilemma: D1 is not a significant enough advance on current languages to justify a move even if there were no library concerns; D2 may well be enough of a step forward to justify a move but there is the issue of timing. My take is that if the upcoming C++ standard makes it into compilers used in common production before D2 is ready for prime time that D may never gain a real foothold in mainstream use. I'm hoping that the D2 team sets a deadline and leaves some things for a future D3 rather than miss the window of opportunity. Brian
Aug 23 2008
Brian Price wrote:My take on the Tango vs Phobos situation is: For production use the only real choice is D1 (D2 being alpha) and it looks like there are going to be so many changes in the language that going from a D1 app to a D2 app is going to require more than a bit of work and thought.It's also worth mentioning that whatever is decided, no changes are likely to occur with D1 / Phobos1 because that version of D is frozen. So from a practical standpoint I think Tango and Tangobos will continue to be the preferred approach for development under D1.So, restricting the answer to D1, Tango seems to be a more full featured , robust, and maintained library than Phobos. I'd expect that to change in D2 and expect the natural choice there will be Phobos (barring a ton of work by the Tango crew).Pretty much. Though having some sort of shared runtime /may/ affect how some of the features in tango.core are exposed. I would obviously prefer if Phobos just built on top of Tango as with the Tango / Tangobos solution for D1, but that doesn't seem likely to happen.Regardless of the choice of library for use with D1, moving to D2 with either library looks like a chore since Phobos seems to be undergoing some (much needed) significant changes from D1 to D2 versions.Yup.As to the larger topic, D is potentially caught on the horns of a dilemma: D1 is not a significant enough advance on current languages to justify a move even if there were no library concerns; D2 may well be enough of a step forward to justify a move but there is the issue of timing. My take is that if the upcoming C++ standard makes it into compilers used in common production before D2 is ready for prime time that D may never gain a real foothold in mainstream use. I'm hoping that the D2 team sets a deadline and leaves some things for a future D3 rather than miss the window of opportunity.In my opinion, the benefits of D1 over comparable mainstream languages are quite substantial but difficult to quantify. The elegance of the language tends to produce vastly more maintainable code than C++, for example, which is a huge win for team development. As far as D2 is concerned, I think it's really too early to say. My current opinion is that the feature additions in D2 impact the syntax in such a way that they eliminate much of the advantage of D1--stemming from elegance and simplicity--in exchange for largely theoretical benefits. But D2 is still in development so who knows. Sean
Aug 25 2008
Sean Kelly Wrote:Brian Price wrote:glad to hear that. there's quite a few of us who aren't quite fans of tango. i'd rather wait for bartosh walt & andrei to put their weight behind phobos2.My take on the Tango vs Phobos situation is: For production use the only real choice is D1 (D2 being alpha) and it looks like there are going to be so many changes in the language that going from a D1 app to a D2 app is going to require more than a bit of work and thought.It's also worth mentioning that whatever is decided, no changes are likely to occur with D1 / Phobos1 because that version of D is frozen. So from a practical standpoint I think Tango and Tangobos will continue to be the preferred approach for development under D1.So, restricting the answer to D1, Tango seems to be a more full featured , robust, and maintained library than Phobos. I'd expect that to change in D2 and expect the natural choice there will be Phobos (barring a ton of work by the Tango crew).Pretty much. Though having some sort of shared runtime /may/ affect how some of the features in tango.core are exposed. I would obviously prefer if Phobos just built on top of Tango as with the Tango / Tangobos solution for D1, but that doesn't seem likely to happen.u realize if u don't want that to look like fud u better back that up. i mean we could be sittin' on our ass and muse on them theoretical & practical issues. or we could write d2 and bring real arguments to the table. so how much d2 code have you written. i know i switched to d2 as soon as it was out. i have nuff freedom work to write at least part of my code in whatever. the more versions arrive with new stuff the more d1 looks to me like an ass-backwards neanderthal tool made of sticks bear claws and silex. could even go as far as sayin' d1 ain't ever gonna make it to prime time. it's just a cute lil language that has a few merits marred by its issues. all languages are like that. d2... d2 feels different because it is different. larger ambitions to address real problems in innovative ways. and leave no shit behind like most languages do in pursuit of the mother of all features. and the new team has much more knowledge than walt alone. (sorry walt. but i guess u'd agree.) so sean. how much d2 did you write. hope you agree it's hard to claim it has no practical advantages if you haven't practically used it. the irony, eh.Regardless of the choice of library for use with D1, moving to D2 with either library looks like a chore since Phobos seems to be undergoing some (much needed) significant changes from D1 to D2 versions.Yup.As to the larger topic, D is potentially caught on the horns of a dilemma: D1 is not a significant enough advance on current languages to justify a move even if there were no library concerns; D2 may well be enough of a step forward to justify a move but there is the issue of timing. My take is that if the upcoming C++ standard makes it into compilers used in common production before D2 is ready for prime time that D may never gain a real foothold in mainstream use. I'm hoping that the D2 team sets a deadline and leaves some things for a future D3 rather than miss the window of opportunity.In my opinion, the benefits of D1 over comparable mainstream languages are quite substantial but difficult to quantify. The elegance of the language tends to produce vastly more maintainable code than C++, for example, which is a huge win for team development. As far as D2 is concerned, I think it's really too early to say. My current opinion is that the feature additions in D2 impact the syntax in such a way that they eliminate much of the advantage of D1--stemming from elegance and simplicity--in exchange for largely theoretical benefits. But D2 is still in development so who knows.
Aug 25 2008
superdan wrote:Sean Kelly Wrote:A bit. I ported the Tango runtime to D2 once. The rest comes from parallels with C++. For example, one of my major issues with D2 is the syntax of the const design. It's theoretically pretty slick, but I'm not at all happy with the prospect of maintaining duplicate function implementations simply to overload on const. This is one of the things that drove me crazy about C++, and D2 is even worse in this regard because it has not only 'const' but 'invariant' as well. And don't say "don't like const, don't use it," because that isn't an option for me as a library developer. Another issue is more to do with code portability than with D2 itself. That is, the meaning of 'const' has changed between D1 and D2, with 'invariant' effectively replacing what 'const' was used for in D1. This makes it impossible to create code that has the same meaning in both versions of the language. Eventually, D1 will be forgotten and no one will care about this any more, but for Tango right now this is a significant issue in my opinion. Much of the rest is cosmetic--the sort of thing Walter likes to call "barn door" issues. I hate that we're stuck with 'enum' to signify manifest constants, for example. Heck, I hate that D supports anonymous enums at all, but making this an official feature in D2 is just crazy IMO. Maybe not a big deal to you, but what drew me to D in the first place were largely what I'd consider cosmetic improvements over C++.Brian Price wrote:glad to hear that. there's quite a few of us who aren't quite fans of tango. i'd rather wait for bartosh walt & andrei to put their weight behind phobos2.My take on the Tango vs Phobos situation is: For production use the only real choice is D1 (D2 being alpha) and it looks like there are going to be so many changes in the language that going from a D1 app to a D2 app is going to require more than a bit of work and thought.It's also worth mentioning that whatever is decided, no changes are likely to occur with D1 / Phobos1 because that version of D is frozen. So from a practical standpoint I think Tango and Tangobos will continue to be the preferred approach for development under D1.So, restricting the answer to D1, Tango seems to be a more full featured , robust, and maintained library than Phobos. I'd expect that to change in D2 and expect the natural choice there will be Phobos (barring a ton of work by the Tango crew).Pretty much. Though having some sort of shared runtime /may/ affect how some of the features in tango.core are exposed. I would obviously prefer if Phobos just built on top of Tango as with the Tango / Tangobos solution for D1, but that doesn't seem likely to happen.u realize if u don't want that to look like fud u better back that up. i mean we could be sittin' on our ass and muse on them theoretical & practical issues. or we could write d2 and bring real arguments to the table. so how much d2 code have you written.Regardless of the choice of library for use with D1, moving to D2 with either library looks like a chore since Phobos seems to be undergoing some (much needed) significant changes from D1 to D2 versions.Yup.As to the larger topic, D is potentially caught on the horns of a dilemma: D1 is not a significant enough advance on current languages to justify a move even if there were no library concerns; D2 may well be enough of a step forward to justify a move but there is the issue of timing. My take is that if the upcoming C++ standard makes it into compilers used in common production before D2 is ready for prime time that D may never gain a real foothold in mainstream use. I'm hoping that the D2 team sets a deadline and leaves some things for a future D3 rather than miss the window of opportunity.In my opinion, the benefits of D1 over comparable mainstream languages are quite substantial but difficult to quantify. The elegance of the language tends to produce vastly more maintainable code than C++, for example, which is a huge win for team development. As far as D2 is concerned, I think it's really too early to say. My current opinion is that the feature additions in D2 impact the syntax in such a way that they eliminate much of the advantage of D1--stemming from elegance and simplicity--in exchange for largely theoretical benefits. But D2 is still in development so who knows.i know i switched to d2 as soon as it was out. i have nuff freedom work to write at least part of my code in whatever. the more versions arrive with new stuff the more d1 looks to me like an ass-backwards neanderthal tool made of sticks bear claws and silex. could even go as far as sayin' d1 ain't ever gonna make it to prime time. it's just a cute lil language that has a few merits marred by its issues. all languages are like that. d2... d2 feels different because it is different. larger ambitions to address real problems in innovative ways. and leave no shit behind like most languages do in pursuit of the mother of all features. and the new team has much more knowledge than walt alone. (sorry walt. but i guess u'd agree.)Yeah, D1 is a cute little language, but it's eminently usable. All D2 really has going for it at the moment is the const stuff, and I quite honestly don't care about that. This isn't because I don't work on projects large enough to require it--my last project was a few million lines of C++ maintained by a decent sized team--but rather because I feel that inelegant syntax is a greater issue for maintenance than language support for data mutability. I'd simply rather have nothing than something that I think will produce unmaintainable code.so sean. how much d2 did you write. hope you agree it's hard to claim it has no practical advantages if you haven't practically used it. the irony, eh.Not enough to speak with experience, quite honestly. Perhaps that will chance with this shared runtime business. Sean
Aug 25 2008
Sean Kelly Wrote:superdan wrote:not sure why you keep on sneaking that `theoretically' word in. duplicate code blows, theoretically and practically. yeah that pisses me off too. i managed to avoid duplication thru concepts. dont 4get u only need to do that when you want the qualifier in the return type. often you don't. you can also rely on auto because now it deduces the return type for you. i recall walter promised he'll look into that. but i'm not holding my breath eh. constrained templates do the work for me no problem.Sean Kelly Wrote:A bit. I ported the Tango runtime to D2 once. The rest comes from parallels with C++. For example, one of my major issues with D2 is the syntax of the const design. It's theoretically pretty slick, but I'm not at all happy with the prospect of maintaining duplicate function implementations simply to overload on const. This is one of the things that drove me crazy about C++, and D2 is even worse in this regard because it has not only 'const' but 'invariant' as well. And don't say "don't like const, don't use it," because that isn't an option for me as a library developer.Brian Price wrote:glad to hear that. there's quite a few of us who aren't quite fans of tango. i'd rather wait for bartosh walt & andrei to put their weight behind phobos2.My take on the Tango vs Phobos situation is: For production use the only real choice is D1 (D2 being alpha) and it looks like there are going to be so many changes in the language that going from a D1 app to a D2 app is going to require more than a bit of work and thought.It's also worth mentioning that whatever is decided, no changes are likely to occur with D1 / Phobos1 because that version of D is frozen. So from a practical standpoint I think Tango and Tangobos will continue to be the preferred approach for development under D1.So, restricting the answer to D1, Tango seems to be a more full featured , robust, and maintained library than Phobos. I'd expect that to change in D2 and expect the natural choice there will be Phobos (barring a ton of work by the Tango crew).Pretty much. Though having some sort of shared runtime /may/ affect how some of the features in tango.core are exposed. I would obviously prefer if Phobos just built on top of Tango as with the Tango / Tangobos solution for D1, but that doesn't seem likely to happen.u realize if u don't want that to look like fud u better back that up. i mean we could be sittin' on our ass and muse on them theoretical & practical issues. or we could write d2 and bring real arguments to the table. so how much d2 code have you written.Regardless of the choice of library for use with D1, moving to D2 with either library looks like a chore since Phobos seems to be undergoing some (much needed) significant changes from D1 to D2 versions.Yup.As to the larger topic, D is potentially caught on the horns of a dilemma: D1 is not a significant enough advance on current languages to justify a move even if there were no library concerns; D2 may well be enough of a step forward to justify a move but there is the issue of timing. My take is that if the upcoming C++ standard makes it into compilers used in common production before D2 is ready for prime time that D may never gain a real foothold in mainstream use. I'm hoping that the D2 team sets a deadline and leaves some things for a future D3 rather than miss the window of opportunity.In my opinion, the benefits of D1 over comparable mainstream languages are quite substantial but difficult to quantify. The elegance of the language tends to produce vastly more maintainable code than C++, for example, which is a huge win for team development. As far as D2 is concerned, I think it's really too early to say. My current opinion is that the feature additions in D2 impact the syntax in such a way that they eliminate much of the advantage of D1--stemming from elegance and simplicity--in exchange for largely theoretical benefits. But D2 is still in development so who knows.Another issue is more to do with code portability than with D2 itself. That is, the meaning of 'const' has changed between D1 and D2, with 'invariant' effectively replacing what 'const' was used for in D1. This makes it impossible to create code that has the same meaning in both versions of the language. Eventually, D1 will be forgotten and no one will care about this any more, but for Tango right now this is a significant issue in my opinion.look the full half. for tango right now it's an issue. tomorrow it won't.Much of the rest is cosmetic--the sort of thing Walter likes to call "barn door" issues. I hate that we're stuck with 'enum' to signify manifest constants, for example. Heck, I hate that D supports anonymous enums at all, but making this an official feature in D2 is just crazy IMO. Maybe not a big deal to you, but what drew me to D in the first place were largely what I'd consider cosmetic improvements over C++.it's a big issue to me just in the opposite direction. the c enum is brain damaged. even dennis ritchie so much as acknowledged it. (and he won't budge on the definition syntax. so i guess that does mean somethin'.) the c++ enum grew one lonely neuron. problem is we got just used to the wrong. we won't blink an eye at enum { a = 1, b = 2 }; but we get pissed at enum { a = 1.1, b = 2.5 }; i myself was pissed to no end there was no way to define true constants in c++. so im super happy walter fixed that. how others can actually have a problem with that is beyond me. i had an old ford when i was a kid. it had a fidgety starter. only dad and i could start the car. just like in bttf. one day i'd opened it already so i fixed the starter. guess what. somehow i missed the old bad starter. i'd gotten used to it. but then i had a reason. now sis could start the car too. enum ain't a problem. get over urself already.> i know i switched to d2 as soon as it was out. i have nuff freedom > work to write at least part of my code in whatever. the more versions > arrive with new stuff the more d1 looks to me like an ass-backwards > neanderthal tool made of sticks bear claws and silex. could even go as > far as sayin' d1 ain't ever gonna make it to prime time. it's just a > cute lil language that has a few merits marred by its issues. allyou gotta be intercoursin' kiddin' me. hellooo. concepts. i came to the point where i call bullsolidwaste on unconstrained templates. all templates should be constrained. also destructors and the postblit business. now i can have automatic cleanup like in c++. better yet there's gc so i dun need to clean up a lot of stuff. only files'n stuff. guess someone's not keepin' with'em news.languages are like that. d2... d2 feels different because it is> different. larger ambitions to address real problems in innovativeways. and leave no shit behind like most languages do> in pursuit of the mother of all features. > and the new team has much more knowledge than walt alone. (sorry > walt. but i guess u'd agree.) Yeah, D1 is a cute little language, but it's eminently usable. All D2 really has going for it at the moment is the const stuff, and I quite honestly don't care about that.This isn't because I don't work on projects large enough to require it--my last project was a few million lines of C++ maintained by a decent sized team--but rather because I feel that inelegant syntax is a greater issue for maintenance than language support for data mutability. I'd simply rather have nothing than something that I think will produce unmaintainable code.then quite honestly ur naysayin' is tenuous.so sean. how much d2 did you write. hope you agree it's hard to claim it has no practical advantages if you haven't practically used it. the irony, eh.Not enough to speak with experience, quite honestly. Perhaps that will chance with this shared runtime business.
Aug 25 2008
superdan wrote:it's a big issue to me just in the opposite direction. the c enum is brain damaged. even dennis ritchie so much as acknowledged it. (and he won't budge on the definition syntax. so i guess that does mean somethin'.) the c++ enum grew one lonely neuron. problem is we got just used to the wrong. we won't blink an eye at enum { a = 1, b = 2 }; but we get pissed at enum { a = 1.1, b = 2.5 };I see the first as a problem, too. An enum is an _enumeration_. It should not be abused for bitfields, masks, constants or anything else. actually syntactic sugar for a class...): - Only named enums are supported (otherwise, what are you enumerating?) - They can't be used as bitfields/masks (constants can be used for this purpose) - You can't define them as arbitrary values. In D, it's all water under the bridge and it's just a keyword; it doesn't matter that much. That being said, it's still a bad selection of keyword IMO and there's no argument that's going to convince me that `enum string CRLF = "\r\n";` is somehow an _enumeration_.
Aug 25 2008
Robert Fraser Wrote:superdan wrote:yeah. an enumerated type to be pedantic. as in, let me enumerate some stuff. i don't see an integer following from that.it's a big issue to me just in the opposite direction. the c enum is brain damaged. even dennis ritchie so much as acknowledged it. (and he won't budge on the definition syntax. so i guess that does mean somethin'.) the c++ enum grew one lonely neuron. problem is we got just used to the wrong. we won't blink an eye at enum { a = 1, b = 2 }; but we get pissed at enum { a = 1.1, b = 2.5 };I see the first as a problem, too. An enum is an _enumeration_.It should not be abused for bitfields, masks, constants or anything else.that's not an abuse. it's just use. let me enumerate some math constants. enum math_constants { pi = 3.14, e = 2.71, avocado = 6.023e-23, } there was no abuse, your honor.actually syntactic sugar for a class...): - Only named enums are supported (otherwise, what are you enumerating?)i am enumerating symbolic constants that logically belong together but don't have the same type.- They can't be used as bitfields/masks (constants can be used for this purpose)but enums are constants. so it looks like those doods got it all wrong because they have two concepts for the same thing.- You can't define them as arbitrary values.how do you mean that. must pi be 10./3. or what.In D, it's all water under the bridge and it's just a keyword; it doesn't matter that much. That being said, it's still a bad selection of keyword IMO and there's no argument that's going to convince me that `enum string CRLF = "\r\n";` is somehow an _enumeration_.no but if you put it like this maybe it changes your perspective. enum line_terminator { crlf = "\r\n", cr = "\r", lf = "\n", lfcr = "\n\r" } eh.
Aug 25 2008
superdan wrote:Robert Fraser Wrote:That's fine. I'd be okay with enumerated types containing floating point values, strings, whatever. But they should always have a name. Using them to declare globally usable constants is just wrongheaded.superdan wrote:yeah. an enumerated type to be pedantic. as in, let me enumerate some stuff. i don't see an integer following from that.it's a big issue to me just in the opposite direction. the c enum is brain damaged. even dennis ritchie so much as acknowledged it. (and he won't budge on the definition syntax. so i guess that does mean somethin'.) the c++ enum grew one lonely neuron. problem is we got just used to the wrong. we won't blink an eye at enum { a = 1, b = 2 }; but we get pissed at enum { a = 1.1, b = 2.5 };I see the first as a problem, too. An enum is an _enumeration_.Yeah, I see what you're saying. I'd say that it's logically a mis-use of 'enum', but it does the trick.It should not be abused for bitfields, masks, constants or anything else.that's not an abuse. it's just use. let me enumerate some math constants. enum math_constants { pi = 3.14, e = 2.71, avocado = 6.023e-23, } there was no abuse, your honor.actually syntactic sugar for a class...): - Only named enums are supported (otherwise, what are you enumerating?)i am enumerating symbolic constants that logically belong together but don't have the same type.I disagree. An enum is a constrained type. Each element of an enum does happen to be a constant, but so what. More general constrained types would be similar: int[0..5] x; // an integer required to be between 0 and 5 Sean- They can't be used as bitfields/masks (constants can be used for this purpose)but enums are constants. so it looks like those doods got it all wrong because they have two concepts for the same thing.
Aug 26 2008
Robert Fraser wrote:I see the first as a problem, too. An enum is an _enumeration_. It should not be abused for bitfields, masks, constants or anything else. actually syntactic sugar for a class...): - Only named enums are supported (otherwise, what are you enumerating?) - They can't be used as bitfields/masks (constants can be used for this purpose) - You can't define them as arbitrary values.[Flags] // hint to the compiler: treat it as a bitfield public enum DaysOfWeek { Monday = 1, Tuesday = 2, Wednesday = 4, Thursday = 8, Friday = 16, Saturday = 32, Sunday = 64, None = 0, All = 127 } DaysOfWeek weekends = DaysOfWeek.Saturday | DaysOfWeek.Sunday;In D, it's all water under the bridge and it's just a keyword; it doesn't matter that much. That being said, it's still a bad selection of keyword IMO and there's no argument that's going to convince me that `enum string CRLF = "\r\n";` is somehow an _enumeration_.You wouldn't get to the keyword "enum" just from the definition of "enumeration". But it's not too far from the previous usage.
Aug 25 2008
Robert Fraser wrote:superdan wrote:Right. I simply disagree with the suggestion that a label is a label and we should forget about it and move on. If a word is used to represent something then the representation should be consistent with the meaning of the word, not some outdated convention from a language where the feature is considered a mistake anyway. I'd prefer to take the long view... when teaching D to college students in 10 years, what kind of answer is "well, it derives from a broken convention in a language you've never heard of" to the question "why does D use 'enum' to represent manifest constants?" However, I realize this will never change so I'll suppress my angst and move on ;-) Seanit's a big issue to me just in the opposite direction. the c enum is brain damaged. even dennis ritchie so much as acknowledged it. (and he won't budge on the definition syntax. so i guess that does mean somethin'.) the c++ enum grew one lonely neuron. problem is we got just used to the wrong. we won't blink an eye at enum { a = 1, b = 2 }; but we get pissed at enum { a = 1.1, b = 2.5 };I see the first as a problem, too. An enum is an _enumeration_. It should not be abused for bitfields, masks, constants or anything else. actually syntactic sugar for a class...): - Only named enums are supported (otherwise, what are you enumerating?) - They can't be used as bitfields/masks (constants can be used for this purpose) - You can't define them as arbitrary values. In D, it's all water under the bridge and it's just a keyword; it doesn't matter that much. That being said, it's still a bad selection of keyword IMO and there's no argument that's going to convince me that `enum string CRLF = "\r\n";` is somehow an _enumeration_.
Aug 26 2008
superdan wrote:Sean Kelly Wrote:My problem isn't with the concept, it's with the word. That's why I said it's a "barn door" issue. To me, the meaning of 'enum' is "enumerated type." It has nothing to do with declaring manifest constants. That's why I also think that anonymous enums should be illegal. Just give us a new label for this stuff ("manifest" was proposed). Or heck, make constants not addressable and eliminate storage for the altogether. I can't think of a single instance in my time as a programmer where I actually wanted to take the address of a constant. What's the point? You can't modify it anyway.superdan wrote:not sure why you keep on sneaking that `theoretically' word in. duplicate code blows, theoretically and practically. yeah that pisses me off too. i managed to avoid duplication thru concepts. dont 4get u only need to do that when you want the qualifier in the return type. often you don't. you can also rely on auto because now it deduces the return type for you. i recall walter promised he'll look into that. but i'm not holding my breath eh. constrained templates do the work for me no problem.Sean Kelly Wrote:A bit. I ported the Tango runtime to D2 once. The rest comes from parallels with C++. For example, one of my major issues with D2 is the syntax of the const design. It's theoretically pretty slick, but I'm not at all happy with the prospect of maintaining duplicate function implementations simply to overload on const. This is one of the things that drove me crazy about C++, and D2 is even worse in this regard because it has not only 'const' but 'invariant' as well. And don't say "don't like const, don't use it," because that isn't an option for me as a library developer.Brian Price wrote:glad to hear that. there's quite a few of us who aren't quite fans of tango. i'd rather wait for bartosh walt & andrei to put their weight behind phobos2.My take on the Tango vs Phobos situation is: For production use the only real choice is D1 (D2 being alpha) and it looks like there are going to be so many changes in the language that going from a D1 app to a D2 app is going to require more than a bit of work and thought.It's also worth mentioning that whatever is decided, no changes are likely to occur with D1 / Phobos1 because that version of D is frozen. So from a practical standpoint I think Tango and Tangobos will continue to be the preferred approach for development under D1.So, restricting the answer to D1, Tango seems to be a more full featured , robust, and maintained library than Phobos. I'd expect that to change in D2 and expect the natural choice there will be Phobos (barring a ton of work by the Tango crew).Pretty much. Though having some sort of shared runtime /may/ affect how some of the features in tango.core are exposed. I would obviously prefer if Phobos just built on top of Tango as with the Tango / Tangobos solution for D1, but that doesn't seem likely to happen.u realize if u don't want that to look like fud u better back that up. i mean we could be sittin' on our ass and muse on them theoretical & practical issues. or we could write d2 and bring real arguments to the table. so how much d2 code have you written.Regardless of the choice of library for use with D1, moving to D2 with either library looks like a chore since Phobos seems to be undergoing some (much needed) significant changes from D1 to D2 versions.Yup.As to the larger topic, D is potentially caught on the horns of a dilemma: D1 is not a significant enough advance on current languages to justify a move even if there were no library concerns; D2 may well be enough of a step forward to justify a move but there is the issue of timing. My take is that if the upcoming C++ standard makes it into compilers used in common production before D2 is ready for prime time that D may never gain a real foothold in mainstream use. I'm hoping that the D2 team sets a deadline and leaves some things for a future D3 rather than miss the window of opportunity.In my opinion, the benefits of D1 over comparable mainstream languages are quite substantial but difficult to quantify. The elegance of the language tends to produce vastly more maintainable code than C++, for example, which is a huge win for team development. As far as D2 is concerned, I think it's really too early to say. My current opinion is that the feature additions in D2 impact the syntax in such a way that they eliminate much of the advantage of D1--stemming from elegance and simplicity--in exchange for largely theoretical benefits. But D2 is still in development so who knows.Another issue is more to do with code portability than with D2 itself. That is, the meaning of 'const' has changed between D1 and D2, with 'invariant' effectively replacing what 'const' was used for in D1. This makes it impossible to create code that has the same meaning in both versions of the language. Eventually, D1 will be forgotten and no one will care about this any more, but for Tango right now this is a significant issue in my opinion.look the full half. for tango right now it's an issue. tomorrow it won't.Much of the rest is cosmetic--the sort of thing Walter likes to call "barn door" issues. I hate that we're stuck with 'enum' to signify manifest constants, for example. Heck, I hate that D supports anonymous enums at all, but making this an official feature in D2 is just crazy IMO. Maybe not a big deal to you, but what drew me to D in the first place were largely what I'd consider cosmetic improvements over C++.it's a big issue to me just in the opposite direction. the c enum is brain damaged. even dennis ritchie so much as acknowledged it. (and he won't budge on the definition syntax. so i guess that does mean somethin'.) the c++ enum grew one lonely neuron. problem is we got just used to the wrong. we won't blink an eye at enum { a = 1, b = 2 }; but we get pissed at enum { a = 1.1, b = 2.5 }; i myself was pissed to no end there was no way to define true constants in c++. so im super happy walter fixed that. how others can actually have a problem with that is beyond me. i had an old ford when i was a kid. it had a fidgety starter. only dad and i could start the car. just like in bttf. one day i'd opened it already so i fixed the starter. guess what. somehow i missed the old bad starter. i'd gotten used to it. but then i had a reason. now sis could start the car too. enum ain't a problem. get over urself already.Concepts can be done in D1 as well. The D2 stuff is just syntactic sugar for: void fn(T, bool cond : true = SomeTest!(T))( T val ) {} I've been doing this sort of thing in Tango forever. That isn't to say that I don't want real concept support--I totally do--it just isn't worth some of the other baggage in D2 right now. Tell you the truth, what I probably want most from D2 is overload sets. Function overloading in D1 just plain sucks and is a constant annoyance for me. Fixing this alone is enough to make me put up with a lot of other stuff I don't like. But on the flip side I can't actually use it yet because Tango has to work on D1 as well.> i know i switched to d2 as soon as it was out. i have nuff freedom > work to write at least part of my code in whatever. the more versions > arrive with new stuff the more d1 looks to me like an ass-backwards > neanderthal tool made of sticks bear claws and silex. could even go as > far as sayin' d1 ain't ever gonna make it to prime time. it's just a > cute lil language that has a few merits marred by its issues. allyou gotta be intercoursin' kiddin' me. hellooo. concepts. i came to the point where i call bullsolidwaste on unconstrained templates. all templates should be constrained. also destructors and the postblit business. now i can have automatic cleanup like in c++. better yet there's gc so i dun need to clean up a lot of stuff. only files'n stuff.languages are like that. d2... d2 feels different because it is> different. larger ambitions to address real problems in innovativeways. and leave no shit behind like most languages do> in pursuit of the mother of all features. > and the new team has much more knowledge than walt alone. (sorry > walt. but i guess u'd agree.) Yeah, D1 is a cute little language, but it's eminently usable. All D2 really has going for it at the moment is the const stuff, and I quite honestly don't care about that.guess someone's not keepin' with'em news.Nah. I only care about features I can't fake in D1 already.I said at the start that it's my current opinion and may change, so yeah, it's totally tenuous. SeanThis isn't because I don't work on projects large enough to require it--my last project was a few million lines of C++ maintained by a decent sized team--but rather because I feel that inelegant syntax is a greater issue for maintenance than language support for data mutability. I'd simply rather have nothing than something that I think will produce unmaintainable code.then quite honestly ur naysayin' is tenuous.so sean. how much d2 did you write. hope you agree it's hard to claim it has no practical advantages if you haven't practically used it. the irony, eh.Not enough to speak with experience, quite honestly. Perhaps that will chance with this shared runtime business.
Aug 26 2008
Sean Kelly Wrote:superdan wrote:guess u have to retake the driving test then. enumerated type means: i enumerate this type's possible values. they are necessarily constants. and since they are there they are manifest. viola. da gamba.enum ain't a problem. get over urself already.My problem isn't with the concept, it's with the word. That's why I said it's a "barn door" issue. To me, the meaning of 'enum' is "enumerated type." It has nothing to do with declaring manifest constants.That's why I also think that anonymous enums should be illegal.then anonymous classes should be illegal too?Just give us a new label for this stuff ("manifest" was proposed).talkin' about that long view of yers. imagine teaching kids. hey-hey, kids. today we do constant definitions. well, we sure aren't lackin'em. the more the merrier. const a = 1; invariant a = 1; enum { a = 1 } manifest a = 1; teacher: in this case none. teacher: in all cases none. teacher: they have different meanings as we talked yesterday in the megacore class. teacher: oops, bell's ringin'. don't forget the homework for tomorrow: implement opIndex in o(n).Or heck, make constants not addressable and eliminate storage for the altogether.that ruins everything about const.I can't think of a single instance in my time as a programmer where I actually wanted to take the address of a constant. What's the point? You can't modify it anyway.taking a slice off a const string.see here's some fud again.Concepts can be done in D1 as well. The D2 stuff is just syntactic sugar for: void fn(T, bool cond : true = SomeTest!(T))( T val ) {} I've been doing this sort of thing in Tango forever. That isn't to say that I don't want real concept support--I totally do--it just isn't worth some of the other baggage in D2 right now.> i know i switched to d2 as soon as it was out. i have nuff freedom > work to write at least part of my code in whatever. the more versions > arrive with new stuff the more d1 looks to me like an ass-backwards > neanderthal tool made of sticks bear claws and silex. could even go as > far as sayin' d1 ain't ever gonna make it to prime time. it's just a > cute lil language that has a few merits marred by its issues. allyou gotta be intercoursin' kiddin' me. hellooo. concepts. i came to the point where i call bullsolidwaste on unconstrained templates. all templates should be constrained. also destructors and the postblit business. now i can have automatic cleanup like in c++. better yet there's gc so i dun need to clean up a lot of stuff. only files'n stuff.languages are like that. d2... d2 feels different because it is> different. larger ambitions to address real problems in innovativeways. and leave no shit behind like most languages do> in pursuit of the mother of all features. > and the new team has much more knowledge than walt alone. (sorry > walt. but i guess u'd agree.) Yeah, D1 is a cute little language, but it's eminently usable. All D2 really has going for it at the moment is the const stuff, and I quite honestly don't care about that.Tell you the truth, what I probably want most from D2 is overload sets. Function overloading in D1 just plain sucks and is a constant annoyance for me. Fixing this alone is enough to make me put up with a lot of other stuff I don't like. But on the flip side I can't actually use it yet because Tango has to work on D1 as well.overload sets are cool. guess if i were a shrink i'd say ur beef with d2 is that u have this tango/d1 worry hangin' over ya.cool. then guess u can help it.guess someone's not keepin' with'em news.Nah. I only care about features I can't fake in D1 already.I said at the start that it's my current opinion and may change, so yeah, it's totally tenuous.This isn't because I don't work on projects large enough to require it--my last project was a few million lines of C++ maintained by a decent sized team--but rather because I feel that inelegant syntax is a greater issue for maintenance than language support for data mutability. I'd simply rather have nothing than something that I think will produce unmaintainable code.then quite honestly ur naysayin' is tenuous.so sean. how much d2 did you write. hope you agree it's hard to claim it has no practical advantages if you haven't practically used it. the irony, eh.Not enough to speak with experience, quite honestly. Perhaps that will chance with this shared runtime business.
Aug 26 2008
Sean Kelly wrote:Another issue is more to do with code portability than with D2 itself. That is, the meaning of 'const' has changed between D1 and D2, with 'invariant' effectively replacing what 'const' was used for in D1. This makes it impossible to create code that has the same meaning in both versions of the language.What if D1 was augmented to allow the keyword invariant in those cases where D2 has a conflicting meaning for const? That wouldn't break any D1 code or add any functionality. I think it's a fair request.
Aug 25 2008
superdan wrote:d2... d2 feels different because it is different. larger ambitions to address real problems in innovative ways. and leave no shit behind like most languages do in pursuit of the mother of all features. and the new team has much more knowledge than walt alone. (sorry walt. but i guess u'd agree.)I would agree. D1 was about at the limit of my abilities. D2 goes way beyond that, and that is possible because it is much more of a team effort.
Aug 25 2008
Vincent Richomme wrote:Yigal Chripun a écrit :Yes. SeanSean Kelly wrote: > I'd prefer being able to choose the GC I want without needing theWhat I would like to know now: is there any progress between this Tango vs Phobos discussion... I still don't know if I can rely on Tango for my dev or on phobos and I think I am not the only one.compiler vendor to supply it. Otherwise, the compiler vendor either needs to know how to write a GC (unlikely) or they need to bundle a third-party GC. Also, different applications have different memory requirements. Tango allows the GC to be chosen at link-time, which allows for a great deal of flexibility.If we compare to Java than Sun provides more than one GC with its runtime and you can get even more specialized version GC if you really need it (real-time for example). I guess there's nothing wrong in getting a third party GC either. The point is that in Java those GCs are chosen by the runtime (you can specify if you run your app as a server or a client app and based on that the GC is chosen) or you can specify explicitly your GC too, I guess. Non of that should affect your code (unless you choose to use specific extensions to the GC API provided but a specialized GC). So, the choice of a GC doesn't affect your code.it is an issue with the compiler runtime/GC if there isn't a standard API and when I change my GC/runtime I need to edit the source.The benefit is that the vendors will compete for runtime performance which is good for the end user. I can choose vendor A's GC since it is more efficient with regards to memory (if I care for that) or vendor B's GC if it's faster, etc..Better to choose the GC separately from the compiler, then, so you can use the best of breed of each.All I care is that everything that is visible to the end user is standardized - i.e. I can do GC.collect() in my code since it's in the APIs and don't care if I use llvmdc, dil, dmd, gdc, etc.. ( I'll care for performance reasons and such of course and for that I can just switch to a different vendor without any code changes)This is a standard library issue not a compiler runtime or GC issue.
Aug 25 2008
Yigal Chripun wrote:Sean Kelly wrote: > I'd prefer being able to choose the GC I want without needing theIt shouldn't, or there would be little point in supporting swappable GCs.compiler vendor to supply it. Otherwise, the compiler vendor either needs to know how to write a GC (unlikely) or they need to bundle a third-party GC. Also, different applications have different memory requirements. Tango allows the GC to be chosen at link-time, which allows for a great deal of flexibility.If we compare to Java than Sun provides more than one GC with its runtime and you can get even more specialized version GC if you really need it (real-time for example). I guess there's nothing wrong in getting a third party GC either. The point is that in Java those GCs are chosen by the runtime (you can specify if you run your app as a server or a client app and based on that the GC is chosen) or you can specify explicitly your GC too, I guess. Non of that should affect your code (unless you choose to use specific extensions to the GC API provided but a specialized GC). So, the choice of a GC doesn't affect your code.Fortunately, Tango provides such a "standard API" so no source changes are needed unless you do something like drop in a "GC" that simply calls malloc and free, in which case your app will leak if it isn't written with this in mind. Seanit is an issue with the compiler runtime/GC if there isn't a standard API and when I change my GC/runtime I need to edit the source.The benefit is that the vendors will compete for runtime performance which is good for the end user. I can choose vendor A's GC since it is more efficient with regards to memory (if I care for that) or vendor B's GC if it's faster, etc..Better to choose the GC separately from the compiler, then, so you can use the best of breed of each.All I care is that everything that is visible to the end user is standardized - i.e. I can do GC.collect() in my code since it's in the APIs and don't care if I use llvmdc, dil, dmd, gdc, etc.. ( I'll care for performance reasons and such of course and for that I can just switch to a different vendor without any code changes)This is a standard library issue not a compiler runtime or GC issue.
Aug 25 2008
Sean Kelly Wrote:Yigal Chripun wrote:Just wanted to voice that being able to overload the GC functions as in the D Conference 2007 talk is kind of a killer feature for me. Whatever shakedown happens from the phobos/tango runtime unificiation (which IMHO should be the first priority for the D 'standard library community') I really hope the swappable GC functions stay.Sean Kelly wrote: > I'd prefer being able to choose the GC I want without needing theIt shouldn't, or there would be little point in supporting swappable GCs.compiler vendor to supply it. Otherwise, the compiler vendor either needs to know how to write a GC (unlikely) or they need to bundle a third-party GC. Also, different applications have different memory requirements. Tango allows the GC to be chosen at link-time, which allows for a great deal of flexibility.If we compare to Java than Sun provides more than one GC with its runtime and you can get even more specialized version GC if you really need it (real-time for example). I guess there's nothing wrong in getting a third party GC either. The point is that in Java those GCs are chosen by the runtime (you can specify if you run your app as a server or a client app and based on that the GC is chosen) or you can specify explicitly your GC too, I guess. Non of that should affect your code (unless you choose to use specific extensions to the GC API provided but a specialized GC). So, the choice of a GC doesn't affect your code.Fortunately, Tango provides such a "standard API" so no source changes are needed unless you do something like drop in a "GC" that simply calls malloc and free, in which case your app will leak if it isn't written with this in mind. Seanit is an issue with the compiler runtime/GC if there isn't a standard API and when I change my GC/runtime I need to edit the source.The benefit is that the vendors will compete for runtime performance which is good for the end user. I can choose vendor A's GC since it is more efficient with regards to memory (if I care for that) or vendor B's GC if it's faster, etc..Better to choose the GC separately from the compiler, then, so you can use the best of breed of each.All I care is that everything that is visible to the end user is standardized - i.e. I can do GC.collect() in my code since it's in the APIs and don't care if I use llvmdc, dil, dmd, gdc, etc.. ( I'll care for performance reasons and such of course and for that I can just switch to a different vendor without any code changes)This is a standard library issue not a compiler runtime or GC issue.
Aug 25 2008
Yigal Chripun wrote:Lars Ivar Igesund wrote:I think it's worth distinguishing a bit more detail: my code -------------------------- standard library | ------------------------------------------------------- compiler runtime | garbage collector | std. lib runtime With the above model, the runtime is actually made up of three distinct components: the compiler support code, the GC, and some user-visible runtime code which I've termed the "standard library runtime." This model provides a clear division of labor: the compiler writer worries only about the compiler support code, OS geeks can create the GC, and library programmers can work on the library bit. SeanLutger wrote:I don't understand your point. are you suggesting that things like the GC will be independent from the compiler? It seems to me that the model suggested by Sean is the way to go: ie: my code ---------- standard library user code and standardized APIs to the runtime (threading, etc --------------------------------- compiler + runtime A | compiler + runtime B | ..... if a user isn't satisfied by runtime/compiler A he should just switch vendors. All the user facing APIs are standardized in the stdlib so all is needed is to recompile..Lars Ivar Igesund wrote:Unification, yes. You misunderstood my point, which is that the runtime implementation (not the compiler specific portion and direct language support) should, IMO, be independent. As long as Walter/DigitalMars is the developer of the language itself, it will be natural that eventual new features that the language requires from the runtime, will be bootstrapped by code from Walter, but I think Sean's work on the runtime in Tango shows that such initial implementation can have large potential for improvements.Steven Schveighoffer wrote:How does it ignore it? It sounds rather like the opposite to me: the very existence of multiple runtimes and the vested interest in those runtimes (Tango's primarily) are the key reason for unification.This is my view (might not work, but I think it could). For purposes of simplicity, I'll assume Walter currently develops the Phobos runtime (not that he doesn't, but I'm really not sure :). Maintenance of the merged runtime would become Walter's responsibility, with your help if necessary (ideas and help understanding, and enhancements if you wish). Any changes desired for the runtime would go through Phobos (and Walter). The Tango lib would use the now tango-fied Phobos runtime, with alias imports for existing code (e.g. tango.core.Thread would either publicly import std.thread or would privately import it, and alias the Thread class).Based on historical evidence, this doesn't sound like a particularly good idea. The current situation ensued for a reason. Also, I find that this discussion quite completely ignores the fact that DMD is not the only D compiler anymore, and Walter is not the only one with a vested interest in the functionality. In fact it looks like quite many of the Tango conference attendants wants to discuss the runtime.The compiler part would have to conform to the necessary interfaces, of course, but at some level the implementation details needs to be, and not all can be kept in the compiler itself, thus it must be somewhere in the runtime. I don't see this as a problem, just a necessary evil.If there should be a common-common (not only "just" compatible) runtime, it shouldn't be controlled by one compiler vendor. Note that the Tango runtime consists of 3 parts, where only one is compiler specific. That particular part should probably be controlled/reviewed by the compiler vendor, the rest (GC, threading, other things) should be independent.I'll admit my understanding is limited, but I'd guess that will lead to even further fragmentation and non-portability.
Aug 18 2008
Lars Ivar Igesund wrote:Lutger wrote:...Ok I think I understand and agree that some room for this potential would be good, of course. What I'm worried about is that D libraries will depend on specific api (not only implementation) of the runtime, which could lead to a mess when we'll have more and more of such implementations. Simply put, I'm afraid that in the future to make a cross-platform code we'll have to do something equivalent to a C++ header file consisting of dozens of bizarre #ifdef ... #elif etc. logic. Or worse, need a massive porting effort or wrapping libraries a la tangobos if you need a D library developed for a different compiler. Perhaps more interfaces could be standardized? I don't know. I'd hate to see a thread in some years called 'phobos vs tango vs dil vs dang vs llvmdc vs etc.' ;) </hyperbole>How does it ignore it? It sounds rather like the opposite to me: the very existence of multiple runtimes and the vested interest in those runtimes (Tango's primarily) are the key reason for unification.Unification, yes. You misunderstood my point, which is that the runtime implementation (not the compiler specific portion and direct language support) should, IMO, be independent. As long as Walter/DigitalMars is the developer of the language itself, it will be natural that eventual new features that the language requires from the runtime, will be bootstrapped by code from Walter, but I think Sean's work on the runtime in Tango shows that such initial implementation can have large potential for improvements.
Aug 16 2008
Lutger wrote:Lars Ivar Igesund wrote:A way to ensure that there are common, good and well defined interfaces is what I try to hint at. I don't think all of those can be properly achieved by letting one vendor decide. I also think that having a common place to have the compiler independent implementation would help this goal, ie that compiler vendors don't need to write this themselves. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoLutger wrote:...Ok I think I understand and agree that some room for this potential would be good, of course. What I'm worried about is that D libraries will depend on specific api (not only implementation) of the runtime, which could lead to a mess when we'll have more and more of such implementations. Simply put, I'm afraid that in the future to make a cross-platform code we'll have to do something equivalent to a C++ header file consisting of dozens of bizarre #ifdef ... #elif etc. logic. Or worse, need a massive porting effort or wrapping libraries a la tangobos if you need a D library developed for a different compiler.How does it ignore it? It sounds rather like the opposite to me: the very existence of multiple runtimes and the vested interest in those runtimes (Tango's primarily) are the key reason for unification.Unification, yes. You misunderstood my point, which is that the runtime implementation (not the compiler specific portion and direct language support) should, IMO, be independent. As long as Walter/DigitalMars is the developer of the language itself, it will be natural that eventual new features that the language requires from the runtime, will be bootstrapped by code from Walter, but I think Sean's work on the runtime in Tango shows that such initial implementation can have large potential for improvements.
Aug 16 2008
Lutger wrote:Lars Ivar Igesund wrote:This is why the Tango runtime is designed the way it is -- it eliminates all dependency on standard library implementation. The API exposed is very simply and completely portable.Lutger wrote:...Ok I think I understand and agree that some room for this potential would be good, of course. What I'm worried about is that D libraries will depend on specific api (not only implementation) of the runtime, which could lead to a mess when we'll have more and more of such implementations.How does it ignore it? It sounds rather like the opposite to me: the very existence of multiple runtimes and the vested interest in those runtimes (Tango's primarily) are the key reason for unification.Unification, yes. You misunderstood my point, which is that the runtime implementation (not the compiler specific portion and direct language support) should, IMO, be independent. As long as Walter/DigitalMars is the developer of the language itself, it will be natural that eventual new features that the language requires from the runtime, will be bootstrapped by code from Walter, but I think Sean's work on the runtime in Tango shows that such initial implementation can have large potential for improvements.Simply put, I'm afraid that in the future to make a cross-platform code we'll have to do something equivalent to a C++ header file consisting of dozens of bizarre #ifdef ... #elif etc. logic. Or worse, need a massive porting effort or wrapping libraries a la tangobos if you need a D library developed for a different compiler.And this is the reason for making the runtime separately available from /any/ standard library :-) Sean
Aug 18 2008
Lars Ivar Igesund Wrote:Based on historical evidence, this doesn't sound like a particularly good idea. The current situation ensued for a reason.* sigh *
Aug 15 2008
Steven Schveighoffer wrote:As far as threads, I agree. One must be chosen.The threading issue is more problematic. D 2.0 is doing a ground up rethink on how to approach threading, and it's hard to imagine that not impacting the threading part of the library. A common exception base is much more straightforward.
Aug 15 2008
Walter Bright wrote:Steven Schveighoffer wrote:So is classic threading going to be thrown out entirely? If so then I guess it eliminates the problem of exposing a Thread class.As far as threads, I agree. One must be chosen.The threading issue is more problematic. D 2.0 is doing a ground up rethink on how to approach threading, and it's hard to imagine that not impacting the threading part of the library.A common exception base is much more straightforward.Agreed. Sean
Aug 15 2008
Sean Kelly wrote:Walter Bright wrote:I don't know. Bartosz is working on it. He understands the issues far better than I do. What I do believe is that handling concurrency well will be a breakthrough feature for D.Steven Schveighoffer wrote:So is classic threading going to be thrown out entirely? If so then I guess it eliminates the problem of exposing a Thread class.As far as threads, I agree. One must be chosen.The threading issue is more problematic. D 2.0 is doing a ground up rethink on how to approach threading, and it's hard to imagine that not impacting the threading part of the library.
Aug 15 2008
On Fri, 15 Aug 2008 14:41:20 -0700, Walter Bright wrote:Sean Kelly wrote:Sounds like a nifty feature, but please keep in mind that users like to have control about everything if they want to. Otherwise D is becoming quite restricted. Like the garbage collector (GC) can be turned off and manual memory management can be used, automatic threading in D should give similar control. But the current gc handling is a bit inflexible. Turning off the gc still leaves the gc code in the binary without additional work. But that's another story. :)Walter Bright wrote:I don't know. Bartosz is working on it. He understands the issues far better than I do. What I do believe is that handling concurrency well will be a breakthrough feature for D.Steven Schveighoffer wrote:So is classic threading going to be thrown out entirely? If so then I guess it eliminates the problem of exposing a Thread class.As far as threads, I agree. One must be chosen.The threading issue is more problematic. D 2.0 is doing a ground up rethink on how to approach threading, and it's hard to imagine that not impacting the threading part of the library.
Aug 15 2008
Yigal Chripun wrote:In this Specific case: Walter needs his name on all the Phobos code and he stated his valid reasons for it. Tango developers want their names on the Tango code and rightly so, since they wrote it. in case of a merger of those two code bases you get one joint code base but *two* teams that want their name on the code. someone has to be first.No, I do not "need my name" on the Phobos code. I have no interest in taking credit for others' work. As I have stated previously, the idea here is to: 1. To ensure Phobos is free of any legal taint and any accusations of stealing code. 2. To avoid the untenable issue of a single module in Phobos having different license for different lines of code. It is not an issue of credit, I have no problem with (and strongly encourage) the people who wrote the code having their name in it and taking credit. At one point, Brad was trying to do some merging and was accused of "stealing" from Tango. I was told later that this was in jest, but this kind of thing cannot be taken lightly. Phobos needs to be squeaky clean in the legal department. I have done my part and have provided an explicit, clear, and unambiguous license for Tango to use whatever parts of Phobos they need and to put it under the Tango license (for all the parts for which I have a right to do so). All I ask is for a reciprocal agreement.
Aug 14 2008
Walter Bright wrote:Yigal Chripun wrote:Walter, from my POV which is that of a user, all I see is a huge storm in a cup of water from a year ago. I do not take a side in this nor do I care for the issues both sides raise. as I've said in my previous post which is quoted in this post already and I'll quote here again "[Walter] stated his valid reasons". So you see, I do not question your reasons. All I see as a user is that Steven compared the licenses and they're almost Identical, Sean Kelly has given you permission to all his code and I see his posts and see no reason this hasn't been solved a year ago. I'm a user. I should not care if contributer A insulted/jested with Developer B. Since you do not have any issues with giving credit (where it is due) and Sean gave you a free hand with all his code, All of your points above are achieved in regard to the runtime. You want more prove to see the authors of the runtime? Check the version control logs. But really, unless this issue is solved and solved *soon*, both versions of D are a dead end. This is far more important to resolve than any new feature in D2. again, as an average user that just want to use D, I can happily live without array ops, native thread local memory and other features for a few months, But I really must insist that D needs a standardized runtime library, now. otherwise I have no use for D at all no matter what fancy tricks it has under its sleeves. The only thing left to say is that this should be handled in the same way a pope is selected: all cardinals gather in his room and they are not allowed to leave this room until a new pope is selected which is signaled by white smoke. (I've been to Italy and the guide showed us where it supposed to come from). this is what currently needed to solve this. put everything else aside (both you and the Tango devs) and give us white smoke. until I see that white smoke coming from this NG, I (and I'm sure many others) will see no future in D.In this Specific case: Walter needs his name on all the Phobos code and he stated his valid reasons for it. Tango developers want their names on the Tango code and rightly so, since they wrote it. in case of a merger of those two code bases you get one joint code base but *two* teams that want their name on the code. someone has to be first.No, I do not "need my name" on the Phobos code. I have no interest in taking credit for others' work. As I have stated previously, the idea here is to: 1. To ensure Phobos is free of any legal taint and any accusations of stealing code. 2. To avoid the untenable issue of a single module in Phobos having different license for different lines of code. It is not an issue of credit, I have no problem with (and strongly encourage) the people who wrote the code having their name in it and taking credit. At one point, Brad was trying to do some merging and was accused of "stealing" from Tango. I was told later that this was in jest, but this kind of thing cannot be taken lightly. Phobos needs to be squeaky clean in the legal department. I have done my part and have provided an explicit, clear, and unambiguous license for Tango to use whatever parts of Phobos they need and to put it under the Tango license (for all the parts for which I have a right to do so). All I ask is for a reciprocal agreement.
Aug 14 2008
Yigal Chripun wrote:Since you do not have any issues with giving credit (where it is due) and Sean gave you a free hand with all his code, All of your points above are achieved in regard to the runtime.Sean has sent me a zip of the runtime code that he owns. I think that will be adequate to resolve the problem.
Aug 14 2008
Walter Bright wrote:Lars Ivar Igesund wrote:From phobos/phoboslicense.txt: * Copyright (C) 2004-2005 by Digital Mars, www.digitalmars.com * Written by Walter Bright (followed by BSD license) Those lines are an issue. Are you asking for copyright assignment? That's a bit much to ask. An alternative problem is this: * Placed in the Public Domain A number of modules in phobos/internal are marked public domain. Are you asking for Tango's internals to be placed in the public domain? That also is a bit much to ask. The BSD license is simply public domain with attribution. So what is the issue with using it? Phobos already uses it. Just with your name as the copyright holder. Or do you want an agreement to allow relicensing of Phobos and Tango, let's say to incompatible licenses, and still allow Phobos and Tango to share code afterward? It's unclear what you want or need that you don't already have.Walter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit. I've dealt with lawyers many times, and spelling it out directly and explicitly avoids a lot of future potential problems. Furthermore, if Phobos has a wishy-washy legal pedigree, corporate lawyers will not buy off on allowing D to be used in their companies. This issue must be settled in advance of looking at Tango, not after the fact.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)
Aug 14 2008
Christopher Wright wrote:Walter Bright wrote:Walter is asking for us to give him the right to distribute any and all of Tango within Phobos under the Public Domain license. What I've never understood is why it's enough for myself, Kris, and Lars to provide this permission when Tango has had a ton of individual contributors. But then I am not a lawyer. SeanLars Ivar Igesund wrote:From phobos/phoboslicense.txt: * Copyright (C) 2004-2005 by Digital Mars, www.digitalmars.com * Written by Walter Bright (followed by BSD license) Those lines are an issue. Are you asking for copyright assignment? That's a bit much to ask. An alternative problem is this: * Placed in the Public Domain A number of modules in phobos/internal are marked public domain. Are you asking for Tango's internals to be placed in the public domain? That also is a bit much to ask.Walter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit. I've dealt with lawyers many times, and spelling it out directly and explicitly avoids a lot of future potential problems. Furthermore, if Phobos has a wishy-washy legal pedigree, corporate lawyers will not buy off on allowing D to be used in their companies. This issue must be settled in advance of looking at Tango, not after the fact.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)
Aug 14 2008
Sean Kelly wrote:Walter is asking for us to give him the right to distribute any and all of Tango within Phobos under the Public Domain license. What I've never understood is why it's enough for myself, Kris, and Lars to provide this permission when Tango has had a ton of individual contributors. But then I am not a lawyer.Because you guys are the leaders and spokesmen for Tango. But that's moot at the moment anyway, because it seems what you have provided is sufficient, and I thank you for that.
Aug 14 2008
Christopher Wright wrote:Walter Bright wrote:I've provided the same to Tango.Lars Ivar Igesund wrote:From phobos/phoboslicense.txt: * Copyright (C) 2004-2005 by Digital Mars, www.digitalmars.com * Written by Walter Bright (followed by BSD license) Those lines are an issue. Are you asking for copyright assignment? That's a bit much to ask.Walter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit. I've dealt with lawyers many times, and spelling it out directly and explicitly avoids a lot of future potential problems. Furthermore, if Phobos has a wishy-washy legal pedigree, corporate lawyers will not buy off on allowing D to be used in their companies. This issue must be settled in advance of looking at Tango, not after the fact.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)An alternative problem is this: * Placed in the Public Domain A number of modules in phobos/internal are marked public domain. Are you asking for Tango's internals to be placed in the public domain? That also is a bit much to ask.Why is it a bit much to ask?The BSD license is simply public domain with attribution.No, it is not. Public Domain code is not copyrighted and does not require a license.So what is the issue with using it? Phobos already uses it. Just with your name as the copyright holder. Or do you want an agreement to allow relicensing of Phobos and Tango, let's say to incompatible licenses, and still allow Phobos and Tango to share code afterward? It's unclear what you want or need that you don't already have.The problems are two: 1. Phobos has already been accused of stealing code from Tango. Therefore, I would like explicit permission from the Tango team. I am not going to take code from Tango and put it in Phobos without explicit permission from the Tango team. Any hint of Phobos not having a clean legal pedigree will impair its adoption. 2. Having multiple licenses for one source module is an untenable situation.
Aug 14 2008
Walter Bright Wrote:The problems are two: 1. Phobos has already been accused of stealing code from Tango. Therefore, I would like explicit permission from the Tango team. I am not going to take code from Tango and put it in Phobos without explicit permission from the Tango team. Any hint of Phobos not having a clean legal pedigree will impair its adoption. 2. Having multiple licenses for one source module is an untenable situation.From reading this thread, it seems Sean gave permission for the Tango runtime to be re-licensed under the Phobos one. Given this, is the roadblock that you also need permission for the user code or that Sean's permission given for the runtime was not explicit enough?
Aug 14 2008
Walter Bright wrote:Christopher Wright wrote:If you had assigned your copyright to the Tango developers, then the files would read: * Copyright (C) 2004-2005 by Sean Kelly, Lars Ivar Igesund, Don Clugson....Walter Bright wrote:I've provided the same to Tango.Lars Ivar Igesund wrote:From phobos/phoboslicense.txt: * Copyright (C) 2004-2005 by Digital Mars, www.digitalmars.com * Written by Walter Bright (followed by BSD license) Those lines are an issue. Are you asking for copyright assignment? That's a bit much to ask.Walter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit. I've dealt with lawyers many times, and spelling it out directly and explicitly avoids a lot of future potential problems. Furthermore, if Phobos has a wishy-washy legal pedigree, corporate lawyers will not buy off on allowing D to be used in their companies. This issue must be settled in advance of looking at Tango, not after the fact.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)The BSD license allows anyone to do anything with the work as long as the authors get proper recognition. The one incentive to distribute the work is this recognition (besides encouraging others to help with the project). If you're not going to take any Tango code and claim that it is yours, then the BSD license shouldn't cause any problems for you. If you require public domain, that implies that the BSD license causes problems for you. That implies that you're going to steal code. I don't believe that you would do so. But by requiring Tango to be placed in the public domain, you're allowing everyone else to do so.An alternative problem is this: * Placed in the Public Domain A number of modules in phobos/internal are marked public domain. Are you asking for Tango's internals to be placed in the public domain? That also is a bit much to ask.Why is it a bit much to ask?The BSD license is explicit permission. Or do you intend to redistribute Tango code without proper attribution?The BSD license is simply public domain with attribution.No, it is not. Public Domain code is not copyrighted and does not require a license.So what is the issue with using it? Phobos already uses it. Just with your name as the copyright holder. Or do you want an agreement to allow relicensing of Phobos and Tango, let's say to incompatible licenses, and still allow Phobos and Tango to share code afterward? It's unclear what you want or need that you don't already have.The problems are two: 1. Phobos has already been accused of stealing code from Tango. Therefore, I would like explicit permission from the Tango team. I am not going to take code from Tango and put it in Phobos without explicit permission from the Tango team. Any hint of Phobos not having a clean legal pedigree will impair its adoption.2. Having multiple licenses for one source module is an untenable situation.You can license any merged modules under the BSD license, unless they are under some other license currently. Public domain isn't a license, and it's compatible with every license.
Aug 14 2008
Christopher Wright Wrote:Walter Bright wrote:you're not following what walt says eh. his problem is not he wanna steal and get away with it. problem is that he doesn't wanna be accused of stealing. poop man. he got accused before even lookin' at the gorram thing. also his problem is not he doesn't wanna acknowledge whodunit. i grepped around phobos and there's many names in there. there's even a guy whos name is in there tho all his stuff has been rewritten since. what walt wanna is look at tango without fear that some dood will cry he stole his code. after all there's only this many ways you can do trivial sh... stuff like async i/o and logging and containers. slander comes easily and goes not so easily. is he paranoid? sure as hell he is. oh, wait. some dood _did_ cry walt stole (thru brad) his precious soon as they was within a hundred miles. all this while walt is known to give credit down to the dog pooping in the driveway walt was looking at when he came with an idea. give me an intercoursing break.Christopher Wright wrote:The BSD license allows anyone to do anything with the work as long as the authors get proper recognition. The one incentive to distribute the work is this recognition (besides encouraging others to help with the project). If you're not going to take any Tango code and claim that it is yours, then the BSD license shouldn't cause any problems for you. If you require public domain, that implies that the BSD license causes problems for you. That implies that you're going to steal code.A number of modules in phobos/internal are marked public domain. Are you asking for Tango's internals to be placed in the public domain? That also is a bit much to ask.Why is it a bit much to ask?I don't believe that you would do so. But by requiring Tango to be placed in the public domain, you're allowing everyone else to do so.he didn't require tango to be placed in the public domain. he asked for the same deal he gave to tango. actually he didn't even ask. he just mentioned what it takes for him to look at the code.no. he just wants to escape the tyranny of slander. he's just worried that a tyrangot will _claim_ walt redistributed tango code without proper attribution.>The BSD license is simply public domain with attribution.No, it is not. Public Domain code is not copyrighted and does not require a license.The BSD license is explicit permission. Or do you intend to redistribute Tango code without proper attribution?So what is the issue with using it? Phobos already uses it. Just with your name as the copyright holder. Or do you want an agreement to allow relicensing of Phobos and Tango, let's say to incompatible licenses, and still allow Phobos and Tango to share code afterward? It's unclear what you want or need that you don't already have.The problems are two: 1. Phobos has already been accused of stealing code from Tango. Therefore, I would like explicit permission from the Tango team. I am not going to take code from Tango and put it in Phobos without explicit permission from the Tango team. Any hint of Phobos not having a clean legal pedigree will impair its adoption.
Aug 14 2008
"superdan" wroteChristopher Wright Wrote:The problem is, there is never a guarantee of that. Joe Shmoe can come along and claim that he works with Sean and Sean stole all his D Thread code and gave it to tango. Now, even though the entire Tango team has given permission to Walter, he is still in trouble. The answer is, either Walter accepts that Sean (and others who gave permission) are the rightful owners of the Tango runtime, and he has permission to use it, or Walter is so paranoid that he trusts nobody who says they own code, and he doesn't use it. He needs to have some faith that the person who says they own the code actually does.Walter Bright wrote:you're not following what walt says eh. his problem is not he wanna steal and get away with it. problem is that he doesn't wanna be accused of stealing. poop man. he got accused before even lookin' at the gorram thing. also his problem is not he doesn't wanna acknowledge whodunit. i grepped around phobos and there's many names in there. there's even a guy whos name is in there tho all his stuff has been rewritten since. what walt wanna is look at tango without fear that some dood will cry he stole his code. after all there's only this many ways you can do trivial sh... stuff like async i/o and logging and containers. slander comes easily and goes not so easily. is he paranoid? sure as hell he is. oh, wait. some dood _did_ cry walt stole (thru brad) his precious soon as they was within a hundred miles. all this while walt is known to give credit down to the dog pooping in the driveway walt was looking at when he came with an idea. give me an intercoursing break.Christopher Wright wrote:The BSD license allows anyone to do anything with the work as long as the authors get proper recognition. The one incentive to distribute the work is this recognition (besides encouraging others to help with the project). If you're not going to take any Tango code and claim that it is yours, then the BSD license shouldn't cause any problems for you. If you require public domain, that implies that the BSD license causes problems for you. That implies that you're going to steal code.A number of modules in phobos/internal are marked public domain. Are you asking for Tango's internals to be placed in the public domain? That also is a bit much to ask.Why is it a bit much to ask?I agree with you on this, but the fact still remains that Walter is not safe as soon as he looks at any code, no matter who says they wrote it, unless he himself wrote it. I think this is taking it a little too extreme.I don't believe that you would do so. But by requiring Tango to be placed in the public domain, you're allowing everyone else to do so.he didn't require tango to be placed in the public domain. he asked for the same deal he gave to tango. actually he didn't even ask. he just mentioned what it takes for him to look at the code.The owners have given him permission, and promised not to slander. Anyone who cries foul after the rightful owners have given permission is full of crap, and I will be the first to say so. So long as Walter and co. just look at the proper files (the ones with the permission). Hell, I don't care if he looks at all of tango, as long as he either doesn't copy the code, or if he does, obeys the license requirements. I don't think any Tango devs are waiting to jump on Walter at the first chance Phobos is compatible with Tango. I think everyone in Tango is interested in having Phobos and Tango compatible. -Steveno. he just wants to escape the tyranny of slander. he's just worried that a tyrangot will _claim_ walt redistributed tango code without proper attribution.>The BSD license is simply public domain with attribution.No, it is not. Public Domain code is not copyrighted and does not require a license.The BSD license is explicit permission. Or do you intend to redistribute Tango code without proper attribution?So what is the issue with using it? Phobos already uses it. Just with your name as the copyright holder. Or do you want an agreement to allow relicensing of Phobos and Tango, let's say to incompatible licenses, and still allow Phobos and Tango to share code afterward? It's unclear what you want or need that you don't already have.The problems are two: 1. Phobos has already been accused of stealing code from Tango. Therefore, I would like explicit permission from the Tango team. I am not going to take code from Tango and put it in Phobos without explicit permission from the Tango team. Any hint of Phobos not having a clean legal pedigree will impair its adoption.
Aug 14 2008
Steven Schveighoffer Wrote:"superdan" wrotedo you want us to participate in a dialog. or revel in improbable possibilities. this is a red herring.Christopher Wright Wrote:The problem is, there is never a guarantee of that. Joe Shmoe can come along and claim that he works with Sean and Sean stole all his D Thread code and gave it to tango. Now, even though the entire Tango team has given permission to Walter, he is still in trouble.Walter Bright wrote:you're not following what walt says eh. his problem is not he wanna steal and get away with it. problem is that he doesn't wanna be accused of stealing. poop man. he got accused before even lookin' at the gorram thing. also his problem is not he doesn't wanna acknowledge whodunit. i grepped around phobos and there's many names in there. there's even a guy whos name is in there tho all his stuff has been rewritten since. what walt wanna is look at tango without fear that some dood will cry he stole his code. after all there's only this many ways you can do trivial sh... stuff like async i/o and logging and containers. slander comes easily and goes not so easily. is he paranoid? sure as hell he is. oh, wait. some dood _did_ cry walt stole (thru brad) his precious soon as they was within a hundred miles. all this while walt is known to give credit down to the dog pooping in the driveway walt was looking at when he came with an idea. give me an intercoursing break.Christopher Wright wrote:The BSD license allows anyone to do anything with the work as long as the authors get proper recognition. The one incentive to distribute the work is this recognition (besides encouraging others to help with the project). If you're not going to take any Tango code and claim that it is yours, then the BSD license shouldn't cause any problems for you. If you require public domain, that implies that the BSD license causes problems for you. That implies that you're going to steal code.A number of modules in phobos/internal are marked public domain. Are you asking for Tango's internals to be placed in the public domain? That also is a bit much to ask.Why is it a bit much to ask?The answer is, either Walter accepts that Sean (and others who gave permission) are the rightful owners of the Tango runtime, and he has permission to use it, or Walter is so paranoid that he trusts nobody who says they own code, and he doesn't use it. He needs to have some faith that the person who says they own the code actually does.i gather you don't quite read all messages. walt don't want to deliver a compiler with code he can't control. he must deliver code he can change. if that code works with tango walt must know what he gotta do. to do so he must look at tango. sean is cool with that. kris and lars "mi" ivar arent.yeah, ur interpretation. that's extreme.I agree with you on this, but the fact still remains that Walter is not safe as soon as he looks at any code, no matter who says they wrote it, unless he himself wrote it. I think this is taking it a little too extreme.I don't believe that you would do so. But by requiring Tango to be placed in the public domain, you're allowing everyone else to do so.he didn't require tango to be placed in the public domain. he asked for the same deal he gave to tango. actually he didn't even ask. he just mentioned what it takes for him to look at the code.now i am sure u read every other message in this thread. go back and read'em all.The owners have given him permission, and promised not to slander.no. he just wants to escape the tyranny of slander. he's just worried that a tyrangot will _claim_ walt redistributed tango code without proper attribution.>The BSD license is simply public domain with attribution.No, it is not. Public Domain code is not copyrighted and does not require a license.The BSD license is explicit permission. Or do you intend to redistribute Tango code without proper attribution?So what is the issue with using it? Phobos already uses it. Just with your name as the copyright holder. Or do you want an agreement to allow relicensing of Phobos and Tango, let's say to incompatible licenses, and still allow Phobos and Tango to share code afterward? It's unclear what you want or need that you don't already have.The problems are two: 1. Phobos has already been accused of stealing code from Tango. Therefore, I would like explicit permission from the Tango team. I am not going to take code from Tango and put it in Phobos without explicit permission from the Tango team. Any hint of Phobos not having a clean legal pedigree will impair its adoption.Anyone who cries foul after the rightful owners have given permission is full of crap, and I will be the first to say so.no permission was given. do you like me post drunk sometimes.So long as Walter and co. just look at the proper files (the ones with the permission). Hell, I don't care if he looks at all of tango, as long as he either doesn't copy the code, or if he does, obeys the license requirements._you_ don't care. others can't wait. they cried foul as soon as there was potential code could've been copied. gorramit. at least if there was da momma of all code. but it's java containers net stack log4j etc. just how many ways could log4j be in d.I don't think any Tango devs are waiting to jump on Walter at the first chance Phobos is compatible with Tango. I think everyone in Tango is interested in having Phobos and Tango compatible.would be great but don't quite look like it. why don't u do some homework and read messages. i took 2 days. then talk.
Aug 14 2008
"superdan" wroteSteven Schveighoffer Wrote:I'm glad you see the futility in it :) I was going off of the messages that said that the owners of the runtime gave permission, but for some reason Walter still refused to look at the runtime package that Sean sent. What I read in other messages (yes, I've read every one, except for the rant on copyrights and pirating) is that he accepts that Sean (and others) gave permission, but it's possible that some of the other Tango devs had a hand in the runtime (even though they don't claim authorship), and so he wants the permission of ALL the Tango devs. Sounds a little extreme to me, so I pointed out that this issue is not black and white. There is a risk associated with it, and I believe Tango devs have minimized the risk, while still protecting their rights as developers for code Walter doesn't need."superdan" wrotedo you want us to participate in a dialog. or revel in improbable possibilities. this is a red herring.Christopher Wright Wrote:The problem is, there is never a guarantee of that. Joe Shmoe can come along and claim that he works with Sean and Sean stole all his D Thread code and gave it to tango. Now, even though the entire Tango team has given permission to Walter, he is still in trouble.Walter Bright wrote:you're not following what walt says eh. his problem is not he wanna steal and get away with it. problem is that he doesn't wanna be accused of stealing. poop man. he got accused before even lookin' at the gorram thing. also his problem is not he doesn't wanna acknowledge whodunit. i grepped around phobos and there's many names in there. there's even a guy whos name is in there tho all his stuff has been rewritten since. what walt wanna is look at tango without fear that some dood will cry he stole his code. after all there's only this many ways you can do trivial sh... stuff like async i/o and logging and containers. slander comes easily and goes not so easily. is he paranoid? sure as hell he is. oh, wait. some dood _did_ cry walt stole (thru brad) his precious soon as they was within a hundred miles. all this while walt is known to give credit down to the dog pooping in the driveway walt was looking at when he came with an idea. give me an intercoursing break.Christopher Wright wrote:The BSD license allows anyone to do anything with the work as long as the authors get proper recognition. The one incentive to distribute the work is this recognition (besides encouraging others to help with the project). If you're not going to take any Tango code and claim that it is yours, then the BSD license shouldn't cause any problems for you. If you require public domain, that implies that the BSD license causes problems for you. That implies that you're going to steal code.A number of modules in phobos/internal are marked public domain. Are you asking for Tango's internals to be placed in the public domain? That also is a bit much to ask.Why is it a bit much to ask?You gather incorrectly. You also have not understood that Tango is split into runtime and user code. Walter needs to look at the Tango-runtime code, not Tango-user code. And for that, he has the permission he needs (from Sean). He doesn't need permission from Kris and Lars because they don't modify the runtime code. And nobody is claiming that Walter can't control the Tango code that he uses. Without any extra permission, I can copy the Tango code, and modify it to my hearts content, release it in binary and source form till the day I die, as long as I give the original authors credit. I think Walter understands that view as he has the SAME REQUIREMENTS on Phobos. What I have understood from the messages is that he does not want to look at tango in case he (in the future) writes something similar to the tango code without realizing it, and gets blamed for copyright infringement. If he only looks at the runtime code, he shouldn't have anything to worry about.The answer is, either Walter accepts that Sean (and others who gave permission) are the rightful owners of the Tango runtime, and he has permission to use it, or Walter is so paranoid that he trusts nobody who says they own code, and he doesn't use it. He needs to have some faith that the person who says they own the code actually does.i gather you don't quite read all messages. walt don't want to deliver a compiler with code he can't control. he must deliver code he can change. if that code works with tango walt must know what he gotta do. to do so he must look at tango. sean is cool with that. kris and lars "mi" ivar arent.It's just a possibility, not what I think is likely :) In anything like this, there is always *some* risk. That is what I was trying to convey.yeah, ur interpretation. that's extreme.I agree with you on this, but the fact still remains that Walter is not safe as soon as he looks at any code, no matter who says they wrote it, unless he himself wrote it. I think this is taking it a little too extreme.I don't believe that you would do so. But by requiring Tango to be placed in the public domain, you're allowing everyone else to do so.he didn't require tango to be placed in the public domain. he asked for the same deal he gave to tango. actually he didn't even ask. he just mentioned what it takes for him to look at the code.No need, I remember everything :)now i am sure u read every other message in this thread. go back and read'em all.The owners have given him permission, and promised not to slander.no. he just wants to escape the tyranny of slander. he's just worried that a tyrangot will _claim_ walt redistributed tango code without proper attribution.>The BSD license is simply public domain with attribution.No, it is not. Public Domain code is not copyrighted and does not require a license.The BSD license is explicit permission. Or do you intend to redistribute Tango code without proper attribution?So what is the issue with using it? Phobos already uses it. Just with your name as the copyright holder. Or do you want an agreement to allow relicensing of Phobos and Tango, let's say to incompatible licenses, and still allow Phobos and Tango to share code afterward? It's unclear what you want or need that you don't already have.The problems are two: 1. Phobos has already been accused of stealing code from Tango. Therefore, I would like explicit permission from the Tango team. I am not going to take code from Tango and put it in Phobos without explicit permission from the Tango team. Any hint of Phobos not having a clean legal pedigree will impair its adoption.Quote from Sean: "As the author of this code, I've long since given my permission. I believe that's all that's necessary." Quote from Walter: "In order for Phobos to move towards compatibility, I need a reciprocal statement from the Tango team. The Tango license does not allow this, and I try to be very careful in making sure Phobos is clean from a legal standpoint. Sean and Don have been most generous in offering such" Which should be enough. Sean is the owner of the code he needs, nobody else on the Tango team owns the runtime code. Sean has even sent Walter a package file with the code he owns which (quote from Walter): "is probably sufficient to get compatibility, in which case that is plenty good enough." So it looks like he has what he needs legally and technically to get it done. I might be wrong, but his recent posts sound like he is now satisfied with what he has.Anyone who cries foul after the rightful owners have given permission is full of crap, and I will be the first to say so.no permission was given. do you like me post drunk sometimes.I wasn't here for that. I don't know what was said or who said it, but there is a history of Phobos/Tango bad blood that I really am not a part of, and can't really comment on. All I can say is that, although the wounds seem to still exist, the two parties both seem interested in resolving this problem. And there is a huge investment of time and energy into Tango. The developers have every right to ensure that nobody else claims they wrote it. I don't think Walter needs blanket permission to circumvent that.So long as Walter and co. just look at the proper files (the ones with the permission). Hell, I don't care if he looks at all of tango, as long as he either doesn't copy the code, or if he does, obeys the license requirements._you_ don't care. others can't wait. they cried foul as soon as there was potential code could've been copied. gorramit. at least if there was da momma of all code. but it's java containers net stack log4j etc. just how many ways could log4j be in d.I read as they come in, and respond as I read. You are completely wrong if you think the Tango people don't want this resolved. -SteveI don't think any Tango devs are waiting to jump on Walter at the first chance Phobos is compatible with Tango. I think everyone in Tango is interested in having Phobos and Tango compatible.would be great but don't quite look like it. why don't u do some homework and read messages. i took 2 days. then talk.
Aug 15 2008
Steven Schveighoffer a écrit :"superdan" wroteI don't really understand all this battle between Phobos and Tango but I would like to express my feeling as a user. I am working for a few months on cross-compilers for embedded platforms and I have started with wince. My first idea was to build specific libraries with an approach inspired from Java or .Net Worlds and I didn't want to use phobos nor tango. First I thought that everything I need was the D compiler with no runtime at all and I could built my lib beyond it but I think it doesn't work like that. I only hope this issue will be solved quickly and we 'll get a common runtime.Steven Schveighoffer Wrote:I'm glad you see the futility in it :) I was going off of the messages that said that the owners of the runtime gave permission, but for some reason Walter still refused to look at the runtime package that Sean sent. What I read in other messages (yes, I've read every one, except for the rant on copyrights and pirating) is that he accepts that Sean (and others) gave permission, but it's possible that some of the other Tango devs had a hand in the runtime (even though they don't claim authorship), and so he wants the permission of ALL the Tango devs. Sounds a little extreme to me, so I pointed out that this issue is not black and white. There is a risk associated with it, and I believe Tango devs have minimized the risk, while still protecting their rights as developers for code Walter doesn't need."superdan" wrotedo you want us to participate in a dialog. or revel in improbable possibilities. this is a red herring.Christopher Wright Wrote:The problem is, there is never a guarantee of that. Joe Shmoe can come along and claim that he works with Sean and Sean stole all his D Thread code and gave it to tango. Now, even though the entire Tango team has given permission to Walter, he is still in trouble.Walter Bright wrote:you're not following what walt says eh. his problem is not he wanna steal and get away with it. problem is that he doesn't wanna be accused of stealing. poop man. he got accused before even lookin' at the gorram thing. also his problem is not he doesn't wanna acknowledge whodunit. i grepped around phobos and there's many names in there. there's even a guy whos name is in there tho all his stuff has been rewritten since. what walt wanna is look at tango without fear that some dood will cry he stole his code. after all there's only this many ways you can do trivial sh... stuff like async i/o and logging and containers. slander comes easily and goes not so easily. is he paranoid? sure as hell he is. oh, wait. some dood _did_ cry walt stole (thru brad) his precious soon as they was within a hundred miles. all this while walt is known to give credit down to the dog pooping in the driveway walt was looking at when he came with an idea. give me an intercoursing break.Christopher Wright wrote:The BSD license allows anyone to do anything with the work as long as the authors get proper recognition. The one incentive to distribute the work is this recognition (besides encouraging others to help with the project). If you're not going to take any Tango code and claim that it is yours, then the BSD license shouldn't cause any problems for you. If you require public domain, that implies that the BSD license causes problems for you. That implies that you're going to steal code.A number of modules in phobos/internal are marked public domain. Are you asking for Tango's internals to be placed in the public domain? That also is a bit much to ask.Why is it a bit much to ask?You gather incorrectly. You also have not understood that Tango is split into runtime and user code. Walter needs to look at the Tango-runtime code, not Tango-user code. And for that, he has the permission he needs (from Sean). He doesn't need permission from Kris and Lars because they don't modify the runtime code. And nobody is claiming that Walter can't control the Tango code that he uses. Without any extra permission, I can copy the Tango code, and modify it to my hearts content, release it in binary and source form till the day I die, as long as I give the original authors credit. I think Walter understands that view as he has the SAME REQUIREMENTS on Phobos. What I have understood from the messages is that he does not want to look at tango in case he (in the future) writes something similar to the tango code without realizing it, and gets blamed for copyright infringement. If he only looks at the runtime code, he shouldn't have anything to worry about.The answer is, either Walter accepts that Sean (and others who gave permission) are the rightful owners of the Tango runtime, and he has permission to use it, or Walter is so paranoid that he trusts nobody who says they own code, and he doesn't use it. He needs to have some faith that the person who says they own the code actually does.i gather you don't quite read all messages. walt don't want to deliver a compiler with code he can't control. he must deliver code he can change. if that code works with tango walt must know what he gotta do. to do so he must look at tango. sean is cool with that. kris and lars "mi" ivar arent.It's just a possibility, not what I think is likely :) In anything like this, there is always *some* risk. That is what I was trying to convey.yeah, ur interpretation. that's extreme.I agree with you on this, but the fact still remains that Walter is not safe as soon as he looks at any code, no matter who says they wrote it, unless he himself wrote it. I think this is taking it a little too extreme.I don't believe that you would do so. But by requiring Tango to be placed in the public domain, you're allowing everyone else to do so.he didn't require tango to be placed in the public domain. he asked for the same deal he gave to tango. actually he didn't even ask. he just mentioned what it takes for him to look at the code.No need, I remember everything :)now i am sure u read every other message in this thread. go back and read'em all.The owners have given him permission, and promised not to slander.no. he just wants to escape the tyranny of slander. he's just worried that a tyrangot will _claim_ walt redistributed tango code without proper attribution.>The BSD license is simply public domain with attribution.No, it is not. Public Domain code is not copyrighted and does not require a license.The BSD license is explicit permission. Or do you intend to redistribute Tango code without proper attribution?So what is the issue with using it? Phobos already uses it. Just with your name as the copyright holder. Or do you want an agreement to allow relicensing of Phobos and Tango, let's say to incompatible licenses, and still allow Phobos and Tango to share code afterward? It's unclear what you want or need that you don't already have.The problems are two: 1. Phobos has already been accused of stealing code from Tango. Therefore, I would like explicit permission from the Tango team. I am not going to take code from Tango and put it in Phobos without explicit permission from the Tango team. Any hint of Phobos not having a clean legal pedigree will impair its adoption.Quote from Sean: "As the author of this code, I've long since given my permission. I believe that's all that's necessary." Quote from Walter: "In order for Phobos to move towards compatibility, I need a reciprocal statement from the Tango team. The Tango license does not allow this, and I try to be very careful in making sure Phobos is clean from a legal standpoint. Sean and Don have been most generous in offering such" Which should be enough. Sean is the owner of the code he needs, nobody else on the Tango team owns the runtime code. Sean has even sent Walter a package file with the code he owns which (quote from Walter): "is probably sufficient to get compatibility, in which case that is plenty good enough." So it looks like he has what he needs legally and technically to get it done. I might be wrong, but his recent posts sound like he is now satisfied with what he has.Anyone who cries foul after the rightful owners have given permission is full of crap, and I will be the first to say so.no permission was given. do you like me post drunk sometimes.I wasn't here for that. I don't know what was said or who said it, but there is a history of Phobos/Tango bad blood that I really am not a part of, and can't really comment on. All I can say is that, although the wounds seem to still exist, the two parties both seem interested in resolving this problem. And there is a huge investment of time and energy into Tango. The developers have every right to ensure that nobody else claims they wrote it. I don't think Walter needs blanket permission to circumvent that.So long as Walter and co. just look at the proper files (the ones with the permission). Hell, I don't care if he looks at all of tango, as long as he either doesn't copy the code, or if he does, obeys the license requirements._you_ don't care. others can't wait. they cried foul as soon as there was potential code could've been copied. gorramit. at least if there was da momma of all code. but it's java containers net stack log4j etc. just how many ways could log4j be in d.I read as they come in, and respond as I read. You are completely wrong if you think the Tango people don't want this resolved. -SteveI don't think any Tango devs are waiting to jump on Walter at the first chance Phobos is compatible with Tango. I think everyone in Tango is interested in having Phobos and Tango compatible.would be great but don't quite look like it. why don't u do some homework and read messages. i took 2 days. then talk.
Aug 15 2008
Vincent Richomme wrote:Steven Schveighoffer a écrit :As an aside, I think the most expedient approach for you would be to grab the Tango runtime, ignore the user code, and work on creating a compiler runtime. It can contain as much or as little code as you need so long as you expose the few functions that the other runtime bits rely on. Tango was built from the ground up with this in mind, since basically all of the users of Ares (upon which the Tango runtime is based) were kernel and compiler developers. Sean"superdan" wroteI don't really understand all this battle between Phobos and Tango but I would like to express my feeling as a user. I am working for a few months on cross-compilers for embedded platforms and I have started with wince. My first idea was to build specific libraries with an approach inspired from Java or .Net Worlds and I didn't want to use phobos nor tango. First I thought that everything I need was the D compiler with no runtime at all and I could built my lib beyond it but I think it doesn't work like that. I only hope this issue will be solved quickly and we 'll get a common runtime.Steven Schveighoffer Wrote:I'm glad you see the futility in it :) I was going off of the messages that said that the owners of the runtime gave permission, but for some reason Walter still refused to look at the runtime package that Sean sent. What I read in other messages (yes, I've read every one, except for the rant on copyrights and pirating) is that he accepts that Sean (and others) gave permission, but it's possible that some of the other Tango devs had a hand in the runtime (even though they don't claim authorship), and so he wants the permission of ALL the Tango devs. Sounds a little extreme to me, so I pointed out that this issue is not black and white. There is a risk associated with it, and I believe Tango devs have minimized the risk, while still protecting their rights as developers for code Walter doesn't need."superdan" wrotedo you want us to participate in a dialog. or revel in improbable possibilities. this is a red herring.Christopher Wright Wrote:The problem is, there is never a guarantee of that. Joe Shmoe can come along and claim that he works with Sean and Sean stole all his D Thread code and gave it to tango. Now, even though the entire Tango team has given permission to Walter, he is still in trouble.Walter Bright wrote:you're not following what walt says eh. his problem is not he wanna steal and get away with it. problem is that he doesn't wanna be accused of stealing. poop man. he got accused before even lookin' at the gorram thing. also his problem is not he doesn't wanna acknowledge whodunit. i grepped around phobos and there's many names in there. there's even a guy whos name is in there tho all his stuff has been rewritten since. what walt wanna is look at tango without fear that some dood will cry he stole his code. after all there's only this many ways you can do trivial sh... stuff like async i/o and logging and containers. slander comes easily and goes not so easily. is he paranoid? sure as hell he is. oh, wait. some dood _did_ cry walt stole (thru brad) his precious soon as they was within a hundred miles. all this while walt is known to give credit down to the dog pooping in the driveway walt was looking at when he came with an idea. give me an intercoursing break.Christopher Wright wrote:The BSD license allows anyone to do anything with the work as long as the authors get proper recognition. The one incentive to distribute the work is this recognition (besides encouraging others to help with the project). If you're not going to take any Tango code and claim that it is yours, then the BSD license shouldn't cause any problems for you. If you require public domain, that implies that the BSD license causes problems for you. That implies that you're going to steal code.A number of modules in phobos/internal are marked public domain. Are you asking for Tango's internals to be placed in the public domain? That also is a bit much to ask.Why is it a bit much to ask?You gather incorrectly. You also have not understood that Tango is split into runtime and user code. Walter needs to look at the Tango-runtime code, not Tango-user code. And for that, he has the permission he needs (from Sean). He doesn't need permission from Kris and Lars because they don't modify the runtime code. And nobody is claiming that Walter can't control the Tango code that he uses. Without any extra permission, I can copy the Tango code, and modify it to my hearts content, release it in binary and source form till the day I die, as long as I give the original authors credit. I think Walter understands that view as he has the SAME REQUIREMENTS on Phobos. What I have understood from the messages is that he does not want to look at tango in case he (in the future) writes something similar to the tango code without realizing it, and gets blamed for copyright infringement. If he only looks at the runtime code, he shouldn't have anything to worry about.The answer is, either Walter accepts that Sean (and others who gave permission) are the rightful owners of the Tango runtime, and he has permission to use it, or Walter is so paranoid that he trusts nobody who says they own code, and he doesn't use it. He needs to have some faith that the person who says they own the code actually does.i gather you don't quite read all messages. walt don't want to deliver a compiler with code he can't control. he must deliver code he can change. if that code works with tango walt must know what he gotta do. to do so he must look at tango. sean is cool with that. kris and lars "mi" ivar arent.It's just a possibility, not what I think is likely :) In anything like this, there is always *some* risk. That is what I was trying to convey.yeah, ur interpretation. that's extreme.I agree with you on this, but the fact still remains that Walter is not safe as soon as he looks at any code, no matter who says they wrote it, unless he himself wrote it. I think this is taking it a little too extreme.I don't believe that you would do so. But by requiring Tango to be placed in the public domain, you're allowing everyone else to do so.he didn't require tango to be placed in the public domain. he asked for the same deal he gave to tango. actually he didn't even ask. he just mentioned what it takes for him to look at the code.No need, I remember everything :)now i am sure u read every other message in this thread. go back and read'em all.The owners have given him permission, and promised not to slander.no. he just wants to escape the tyranny of slander. he's just worried that a tyrangot will _claim_ walt redistributed tango code without proper attribution.>The BSD license is simply public domain with attribution.No, it is not. Public Domain code is not copyrighted and does not require a license.The BSD license is explicit permission. Or do you intend to redistribute Tango code without proper attribution?So what is the issue with using it? Phobos already uses it. Just with your name as the copyright holder. Or do you want an agreement to allow relicensing of Phobos and Tango, let's say to incompatible licenses, and still allow Phobos and Tango to share code afterward? It's unclear what you want or need that you don't already have.The problems are two: 1. Phobos has already been accused of stealing code from Tango. Therefore, I would like explicit permission from the Tango team. I am not going to take code from Tango and put it in Phobos without explicit permission from the Tango team. Any hint of Phobos not having a clean legal pedigree will impair its adoption.Quote from Sean: "As the author of this code, I've long since given my permission. I believe that's all that's necessary." Quote from Walter: "In order for Phobos to move towards compatibility, I need a reciprocal statement from the Tango team. The Tango license does not allow this, and I try to be very careful in making sure Phobos is clean from a legal standpoint. Sean and Don have been most generous in offering such" Which should be enough. Sean is the owner of the code he needs, nobody else on the Tango team owns the runtime code. Sean has even sent Walter a package file with the code he owns which (quote from Walter): "is probably sufficient to get compatibility, in which case that is plenty good enough." So it looks like he has what he needs legally and technically to get it done. I might be wrong, but his recent posts sound like he is now satisfied with what he has.Anyone who cries foul after the rightful owners have given permission is full of crap, and I will be the first to say so.no permission was given. do you like me post drunk sometimes.I wasn't here for that. I don't know what was said or who said it, but there is a history of Phobos/Tango bad blood that I really am not a part of, and can't really comment on. All I can say is that, although the wounds seem to still exist, the two parties both seem interested in resolving this problem. And there is a huge investment of time and energy into Tango. The developers have every right to ensure that nobody else claims they wrote it. I don't think Walter needs blanket permission to circumvent that.So long as Walter and co. just look at the proper files (the ones with the permission). Hell, I don't care if he looks at all of tango, as long as he either doesn't copy the code, or if he does, obeys the license requirements._you_ don't care. others can't wait. they cried foul as soon as there was potential code could've been copied. gorramit. at least if there was da momma of all code. but it's java containers net stack log4j etc. just how many ways could log4j be in d.I read as they come in, and respond as I read. You are completely wrong if you think the Tango people don't want this resolved. -SteveI don't think any Tango devs are waiting to jump on Walter at the first chance Phobos is compatible with Tango. I think everyone in Tango is interested in having Phobos and Tango compatible.would be great but don't quite look like it. why don't u do some homework and read messages. i took 2 days. then talk.
Aug 15 2008
superdan wrote:Christopher Wright Wrote:He wanted permission to license Tango as Phobos is licensed. Phobos was licensed in a BSD-like license, but Walter has been changing it to public domain. Walter did explicitly say that he wanted to relicense Tango as public domain, I believe.I don't believe that you would do so. But by requiring Tango to be placed in the public domain, you're allowing everyone else to do so.he didn't require tango to be placed in the public domain. he asked for the same deal he gave to tango. actually he didn't even ask. he just mentioned what it takes for him to look at the code.The accusation was ridiculous. As such, Walter would trivially fulfill the requirements of the BSD license.The BSD license is explicit permission. Or do you intend to redistribute Tango code without proper attribution?no. he just wants to escape the tyranny of slander. he's just worried that a tyrangot will _claim_ walt redistributed tango code without proper attribution.
Aug 15 2008
On Fri, Aug 15, 2008 at 09:25:50PM -0400, Christopher Wright wrote:The accusation was ridiculous. As such, Walter would trivially fulfill the requirements of the BSD license.What about the users of the language? Suppose the standard library was BSD licensed and I wrote a D program. Am I now required to add their copyright notice with my program whenever I distribute it? That's a pain in the ass. I like to distribute my programs in binary form just by giving a link to the .exe saying 'here it is, do whatever you want with it. Have fun!' With the BSD license restrictions, I couldn't do that. The license in the phobos files is perfect for me. That's how a standard library should be licensed - infinitely convenient. -- Adam D. Ruppe http://arsdnet.net
Aug 15 2008
We offer World of Warcraft Power Leveling and World of Warcraft powerleveling,Age of Conan Powerleveling and Lord fo Ring Online Powerleveling.WoW Powerleveling service and cheap wow Powerleveling,World of Warcraft Power leveling sale for you. AOC Power leveling,Cheap AOC Powerleveling .All service is faster,safer,and cheaper.We Please remember,we are your online game helper. <a href=http://www.pvpsale.com>WOW Powerleveling</a> <a href=http://www.pvpsale.com/powerleveling.asp>WOW Power leveling</a> <a href=http://www.pvpsale.com/World-of-Warcraft-US-Powerleveling.asp>World of Warcraft Powerleveling</a> <a href=http://www.pvpsale.com/World-of-Warcraft-EU-Powerleveling.asp>World of Warcraft power leveling</a> <a href=http://www.pvpsale.com/World-of-Warcraft-US-Gold.asp>wow gold</a> <a href=http://www.pvpsale.com/World-of-Warcraft-EU-Gold.asp>wow gold</a> <a href=http://www.pvpsale.com/Age-of-Conan-Powerleveling.html>Age of Conan Powerleveling</a> <a href=http://www.pvpsale.com/Age-of-Conan-Power-leveling.html>Age of Conan Power leveling</a> <a href=http://www.pvpsale.com/AOC-Powerleveling.asp>AOC Powerleveling</a> <a href=http://www.pvpsale.com/AOC-Power-leveling.asp>AOC Power leveling</a> <a href=http://www.pvpsale.com/AOC-Powerleveling.html>AOC Powerleveling</a> <a href=http://www.pvpsale.com/AOC-Power-leveling.html>AOC Power leveling</a> <a href=http://www.pvpsale.com/Final-Fantasy-XI-Gil.asp>Final Fantasy XI Gil</a> <a href=http://www.pvpsale.com/Final-Fantasy-XI.asp>FFXI Gil</a> <a href=http://www.pvpsale.com/Florensia-Gold.asp>Florensia Gold</a> <a href=http://www.pvpsale.com/Dekaron-EU.asp>Dekaron Dil</a> <a href=http://www.pvpsale.com/Requiem-Online.asp>Requiem Gold</a> <a href=http://www.pvpsale.com/Rohan-Online.asp>Rohan Gold</a> <a href=http://www.pvpsale.com/Warhammer-Online-Powerleveling.asp>Warhammer Powerleveling</a> <a href=http://www.pvpsale.com/Warhammer-Online.asp>Warhammer Online</a>
Aug 15 2008
"Walter Bright" wroteLars Ivar Igesund wrote:The BSD license of Tango is here http://www.dsource.org/projects/tango/wiki/BSDLicense The license of Phobos is here http://www.dsource.org/projects/phobos/browser/trunk/phobos/phoboslicense.txt These license texts are almost identical. Both say that you can freely distribute the library in source or binary form, as long as you retain the license. Two differences I see. One, the Phobos license requires you to identify if you have changed the file. Two, the Phobos license is more lax on requiring acknowledgement for binaries. But you can't claim you wrote the binary completely without giving acknowledgement (at least, that's my interpretation). I don't want to point any fingers, all I want to do is help resolve the situation. From Walter's camp, are these licenses really THAT different for you to believe that Phobos will be split into 2 licenses? And even if it is, who cares? The license is so similar, you simply include both for the Phobos runtime. Many pieces of software have long lists of acknowledgements and licenses in their binary distribution (i.e. portions of this software copyright ...) From Tango's camp, the Phobos license is very similar, couldn't you allow licensing the runtime under the Phobos license as well? I can't see how it would hurt, the Phobos license is only slightly more restrictive, but still is in the same spirit of the BSD license. The one thing it lacks is an absolute requirement for acknowledgement in binary form, but it is required if you claim authorship of software or distribute in source form. So nobody can go around claiming they wrote Tango, but if they claim any authorship of anything, Tango must be there. Someone's got to give here, maybe there is just a lack of communication, or maybe there are deeper issues under the surface... To me, this is a no brainer. If the license is the only thing stopping you, fix it. I'm willing to help in any way I can. Please set any bad blood aside for this one issue. -SteveWalter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit. I've dealt with lawyers many times, and spelling it out directly and explicitly avoids a lot of future potential problems. Furthermore, if Phobos has a wishy-washy legal pedigree, corporate lawyers will not buy off on allowing D to be used in their companies. This issue must be settled in advance of looking at Tango, not after the fact.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)
Aug 14 2008
Steven Schveighoffer wrote:"Walter Bright" wroteThis documentation requirement for binaries is why Tango adopted a dual license scheme. In prior jobs I'd never be able to get a corporate lawyer to approve the use of a library containing such a requirement, and I wanted to be able to use Tango at work someday :-)Lars Ivar Igesund wrote:The BSD license of Tango is here http://www.dsource.org/projects/tango/wiki/BSDLicense The license of Phobos is here http://www.dsource.org/projects/phobos/browser/trunk/phobos/phoboslicense.txt These license texts are almost identical. Both say that you can freely distribute the library in source or binary form, as long as you retain the license. Two differences I see. One, the Phobos license requires you to identify if you have changed the file. Two, the Phobos license is more lax on requiring acknowledgement for binaries. But you can't claim you wrote the binary completely without giving acknowledgement (at least, that's my interpretation).Walter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit. I've dealt with lawyers many times, and spelling it out directly and explicitly avoids a lot of future potential problems. Furthermore, if Phobos has a wishy-washy legal pedigree, corporate lawyers will not buy off on allowing D to be used in their companies. This issue must be settled in advance of looking at Tango, not after the fact.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)From Tango's camp, the Phobos license is very similar, couldn't you allow licensing the runtime under the Phobos license as well? I can't see how it would hurt, the Phobos license is only slightly more restrictive, but still is in the same spirit of the BSD license. The one thing it lacks is an absolute requirement for acknowledgement in binary form, but it is required if you claim authorship of software or distribute in source form. So nobody can go around claiming they wrote Tango, but if they claim any authorship of anything, Tango must be there.Releasing code into the public domain relinquishes any right to claim authorship as well. I provided permission for Walter to use the runtime code as PD anyway, with the request that Phobos, at least, mention me as the author / contributor as appropriate. But I think it's asking a lot that other Tango contributors do the same... particularly when all their contributions are user code. If this permission were given, Walter could quite legally take all of Tango, relabel it as Phobos and distribute it as his own. Not that I expect him to, but it would be within his rights to do so. Sean
Aug 14 2008
Sean Kelly wrote:If this permission were given, Walter could quite legally take all of Tango, relabel it as Phobos and distribute it as his own. Not that I expect him to, but it would be within his rights to do so.So could anyone with code in Phobos that I wrote and labeled Public Domain. This hardly seems to be a sensible strategy to feed megalomania <g>. Falsely claiming ownership of public domain code is a futile gesture, as the internet record of these things is not going away, and it would just make the person that tried it a pathetic, obvious fraud. Bottom line, I don't want the license in Phobos to be any impediment to anyone wanting to use D.
Aug 14 2008
Walter Bright wrote:Sean Kelly wrote:Then, regardless of the Tango-Phobos runtime integration discussion, what do you say about Sean's comment that Phobos license might still pose some problems is certain situations? -- Bruno Medeiros - Software Developer, MSc. in CS/E graduate http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#DIf this permission were given, Walter could quite legally take all of Tango, relabel it as Phobos and distribute it as his own. Not that I expect him to, but it would be within his rights to do so.So could anyone with code in Phobos that I wrote and labeled Public Domain. This hardly seems to be a sensible strategy to feed megalomania <g>. Falsely claiming ownership of public domain code is a futile gesture, as the internet record of these things is not going away, and it would just make the person that tried it a pathetic, obvious fraud. Bottom line, I don't want the license in Phobos to be any impediment to anyone wanting to use D.
Aug 15 2008
Walter Bright wrote:Lars Ivar Igesund wrote:Personally, I've never met a corporate lawyer who would authorize use of Public Domain code, for two reasons. First, the assumption seems to be that PD code is really actually owned by someone and no one knows who that is. Second, lawyers (and build teams even moreso) very much like having a responsible party, even if the license absolves the author of any direct responsibility for code issues as most licenses do. Case in point, I've never been able to use Boost at any of my previous jobs because the licensing scheme is too open. Also, I've had to fight tooth and nail to use BSD licensed code at work because of the attribution requirement (that the library must be mentioned in documentation accompanying any shipped product). All of the above was considered when working out a licensing scheme for Tango. We wanted a license that would allow Tango to be used by everyone, first and foremost. I could never have done that with Phobos under the current license.Walter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit. I've dealt with lawyers many times, and spelling it out directly and explicitly avoids a lot of future potential problems. Furthermore, if Phobos has a wishy-washy legal pedigree, corporate lawyers will not buy off on allowing D to be used in their companies.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)This issue must be settled in advance of looking at Tango, not after the fact.The contention is about the user code, I believe. You have asked for blanket permission to incorporate all of Tango as Public Domain code in Phobos even though the only portion of the code you seem to care about is the runtime. As the sole maintainer of the runtime I have long since given you permission to use that portion of the code as you see fit, but this is obviously not sufficient. I honestly have no idea how we can proceed any further, given that I don't expect other Tango contributors to agree to release their (user) code into the Public Domain. Sean
Aug 14 2008
On Thu, 14 Aug 2008 11:49:06 -0700, Sean Kelly wrote:Walter Bright wrote:That issue will probably be sorted out (I hope). But that don't have to be done right now. There is no license issue with the Tango runtime, Work could be started with the runtime any time. - right? Walter? Sean?Lars Ivar Igesund wrote:Personally, I've never met a corporate lawyer who would authorize use of Public Domain code, for two reasons. First, the assumption seems to be that PD code is really actually owned by someone and no one knows who that is. Second, lawyers (and build teams even moreso) very much like having a responsible party, even if the license absolves the author of any direct responsibility for code issues as most licenses do. Case in point, I've never been able to use Boost at any of my previous jobs because the licensing scheme is too open. Also, I've had to fight tooth and nail to use BSD licensed code at work because of the attribution requirement (that the library must be mentioned in documentation accompanying any shipped product). All of the above was considered when working out a licensing scheme for Tango. We wanted a license that would allow Tango to be used by everyone, first and foremost. I could never have done that with Phobos under the current license.Walter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit. I've dealt with lawyers many times, and spelling it out directly and explicitly avoids a lot of future potential problems. Furthermore, if Phobos has a wishy-washy legal pedigree, corporate lawyers will not buy off on allowing D to be used in their companies.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)This issue must be settled in advance of looking at Tango, not after the fact.The contention is about the user code, I believe. You have asked for blanket permission to incorporate all of Tango as Public Domain code in Phobos even though the only portion of the code you seem to care about is the runtime. As the sole maintainer of the runtime I have long since given you permission to use that portion of the code as you see fit, but this is obviously not sufficient. I honestly have no idea how we can proceed any further, given that I don't expect other Tango contributors to agree to release their (user) code into the Public Domain. Sean
Aug 14 2008
== Quote from Moritz Warning (moritzwarning web.de)'s articleOn Thu, 14 Aug 2008 11:49:06 -0700, Sean Kelly wrote:I think so, but Walter apparently disagrees. SeanWalter Bright wrote:That issue will probably be sorted out (I hope). But that don't have to be done right now. There is no license issue with the Tango runtime, Work could be started with the runtime any time. - right? Walter? Sean?Lars Ivar Igesund wrote:Personally, I've never met a corporate lawyer who would authorize use of Public Domain code, for two reasons. First, the assumption seems to be that PD code is really actually owned by someone and no one knows who that is. Second, lawyers (and build teams even moreso) very much like having a responsible party, even if the license absolves the author of any direct responsibility for code issues as most licenses do. Case in point, I've never been able to use Boost at any of my previous jobs because the licensing scheme is too open. Also, I've had to fight tooth and nail to use BSD licensed code at work because of the attribution requirement (that the library must be mentioned in documentation accompanying any shipped product). All of the above was considered when working out a licensing scheme for Tango. We wanted a license that would allow Tango to be used by everyone, first and foremost. I could never have done that with Phobos under the current license.Walter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit. I've dealt with lawyers many times, and spelling it out directly and explicitly avoids a lot of future potential problems. Furthermore, if Phobos has a wishy-washy legal pedigree, corporate lawyers will not buy off on allowing D to be used in their companies.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)This issue must be settled in advance of looking at Tango, not after the fact.The contention is about the user code, I believe. You have asked for blanket permission to incorporate all of Tango as Public Domain code in Phobos even though the only portion of the code you seem to care about is the runtime. As the sole maintainer of the runtime I have long since given you permission to use that portion of the code as you see fit, but this is obviously not sufficient. I honestly have no idea how we can proceed any further, given that I don't expect other Tango contributors to agree to release their (user) code into the Public Domain. Sean
Aug 14 2008
Walter Bright wrote:Paul D. Anderson wrote:[Don wrote] The number of people that have touched the runtime layer of Tango is very limited. Walter has confirmed that Sean & Don gave given him the legal statement he requires. So who are the other Tango developers who have submitted code for the runtime layer ? Would these developers like to comment as to why they would, or would not, like to give such a legal statement to Walter ? Nick B.But what I would really like to see (and I don't think it's asking too much) is a clear statement from Walter that he will indeed make the changes the Tango developers are asking for at some future date.In order for this to happen, I need a clear and unambiguous statement from the Tango developers that Phobos can incorporate parts of the Tango runtime and place them under the Phobos license. I have already provided a reciprocal license to Tango. I've asked for that for over a year, and so far only Sean and Don have done so. Such an agreement is necessary for the following reasons: 1. To ensure Phobos is free of any legal taint and any accusations of stealing code. 2. To avoid the untenable issue of a single module in Phobos having different license for different lines of code. I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)
Aug 14 2008
Nick B wrote:Walter Bright wrote:Mikola Lysenko is the only one I can think of offhand, as Tango's Fiber implementation is based on his StackThreads. Steve S. may be listed as a contributor for the Thread code as well.Paul D. Anderson wrote:[Don wrote] The number of people that have touched the runtime layer of Tango is very limited. Walter has confirmed that Sean & Don gave given him the legal statement he requires. So who are the other Tango developers who have submitted code for the runtime layer ?But what I would really like to see (and I don't think it's asking too much) is a clear statement from Walter that he will indeed make the changes the Tango developers are asking for at some future date.In order for this to happen, I need a clear and unambiguous statement from the Tango developers that Phobos can incorporate parts of the Tango runtime and place them under the Phobos license. I have already provided a reciprocal license to Tango. I've asked for that for over a year, and so far only Sean and Don have done so. Such an agreement is necessary for the following reasons: 1. To ensure Phobos is free of any legal taint and any accusations of stealing code. 2. To avoid the untenable issue of a single module in Phobos having different license for different lines of code. I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)Would these developers like to comment as to why they would, or would not, like to give such a legal statement to Walter ?As the author of this code, I've long since given my permission. I believe that's all that's necessary. Sean
Aug 14 2008
Sean Kelly Wrote:Steven Schveighoffer wrote:I'm not an active participant in this thread, but I'm a anxious reader and hoping all gets decided here and now. Probaly It will be best to create a topic just to solve the little things between phobos and tango people that concern the general user. I just have one comment are you sure that once something is released to public domain "...relinquishes any right to claim authorship as well.", because here in Portugal everything that is done by a person is automatically protected as belonging to him. Registering the work and other things like patents (patents probably have other stuff but not relevant to my point) just help to garanty proof that it was made by that person. But unless it's specified otherwise no one can touch anything someone did. But what really relate to what you said is that, the only thing the author cannot do is denie autorship. If he made it, it's his, he can sell, give away everything (like the right to be used in any way, by anyone) except the right to be the author. It's called a undeniable "moral" right. And it just seems such a universal right that I repeat my question are you sure that authorship can be just given up? This is to Walter now... it seems Tango coders would be willing to share Tango if they were to be quoted as authors of that piece of code, independently of the license used (sorry if I misunderstood). So I ask Walter if that is the only thing asked, does it still cause any troubles? Sorry for the english."Walter Bright" wroteThis documentation requirement for binaries is why Tango adopted a dual license scheme. In prior jobs I'd never be able to get a corporate lawyer to approve the use of a library containing such a requirement, and I wanted to be able to use Tango at work someday :-)Lars Ivar Igesund wrote:The BSD license of Tango is here http://www.dsource.org/projects/tango/wiki/BSDLicense The license of Phobos is here http://www.dsource.org/projects/phobos/browser/trunk/phobos/phoboslicense.txt These license texts are almost identical. Both say that you can freely distribute the library in source or binary form, as long as you retain the license. Two differences I see. One, the Phobos license requires you to identify if you have changed the file. Two, the Phobos license is more lax on requiring acknowledgement for binaries. But you can't claim you wrote the binary completely without giving acknowledgement (at least, that's my interpretation).Walter Bright wrote:I respectfully disagree. The Tango team has stopped short of providing a license to use the Tango code in Phobos with a reciprocal agreement that allows it to be distributed under the Phobos license. I also cannot accept something vague, it has to be explicit. I've dealt with lawyers many times, and spelling it out directly and explicitly avoids a lot of future potential problems. Furthermore, if Phobos has a wishy-washy legal pedigree, corporate lawyers will not buy off on allowing D to be used in their companies. This issue must be settled in advance of looking at Tango, not after the fact.I have explained this to the main Tango developers on multiple occasions. It is their right and privilege to license Tango as they see fit, and I respect that and so have not spoken out on it before. But in this thread I am being cast as a roadblock, which I feel is a little unfair, so I will loosen my tongue and speak up a bit :-)And we have on equally many occasions told you that the code you need is available. :)From Tango's camp, the Phobos license is very similar, couldn't you allow licensing the runtime under the Phobos license as well? I can't see how it would hurt, the Phobos license is only slightly more restrictive, but still is in the same spirit of the BSD license. The one thing it lacks is an absolute requirement for acknowledgement in binary form, but it is required if you claim authorship of software or distribute in source form. So nobody can go around claiming they wrote Tango, but if they claim any authorship of anything, Tango must be there.Releasing code into the public domain relinquishes any right to claim authorship as well. I provided permission for Walter to use the runtime code as PD anyway, with the request that Phobos, at least, mention me as the author / contributor as appropriate. But I think it's asking a lot that other Tango contributors do the same... particularly when all their contributions are user code. If this permission were given, Walter could quite legally take all of Tango, relabel it as Phobos and distribute it as his own. Not that I expect him to, but it would be within his rights to do so. Sean
Aug 14 2008
Robert Fraser Wrote:Yigal Chripun Wrote:This discussion is, of course, pointless but since I read it I may also comment :) I wan to support Yigal Chripun. So you say stealing is "taking something". But information (and software) is not something. It is not something you can take. I "pirate" something and I have my copy and you have yours. Nothing have been taken all are happy. This is actually a good thing. Too bad food doesn't work this way. The problem is greed. It has nothing to do with stealing.Robert Fraser wrote: > I've had very mixed feelings about all this. One one hand, the letter of theSome philosopher said that all philosophical debates were inherently linguistic ones that stemmed from not having the words to represent the concepts being spoken about. We're using different definitions of "steal," but the concept is clear -- it's taking something you don't have the right to have taken without paying for, and the debate is over whether you do or should have that right.law may be questionably constitutional. But millions of dollars every day are lost because people (including myself occasionally...) steal copyrighted material. Honestly, I think there should be much stricter penalties for things like internet piracy, because it's simply so widespread and damaging.Of course you have the right to have your own opinion (that's also in the constitution) but all of the above is bullshit. (sorry for the language). stealing only applies to physical things like chairs and cars. that whole metaphor of information as physical entities is wrong. you sure can infringe someone's copyrights but you cannot steal anything since there's nothing to steal.I think what a lot of these arguments boil down to is people trying to justify taking stuff without paying for it. Plain and simple. I do on occasion download videos (these days only anime fansubs). And I don't feel bad about it. But I do know it's stealing. Downloading a $10 CD is really no better than shoplifting a $10 CD, because the people who worked to bring that CD into existence are not being paid for it.It is not the same as shoplifting as you are not depriving anyone from anything. So you are not stealing anything. It is moral (and that is relative) to pay for the author's work, but only if you like it. When you buy a CD with 14 shitty songs because you are exposed to advertising of one good one, why don't you pay 1/15 of the price? This is more stealing than "pirating" because you are actually mislead to buy something that you would normally not buy because it sucks. I have had similar discussions but how can you explain my mother who works for 150$ a month (and she needs to eat pay bills, etc with these) that she has to pay MS 500$ for their software that is what? Pixels? Bytes? What? Anyway. In my opinion it comes down to greed cause no one is stealing anything. Just some people are not willing to share although they are not losing anything. And to lose something you must own it. So you can't lose a million dollars of sales because you haven't sold anything in the first place. If authors were more conscious (less greedy) they would share because if the users were more conscious (less living in a society where everyone wants to *make you* pay for something) they would show gratitude by paying. Regards, bobef
Aug 14 2008
On Fri, 15 Aug 2008 10:14:32 +0400, bobef <bobef nosmap-abv.bg> wrote:Robert Fraser Wrote:Can't stand away of the topic. My company was making PSP game and it leaks to the pirate bay two weeks before official release. Isn't it a stealing? Did my company give someone a permission to redistribute its software? Yes, you can't buy the game officially for a time being, but so can't others. Is it an excuse for you? There is an agreement between us and a publisher, they have a schedule and can't put a game in a wrong timeline. It's a bussiness, some marketing needs to be done, hard copies be made and transfered all over the world etc. A game was something we were working on for more that half a year, lots of effort were put in it. Do we deserve a payment and respect? In fact, a game was downloaded about 500.000 times before it got to the shelves. And about a 100.000 copies were sold _in total_. We got no profit just because everything out there are so poor and can't afford a licensed copy. What the hell you were thinking about before buying a handheld? An answer is - you are just too greedy and don't respect others efforts. Shame on you. As a result we don't make PSP games anymore and you don't get any games from us. And from lots of other developers, too. You harm not only yourself, but many of the other fair people who _do_ pay for their entertainment. My old good PSOne has the following text upon loading many of the games - I remember it word-by-word: "Piracy harms consumers as well as legitimate developers, publishers and retailers." So true.Yigal Chripun Wrote:This discussion is, of course, pointless but since I read it I may also comment :) I wan to support Yigal Chripun. So you say stealing is "taking something". But information (and software) is not something. It is not something you can take. I "pirate" something and I have my copy and you have yours. Nothing have been taken all are happy. This is actually a good thing. Too bad food doesn't work this way. The problem is greed. It has nothing to do with stealing.Robert Fraser wrote: > I've had very mixed feelings about all this. One one hand, theletterof theevery day arelaw may be questionably constitutional. But millions of dollarscopyrightedlost because people (including myself occasionally...) stealformaterial. Honestly, I think there should be much stricter penaltiesdamaging.things like internet piracy, because it's simply so widespread andOf course you have the right to have your own opinion (that's also in the constitution) but all of the above is bullshit. (sorry for the language). stealing only applies to physical things like chairs and cars. that whole metaphor of information as physical entities is wrong. you sure can infringe someone's copyrights but you cannot stealanythingsince there's nothing to steal.Some philosopher said that all philosophical debates were inherently linguistic ones that stemmed from not having the words to represent the concepts being spoken about. We're using different definitions of "steal," but the concept is clear -- it's taking something you don't have the right to have taken without paying for, and the debate is over whether you do or should have that right.I think what a lot of these arguments boil down to is people trying to justify taking stuff without paying for it. Plain and simple. I do on occasion download videos (these days only anime fansubs). And I don't feel bad about it. But I do know it's stealing. Downloading a $10 CD is really no better than shoplifting a $10 CD, because the people who worked to bring that CD into existence are not being paid for it.It is not the same as shoplifting as you are not depriving anyone from anything. So you are not stealing anything. It is moral (and that is relative) to pay for the author's work, but only if you like it. When you buy a CD with 14 shitty songs because you are exposed to advertising of one good one, why don't you pay 1/15 of the price? This is more stealing than "pirating" because you are actually mislead to buy something that you would normally not buy because it sucks. I have had similar discussions but how can you explain my mother who works for 150$ a month (and she needs to eat pay bills, etc with these) that she has to pay MS 500$ for their software that is what? Pixels? Bytes? What? Anyway. In my opinion it comes down to greed cause no one is stealing anything. Just some people are not willing to share although they are not losing anything. And to lose something you must own it. So you can't lose a million dollars of sales because you haven't sold anything in the first place. If authors were more conscious (less greedy) they would share because if the users were more conscious (less living in a society where everyone wants to *make you* pay for something) they would show gratitude by paying. Regards, bobef
Aug 15 2008
Koroskin Denis wrote:On Fri, 15 Aug 2008 10:14:32 +0400, bobef <bobef nosmap-abv.bg> wrote:Nope.Robert Fraser Wrote:Can't stand away of the topic. My company was making PSP game and it leaks to the pirate bay two weeks before official release. Isn't it a stealing?Yigal Chripun Wrote:This discussion is, of course, pointless but since I read it I may also comment :) I wan to support Yigal Chripun. So you say stealing is "taking something". But information (and software) is not something. It is not something you can take. I "pirate" something and I have my copy and you have yours. Nothing have been taken all are happy. This is actually a good thing. Too bad food doesn't work this way. The problem is greed. It has nothing to do with stealing.Robert Fraser wrote: > I've had very mixed feelings about all this. One one hand, theletterof theevery day arelaw may be questionably constitutional. But millions of dollarscopyrightedlost because people (including myself occasionally...) stealpenalties formaterial. Honestly, I think there should be much stricterand damaging.things like internet piracy, because it's simply so widespreadOf course you have the right to have your own opinion (that's also in the constitution) but all of the above is bullshit. (sorry for the language). stealing only applies to physical things like chairs and cars. that whole metaphor of information as physical entities is wrong. you sure can infringe someone's copyrights but you cannot stealanythingsince there's nothing to steal.Some philosopher said that all philosophical debates were inherently linguistic ones that stemmed from not having the words to represent the concepts being spoken about. We're using different definitions of "steal," but the concept is clear -- it's taking something you don't have the right to have taken without paying for, and the debate is over whether you do or should have that right.I think what a lot of these arguments boil down to is people trying to justify taking stuff without paying for it. Plain and simple. I do on occasion download videos (these days only anime fansubs). And I don't feel bad about it. But I do know it's stealing. Downloading a $10 CD is really no better than shoplifting a $10 CD, because the people who worked to bring that CD into existence are not being paid for it.It is not the same as shoplifting as you are not depriving anyone from anything. So you are not stealing anything. It is moral (and that is relative) to pay for the author's work, but only if you like it. When you buy a CD with 14 shitty songs because you are exposed to advertising of one good one, why don't you pay 1/15 of the price? This is more stealing than "pirating" because you are actually mislead to buy something that you would normally not buy because it sucks. I have had similar discussions but how can you explain my mother who works for 150$ a month (and she needs to eat pay bills, etc with these) that she has to pay MS 500$ for their software that is what? Pixels? Bytes? What? Anyway. In my opinion it comes down to greed cause no one is stealing anything. Just some people are not willing to share although they are not losing anything. And to lose something you must own it. So you can't lose a million dollars of sales because you haven't sold anything in the first place. If authors were more conscious (less greedy) they would share because if the users were more conscious (less living in a society where everyone wants to *make you* pay for something) they would show gratitude by paying. Regards, bobefDid my company give someone a permission to redistribute its software?Nope, but I don't see how that changes the terminology.Yes, you can't buy the game officially for a time being, but so can't others. Is it an excuse for you? There is an agreement between us and a publisher, they have a schedule and can't put a game in a wrong timeline. It's a bussiness, some marketing needs to be done, hard copies be made and transfered all over the world etc. A game was something we were working on for more that half a year, lots of effort were put in it. Do we deserve a payment and respect?Nope. That's the free market - you "deserve" nothing implicitly.In fact, a game was downloaded about 500.000 times before it got to the shelves. And about a 100.000 copies were sold _in total_. We got no profit just because everything out there are so poor and can't afford a licensed copy. What the hell you were thinking about before buying a handheld? An answer is - you are just too greedy and don't respect others efforts. Shame on you.How did this become about us?As a result we don't make PSP games anymore and you don't get any games from us. And from lots of other developers, too. You harm not only yourself, but many of the other fair people who _do_ pay for their entertainment.Again, when did this become personal?My old good PSOne has the following text upon loading many of the games - I remember it word-by-word: "Piracy harms consumers as well as legitimate developers, publishers and retailers." So true.Note that they used the word "Piracy". Not "Stealing". I wish you'd remember that more.
Aug 15 2008
downs wrote:Note that they used the word "Piracy". Not "Stealing". I wish you'd remember that more.Yeah, because capturing vessels on the high seas has a lot more in common with illegally obtaining copyable goods than "stealing" does.
Aug 16 2008
Mike Parker wrote:downs wrote:Verily, I have gotten 'burned'.Note that they used the word "Piracy". Not "Stealing". I wish you'd remember that more.Yeah, because capturing vessels on the high seas has a lot more in common with illegally obtaining copyable goods than "stealing" does.
Aug 16 2008
Mike Parker wrote:downs wrote:Why can't we fu*king call the dog by his name? when a person infringes someone else' copyrights he's not pirating (as you said it, pirating is "capturing vessels on the high seas") and he's not stealing. that person _*infringes*_ someone else' copyrights. Why is that so difficult for people to use the correct word? infringe. here I just used it myself. If anyone has deep issues with that we can also use "violate". no need to invent new words for an already well defined concept just to satisfy someone's (MPAA, RIAA, etc) PR goals.Note that they used the word "Piracy". Not "Stealing". I wish you'd remember that more.Yeah, because capturing vessels on the high seas has a lot more in common with illegally obtaining copyable goods than "stealing" does.
Aug 16 2008
Yigal Chripun wrote:Mike Parker wrote:"Infringing a copyright": 7 syllables. "Pirating": 3 syllables. "Stealing": 2 syllables. Sad but true.downs wrote:Why can't we fu*king call the dog by his name? when a person infringes someone else' copyrights he's not pirating (as you said it, pirating is "capturing vessels on the high seas") and he's not stealing. that person _*infringes*_ someone else' copyrights. Why is that so difficult for people to use the correct word? infringe. here I just used it myself. If anyone has deep issues with that we can also use "violate". no need to invent new words for an already well defined concept just to satisfy someone's (MPAA, RIAA, etc) PR goals.Note that they used the word "Piracy". Not "Stealing". I wish you'd remember that more.Yeah, because capturing vessels on the high seas has a lot more in common with illegally obtaining copyable goods than "stealing" does.
Aug 16 2008
downs wrote:Yigal Chripun wrote:remember the old rule - each line of code is read 100 times more than it's written? IMHO this should also apply to NG posts.Mike Parker wrote:"Infringing a copyright": 7 syllables. "Pirating": 3 syllables. "Stealing": 2 syllables. Sad but true.downs wrote:Why can't we fu*king call the dog by his name? when a person infringes someone else' copyrights he's not pirating (as you said it, pirating is "capturing vessels on the high seas") and he's not stealing. that person _*infringes*_ someone else' copyrights. Why is that so difficult for people to use the correct word? infringe. here I just used it myself. If anyone has deep issues with that we can also use "violate". no need to invent new words for an already well defined concept just to satisfy someone's (MPAA, RIAA, etc) PR goals.Note that they used the word "Piracy". Not "Stealing". I wish you'd remember that more.Yeah, because capturing vessels on the high seas has a lot more in common with illegally obtaining copyable goods than "stealing" does.
Aug 16 2008
downs Wrote:Yigal Chripun wrote:"what the intercourse are you talking about": 9 syllables. depressing.Mike Parker wrote:"Infringing a copyright": 7 syllables. "Pirating": 3 syllables. "Stealing": 2 syllables. Sad but true.downs wrote:Why can't we fu*king call the dog by his name? when a person infringes someone else' copyrights he's not pirating (as you said it, pirating is "capturing vessels on the high seas") and he's not stealing. that person _*infringes*_ someone else' copyrights. Why is that so difficult for people to use the correct word? infringe. here I just used it myself. If anyone has deep issues with that we can also use "violate". no need to invent new words for an already well defined concept just to satisfy someone's (MPAA, RIAA, etc) PR goals.Note that they used the word "Piracy". Not "Stealing". I wish you'd remember that more.Yeah, because capturing vessels on the high seas has a lot more in common with illegally obtaining copyable goods than "stealing" does.
Aug 16 2008
superdan wrote:downs Wrote:"Pirating" is shorter :) And just to be the grammar nazi for a sec, it's 11.Yigal Chripun wrote:"what the intercourse are you talking about": 9 syllables. depressing.Mike Parker wrote:"Infringing a copyright": 7 syllables. "Pirating": 3 syllables. "Stealing": 2 syllables. Sad but true.downs wrote:Why can't we fu*king call the dog by his name? when a person infringes someone else' copyrights he's not pirating (as you said it, pirating is "capturing vessels on the high seas") and he's not stealing. that person _*infringes*_ someone else' copyrights. Why is that so difficult for people to use the correct word? infringe. here I just used it myself. If anyone has deep issues with that we can also use "violate". no need to invent new words for an already well defined concept just to satisfy someone's (MPAA, RIAA, etc) PR goals.Note that they used the word "Piracy". Not "Stealing". I wish you'd remember that more.Yeah, because capturing vessels on the high seas has a lot more in common with illegally obtaining copyable goods than "stealing" does.
Aug 16 2008
downs Wrote:superdan wrote:ok eh.downs Wrote:"Pirating" is shorter :)Yigal Chripun wrote:"what the intercourse are you talking about": 9 syllables. depressing.Mike Parker wrote:"Infringing a copyright": 7 syllables. "Pirating": 3 syllables. "Stealing": 2 syllables. Sad but true.downs wrote:Why can't we fu*king call the dog by his name? when a person infringes someone else' copyrights he's not pirating (as you said it, pirating is "capturing vessels on the high seas") and he's not stealing. that person _*infringes*_ someone else' copyrights. Why is that so difficult for people to use the correct word? infringe. here I just used it myself. If anyone has deep issues with that we can also use "violate". no need to invent new words for an already well defined concept just to satisfy someone's (MPAA, RIAA, etc) PR goals.Note that they used the word "Piracy". Not "Stealing". I wish you'd remember that more.Yeah, because capturing vessels on the high seas has a lot more in common with illegally obtaining copyable goods than "stealing" does.And just to be the grammar nazi for a sec, it's 11.ooooooooooooooooooooooooohhhhhhhhhhhhhhhhhhhhh ................... sorry my level of humor rose so fast above yours i got vertigo there for a bit. hint: it's 9 syllables if you read it the right way.
Aug 16 2008
superdan wrote:downs Wrote:Hehe.superdan wrote:ok eh.downs Wrote:"Pirating" is shorter :)Yigal Chripun wrote:"what the intercourse are you talking about": 9 syllables. depressing.Mike Parker wrote:"Infringing a copyright": 7 syllables. "Pirating": 3 syllables. "Stealing": 2 syllables. Sad but true.downs wrote:Why can't we fu*king call the dog by his name? when a person infringes someone else' copyrights he's not pirating (as you said it, pirating is "capturing vessels on the high seas") and he's not stealing. that person _*infringes*_ someone else' copyrights. Why is that so difficult for people to use the correct word? infringe. here I just used it myself. If anyone has deep issues with that we can also use "violate". no need to invent new words for an already well defined concept just to satisfy someone's (MPAA, RIAA, etc) PR goals.Note that they used the word "Piracy". Not "Stealing". I wish you'd remember that more.Yeah, because capturing vessels on the high seas has a lot more in common with illegally obtaining copyable goods than "stealing" does.And just to be the grammar nazi for a sec, it's 11.ooooooooooooooooooooooooohhhhhhhhhhhhhhhhhhhhh ................... sorry my level of humor rose so fast above yours i got vertigo there for a bit.hint: it's 9 syllables if you read it the right way.This isn't really my day.
Aug 16 2008
Yigal Chripun Wrote:Mike Parker wrote:ain't it funny. ever since i stopped fuckshitting everyone and their dog started. funniest is jarrett. first he emails like an unsexed victorian damsel in distress "learn to type like a normal person or i'll have a syncope right here. oh! oh! my minerals quick!" next day he's cursing like a sailor in baltimore. not that there are any. guys the dirty talk is pathetic. you don't have the frame for it. if i can do it in style don't let that fool ya. ok?downs wrote:Why can't we fu*king call the dog by his name?Note that they used the word "Piracy". Not "Stealing". I wish you'd remember that more.Yeah, because capturing vessels on the high seas has a lot more in common with illegally obtaining copyable goods than "stealing" does.
Aug 16 2008
bobef wrote:Robert Fraser Wrote:Yeah, all are happy. I'm sure the developer is ecstatic that you have no respect for him or the effort he put into developing his software. He'll be extremely glad to know that one more person thinks he doesn't deserve the same right to make a living that producers of physical goods enjoy. He'll be jumping for joy when enough people out there like you dash his dreams of working as a full-time developer and he has to go out and find another job to put food on the table. Oh, happy days! Software *is* something. Just because it is infinitely copyable doesn't give you the right to copy it. No one has the right to take something someone else has created without the creator's permission. I'm sure we can agree that if you want a chair I've crafted and I want to charge you for it, then I am well within my right to do so. How is it that when my creation is infinitely copyable, I suddenly lose that right? I've heard this argument many, many, many times, but it still makes no sense to me. True, when you copy my infinitely copyable creation I'm not losing a physical object, but I *am* losing something -- compensation for the time and effort I put into it. It takes a heck of a lot longer to develop, test and debug a software application than it does to craft a chair. So why do you think developers shouldn't be afforded the same right as a craftsman? What gives you the right, in my stead, to decide if my product should be freely available? And don't come at me with that 'information should be free' crap. Software is not information. It's a product.Yigal Chripun Wrote:This discussion is, of course, pointless but since I read it I may also comment :) I wan to support Yigal Chripun. So you say stealing is "taking something". But information (and software) is not something. It is not something you can take. I "pirate" something and I have my copy and you have yours. Nothing have been taken all are happy. This is actually a good thing. Too bad food doesn't work this way. The problem is greed. It has nothing to do with stealing.Robert Fraser wrote: > I've had very mixed feelings about all this. One one hand, the letter of theSome philosopher said that all philosophical debates were inherently linguistic ones that stemmed from not having the words to represent the concepts being spoken about. We're using different definitions of "steal," but the concept is clear -- it's taking something you don't have the right to have taken without paying for, and the debate is over whether you do or should have that right.law may be questionably constitutional. But millions of dollars every day are lost because people (including myself occasionally...) steal copyrighted material. Honestly, I think there should be much stricter penalties for things like internet piracy, because it's simply so widespread and damaging.Of course you have the right to have your own opinion (that's also in the constitution) but all of the above is bullshit. (sorry for the language). stealing only applies to physical things like chairs and cars. that whole metaphor of information as physical entities is wrong. you sure can infringe someone's copyrights but you cannot steal anything since there's nothing to steal.
Aug 15 2008
Mike Parker wrote:bobef wrote:Bullshit. There is no such thing as "right to make a living".Robert Fraser Wrote:Yeah, all are happy. I'm sure the developer is ecstatic that you have no respect for him or the effort he put into developing his software. He'll be extremely glad to know that one more person thinks he doesn't deserve the same right to make a living that producers of physical goods enjoy.Yigal Chripun Wrote:This discussion is, of course, pointless but since I read it I may also comment :) I wan to support Yigal Chripun. So you say stealing is "taking something". But information (and software) is not something. It is not something you can take. I "pirate" something and I have my copy and you have yours. Nothing have been taken all are happy. This is actually a good thing. Too bad food doesn't work this way. The problem is greed. It has nothing to do with stealing.Robert Fraser wrote: > I've had very mixed feelings about all this. One one hand, the letter of theSome philosopher said that all philosophical debates were inherently linguistic ones that stemmed from not having the words to represent the concepts being spoken about. We're using different definitions of "steal," but the concept is clear -- it's taking something you don't have the right to have taken without paying for, and the debate is over whether you do or should have that right.law may be questionably constitutional. But millions of dollars every day are lost because people (including myself occasionally...) steal copyrighted material. Honestly, I think there should be much stricter penalties for things like internet piracy, because it's simply so widespread and damaging.Of course you have the right to have your own opinion (that's also in the constitution) but all of the above is bullshit. (sorry for the language). stealing only applies to physical things like chairs and cars. that whole metaphor of information as physical entities is wrong. you sure can infringe someone's copyrights but you cannot steal anything since there's nothing to steal.He'll be jumping for joy when enough people out there like you dash his dreams of working as a full-time developer and he has to go out and find another job to put food on the table. Oh, happy days!There are two kind of arguments: logical arguments and emotional arguments. Guess which yours is.Software *is* something. Just because it is infinitely copyable doesn't give you the right to copy it. No one has the right to take something someone else has created without the creator's permission.This is a common illusion. (I blame Disney). The right to exclusivity is granted to the creator, by the state, for a certain period of time. It does not exist "by default".I'm sure we can agree that if you want a chair I've crafted and I want to charge you for it, then I am well within my right to do so.Could we PLEASE keep the comparisons to physical goods out of it? NOT. THE SAME. THING.How is it that when my creation is infinitely copyable, I suddenly lose that right?Because you don't lose the original anymore. This has been said hundreds of times.I've heard this argument many, many, many times, but it still makes no sense to me. True, when you copy my infinitely copyable creation I'm not losing a physical object, but I *am* losing something -- compensation for the time and effort I put into it.Which, by the way, is not a right. Are people normally bound to buy your physical goods?It takes a heck of a lot longer to develop, test and debug a software application than it does to craft a chair.Maybe for cheap chairs.So why do you think developers shouldn't be afforded the same right as a craftsman? What gives you the right, in my stead, to decide if my product should be freely available?See above.And don't come at me with that 'information should be free' crap. Software is not information. It's a product.Software is purely information. "Software is a product" is a relatively novel idea that, I believe, was invented by our friends at MS (though I cannot point at a source for that claim).
Aug 15 2008
"downs" <default_357-line yahoo.de> wrote in message news:g84gml$1rb1$1 digitalmars.com...Software is purely information. "Software is a product" is a relatively novel idea that, I believe, was invented by our friends at MS (though I cannot point at a source for that claim).Oh don't give me that bullshit. If anything, another company came up with the idea and MS bought them out ;)
Aug 15 2008
Jarrett Billingsley wrote:"downs" <default_357-line yahoo.de> wrote in message news:g84gml$1rb1$1 digitalmars.com...Oh, come on! "software is a product" makes sense -- as in "you buy it and you can do what you want with it (your copy of it, that is)". I believe what MS gave us was "software is licensed, and you can only do with it what we say you can no matter how much you paid for it". Which is more absurd then saying software developers have no right to sell their software!Software is purely information. "Software is a product" is a relatively novel idea that, I believe, was invented by our friends at MS (though I cannot point at a source for that claim).Oh don't give me that bullshit. If anything, another company came up with the idea and MS bought them out ;)
Aug 16 2008
"Mike Parker" <aldacron gmail.com> wrote in message news:g86q1l$2qrv$2 digitalmars.com...Jarrett Billingsley wrote:Oh I agree that MS didn't "come up" with the idea that software is a product. I don't think it ever was a novel concept. I was just making a snarky remark about MS's typical business practices. Now whether MS came up with the idea of restrictive software licenses -- now that really _does_ smell of bullshit and anti-MS-fanboyism. MS is not the only eeeevil monopolistic company out there :P"downs" <default_357-line yahoo.de> wrote in message news:g84gml$1rb1$1 digitalmars.com...Oh, come on! "software is a product" makes sense -- as in "you buy it and you can do what you want with it (your copy of it, that is)". I believe what MS gave us was "software is licensed, and you can only do with it what we say you can no matter how much you paid for it". Which is more absurd then saying software developers have no right to sell their software!Software is purely information. "Software is a product" is a relatively novel idea that, I believe, was invented by our friends at MS (though I cannot point at a source for that claim).Oh don't give me that bullshit. If anything, another company came up with the idea and MS bought them out ;)
Aug 16 2008
"downs" <default_357-line yahoo.de> wrote in message news:g84gml$1rb1$1 digitalmars.com...You must have so ******* fancy chairs in your house, sorry.. erm.. palace. ;-)It takes a heck of a lot longer to develop, test and debug a software application than it does to craft a chair.Maybe for cheap chairs.
Aug 15 2008
Hello downs,Software is purely information. "Software is a product" is a relatively novel idea that, I believe, was invented by our friends at MS (though I cannot point at a source for that claim).Maybe this one: http://www.blinkenlights.com/classiccmp/gateswhine.html
Aug 15 2008
Julio César Carrascal Urquijo wrote:Hello downs,Ah. Looks like they started the "stealing" thing too. TYVM, MS.Software is purely information. "Software is a product" is a relatively novel idea that, I believe, was invented by our friends at MS (though I cannot point at a source for that claim).Maybe this one: http://www.blinkenlights.com/classiccmp/gateswhine.html
Aug 16 2008
On Fri, 15 Aug 2008 21:10:21 +0100, Julio César Carrascal Urquijo <jcarrascal gmail.com> wrote:Hello downs,Whatever happened to that hard-working underpaid idealist? :p Was that the trigger that turned him into Monty Burns?Software is purely information. "Software is a product" is a relatively novel idea that, I believe, was invented by our friends at MS (though I cannot point at a source for that claim).Maybe this one: http://www.blinkenlights.com/classiccmp/gateswhine.html
Aug 18 2008
downs wrote:Mike Parker wrote:To clarify this point: you still have a *temporary* right to control the duplication of your infinitely copyable creation. But it is *not the same right* as the one that allows you to charge for the chair.I'm sure we can agree that if you want a chair I've crafted and I want to charge you for it, then I am well within my right to do so.Could we PLEASE keep the comparisons to physical goods out of it? NOT. THE SAME. THING.How is it that when my creation is infinitely copyable, I suddenly lose that right?Because you don't lose the original anymore. This has been said hundreds of times.
Aug 16 2008
downs wrote:downs wrote:IT. IS. THE SAME. THING.Mike Parker wrote:I'm sure we can agree that if you want a chair I've crafted and I want to charge you for it, then I am well within my right to do so.Could we PLEASE keep the comparisons to physical goods out of it? NOT. THE SAME. THING.But it *is* the same right. I really didn't expect anyone to give me anything new on this. It's always the same arguments back and forth. This is one of those issues that people rarely change their minds about.To clarify this point: you still have a *temporary* right to control the duplication of your infinitely copyable creation. But it is *not the same right* as the one that allows you to charge for the chair.How is it that when my creation is infinitely copyable, I suddenly lose that right?Because you don't lose the original anymore. This has been said hundreds of times.
Aug 16 2008
Mike Parker wrote:downs wrote:So .. you are saying property right is the same thing as copyright?downs wrote:IT. IS. THE SAME. THING.Mike Parker wrote:I'm sure we can agree that if you want a chair I've crafted and I want to charge you for it, then I am well within my right to do so.Could we PLEASE keep the comparisons to physical goods out of it? NOT. THE SAME. THING.But it *is* the same right. I really didn't expect anyone to give me anything new on this. It's always the same arguments back and forth. This is one of those issues that people rarely change their minds about.To clarify this point: you still have a *temporary* right to control the duplication of your infinitely copyable creation. But it is *not the same right* as the one that allows you to charge for the chair.How is it that when my creation is infinitely copyable, I suddenly lose that right?Because you don't lose the original anymore. This has been said hundreds of times.
Aug 16 2008
downs wrote:Mike Parker wrote:No, I'm not. My assertion is that the creator of a thing has a right to determine if and how that thing will be distributed to others. The rest of the world doesn't suddenly get to decide that they can distribute the thing freely just because they can. If I create a PC game, I dictate if it's freeware or commercial -- not the users. Copyright and property rights are different, but I do believe they can, and should, work in tandem. I don't agree with the current state of copyright law, but let me tell you how I think things /should/ be. I think the idea of "licensing" music, movies, software, and whatnot is absurd. What we need is a law that explicitly defines a purchase of an infinitely copyable product as the purchase of "one unit" of that product. That particular unit is now your property. You can copy it to your heart's content, to CD or DVD, to multiple devices, or anywhere you want to use it. That's the right of property that protects the consumer's investment. Copyright law comes into play be preventing you from distributing copies of your unit without the copyright owner's permission. No matter how many copies you make for your own personal use, only the owner of the copyright (most often the creator) gets to dictate the terms of distribution. You cannot sell your copies, nor can you give them away to your friends. For the duration of the copyright, the owner of the copyright has every right to profit from his creation without fear of competing with his own product. This right protects the investment of the creator. Of course, people like to argue that they can do what they like with their property. If they want to sell it, they should be able to. I agree. If you want to give up your right to the unit you purchased and sell it to someone else, please do. But then you should be required to delete every copy you possess. From that point on, you no longer have any right to the unit. This is the same as selling your TV to someone else. Once the copyright expires, then people can do what they want with it. This holds to the original spirit and intent of copyright law -- allowing the creator to profit from his work while guaranteeing that it will eventually be freely available for all. The gives incentive for people to work at creating things full time. Again, that's how I think things /should/ be. I do understand that reality is quite a bit different. Copyright law has been hijacked by corporate lobbyists to the extent that it no longer serves the purpose it was meant to. The concepts of IP and licensing have gotten so out of control (DRM) that they turn people away from what is fair and appropriate, instead contributing to a culture of "I can take what I want and you greedy corporate asses can stuff it". So we have an environment where producers and consumers are focused on "protecting" their own rights, but few are working to protect both. In the end, it's more than the greedy corporate asses who get hurt by it all. At the end of the day, everyone has to make a living. Contrary to some assertions, I don't see that as an emotional argument. There's nothing illogical about the need to put food on the table. No one disputes the right of a carpenter to be paid for his work, nor for a doctor to be paid for his (though some would dispute the amount). Why, then, is it so difficult to accept that a software developer should be compensated for his work as well? Or a musician? Some people argue that business models should change. They already are (apologies in advance for this being game-centric). Today, some PC game developers are no longer developing games for the PC. They view the consoles as safer territory. They are for now. You see a decline in the production of single player games. You see more and more games requiring online activation, or requiring you to be online to play. These are all models geared toward minimizing the damage a company suffers from piracy. As such, they limit the options of the end user. My problem with piracy is not just a moral one, it's also a practical one. No one can say for sure where this will all lead. We could very well find ourselves in the Utopian paradise so many pirates spout off about to justify their actions, a world where people can get music, movies, books, and software freely while the creators can live off of the donations they receive from hordes of satisfied users (you'll excuse me if I hold some doubt that we'll see that result). But we could also find ourselves in a world where the independent creators, the garage bands and bedroom software developers, have gone the way of the dodo because they can't make enough to earn a living full time. A world where consumer rights are restricted and we have fewer options available to us in how we access and use creative works.downs wrote:So .. you are saying property right is the same thing as copyright?downs wrote:IT. IS. THE SAME. THING.Mike Parker wrote:I'm sure we can agree that if you want a chair I've crafted and I want to charge you for it, then I am well within my right to do so.Could we PLEASE keep the comparisons to physical goods out of it? NOT. THE SAME. THING.But it *is* the same right. I really didn't expect anyone to give me anything new on this. It's always the same arguments back and forth. This is one of those issues that people rarely change their minds about.To clarify this point: you still have a *temporary* right to control the duplication of your infinitely copyable creation. But it is *not the same right* as the one that allows you to charge for the chair.How is it that when my creation is infinitely copyable, I suddenly lose that right?Because you don't lose the original anymore. This has been said hundreds of times.
Aug 16 2008
Mike Parker wrote:No, I'm not. My assertion is that the creator of a thing has a right to determine if and how that thing will be distributed to others. The rest of the world doesn't suddenly get to decide that they can distribute the thing freely just because they can. If I create a PC game, I dictate if it's freeware or commercial -- not the users.your train of thought here is going backwards. No one "suddenly" decided to take away the right to control distribution from the creator. That right never existed in the first place.Copyright and property rights are different, but I do believe they can, and should, work in tandem. I don't agree with the current state of copyright law, but let me tell you how I think things /should/ be. I think the idea of "licensing" music, movies, software, and whatnot is absurd. What we need is a law that explicitly defines a purchase of an infinitely copyable product as the purchase of "one unit" of that product. That particular unit is now your property. You can copy it to your heart's content, to CD or DVD, to multiple devices, or anywhere you want to use it. That's the right of property that protects the consumer's investment.I agree with you that "licensing" music, movies, software, and whatnot is absurd. your idea of defining a "unit" is not implementable.Copyright law comes into play be preventing you from distributing copies of your unit without the copyright owner's permission. No matter how many copies you make for your own personal use, only the owner of the copyright (most often the creator) gets to dictate the terms of distribution. You cannot sell your copies, nor can you give them away to your friends. For the duration of the copyright, the owner of the copyright has every right to profit from his creation without fear of competing with his own product. This right protects the investment of the creator. Of course, people like to argue that they can do what they like with their property. If they want to sell it, they should be able to. I agree. If you want to give up your right to the unit you purchased and sell it to someone else, please do. But then you should be required to delete every copy you possess. From that point on, you no longer have any right to the unit. This is the same as selling your TV to someone else. Once the copyright expires, then people can do what they want with it. This holds to the original spirit and intent of copyright law -- allowing the creator to profit from his work while guaranteeing that it will eventually be freely available for all. The gives incentive for people to work at creating things full time. Again, that's how I think things /should/ be. I do understand that reality is quite a bit different. Copyright law has been hijacked by corporate lobbyists to the extent that it no longer serves the purpose it was meant to. The concepts of IP and licensing have gotten so out of control (DRM) that they turn people away from what is fair and appropriate, instead contributing to a culture of "I can take what I want and you greedy corporate asses can stuff it". So we have an environment where producers and consumers are focused on "protecting" their own rights, but few are working to protect both. In the end, it's more than the greedy corporate asses who get hurt by it all. At the end of the day, everyone has to make a living. Contrary to some assertions, I don't see that as an emotional argument. There's nothing illogical about the need to put food on the table. No one disputes the right of a carpenter to be paid for his work, nor for a doctor to be paid for his (though some would dispute the amount). Why, then, is it so difficult to accept that a software developer should be compensated for his work as well? Or a musician?no one disputes that the artist/software developer should be able to earn a living.Some people argue that business models should change. They already are (apologies in advance for this being game-centric). Today, some PC game developers are no longer developing games for the PC. They view the consoles as safer territory. They are for now. You see a decline in the production of single player games. You see more and more games requiring online activation, or requiring you to be online to play. These are all models geared toward minimizing the damage a company suffers from piracy. As such, they limit the options of the end user. My problem with piracy is not just a moral one, it's also a practical one. No one can say for sure where this will all lead. We could very well find ourselves in the Utopian paradise so many pirates spout off about to justify their actions, a world where people can get music, movies, books, and software freely while the creators can live off of the donations they receive from hordes of satisfied users (you'll excuse me if I hold some doubt that we'll see that result). But we could also find ourselves in a world where the independent creators, the garage bands and bedroom software developers, have gone the way of the dodo because they can't make enough to earn a living full time. A world where consumer rights are restricted and we have fewer options available to us in how we access and use creative works.let us take the role of an aspiring new musician and compare: before the age of the internet: we need to convince some record company representative to listen to our demo and convince him that it's worthwhile to give us a contract (in which we give almost all our rights to the company). the company decides what music to push to the public based on little to none musical interests (for example if we play classical music, we would create less sales than Brittney spears and so her music would be preferred - it's much easier to create hype and therefore sales amongst teenagers who listen to pop rather than to convince adults to buy classical music CDs) Now let's consider the current "Internet" way: we can record music with home equipment and put it on our own site. we can shoot a home video and put it on youtube, etc.. all with little costs. we'll tell all our friends about our new site with our new cool music, those wo like it will tell their friends, etc.. soon (if our music is liked by people) we could go and perform in pubs and the like and people some people will come. after growing our fan base we can also sell merchandise on our site, and get more people to go to our concerts and pay for tickets.. what I'm trying to say here is that allowing free distribution of music online makes it easier for a young new artist (or software developer) to achieve his goals (becoming a known artist). I claim that we'll find our selves in a world where the independent creators, the garage bands and bedroom software developers, have _NOT_ gone the way of the dodo but rather flourish. Another example - current state of the legal system makes it harder for two teams of OSS to work together since they are afraid of legal consequences. (phobos and tango) in a more free legal system we wouldn't find ourselves waiting for more than a year since one author is afraid of taint and possibly getting sued in the future duo to it. the absurd is that both projects provide freely redistributable code and yet there are still fears of taint. If you ever watched "sliders" than you'd probably seen the episode where they slid to a world with 85% of the population having law degrees. in that world you had to provide a full health record and a signed and legally approved note that you wouldn't sue just to buy a hamburger.
Aug 17 2008
Yigal Chripun wrote:Mike Parker wrote:Why not?No, I'm not. My assertion is that the creator of a thing has a right to determine if and how that thing will be distributed to others. The rest of the world doesn't suddenly get to decide that they can distribute the thing freely just because they can. If I create a PC game, I dictate if it's freeware or commercial -- not the users.your train of thought here is going backwards. No one "suddenly" decided to take away the right to control distribution from the creator. That right never existed in the first place.Copyright and property rights are different, but I do believe they can, and should, work in tandem. I don't agree with the current state of copyright law, but let me tell you how I think things /should/ be. I think the idea of "licensing" music, movies, software, and whatnot is absurd. What we need is a law that explicitly defines a purchase of an infinitely copyable product as the purchase of "one unit" of that product. That particular unit is now your property. You can copy it to your heart's content, to CD or DVD, to multiple devices, or anywhere you want to use it. That's the right of property that protects the consumer's investment.I agree with you that "licensing" music, movies, software, and whatnot is absurd. your idea of defining a "unit" is not implementable.But you want to take the choice of how they do so out of their hands.Copyright law comes into play be preventing you from distributing copies of your unit without the copyright owner's permission. No matter how many copies you make for your own personal use, only the owner of the copyright (most often the creator) gets to dictate the terms of distribution. You cannot sell your copies, nor can you give them away to your friends. For the duration of the copyright, the owner of the copyright has every right to profit from his creation without fear of competing with his own product. This right protects the investment of the creator. Of course, people like to argue that they can do what they like with their property. If they want to sell it, they should be able to. I agree. If you want to give up your right to the unit you purchased and sell it to someone else, please do. But then you should be required to delete every copy you possess. From that point on, you no longer have any right to the unit. This is the same as selling your TV to someone else. Once the copyright expires, then people can do what they want with it. This holds to the original spirit and intent of copyright law -- allowing the creator to profit from his work while guaranteeing that it will eventually be freely available for all. The gives incentive for people to work at creating things full time. Again, that's how I think things /should/ be. I do understand that reality is quite a bit different. Copyright law has been hijacked by corporate lobbyists to the extent that it no longer serves the purpose it was meant to. The concepts of IP and licensing have gotten so out of control (DRM) that they turn people away from what is fair and appropriate, instead contributing to a culture of "I can take what I want and you greedy corporate asses can stuff it". So we have an environment where producers and consumers are focused on "protecting" their own rights, but few are working to protect both. In the end, it's more than the greedy corporate asses who get hurt by it all. At the end of the day, everyone has to make a living. Contrary to some assertions, I don't see that as an emotional argument. There's nothing illogical about the need to put food on the table. No one disputes the right of a carpenter to be paid for his work, nor for a doctor to be paid for his (though some would dispute the amount). Why, then, is it so difficult to accept that a software developer should be compensated for his work as well? Or a musician?no one disputes that the artist/software developer should be able to earn a living.Some people argue that business models should change. They already are (apologies in advance for this being game-centric). Today, some PC game developers are no longer developing games for the PC. They view the consoles as safer territory. They are for now. You see a decline in the production of single player games. You see more and more games requiring online activation, or requiring you to be online to play. These are all models geared toward minimizing the damage a company suffers from piracy. As such, they limit the options of the end user. My problem with piracy is not just a moral one, it's also a practical one. No one can say for sure where this will all lead. We could very well find ourselves in the Utopian paradise so many pirates spout off about to justify their actions, a world where people can get music, movies, books, and software freely while the creators can live off of the donations they receive from hordes of satisfied users (you'll excuse me if I hold some doubt that we'll see that result). But we could also find ourselves in a world where the independent creators, the garage bands and bedroom software developers, have gone the way of the dodo because they can't make enough to earn a living full time. A world where consumer rights are restricted and we have fewer options available to us in how we access and use creative works.let us take the role of an aspiring new musician and compare: before the age of the internet: we need to convince some record company representative to listen to our demo and convince him that it's worthwhile to give us a contract (in which we give almost all our rights to the company). the company decides what music to push to the public based on little to none musical interests (for example if we play classical music, we would create less sales than Brittney spears and so her music would be preferred - it's much easier to create hype and therefore sales amongst teenagers who listen to pop rather than to convince adults to buy classical music CDs) Now let's consider the current "Internet" way: we can record music with home equipment and put it on our own site. we can shoot a home video and put it on youtube, etc.. all with little costs. we'll tell all our friends about our new site with our new cool music, those wo like it will tell their friends, etc.. soon (if our music is liked by people) we could go and perform in pubs and the like and people some people will come. after growing our fan base we can also sell merchandise on our site, and get more people to go to our concerts and pay for tickets..what I'm trying to say here is that allowing free distribution of music online makes it easier for a young new artist (or software developer) to achieve his goals (becoming a known artist). I claim that we'll find our selves in a world where the independent creators, the garage bands and bedroom software developers, have _NOT_ gone the way of the dodo but rather flourish.I don't dispute any of that (well, except the last bit about the future of indies). The opportunities opened up by the internet are tremendous, and I've taken advantage of them myself to some extent. But you've missed the point entirely. I'm not saying we should disallow free distribution. That's rather silly. My argument is that *it's the creator's choice to sell his product or distribute it freely.* Just because you like free stuff doesn't mean I have to give my stuff away for free. Conversely, just because I like to sell my stuff doesn't mean you have to buy it. If we leave things at that, we're all happy campers. I'll sell my stuff to people who want to buy it and you can get your stuff from people who want to give it away for free. But when you start taking my stuff without paying for it, knowing that I'm selling it and don't want it given away freely, now you're stepping on my toes and infringing my rights. I can see you are passionate about this, but it reminds me very much of the debate over the GPL. This isn't a direct analogy, but the circumstances are similar. GPL supporters love to go on about how software should be free (as in 'libre'). Ultimately, they wind up reducing freedom by dictating that the source of any derived work be released under the same terms. True freedom would give developers more choice, like the BSD or MIT licenses do. In your arguments, you keep going on about how grand it would be for us to have free (as in 'gratis', which is a different beast than 'libre' for sure) access to all of this stuff, but you would implicitly restrict the freedom (as in 'libre') of the people who produce it by dictating how they should distribute it. Speaking of the GPL, how do you feel about taking GPLed code and using it in closed-source, proprietary software that is then distributed to your customers freely or commercially (that is, ignoring the terms of the GPL altogether)? Is that just as acceptable to you as pirating the end product?
Aug 17 2008
Mike Parker wrote:Again, I do not take that choice. You claim that a software developer has the right to decide to treat his software as a product and sell "units" of it. I claim that such an option does not exist in the first place. software is information, either you share it or you keep it to yourself. beyond that there are copy-right laws that _give_ the author a limited time-span of exclusivity. the software developer doesn't have a right to exclusivity, he receives it from society for a limited time. that time span should represent a balance between the fact the published work is public domain and the need to make it worthwhile for an individual to publish his work. current us law is 70 years after the death of that individual is out of balance entirely. a more reasonable amount (for software) should be 10-15 years at most. maybe even less.no one disputes that the artist/software developer should be able to earn a living.But you want to take the choice of how they do so out of their hands.Again, this choice never existed but rather manufactured artificially by a few groups of interest.what I'm trying to say here is that allowing free distribution of music online makes it easier for a young new artist (or software developer) to achieve his goals (becoming a known artist). I claim that we'll find our selves in a world where the independent creators, the garage bands and bedroom software developers, have _NOT_ gone the way of the dodo but rather flourish.I don't dispute any of that (well, except the last bit about the future of indies). The opportunities opened up by the internet are tremendous, and I've taken advantage of them myself to some extent. But you've missed the point entirely. I'm not saying we should disallow free distribution. That's rather silly. My argument is that *it's the creator's choice to sell his product or distribute it freely.*Just because you like free stuff doesn't mean I have to give my stuff away for free. Conversely, just because I like to sell my stuff doesn't mean you have to buy it. If we leave things at that, we're all happy campers. I'll sell my stuff to people who want to buy it and you can get your stuff from people who want to give it away for free. But when you start taking my stuff without paying for it, knowing that I'm selling it and don't want it given away freely, now you're stepping on my toes and infringing my rights.You do not have to publish your work. you can keep it for yourself. either you give to society or you don't. that's your choice.I can see you are passionate about this, but it reminds me very much of the debate over the GPL. This isn't a direct analogy, but the circumstances are similar. GPL supporters love to go on about how software should be free (as in 'libre'). Ultimately, they wind up reducing freedom by dictating that the source of any derived work be released under the same terms. True freedom would give developers more choice, like the BSD or MIT licenses do. In your arguments, you keep going on about how grand it would be for us to have free (as in 'gratis', which is a different beast than 'libre' for sure) access to all of this stuff, but you would implicitly restrict the freedom (as in 'libre') of the people who produce it by dictating how they should distribute it.I do not object to OSS that is sold for money (again with the Red hat example). there is no conflict here with this at all. another way to look at it is this: an MP3 file is just information and should be available online, at the same time there is nothing that prevents the musician to charge money for his performance. a singer "produces" music by singing (for example). he does not "produce" MP3 files. Why don't you pay for each song you here on the radio for example? when you go to a restaurant do you pay for the taste, the smell or the food itself?Speaking of the GPL, how do you feel about taking GPLed code and using it in closed-source, proprietary software that is then distributed to your customers freely or commercially (that is, ignoring the terms of the GPL altogether)? Is that just as acceptable to you as pirating the end product?I feel that the GPL is a necessary evil. It's a hack on top of a broken system. Ideally, there should be no need for it at all. Currently the GPL is the exception to the rule. the default is Closed-source. I'd want it to be the default while closed source would be the exception. to answer your question: yes it's wrong to subvert the GPL. The parallel you're trying to draw here however is not acceptable to me. these are two separate issues.
Aug 17 2008
Yigal Chripun wrote:You do not have to publish your work. you can keep it for yourself. either you give to society or you don't. that's your choice.See my other post, you are making an artificial distinction yourself between private and public information. If you think some information truly can/should be private, then you also need to accept that the author can keep it private given some condition (ie that you can get access by paying). -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the Tango
Aug 17 2008
Yigal Chripun wrote:Mike Parker wrote:Someone else already pointed out to you in this thread your confusion over the difference between 'freely available' and 'free of charge'. When an entity, like a government, tells you what kind of information you can and cannot have access to, that information is no longer freely available. If I'm the only person in the world who knows something, I might just want to make a tidy profit off of telling it to someone else. Nothing whatsoever gives you the right (or, at least at present, the ability) to pick it from my brain -- it's available for a price. I might even choose to tell it freely, being the good citizen I am. But it's /my/ choice. Commercial software (which I still say isn't information) *is* freely available. If it weren't, you wouldn't be able to buy it because no one would be allowed to sell it.Again, I do not take that choice. You claim that a software developer has the right to decide to treat his software as a product and sell "units" of it. I claim that such an option does not exist in the first place. software is information, either you share it or you keep it to yourself.no one disputes that the artist/software developer should be able to earn a living.But you want to take the choice of how they do so out of their hands.They very much are the same thing. When you take GPLed source, compile it into an executable, and distribute it without adhering to the terms of the GPL you are violating the conditions set forth by the copyright holders. A recent court decision[1], applying specifically to the Artistic License (but which will likely apply to other OSS licenses), clearly defines violation of such a license as copyright infringement. Both scenarios involve distribution of copyrighted material in a manner not permitted by the copyright holders. I've always been perplexed by how some software developers can be so adamant at adhering to OSS licenses while being so cavalier about pirating software. It's such a counterintuitive thing. Once upon a time, I would have simply argued that your opposition to subverting the GPL while in support of subverting copyright law is illogical. Now I can add that it's contradicted by the courts. [1] http://lessig.org/blog/2008/08/huge_and_important_news_free_l.htmlJust because you like free stuff doesn't mean I have to give my stuff away for free. Conversely, just because I like to sell my stuff doesn't mean you have to buy it. If we leave things at that, we're all happy campers. I'll sell my stuff to people who want to buy it and you can get your stuff from people who want to give it away for free. But when you start taking my stuff without paying for it, knowing that I'm selling it and don't want it given away freely, now you're stepping on my toes and infringing my rights.You do not have to publish your work. you can keep it for yourself. either you give to society or you don't. that's your choice.I can see you are passionate about this, but it reminds me very much of the debate over the GPL. This isn't a direct analogy, but the circumstances are similar. GPL supporters love to go on about how software should be free (as in 'libre'). Ultimately, they wind up reducing freedom by dictating that the source of any derived work be released under the same terms. True freedom would give developers more choice, like the BSD or MIT licenses do. In your arguments, you keep going on about how grand it would be for us to have free (as in 'gratis', which is a different beast than 'libre' for sure) access to all of this stuff, but you would implicitly restrict the freedom (as in 'libre') of the people who produce it by dictating how they should distribute it.I do not object to OSS that is sold for money (again with the Red hat example). there is no conflict here with this at all. another way to look at it is this: an MP3 file is just information and should be available online, at the same time there is nothing that prevents the musician to charge money for his performance. a singer "produces" music by singing (for example). he does not "produce" MP3 files. Why don't you pay for each song you here on the radio for example? when you go to a restaurant do you pay for the taste, the smell or the food itself?Speaking of the GPL, how do you feel about taking GPLed code and using it in closed-source, proprietary software that is then distributed to your customers freely or commercially (that is, ignoring the terms of the GPL altogether)? Is that just as acceptable to you as pirating the end product?I feel that the GPL is a necessary evil. It's a hack on top of a broken system. Ideally, there should be no need for it at all. Currently the GPL is the exception to the rule. the default is Closed-source. I'd want it to be the default while closed source would be the exception. to answer your question: yes it's wrong to subvert the GPL. The parallel you're trying to draw here however is not acceptable to me. these are two separate issues.
Aug 17 2008
On Sun, 17 Aug 2008 16:41:06 +0300, Yigal Chripun wrote:Mike Parker wrote:At this point I merely wish for you to define what information is to you. Information can refer to a number of things, but only one of them will you get me close to agreeing should be free of charge once released to the public and that is, "Knowledge about a topic." and any combination of bits does not fall into this.Again, I do not take that choice. You claim that a software developer has the right to decide to treat his software as a product and sell "units" of it. I claim that such an option does not exist in the first place. software is information, either you share it or you keep it to yourself. beyond that there are copy-right laws that _give_ the author a limited time-span of exclusivity. the software developer doesn't have a right to exclusivity, he receives it from society for a limited time. that time span should represent a balance between the fact the published work is public domain and the need to make it worthwhile for an individual to publish his work. current us law is 70 years after the death of that individual is out of balance entirely. a more reasonable amount (for software) should be 10-15 years at most. maybe even less.no one disputes that the artist/software developer should be able to earn a living.But you want to take the choice of how they do so out of their hands.Again, this choice never existed but rather manufactured artificially by a few groups of interest.what I'm trying to say here is that allowing free distribution of music online makes it easier for a young new artist (or software developer) to achieve his goals (becoming a known artist). I claim that we'll find our selves in a world where the independent creators, the garage bands and bedroom software developers, have _NOT_ gone the way of the dodo but rather flourish.I don't dispute any of that (well, except the last bit about the future of indies). The opportunities opened up by the internet are tremendous, and I've taken advantage of them myself to some extent. But you've missed the point entirely. I'm not saying we should disallow free distribution. That's rather silly. My argument is that *it's the creator's choice to sell his product or distribute it freely.*Just because you like free stuff doesn't mean I have to give my stuff away for free. Conversely, just because I like to sell my stuff doesn't mean you have to buy it. If we leave things at that, we're all happy campers. I'll sell my stuff to people who want to buy it and you can get your stuff from people who want to give it away for free. But when you start taking my stuff without paying for it, knowing that I'm selling it and don't want it given away freely, now you're stepping on my toes and infringing my rights.You do not have to publish your work. you can keep it for yourself. either you give to society or you don't. that's your choice.I can see you are passionate about this, but it reminds me very much of the debate over the GPL. This isn't a direct analogy, but the circumstances are similar. GPL supporters love to go on about how software should be free (as in 'libre'). Ultimately, they wind up reducing freedom by dictating that the source of any derived work be released under the same terms. True freedom would give developers more choice, like the BSD or MIT licenses do. In your arguments, you keep going on about how grand it would be for us to have free (as in 'gratis', which is a different beast than 'libre' for sure) access to all of this stuff, but you would implicitly restrict the freedom (as in 'libre') of the people who produce it by dictating how they should distribute it.I do not object to OSS that is sold for money (again with the Red hat example). there is no conflict here with this at all. another way to look at it is this: an MP3 file is just information and should be available online, at the same time there is nothing that prevents the musician to charge money for his performance. a singer "produces" music by singing (for example). he does not "produce" MP3 files. Why don't you pay for each song you here on the radio for example? when you go to a restaurant do you pay for the taste, the smell or the food itself?Speaking of the GPL, how do you feel about taking GPLed code and using it in closed-source, proprietary software that is then distributed to your customers freely or commercially (that is, ignoring the terms of the GPL altogether)? Is that just as acceptable to you as pirating the end product?I feel that the GPL is a necessary evil. It's a hack on top of a broken system. Ideally, there should be no need for it at all. Currently the GPL is the exception to the rule. the default is Closed-source. I'd want it to be the default while closed source would be the exception. to answer your question: yes it's wrong to subvert the GPL. The parallel you're trying to draw here however is not acceptable to me. these are two separate issues.
Aug 17 2008
"Yigal Chripun" <yigal100 gmail.com> wrote in message news:g899ph$1gks$1 digitalmars.com...Mike Parker wrote:Again you are making an utterly pointless distinction. When we talk about what rights the author has of course we are talking about what rights our societys have decided they have. We are not saying the rights are bestowed on us by god. Although FWIW i agree the length of copyright is far too long. I think perhaps 20 years would be long enough.Again, I do not take that choice. You claim that a software developer has the right to decide to treat his software as a product and sell "units" of it. I claim that such an option does not exist in the first place. software is information, either you share it or you keep it to yourself. beyond that there are copy-right laws that _give_ the author a limited time-span of exclusivity. the software developer doesn't have a right to exclusivity, he receives it from society for a limited time. that time span should represent a balance between the fact the published work is public domain and the need to make it worthwhile for an individual to publish his work. current us law is 70 years after the death of that individual is out of balance entirely. a more reasonable amount (for software) should be 10-15 years at most. maybe even less.no one disputes that the artist/software developer should be able to earn a living.But you want to take the choice of how they do so out of their hands.Again an utterly pointless thing to say. You may as well say that a few hundred years ago we didnt have the right to a fair trials so we should not have them now. It's utterly irelevant, we have that right today, so lets stick to talking about that. (at least we do in civilized countries).I don't dispute any of that (well, except the last bit about the future of indies). The opportunities opened up by the internet are tremendous, and I've taken advantage of them myself to some extent. But you've missed the point entirely. I'm not saying we should disallow free distribution. That's rather silly. My argument is that *it's the creator's choice to sell his product or distribute it freely.*Again, this choice never existed but rather manufactured artificially by a few groups of interest.Why don't you pay for each song you here on the radio for example? when you go to a restaurant do you pay for the taste, the smell or the food itself?We do pay for songs that are played on the radio. In America there's ASCAP, and likewise in other countries there are organizations that are licenced by the government / rights owners, to collect royalties from the radio stations. The radio stations typicaly pay these royalties by runing adverts.So GPL coders have the right to control what is done with their work but book authors / musicians dont?Speaking of the GPL, how do you feel about taking GPLed code and using it in closed-source, proprietary software that is then distributed to your customers freely or commercially (that is, ignoring the terms of the GPL altogether)? Is that just as acceptable to you as pirating the end product?I feel that the GPL is a necessary evil. It's a hack on top of a broken system. Ideally, there should be no need for it at all. Currently the GPL is the exception to the rule. the default is Closed-source. I'd want it to be the default while closed source would be the exception. to answer your question: yes it's wrong to subvert the GPL. The parallel you're trying to draw here however is not acceptable to me. these are two separate issues.
Aug 17 2008
"Yigal Chripun" <yigal100 gmail.com> wrote in message news:g88lc3$hgc$1 digitalmars.com...Mike Parker wrote:No rights exist a priori, and it adds nothing to this discusion to point that out. We can only talk about rights in the context of what society decides we have, or what we think those rights should be. So if society decided we have the right to control distribution of our work, then we do have those rights.No, I'm not. My assertion is that the creator of a thing has a right to determine if and how that thing will be distributed to others. The rest of the world doesn't suddenly get to decide that they can distribute the thing freely just because they can. If I create a PC game, I dictate if it's freeware or commercial -- not the users.your train of thought here is going backwards. No one "suddenly" decided to take away the right to control distribution from the creator. That right never existed in the first place.But you do seem to want to dictate how they do so. And you seem to want to dictate that they make their living in a way that best benefits you.At the end of the day, everyone has to make a living. Contrary to some assertions, I don't see that as an emotional argument. There's nothing illogical about the need to put food on the table. No one disputes the right of a carpenter to be paid for his work, nor for a doctor to be paid for his (though some would dispute the amount). Why, then, is it so difficult to accept that a software developer should be compensated for his work as well? Or a musician?no one disputes that the artist/software developer should be able to earn a living.what I'm trying to say here is that allowing free distribution of music online makes it easier for a young new artist (or software developer) to achieve his goals (becoming a known artist). I claim that we'll find our selves in a world where the independent creators, the garage bands and bedroom software developers, have _NOT_ gone the way of the dodo but rather flourish.You obviously dont know many people who do this or else you'd know that the vast majority of bands / artist online, still SELL their music. They dont give it away for free, yes sometimes they give some tracks for free, or have listen online thingmebobs, for promotional reasons, but they dont give all their music away for free. And in fact the real benefit of the internet for these people is free and cheap access to distribution / the public, not distribution of their work for free. Small software developers in the pro audio industry have flourished because of easy entry to the market. They havn't flourished by giving their software away for free and hoping somone will drop a few pennies in the honesty box.Another example - current state of the legal system makes it harder for two teams of OSS to work together since they are afraid of legal consequences. (phobos and tango) in a more free legal system we wouldn't find ourselves waiting for more than a year since one author is afraid of taint and possibly getting sued in the future duo to it. the absurd is that both projects provide freely redistributable code and yet there are still fears of taint.In a more free legal system there might never have been a phobos, or a digital mars. If Walter and the company he worked for couldnt have protected their investment its likely none of us would be here chatting now. Capitalism, and property rights, are what has made western societys so prosperous, they encourage investment and enterprise. Just because such laws / rights sometimes have negative effects doesnt mean they are all bad, and should be scrapped.If you ever watched "sliders" than you'd probably seen the episode where they slid to a world with 85% of the population having law degrees. in that world you had to provide a full health record and a signed and legally approved note that you wouldn't sue just to buy a hamburger.Have you heard of the USSR? Of China? Of North Korea? There's some real world examples, not sci fi jibberish, of why having weak property rights is bad for enterprise and economy. Just look at how China has flourished since it embraced capatalism.
Aug 17 2008
On Fri, 15 Aug 2008 20:12:23 +0200, downs wrote:Mike Parker wrote:Ok, let us leave out the chairs and discuss books (books of fiction). (Little tangent: I will agree there is no, "right to make a living." Hell, I can go as far as to say that there is no right to life, liberty, or pursuit of happiness. But then I would have to continue and say that no one has the right to remove someones life, liberty, or happiness. So really where did we go with this?) Fiction books, I really would say that this is a collection of information (yes information is in it, but it is not solely information) and you probably disagree. Your claim is that if I can in some way (scanner/typing) get the information in this book onto in infinitely distributable medium I am allowed to distribute this as I see fit because I still have the original? And now back to chairs. Since you can't seem to state the difference from selling physical items and phantom "infinitely copyable items," think I shall make an attempt and include why the purchaser of said product does not buy a right at any point in time to copy and distribute. As said, physical items are lost when distributed to another. However, if you had some way in which that chair could be copied, production line, I would assume that you would claim that I could only charge for the material cost that goes into it then? I obviously couldn't charge for labor because that would be like a Programmer charging for his software since only labor went into it. But then why would the original creator have a right to set a price for his chair, and probably include the labor in that price, shouldn't it just be for the materials that he use? But then again, why did the materials cost money? Wouldn't it have only been labor put in to get those materials, thus in reality everything is free? Yes there is the supply and demand thing, where the person laboring for materials will sell to the highest bidder. And this is where we have the difference; A laborer can change pricing by not producing an infinite quantity, bits can not be controlled (*cough* DRM *cough*). This leads to the last point, why the end-user has no right to copy for distribution. The creator has, by having labored (which is not limited to physical), the right to define how copies for distribution are done. (I wish to emphasize _for_) The problem is that software and anything else digital, does not come with this natural property of limited quantity or required labor to copy. I think I should also cover what I think the end-user does have the right to do once he buys the product. First off he is bound to the legal contract that he agrees to by using the product, why? Because he agreed to it by the fact that he is using the product (this my change depending on where you live, but local law should still rule). If not given some legal document, be it an OSS on or not, I see these rights for the end- user. The user can not make a profit off of the purchased good until it is no longer being distributed by the creator, the creator is no longer making money. (If a company is the creator, which is likely, they would have some allotted time under 80yrs to control it). The user has the right to resell, see first point, as long as he is giving up his right of use i.e. he is not keeping a copy for himself to use after the sale. The user has control over his copy. Just like a chairs, guests can use it with permission from the copy's owner. And if he does not like his chair in the living room he can take it to the dinning room. Personal use copies are fine. On the subject of users copying. The user can copy for distribution, the end result. If I have a reclining chair, I can take that idea and make my own reclining chair that works and looks exactly the same, as long as I don't use how the original was done (which just might make it hard to prove that it really was all my work). To sum it up, the end-user does not have the right to decided for the creator, how copy for distribution is handled.bobef wrote:Bullshit. There is no such thing as "right to make a living".Robert Fraser Wrote:Yeah, all are happy. I'm sure the developer is ecstatic that you have no respect for him or the effort he put into developing his software. He'll be extremely glad to know that one more person thinks he doesn't deserve the same right to make a living that producers of physical goods enjoy.Yigal Chripun Wrote:This discussion is, of course, pointless but since I read it I may also comment :) I wan to support Yigal Chripun. So you say stealing is "taking something". But information (and software) is not something. It is not something you can take. I "pirate" something and I have my copy and you have yours. Nothing have been taken all are happy. This is actually a good thing. Too bad food doesn't work this way. The problem is greed. It has nothing to do with stealing.Robert Fraser wrote: > I've had very mixed feelings about all this. One one hand, the letter of theSome philosopher said that all philosophical debates were inherently linguistic ones that stemmed from not having the words to represent the concepts being spoken about. We're using different definitions of "steal," but the concept is clear -- it's taking something you don't have the right to have taken without paying for, and the debate is over whether you do or should have that right.law may be questionably constitutional. But millions of dollars every day are lost because people (including myself occasionally...) steal copyrighted material. Honestly, I think there should be much stricter penalties for things like internet piracy, because it's simply so widespread and damaging.Of course you have the right to have your own opinion (that's also in the constitution) but all of the above is bullshit. (sorry for the language). stealing only applies to physical things like chairs and cars. that whole metaphor of information as physical entities is wrong. you sure can infringe someone's copyrights but you cannot steal anything since there's nothing to steal.He'll be jumping for joy when enough people out there like you dash his dreams of working as a full-time developer and he has to go out and find another job to put food on the table. Oh, happy days!There are two kind of arguments: logical arguments and emotional arguments. Guess which yours is.Software *is* something. Just because it is infinitely copyable doesn't give you the right to copy it. No one has the right to take something someone else has created without the creator's permission.This is a common illusion. (I blame Disney). The right to exclusivity is granted to the creator, by the state, for a certain period of time. It does not exist "by default".I'm sure we can agree that if you want a chair I've crafted and I want to charge you for it, then I am well within my right to do so.Could we PLEASE keep the comparisons to physical goods out of it? NOT. THE SAME. THING.How is it that when my creation is infinitely copyable, I suddenly lose that right?Because you don't lose the original anymore. This has been said hundreds of times.I've heard this argument many, many, many times, but it still makes no sense to me. True, when you copy my infinitely copyable creation I'm not losing a physical object, but I *am* losing something -- compensation for the time and effort I put into it.Which, by the way, is not a right. Are people normally bound to buy your physical goods?It takes a heck of a lot longer to develop, test and debug a software application than it does to craft a chair.Maybe for cheap chairs.So why do you think developers shouldn't be afforded the same right as a craftsman? What gives you the right, in my stead, to decide if my product should be freely available?See above.And don't come at me with that 'information should be free' crap. Software is not information. It's a product.Software is purely information. "Software is a product" is a relatively novel idea that, I believe, was invented by our friends at MS (though I cannot point at a source for that claim).
Aug 16 2008
My major issue with what you wrote is this: 60 years or so ago women didn't have the right to vote in the US. let's go even before that to the time when black people in America were considered property and didn't have any rights. In that period of time a white person could claim that the law states that his black slave is his property and it is entirely legal and moral to treat him as such. Today, you'd of course disagree. Just as that man would claim according to the law that black people where not really people and didn't have any rights, you now claim that we are not entitled to the right of freedom of information. besides that, you talk in metaphors of infinitely copyable chairs (just like in star trek..). I can compare that with the philosophical question of "what if a tree falls in the forest and there's nobody there, does it make a sound?" BUT, elementary physics tells us that the tree does make a sound regardless. And I'll tell you: The chairs are *not* infinitely copyable. What if I had three legs? well, I don't. So please stick to the reality that chairs are not the same thing as software. There are no inherit rights that allow the author to control distribution. The way it actually works is this: a) you came up with new exciting idea/poem/article/software/etc.. b) either you keep it to yourself or you publish it. c) once it was published it is in the public domain. you cannot tell me: I have an idea such as <some idea> BUT since I just told you my idea it is mine alone and you cannot use it. If you do not want me to use your idea just keep it for yourself and don't tell anyone about it. This is what Coca-Cola does with its secret recipe. (it's secret!) The above basic scheme was augmented by copyright/patent laws in the following matter: The state gives the creator a *limited* time-span of exclusivity from the moment he told the world his idea or published his book/song/etc. This is a trade-off designed to make it worthwhile for people to come up with new ideas, invest their time in art, etc. I.e the public gives some of its rights in order to gain more diversity of ideas and such. Your entire analogy to chairs and such is plain false. This is not about evil me trying to prevent the hard working artist/software developer from earning his [well deserved] keep. With your method it is illogical for a creator to give away his creation freely and yet get paid for his hard work. That is, companies like Red hat simply cannot exist since you can freely [and legally] download all their products on their website. Yet, fact is that Red hat is a very financially successful company. Another example would be music artists which distribute their music freely online and yet do get paid for their hard work - the more people listen to their music online the more will want to come to a live performance [and pay for the ticket]. many artists already realized this. They do not need the record companies to be successful. on the contrary, the more they give for free, the more fans they have and the more they earn. When I wanted to buy a book about Java I went and bought "Thinking in Java" which the author publishes a free online version of on his site. I did download and read the online version and that convinced me it to pay for the paper version. Not only that but I also recommend this book and other books by the author, Bruce Eckel, to all my friends. One last thing: history teaches us that once the freedom of information is lost all the other rights will soon follow. happened numerous times all over the world. we all know that when someone burns books the next thing he'll burn will be people. Jesse Phillips wrote:Ok, let us leave out the chairs and discuss books (books of fiction). (Little tangent: I will agree there is no, "right to make a living." Hell, I can go as far as to say that there is no right to life, liberty, or pursuit of happiness. But then I would have to continue and say that no one has the right to remove someones life, liberty, or happiness. So really where did we go with this?) Fiction books, I really would say that this is a collection of information (yes information is in it, but it is not solely information) and you probably disagree. Your claim is that if I can in some way (scanner/typing) get the information in this book onto in infinitely distributable medium I am allowed to distribute this as I see fit because I still have the original? And now back to chairs. Since you can't seem to state the difference from selling physical items and phantom "infinitely copyable items," think I shall make an attempt and include why the purchaser of said product does not buy a right at any point in time to copy and distribute. As said, physical items are lost when distributed to another. However, if you had some way in which that chair could be copied, production line, I would assume that you would claim that I could only charge for the material cost that goes into it then? I obviously couldn't charge for labor because that would be like a Programmer charging for his software since only labor went into it. But then why would the original creator have a right to set a price for his chair, and probably include the labor in that price, shouldn't it just be for the materials that he use? But then again, why did the materials cost money? Wouldn't it have only been labor put in to get those materials, thus in reality everything is free? Yes there is the supply and demand thing, where the person laboring for materials will sell to the highest bidder. And this is where we have the difference; A laborer can change pricing by not producing an infinite quantity, bits can not be controlled (*cough* DRM *cough*). This leads to the last point, why the end-user has no right to copy for distribution. The creator has, by having labored (which is not limited to physical), the right to define how copies for distribution are done. (I wish to emphasize _for_) The problem is that software and anything else digital, does not come with this natural property of limited quantity or required labor to copy. I think I should also cover what I think the end-user does have the right to do once he buys the product. First off he is bound to the legal contract that he agrees to by using the product, why? Because he agreed to it by the fact that he is using the product (this my change depending on where you live, but local law should still rule). If not given some legal document, be it an OSS on or not, I see these rights for the end- user. The user can not make a profit off of the purchased good until it is no longer being distributed by the creator, the creator is no longer making money. (If a company is the creator, which is likely, they would have some allotted time under 80yrs to control it). The user has the right to resell, see first point, as long as he is giving up his right of use i.e. he is not keeping a copy for himself to use after the sale. The user has control over his copy. Just like a chairs, guests can use it with permission from the copy's owner. And if he does not like his chair in the living room he can take it to the dinning room. Personal use copies are fine. On the subject of users copying. The user can copy for distribution, the end result. If I have a reclining chair, I can take that idea and make my own reclining chair that works and looks exactly the same, as long as I don't use how the original was done (which just might make it hard to prove that it really was all my work). To sum it up, the end-user does not have the right to decided for the creator, how copy for distribution is handled.
Aug 16 2008
On Sun, 17 Aug 2008 03:59:08 +0300, Yigal Chripun wrote:My major issue with what you wrote is this: 60 years or so ago women didn't have the right to vote in the US. let's go even before that to the time when black people in America were considered property and didn't have any rights. In that period of time a white person could claim that the law states that his black slave is his property and it is entirely legal and moral to treat him as such. Today, you'd of course disagree. Just as that man would claim according to the law that black people where not really people and didn't have any rights, you now claim that we are not entitled to the right of freedom of information. besides that, you talk in metaphors of infinitely copyable chairs (just like in star trek..). I can compare that with the philosophical question of "what if a tree falls in the forest and there's nobody there, does it make a sound?" BUT, elementary physics tells us that the tree does make a sound regardless. And I'll tell you: The chairs are *not* infinitely copyable. What if I had three legs? well, I don't. So please stick to the reality that chairs are not the same thing as software.Sorry your beef with the past does not work. Back in those days blacks were property, sad but true. Yes there were people that didn't like it, and it was a horrible treatment of human life, yet there is a reason we do not charge people with a crime that was not a crime at the time. You must work to make change, and breaking law might be the only way to do it, but it is your choice and breaking the law (hence illegal). My infinitely copyable chair example actually made reference to productions lines, which I do believe exist outside of Star Treck. I suppose I will have to state that yes, truly infinite copyable anything can not exist, you have to store you program somewhere. But for all intents and purposes products can be produced to a state that is equivalent to infinitely copyable, you only need enough to satisfy everyone that wants it. Information, this is the god damn English language we are talking about, you need to go and define this thing that you wish to be throwing around as something we have a right to. And frankly, what we refer to for this right is completely different and so I am not going to define it myself because that is not the argument.There are no inherit rights that allow the author to control distribution. The way it actually works is this: a) you came up with new exciting idea/poem/article/software/etc.. b) either you keep it to yourself or you publish it. c) once it was published it is in the public domain. you cannot tell me: I have an idea such as <some idea> BUT since I just told you my idea it is mine alone and you cannot use it. If you do not want me to use your idea just keep it for yourself and don't tell anyone about it. This is what Coca-Cola does with its secret recipe. (it's secret!)Yeah, they are natural rights given by nature. A farmer produces corn, and low and behold he has control over distribution of it. Why, he labored over it and got a product. If someone else is successful in doing the same, great but in either case this creator has the right given by the fact that to produce corn in such quantities takes work and not everyone is going to stumble across the free supplies they need. Which is where the idea of inherent rights to distribution come from. If a laborer of physical goods gets this right without legal statement, a laborer of something that does not have this innate property should have it extended to him.The above basic scheme was augmented by copyright/patent laws in the following matter: The state gives the creator a *limited* time-span of exclusivity from the moment he told the world his idea or published his book/song/etc. This is a trade-off designed to make it worthwhile for people to come up with new ideas, invest their time in art, etc. I.e the public gives some of its rights in order to gain more diversity of ideas and such.Do you see a problem with such an idea? If I work at something that others enjoy why not have exclusive rights to it? Yes people are willing to create things for free, but that was their choice and they were the ones that put work into it.Your entire analogy to chairs and such is plain false. This is not about evil me trying to prevent the hard working artist/software developer from earning his [well deserved] keep. With your method it is illogical for a creator to give away his creation freely and yet get paid for his hard work. That is, companies like Red hat simply cannot exist since you can freely [and legally] download all their products on their website. Yet, fact is that Red hat is a very financially successful company.First off, not RedHats choice anyway, they built on something that was already being given out for free. Secondly, how is it logical to give something out for free and then be paid for it? Isn't that like selling it (this is assuming you get paid for every one given out for free). The main fallacy with your argument is saying that people can make money even if the are not charging for it. So what? I'm not arguing here what the best business model is to make the most money. There is lots of great, free software out there where people make money. What does that have to do with anything? If you want to convince people to make their stuff free, then great, but it has nothing to do with are argument.Another example would be music artists which distribute their music freely online and yet do get paid for their hard work - the more people listen to their music online the more will want to come to a live performance [and pay for the ticket]. many artists already realized this. They do not need the record companies to be successful. on the contrary, the more they give for free, the more fans they have and the more they earn.See above. I don't care what gets people the most money. I care about these person's right to decide how the do their product distribution.When I wanted to buy a book about Java I went and bought "Thinking in Java" which the author publishes a free online version of on his site. I did download and read the online version and that convinced me it to pay for the paper version. Not only that but I also recommend this book and other books by the author, Bruce Eckel, to all my friends.See above. Great your one of the nice peoples that pays for things they get for free.One last thing: history teaches us that once the freedom of information is lost all the other rights will soon follow. happened numerous times all over the world. we all know that when someone burns books the next thing he'll burn will be people.See third paragraph. Define information, then correlate to how the loss of different types of information (yes there is more than one) lead to loss of other rights. I would agree with you on some, but not all. And maybe this can be the topic of the next postings.Jesse Phillips wrote:Ok, let us leave out the chairs and discuss books (books of fiction). (Little tangent: I will agree there is no, "right to make a living." Hell, I can go as far as to say that there is no right to life, liberty, or pursuit of happiness. But then I would have to continue and say that no one has the right to remove someones life, liberty, or happiness. So really where did we go with this?) Fiction books, I really would say that this is a collection of information (yes information is in it, but it is not solely information) and you probably disagree. Your claim is that if I can in some way (scanner/typing) get the information in this book onto in infinitely distributable medium I am allowed to distribute this as I see fit because I still have the original? And now back to chairs. Since you can't seem to state the difference from selling physical items and phantom "infinitely copyable items," think I shall make an attempt and include why the purchaser of said product does not buy a right at any point in time to copy and distribute. As said, physical items are lost when distributed to another. However, if you had some way in which that chair could be copied, production line, I would assume that you would claim that I could only charge for the material cost that goes into it then? I obviously couldn't charge for labor because that would be like a Programmer charging for his software since only labor went into it. But then why would the original creator have a right to set a price for his chair, and probably include the labor in that price, shouldn't it just be for the materials that he use? But then again, why did the materials cost money? Wouldn't it have only been labor put in to get those materials, thus in reality everything is free? Yes there is the supply and demand thing, where the person laboring for materials will sell to the highest bidder. And this is where we have the difference; A laborer can change pricing by not producing an infinite quantity, bits can not be controlled (*cough* DRM *cough*). This leads to the last point, why the end-user has no right to copy for distribution. The creator has, by having labored (which is not limited to physical), the right to define how copies for distribution are done. (I wish to emphasize _for_) The problem is that software and anything else digital, does not come with this natural property of limited quantity or required labor to copy. I think I should also cover what I think the end-user does have the right to do once he buys the product. First off he is bound to the legal contract that he agrees to by using the product, why? Because he agreed to it by the fact that he is using the product (this my change depending on where you live, but local law should still rule). If not given some legal document, be it an OSS on or not, I see these rights for the end- user. The user can not make a profit off of the purchased good until it is no longer being distributed by the creator, the creator is no longer making money. (If a company is the creator, which is likely, they would have some allotted time under 80yrs to control it). The user has the right to resell, see first point, as long as he is giving up his right of use i.e. he is not keeping a copy for himself to use after the sale. The user has control over his copy. Just like a chairs, guests can use it with permission from the copy's owner. And if he does not like his chair in the living room he can take it to the dinning room. Personal use copies are fine. On the subject of users copying. The user can copy for distribution, the end result. If I have a reclining chair, I can take that idea and make my own reclining chair that works and looks exactly the same, as long as I don't use how the original was done (which just might make it hard to prove that it really was all my work). To sum it up, the end-user does not have the right to decided for the creator, how copy for distribution is handled.
Aug 16 2008
Jesse Phillips wrote:On Sun, 17 Aug 2008 03:59:08 +0300, Yigal Chripun wrote:Unless someone else decides to take away that corn by force. Which is my right, given by nature, if I can pull it off. The notion of property requires some enforcing mechanism, whether it be brute force or legal convention (and the law is backed up by brute force). But physical property doesn't require any great amount of communication; I live in a place, and I actively prevent other people from living there. Intellectual property is a much more recent invention. For example, William Shakespeare didn't publish any of his plays. One of the few early English playwrights to publish their own works, Ben Johnson, was ridiculed for having done so -- it was polite and properly modest to allow others to publish your works, with no compensation to you. Intellectual property began, I believe, with Renaissance monarchs promoting particular manufacturers by giving them monopolies. If an enterprising entrepreneur created a new product, the rights to manufacture that might be restricted to one individual in the king's favor. This was not any notion of fairness or protection for inventors; it was simply nepotism. In recent times, intellectual property has been extended to cover nearly everything you can think of, and it's transformed into a system intended to protect content creators. This is progress. One can argue that insufficient thought has been given to issues such as remixing copyrighted works, or orphaned copyrights, or patents intended only to generate lawsuits. (I would.) (Also, it's "lo and behold", not "low and behold".)There are no inherit rights that allow the author to control distribution. The way it actually works is this: a) you came up with new exciting idea/poem/article/software/etc.. b) either you keep it to yourself or you publish it. c) once it was published it is in the public domain. you cannot tell me: I have an idea such as <some idea> BUT since I just told you my idea it is mine alone and you cannot use it. If you do not want me to use your idea just keep it for yourself and don't tell anyone about it. This is what Coca-Cola does with its secret recipe. (it's secret!)Yeah, they are natural rights given by nature. A farmer produces corn, and low and behold he has control over distribution of it.
Aug 17 2008
On Sun, 17 Aug 2008 09:47:46 -0400, Christopher Wright wrote:Jesse Phillips wrote:Ok, so you claim that stealing is your right if you can get away with it. This indicates we should start there with are argument.On Sun, 17 Aug 2008 03:59:08 +0300, Yigal Chripun wrote:Unless someone else decides to take away that corn by force. Which is my right, given by nature, if I can pull it off.There are no inherit rights that allow the author to control distribution. The way it actually works is this: a) you came up with new exciting idea/poem/article/software/etc.. b) either you keep it to yourself or you publish it. c) once it was published it is in the public domain. you cannot tell me: I have an idea such as <some idea> BUT since I just told you my idea it is mine alone and you cannot use it. If you do not want me to use your idea just keep it for yourself and don't tell anyone about it. This is what Coca-Cola does with its secret recipe. (it's secret!)Yeah, they are natural rights given by nature. A farmer produces corn, and low and behold he has control over distribution of it.The notion of property requires some enforcing mechanism, whether it be brute force or legal convention (and the law is backed up by brute force). But physical property doesn't require any great amount of communication; I live in a place, and I actively prevent other people from living there.Ok, so as long as you have some sort of force to use, you can claim anything to be yours.Intellectual property is a much more recent invention. For example, William Shakespeare didn't publish any of his plays. One of the few early English playwrights to publish their own works, Ben Johnson, was ridiculed for having done so -- it was polite and properly modest to allow others to publish your works, with no compensation to you.Who cares if it is recent or not. The US Constitution is a recent invention, and yet us Americans don't criticize it for that. Actually some may claim it is too old.Intellectual property began, I believe, with Renaissance monarchs promoting particular manufacturers by giving them monopolies. If an enterprising entrepreneur created a new product, the rights to manufacture that might be restricted to one individual in the king's favor. This was not any notion of fairness or protection for inventors; it was simply nepotism.See above.In recent times, intellectual property has been extended to cover nearly everything you can think of, and it's transformed into a system intended to protect content creators. This is progress. One can argue that insufficient thought has been given to issues such as remixing copyrighted works, or orphaned copyrights, or patents intended only to generate lawsuits. (I would.)I'm not trying to defend how the legal system is set up to handle the issue. Many will agree the legal system is crap.(Also, it's "lo and behold", not "low and behold".)Thank you.
Aug 17 2008
Jesse Phillips wrote:On Sun, 17 Aug 2008 09:47:46 -0400, Christopher Wright wrote:That is my natural right, since it is my ability. I do not claim that it is right or good or just; society defines those, and society is not the source of natural rights. But it's pointless to talk about natural rights. You can talk about societal rights or, if you're so inclined, God-given rights.Jesse Phillips wrote:Ok, so you claim that stealing is your right if you can get away with it. This indicates we should start there with are argument.On Sun, 17 Aug 2008 03:59:08 +0300, Yigal Chripun wrote:Unless someone else decides to take away that corn by force. Which is my right, given by nature, if I can pull it off.There are no inherit rights that allow the author to control distribution. The way it actually works is this: a) you came up with new exciting idea/poem/article/software/etc.. b) either you keep it to yourself or you publish it. c) once it was published it is in the public domain. you cannot tell me: I have an idea such as <some idea> BUT since I just told you my idea it is mine alone and you cannot use it. If you do not want me to use your idea just keep it for yourself and don't tell anyone about it. This is what Coca-Cola does with its secret recipe. (it's secret!)Yeah, they are natural rights given by nature. A farmer produces corn, and low and behold he has control over distribution of it.Well, yes. If fifty armed men showed up at your door and said that all your pillow cases were now theirs, you wouldn't be inclined to argue.The notion of property requires some enforcing mechanism, whether it be brute force or legal convention (and the law is backed up by brute force). But physical property doesn't require any great amount of communication; I live in a place, and I actively prevent other people from living there.Ok, so as long as you have some sort of force to use, you can claim anything to be yours.Being a recent invention, intellectual property protection is clearly not a basic right of humans. Not all societies will require it.Intellectual property is a much more recent invention. For example, William Shakespeare didn't publish any of his plays. One of the few early English playwrights to publish their own works, Ben Johnson, was ridiculed for having done so -- it was polite and properly modest to allow others to publish your works, with no compensation to you.Who cares if it is recent or not. The US Constitution is a recent invention, and yet us Americans don't criticize it for that. Actually some may claim it is too old.I'm not trying to defend how the legal system is set up to handle the issue. Many will agree the legal system is crap.Because intellectual property is a recent invention, its implementations may not be optimal. Unfortunately, a well-defined legal system predates intellectual property, so it's harder to try out different mechanisms for IP protection.
Aug 17 2008
On Sun, 17 Aug 2008 15:44:57 -0400, Christopher Wright wrote:Jesse Phillips wrote:I will move this to the "does IP exist" thread.On Sun, 17 Aug 2008 09:47:46 -0400, Christopher Wright wrote:That is my natural right, since it is my ability. I do not claim that it is right or good or just; society defines those, and society is not the source of natural rights. But it's pointless to talk about natural rights. You can talk about societal rights or, if you're so inclined, God-given rights.Jesse Phillips wrote:Ok, so you claim that stealing is your right if you can get away with it. This indicates we should start there with are argument.On Sun, 17 Aug 2008 03:59:08 +0300, Yigal Chripun wrote:Unless someone else decides to take away that corn by force. Which is my right, given by nature, if I can pull it off.There are no inherit rights that allow the author to control distribution. The way it actually works is this: a) you came up with new exciting idea/poem/article/software/etc.. b) either you keep it to yourself or you publish it. c) once it was published it is in the public domain. you cannot tell me: I have an idea such as <some idea> BUT since I just told you my idea it is mine alone and you cannot use it. If you do not want me to use your idea just keep it for yourself and don't tell anyone about it. This is what Coca-Cola does with its secret recipe. (it's secret!)Yeah, they are natural rights given by nature. A farmer produces corn, and low and behold he has control over distribution of it.Well, yes. If fifty armed men showed up at your door and said that all your pillow cases were now theirs, you wouldn't be inclined to argue.The notion of property requires some enforcing mechanism, whether it be brute force or legal convention (and the law is backed up by brute force). But physical property doesn't require any great amount of communication; I live in a place, and I actively prevent other people from living there.Ok, so as long as you have some sort of force to use, you can claim anything to be yours.Being a recent invention, intellectual property protection is clearly not a basic right of humans. Not all societies will require it.Intellectual property is a much more recent invention. For example, William Shakespeare didn't publish any of his plays. One of the few early English playwrights to publish their own works, Ben Johnson, was ridiculed for having done so -- it was polite and properly modest to allow others to publish your works, with no compensation to you.Who cares if it is recent or not. The US Constitution is a recent invention, and yet us Americans don't criticize it for that. Actually some may claim it is too old.I'm not trying to defend how the legal system is set up to handle the issue. Many will agree the legal system is crap.Because intellectual property is a recent invention, its implementations may not be optimal. Unfortunately, a well-defined legal system predates intellectual property, so it's harder to try out different mechanisms for IP protection.
Aug 17 2008
"Yigal Chripun" <yigal100 gmail.com> wrote in message news:g87t4r$1uq6$1 digitalmars.com...My major issue with what you wrote is this: 60 years or so ago women didn't have the right to vote in the US. let's go even before that to the time when black people in America were considered property and didn't have any rights. In that period of time a white person could claim that the law states that his black slave is his property and it is entirely legal and moral to treat him as such. Today, you'd of course disagree. Just as that man would claim according to the law that black people where not really people and didn't have any rights, you now claim that we are not entitled to the right of freedom of information.One of the consequences of the abolition of slavery was that those people now had the right to paid for their work, whereas previously they didnt. So your crass analogy actualy works against you.besides that, you talk in metaphors of infinitely copyable chairs (just like in star trek..). I can compare that with the philosophical question of "what if a tree falls in the forest and there's nobody there, does it make a sound?" BUT, elementary physics tells us that the tree does make a sound regardless. And I'll tell you: The chairs are *not* infinitely copyable. What if I had three legs? well, I don't. So please stick to the reality that chairs are not the same thing as software.I think he was making the point that when you buy a physical product you are not just paying for materials, but also for the labour, whether production line labour or the labour in development and design. If you take the actual cost of materials out of the analogy with a chair you are left with a similar situation we have with software, where the cost of the product is almost all labour costs.There are no inherit rights that allow the author to control distribution. The way it actually works is this:There are no inherent rights to anything in this world. Human rights, or copyrights, or civil rights, all of these are human creations. So when we talk about such rights, it only makes sense to do so in that context. What rights has our society / social group decided we have.a) you came up with new exciting idea/poem/article/software/etc.. b) either you keep it to yourself or you publish it. c) once it was published it is in the public domain. you cannot tell me: I have an idea such as <some idea> BUT since I just told you my idea it is mine alone and you cannot use it. If you do not want me to use your idea just keep it for yourself and don't tell anyone about it. This is what Coca-Cola does with its secret recipe. (it's secret!)You dont copyright ideas, you patent ideas. Copyright is for protecting works, artistic or otherwise, not for protecting ideas. If you read a book for example you are free to tell people about the ideas in the book. Nobody is trying to stop you doing that. But you are not usualy free to make a copy of the book and give that to them.Your entire analogy to chairs and such is plain false. This is not about evil me trying to prevent the hard working artist/software developer from earning his [well deserved] keep. With your method it is illogical for a creator to give away his creation freely and yet get paid for his hard work. That is, companies like Red hat simply cannot exist since you can freely [and legally] download all their products on their website. Yet, fact is that Red hat is a very financially successful company.Straw man. He never said you cant do whatever business model you want, he simply said the "software is a product" business model is a valid one. That some companies do well with "software as a service" doesnt mean we should force all companies to be like that. Or that we should rigidly confine our idea of what software is in such a way.Another example would be music artists which distribute their music freely online and yet do get paid for their hard work - the more people listen to their music online the more will want to come to a live performance [and pay for the ticket]. many artists already realized this. They do not need the record companies to be successful. on the contrary, the more they give for free, the more fans they have and the more they earn.From what I've read the majority of bands / artists who are actualy doing well with such models are ones who have already climbed up music industry ladder and were already world famous before going independant..When I wanted to buy a book about Java I went and bought "Thinking in Java" which the author publishes a free online version of on his site. I did download and read the online version and that convinced me it to pay for the paper version. Not only that but I also recommend this book and other books by the author, Bruce Eckel, to all my friends.If that's his choice of business model good for him. If he makes a living that way great. But if it isnt he shouldnt be forced to adopt that business model by people like you. Dont get me wrong, i like such ways of doing things, i like free software, and such try before buy busniess models. But i dont think I have a right to it. I dont have the right to force you to do business in a way that suits me.One last thing: history teaches us that once the freedom of information is lost all the other rights will soon follow. happened numerous times all over the world. we all know that when someone burns books the next thing he'll burn will be people.You're very confused. Freedom of information is about cencorship, government control of information, and about such information being *freely accessible*. It's not about information being free as in free beer. And again i find your analogy with book burning somewhat crass. The situation we are talking about here is nothing like that. No-one is trying to erase certain ideas / artistic works from history. We are in fact trying to do the exact oposite. We are trying to create an enviroment where ideas and artist works flourish.
Aug 16 2008
On Sun, Aug 17, 2008 at 04:12:37AM +0100, Jb wrote:No-one is trying to erase certain ideas / artistic works from history. We are in fact trying to do the exact oposite. We are trying to create an enviroment where ideas and artist works flourish.Then why is this debate about rights? Rights are irrelevant - what matters is the results. If your goal is to create an environment where ideas and art flourish, great. That's a good goal, and that is where your defence should be focused. Forget all this repetitive talk about rights, and talk about how the law helps or doesn't help achieve this goal (or whatever other goal you want to set). Copyright law might be a valid way to achieve this goal. It might not be. There might be completely better ways (something I'm convinced of). Setting a real world goal for the debate lets both sides create an objective test case for their arguments, which would let it finally come to an adequate conclusion. -- Adam D. Ruppe http://arsdnet.net
Aug 16 2008
Adam D. Ruppe wrote:On Sun, Aug 17, 2008 at 04:12:37AM +0100, Jb wrote:I agree with you. if we talk about results: allowing free redistribution of information allows young aspiring artists to go straight to the public and spread the word about their art. this also works for software developers with the same model. You do not need to convince someone with lots of money to invest in you in order to create your software. you do not need to start your own company. Many OSS developers done just that. i.e Linus published his kernel online, it got successful and now he's being paid to develop his pet project. same goes for the core developers of all OSS. the problem is greed. people think they can go write a text-editor, patent the sh*t out of it and become billionaires. also on the way screwing anyone else that also wanted to produce a text editor. so yes, with OSS you won't become the next bill gates with your software, but, we'll have more diversity of software and more people could make a descent living by being software developers. besides, why does it make sense that we should have a small bunch of people controlling all software and getting all the benefits?No-one is trying to erase certain ideas / artistic works from history. We are in fact trying to do the exact oposite. We are trying to create an enviroment where ideas and artist works flourish.Then why is this debate about rights? Rights are irrelevant - what matters is the results. If your goal is to create an environment where ideas and art flourish, great. That's a good goal, and that is where your defence should be focused. Forget all this repetitive talk about rights, and talk about how the law helps or doesn't help achieve this goal (or whatever other goal you want to set). Copyright law might be a valid way to achieve this goal. It might not be. There might be completely better ways (something I'm convinced of). Setting a real world goal for the debate lets both sides create an objective test case for their arguments, which would let it finally come to an adequate conclusion.
Aug 17 2008
Yigal Chripun wrote:Adam D. Ruppe wrote:This has been mentioned before, but there's a difference between liberty and gratuity. It's unfortunate that we use the one word, freedom, to represent both in English.On Sun, Aug 17, 2008 at 04:12:37AM +0100, Jb wrote:I agree with you. if we talk about results: allowing free redistribution of information allows young aspiring artists to go straight to the public and spread the word about their art.No-one is trying to erase certain ideas / artistic works from history. We are in fact trying to do the exact oposite. We are trying to create an enviroment where ideas and artist works flourish.Then why is this debate about rights? Rights are irrelevant - what matters is the results. If your goal is to create an environment where ideas and art flourish, great. That's a good goal, and that is where your defence should be focused. Forget all this repetitive talk about rights, and talk about how the law helps or doesn't help achieve this goal (or whatever other goal you want to set). Copyright law might be a valid way to achieve this goal. It might not be. There might be completely better ways (something I'm convinced of). Setting a real world goal for the debate lets both sides create an objective test case for their arguments, which would let it finally come to an adequate conclusion.this also works for software developers with the same model. You do not need to convince someone with lots of money to invest in you in order to create your software. you do not need to start your own company. Many OSS developers done just that. i.e Linus published his kernel online, it got successful and now he's being paid to develop his pet project. same goes for the core developers of all OSS. the problem is greed. people think they can go write a text-editor, patent the sh*t out of it and become billionaires. also on the way screwing anyone else that also wanted to produce a text editor. so yes, with OSS you won't become the next bill gates with your software, but, we'll have more diversity of software and more people could make a descent living by being software developers. besides, why does it make sense that we should have a small bunch of people controlling all software and getting all the benefits?You're taking this argument well beyond the boundaries and entering the territory of ideology. No one denies that Linus was free to distribute Linux without charge. No one in these discussions here have advocated that people be prevented from doing so. And I've yet to see anyone lend support to the idea that all software should be controlled by a few people. What people here have argued is that Linus had the /choice/ to release Linux freely. That's freedom (liberty). It was *his* choice. Not yours, not mine. He could just as easily have chosen to charge you an arm and a leg for it. We can all be happy that he didn't. But if you allow anyone and everyone to freely (gratis) distribute the work of others without permission, you are then impugning the freedom (liberty) of the creators. Is that what you really want?
Aug 17 2008
"Adam D. Ruppe" <destructionator gmail.com> wrote in message news:mailman.7.1218945114.19733.digitalmars-d puremagic.com...On Sun, Aug 17, 2008 at 04:12:37AM +0100, Jb wrote:Because rights are what lead us to those results. Human rights are what make society more fair, compasionate, and inclusive. For example.No-one is trying to erase certain ideas / artistic works from history. We are in fact trying to do the exact oposite. We are trying to create an enviroment where ideas and artist works flourish.Then why is this debate about rights? Rights are irrelevant - what matters is the results.If your goal is to create an environment where ideas and art flourish, great. That's a good goal, and that is where your defence should be focused.That's pretty much where my defense has been focused.Forget all this repetitive talk about rights, and talk about how the law helps or doesn't help achieve this goal (or whatever other goal you want to set).It is the law that decides what rights we have. You cannot talk about this without talking about rights.Copyright law might be a valid way to achieve this goal. It might not be. There might be completely better ways (something I'm convinced of).I think the mistake you and Yigal are making is assuming that it should all be done in the same way. Red Hat does this or that why cant everyone else? Well the system should allow people as much freedom as possible to work on whichever business model best suits their enterprise. Which is pretty much what we have today. By allowing authors to control distribution they can control the business model. They can give it away if they like. They can go for a service model, and honesty box model, or a product model. But if you take away that right the range of options open to them is far smaller. And you would see far less enterprise because of it.
Aug 17 2008
On Sun, Aug 17, 2008 at 06:58:13PM +0100, Jb wrote:I think the mistake you and Yigal are making is assuming that it should all be done in the same way.My own position is may be a little weird. As far as rights to information goes, there are a two: 1) You cannot force someone to divulge anything. Thus, he is free to charge someone for a piece of information if he wants. 2) You cannot force someone /not/ to divulge something. Thus, once you tell someone something, he is free to resell it if he wants. In short, I'm saying a person can choose to tell or not tell whatever he wants. face undesirable consequences. Use of force to modify people's behaviour needs to be justified. This is where the disagreement really lies, and as you read on, you'll see that you and I don't really disagree as much here as it might look at first glance :)Well the system should allow people as much freedom as possible to work on whichever business model best suits their enterprise.If my business model was to murder all my competitors, you surely wouldn't allow that. Clearly, people aren't free to pick which ever business model best suits them - there are restrictions on what they can do, especially when it comes to using force on other people. As I said above, copyright law is using force on other people to modify their behaviour. It seems like it, by default, shouldn't be permitted. Unlike most human rights which prevent you from using force on people except in extreme circumstances (people have a right to life, thus murder is wrong, etc.), copyright permits you to use force on people. This is backward. The burden of proof is on the pro-copyright side.But if you take away that right the range of options open to them is far smaller. And you would see far less enterprise because of it.They don't have the option to send armed thugs to their competitor's office to prevent him from manufacturing other objects, and that doesn't hurt business - quite the opposite, it helps business. Copyright might not be sending armed thugs, but it is the same idea: you are forcing someone else out in favor of yourself. I would argue that in an ideal world, there would be no copyright, and this is something that would allow art to flourish. Consider a world without copyright for a moment. Say you find a software library on the Internet that is perfect for your needs and would shave weeks off your development time. With copyright, you have to adhere to its license, which wastes your time. Without copyright, you just take it and use it. Your project is now completed weeks ahead of schedule and is of higher quality than if you had to reimplement that library yourself. This lets you move on to another project more quickly. The world gets more and better creations since you weren't restricted in what you could do in creating it. Later on, someone could do the same to your project, using it or pieces of it to shave time off his own project, adding more and more quantity and quality of creations to the world. This would be ideal. Art would flourish. But the real world isn't ideal as it is right now. This is where you might be able to justify a copyright law. In the real world, if you devote several months to creating something, you have bills that need to be paid during those months. You have two options: 1) Work another job to pay the bills. This eats into the time you would otherwise spend on the creation of your project, meaning you can't create as much nor as high quality as you could by devoting more time to it. Or 2) Make some money off that project in some way. This lets you devote all your time to the creation of the art while still paying the bills. There are a few ways to accomplish that. One is to sell originals of the work to people later. Musicians can do this by selling tickets to live performances. Painters can do this by selling their painting. Software developers can't do this directly. The best hope they have is selling support, which IMO isn't a very attractive option... Another is to work on commission. You create a custom work for someone who pays you ahead of time to create something just for him. This is actually how I make money off my software right now in the real world; I write extremely boring, but highly specialized applications to specific customers. They pay me for a custom fitted program, which I cannot control at all when it is done (the copyright is assigned to the customer.) That is how artists worked through most of history. It's a fairly good model for various kinds of artists, including software developers. Even without copyright, people will probably still want custom-tailored solutions to their own problems and will be willing to pay for it. Another way to pay the bills while being an artist is to be sponsored by someone. This is comparatively rare, so it isn't something on which to bet the farm. Finally, you have the copyright option: using force to shape the market in such a way where it is profitable to you. If none of the above options are workable, this lets the artist still pay the bills while working on his art full-time. Thus, most everyone is happy: the art is created, letting people have it and the artist doesn't have to starve to death. That result is the only thing that justifies copyright. It isn't about the rights of the creator - he doesn't have the right to use force on people under normal circumstances, so that argument is right out. It is about the end result. In an ideal world, copyright would be an evil. It would do only harm and no good. (As you can probably tell, the definition of the ideal world I'm using here is simply one where bills /don't/ have to be paid. Other than that difference, all things are equal with the real world. I strongly believe that the real world could be adjusted to fit this definition in the near future, if only we had the political will to make some changes.) In the ideal world, the only restriction I'd place on 'intellectual property' is basically what several of the phobos source licenses say: you may not misrepresent the source of the work. Otherwise, do whatever you want with it. In the real world, it serves a useful purpose - letting artists work full time without selling originals or working on commission, permitting things to be created that otherwise would be neglected in favor of the artist paying his bills. Thus it is allowed to exist. That's it. -- Adam D. Ruppe http://arsdnet.net
Aug 17 2008
"Adam D. Ruppe" <destructionator gmail.com> wrote in message news:mailman.8.1219006500.19733.digitalmars-d puremagic.com...In the real world, it serves a useful purpose - letting artists work full time without selling originals or working on commission, permitting things to be created that otherwise would be neglected in favor of the artist paying his bills. Thus it is allowed to exist.I wish you'd put that paragraph first and then I wouldnt have spent 30 minutes responding to all your utopian copyright free wet dreams. ;-) I do think you overstate what copyright actualy does. It doesnt prevent sharing of ideas and information. It just prevent copying of (usualy) artistic works. You can read a book and tell people about what is in the book. Explain the ideas. Or tell them about your experiences of a film you saw. You can even buy it on DVD and have them round your house to watch it. All it actualy does is stop you making a copy and giving it to them.Consider a world without copyright for a moment. Say you find a software library on the Internet that is perfect for your needs and would shave weeks off your development time. With copyright, you have to adhere to its license, which wastes your time. Without copyright, you just take it and use it.Actualy without copyright the chances of finding that library would be greatly diminished. For a start if people want to they can already create software and release with no restrictions. This option already exists. All that would happen if you killed copyright is the people who write and release software in order to make a living would likely go out of business and end up doing somthing else. For a start nobody would be obliged to pay for their work. Second anyone could copy it and put it up on their website, and sell it as if it were there own. You end up in a situation where those people with the most ruthless business practices are the ones who will do most well. So the idea that art / software production would flourish without copyright is plain false, it's so false it's almost absurd.
Aug 17 2008
On Mon, Aug 18, 2008 at 12:23:44AM +0100, Jb wrote:I wish you'd put that paragraph first and then I wouldnt have spent 30 minutes responding to all your utopian copyright free wet dreams. ;-)Heh, yes, I do tend to ramble. (One reason why I generally lurk rather than post...)I do think you overstate what copyright actualy does. It doesnt prevent sharing of ideas and information. It just prevent copying of (usualy) artistic works.The bits that make up that artistic work is information! If I take a screenshot of a computer program, that is considered copyright infringement (in the US anyway, as I understand it. Disclaimer: I'm no lawyer, so I might be wrong, but I don't think so.) I'm not copying the work - I'm providing a detailed description of a portion of it (its user interface). If I write a piece of fan fiction starring Captain Kirk and the starship Enterprise, I'm technically infringing on Paramount Picture's copyright, since my book would be considered a derivative work of Star Trek. That is the worst case - I would have copied no actual words, just the abstract information of Kirk's characterisation. Yet, technically, the law says I can't do that without Paramount's permission. I'm sure that, at the very least, we can agree that several aspects of copyright law are absurd, even if you accepted the rest of it. But that is definitely information about the work that I cannot copy under the law. One could easily argue that transmitting something like source code down the Internet is sending a very detailed description of the product (product == the compiled executable) rather than copying the work. I didn't copy the executable itself - I sent a detailed description of it. This description just happens to be detailed enough for the compiler to create a perfect copy from it. The only difference between that description and a verbal description of the program is the resolution of detail. In both cases, I am spreading information about it.Actualy without copyright the chances of finding that library would be greatly diminished. For a start if people want to they can already create software and release with no restrictions. This option already exists.Yes, indeed, and many people do (or something very close to no restrictions, like the licenses in Phobos). And there's an interesting question: why do people write software with few restrictions now, when they could possibly make more money off keeping it restricted? If copyright didn't exist, would those reasons suddenly disappear? I say no:All that would happen if you killed copyright is the people who write and release software in order to make a living would likely go out of business and end up doing somthing else.Maybe. Maybe not. Lots of existing free software is written for the author's own personal use (hence their generally poor user interfaces...). This stuff wouldn't go away. The demand is still present. Demand is what drives commercial software too. Demand for something like tax software wouldn't disappear without copyright, so tax software shouldn't disappear either. The payment model would probably switch to pay in advance. Someone (more likely a group than individuals) would hire developers to write the software so they can use it for themselves. Everyone else would then use it as a kind of collateral damage. Damage isn't a good word to use here, since no one is getting hurt, but I can't think of a better term. A similar example to the concept I have in mind is in politics. The United States Navy patrols the oceans of the world to protect American trade and national interests. In doing so, other countries get to benefit from this too - fighting piracy (the kind on the seas) benefits other countries, since those pirate ships would attack anyone from any country and do their damage, not just Americans. The other countries get this benefit without them having to pay for it. Of course, again, the US doesn't do this for benefit of other nations - it does it for itself. But, regardless, the job is still done and everyone can still benefit from it. Software would become similar. Everyone looks out for his own interests, and other people can come along for the free ride without hurting anyone.So the idea that art / software production would flourish without copyright is plain false, it's so false it's almost absurd.How then do you explain the wealth of art that was created before copyright was around? Or the vast amounts of free (or close to free) software on the Web now? -- Adam D. Ruppe http://arsdnet.net
Aug 17 2008
"Adam D. Ruppe" wroteIf I take a screenshot of a computer program, that is considered copyright infringement (in the US anyway, as I understand it. Disclaimer: I'm no lawyer, so I might be wrong, but I don't think so.) I'm not copying the work - I'm providing a detailed description of a portion of it (its user interface).Nope. The original author of the software cannot possibly copyright all possible screenshots. Copyrights only apply to a specific piece of media, and since you were the creator of that media, you can copyright it. However, it may contain trademarked elements, such as a logo. However, it is possible to have trademarked material as long as you are critiquing something, and you represent who the owner of the trademark is properly. Even if there was some possible way to copyright the UI, this should fall under fair use as you are presenting a 'clip' of a copyrighted piece of media for critique.If I write a piece of fan fiction starring Captain Kirk and the starship Enterprise, I'm technically infringing on Paramount Picture's copyright, since my book would be considered a derivative work of Star Trek.Nope, but you are infringing on the trademark names of 'Captain Kirk' and the starship 'Enterprise'. I think there is probably some restriction on making money from the trademark. If you wrote a book with 'Captian Jerk' and the starship 'Doorprize', then you would have no problem :)That is the worst case - I would have copied no actual words, just the abstract information of Kirk's characterisation. Yet, technically, the law says I can't do that without Paramount's permission.Because you would be using Paramount's trademarks in order to make money. There is a huge amount of weight behind those simple words, and most likely, you would enjoy Paramount's ability to sell anything that is star trek related, without having created the original idea. That is why trademark law exists.One could easily argue that transmitting something like source code down the Internet is sending a very detailed description of the product (product == the compiled executable) rather than copying the work.The source code is also copyrighted. Copyright is inherently assigned to the author (even if he doesn't label it as such). He can assign the copyright to someone else if he wants.I didn't copy the executable itself - I sent a detailed description of it. This description just happens to be detailed enough for the compiler to create a perfect copy from it.If you sent a detailed description of the source code (i.e. an english description of how it works), this is not a violation of copyright, as you cannot copyright ideas. Many companies use 'clean room' techniques where one team disassembles code, figures out how it works, then describes that to another team which writes a compatible piece of software. They are not infringing on copyright because the developers have not seen any of the original code. In some countries, however, you can patent software 'business methods', i.e. ideas (which to me is absurd for software).The only difference between that description and a verbal description of the program is the resolution of detail. In both cases, I am spreading information about it.No, the difference is that the code is copyrighted. If you build the code from reverse engineering, it is a derivative work. The verbal description is a description of the ideas, which are not copyrightable. -Steve
Aug 18 2008
On Mon, Aug 18, 2008 at 10:01:41AM -0400, Steven Schveighoffer wrote:snip trademark explanationConceded.No, the difference is that the code is copyrighted. If you build the code from reverse engineering, it is a derivative work. The verbal description is a description of the ideas, which are not copyrightable.Would it be fair to say information about the ideas is fine to spread, but information about the specific implementation isn't?-Steve-- Adam D. Ruppe http://arsdnet.net
Aug 18 2008
"Adam D. Ruppe" wroteOn Mon, Aug 18, 2008 at 10:01:41AM -0400, Steven Schveighoffer wrote:Hm... depending on the information about the specific implementation, that might be debatable. For example, if you wanted to have a competing library that used the exact same API (i.e. a swappable replacement), I'm not sure that would be considered infringement, as there is no way to create a binary compatible API without copying exactly (e.g. Lesstif). Most likely, this API is described in a document, so you could potentially write a new header file that had the same function names, but that wasn't a copy of the original header file. But surely, if you describe the exact implementation, it is infringement. Description of the concepts behind the implementation should be fine. Please note, I am not a lawyer, so don't take this as legal advice ;) -Stevesnip trademark explanationConceded.No, the difference is that the code is copyrighted. If you build the code from reverse engineering, it is a derivative work. The verbal description is a description of the ideas, which are not copyrightable.Would it be fair to say information about the ideas is fine to spread, but information about the specific implementation isn't?
Aug 18 2008
Steven Schveighoffer wrote:"Adam D. Ruppe" wroteI have seen commercial libraries implement exact same API as other commercial libraries, and only been considered as healthy competition - it is the same with Wine and their re-implementation of Windows API's - it isn't possible to copyright or otherwise restrict the "use" of API's for such a purpose - you cannot just copy the headers the API is described in though - ref the MinGW windows header project. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoOn Mon, Aug 18, 2008 at 10:01:41AM -0400, Steven Schveighoffer wrote:Hm... depending on the information about the specific implementation, that might be debatable. For example, if you wanted to have a competing library that used the exact same API (i.e. a swappable replacement), I'm not sure that would be considered infringement, as there is no way to create a binary compatible API without copying exactly (e.g. Lesstif). Most likely, this API is described in a document, so you could potentially write a new header file that had the same function names, but that wasn't a copy of the original header file. But surely, if you describe the exact implementation, it is infringement. Description of the concepts behind the implementation should be fine. Please note, I am not a lawyer, so don't take this as legal advice ;)snip trademark explanationConceded.No, the difference is that the code is copyrighted. If you build the code from reverse engineering, it is a derivative work. The verbal description is a description of the ideas, which are not copyrightable.Would it be fair to say information about the ideas is fine to spread, but information about the specific implementation isn't?
Aug 18 2008
"Adam D. Ruppe" <destructionator gmail.com> wrote in message news:mailman.9.1219031970.19733.digitalmars-d puremagic.com...On Mon, Aug 18, 2008 at 12:23:44AM +0100, Jb wrote:If i remember correctly this came up when someone got a pre release screen shot of one of the new versiosn of MacOS, they published this online. And Apple decided to sue them for breach of copyright as they wanted to keep it secret untill the big unveiling. Breach of copyright was the only avenue open to them iirc, and i dont know how it turned out but the point is moot. That is an absurd abuse of copyright. It is not the norm. So yes current copyright laws do sometimes produce undesirable results. And they are not perfect. And I agree that fair use should be expanded, and copyright lengths reduced.I do think you overstate what copyright actualy does. It doesnt prevent sharing of ideas and information. It just prevent copying of (usualy) artistic works.The bits that make up that artistic work is information! If I take a screenshot of a computer program, that is considered copyright infringement (in the US anyway, as I understand it. Disclaimer: I'm no lawyer, so I might be wrong, but I don't think so.)This is my point. Those people who want to can already work with free and open licences. Disolving copyright wont change that.Actualy without copyright the chances of finding that library would be greatly diminished. For a start if people want to they can already create software and release with no restrictions. This option already exists.Yes, indeed, and many people do (or something very close to no restrictions, like the licenses in Phobos). And there's an interesting question: why do people write software with few restrictions now, when they could possibly make more money off keeping it restricted? If copyright didn't exist, would those reasons suddenly disappear? I say no:It's not that art or software would not be produced if we disolved copyright. It's that far far less of it would. The amount of art produced prior to the 20th centuary is miniscule compared to what was produced during it. There have been millions of songs, books, and films that have made in the last 100 years. If you compared that to what was made in just one of the centurarys of the Renaisence it would be like comparing mountain to a mole hill. The simple fact is that the "patronage" system that was in use before hand is incredibly inneficient. It just doesnt work that well. And your supposed ideas of how it could work just emphasise the point. The problem is that getting a 100 people together, and getting them to agree on what they want, and how much they will pay, and then finding someone who will do the work, is just absurd. You are insane if you think that system will be more efficient and more productive than the current copyright / capatilist one. Free market, and free trade, will always batter such a system into the ground. It's why you see very little art comming out of Comunist countrys in comparison to capatilist ones. It's why capalism works. It's pragmatic rather than idealistic.So the idea that art / software production would flourish without copyright is plain false, it's so false it's almost absurd.How then do you explain the wealth of art that was created before copyright was around? Or the vast amounts of free (or close to free) software on the Web now?
Aug 18 2008
On Mon, Aug 18, 2008 at 04:12:18PM +0100, Jb wrote:So yes current copyright laws do sometimes produce undesirable results. And they are not perfect. And I agree that fair use should be expanded, and copyright lengths reduced.Agreed.The amount of art produced prior to the 20th centuary is miniscule compared to what was produced during it. There have been millions of songs, books, and films that have made in the last 100 years.This isn't because of copyright. Copyright has been around since about 1700; it didn't suddenly come to existence in 1900, so you can't say it is the cause of the explosion of new stuff around that time. What did change around 1900 is an explosion of industry, an explosion of human population, and just a general explosion of wealth. World population today is 4x bigger than it was in 1900, so all other things being equal, it makes sense to see 4x more stuff created. World population in 1800 was about 2/3 that of 1900. [My source for the above numbers is Wikipedia: <http://en.wikipedia.org/wiki/World_population>] It makes sense that the 20th century saw more stuff created than previous centuries based on population growth alone. Similar situations exist in general wealth factors - the average person today is much richer than the average person 100 years ago, giving him more time to devote to stuff like art. Higher technology is also a significant factor. Thirty years ago, it is unlikely someone like me would have been able to become a computer programmer at all - I simply couldn't afford it. But now, computers are so cheap, and the necessary programs so easy to get, that random high school students can pick it up and start making stuff. (Thanks to Digital Mars here; I first learned C++ on the free download of dmc.) And thanks to the Internet, those random students and look at a wealth of existing stuff to learn from and release their own stuff with trivial ease. Similar things exist in other fields. Anyone can now publish his own writings, amateurs can create and publish images and animation. Copyright might take some credit for this. I'm sure it does, as without it, something like Digital Mars might not exist at all. But it can't anything near to all the credit, and now since this situation already exists, removing copyright isn't going to suddenly erase what is already done.And your supposed ideas of how it could work just emphasise the point. The problem is that getting a 100 people together, and getting them to agree on what they want, and how much they will pay, and then finding someone who will do the work, is just absurd.Nonsense. Create a website with a donation system. Someone looking for the software you are about to have written can find this website and decide if he wants to help pay the developer to write it or if he simply doesn't want it to get done. The donation system wouldn't be just a donation system, it would be entering into a contract to get what you paid for - if the developer doesn't deliver, you get your money back. Furthermore, since you are paying into the contract, you get a say in what you want. Perhaps shareholders can vote on acceptance tests or on must have features to write into the contract. Exactly like they would when buying packaged software, except here they pay first then get the software made rather than the other way around.You are insane if you think that system will be more efficient and more productive than the current copyright / capatilist one.This /is/ a capitalist system. People invest in a product to suit their own needs - that's the very definition of capitalism. Even the obvious downside of the above plan: someone chooses not to invest hoping that someone else will and he still benefits, is purely capitalist. He is looking out for his own interests, trying to get the most product for the least amount of money. The counterbalance to this is that if he doesn't invest in it, he might not get what he wants, or it might not be created at all. So he has to make a decision. If I was a software developer in such a world, I'd keep the current list of shareholders and amount of money I've been paid a secret. Then someone looking at the website doesn't know if he has to invest or not to get the product, so hopefully, he will, meaning I get a bit more profit. The customer is safe in donating to me, even if I don't get enough capital to make the product, since if I don't deliver, he can sue me for his money back. That is pure, unrestrained and safe competition in a wholly capitalist system. -- Adam D. Ruppe http://arsdnet.net
Aug 18 2008
"Adam D. Ruppe" <destructionator gmail.com> wrote in message news:mailman.13.1219076519.19733.digitalmars-d puremagic.com...I know people who have done things like this. They get 1000s of downloads and accaisionaly someone donates 5 bucks. It doesnt work. The vast majority of people will not pay if they dont have to. One guy i know who actualy releases his plugins as donationware got so little money he had to shut his website down because he couldnt afford the hosting costs. Yes he got a 10 page thread full of people saying "oh no thats so sad, your plugins are great, hope you get back online soon". But in spite of all those people, of all the thousands of downloads, people didnt donate enough for him to pay for the bandwidth to run his website. Really, it does not work. It may work for massive projects, with tens or hundreds of thousands of users, but for small to medium size enterprize it will never work. At least not for anything but a handful of developers.And your supposed ideas of how it could work just emphasise the point. The problem is that getting a 100 people together, and getting them to agree on what they want, and how much they will pay, and then finding someone who will do the work, is just absurd.Nonsense. Create a website with a donation system. Someone looking for the software you are about to have written can find this website and decide if he wants to help pay the developer to write it or if he simply doesn't want it to get done. The donation system wouldn't be just a donation system, it would be entering into a contract to get what you paid for - if the developer doesn't deliver, you get your money back.Furthermore, since you are paying into the contract, you get a say in what you want. Perhaps shareholders can vote on acceptance tests or on must have features to write into the contract.It's hard enough getting half a dozen people to decide on what features to include in a prjoect they are all working on without having a couple of hundred "investors" arguing over it as well. The problem is firstly "too many cooks" and secondly "too much administration". It's absurd. And actualy, if I had to bend to the whim of my customers on every single thing my product would actualy be worse for it. It would be the worst case of design by commitee ever. So not only would your scheme stiffle creativity in general. It would also stiffle individual creativity.Exactly like they would when buying packaged software, except here they pay first then get the software made rather than the other way around.If I dont own the product I am producing then no it's not a capatilist system. The fundamental mechanism in capatilism is private ownership, whether of physical or intellectual property.You are insane if you think that system will be more efficient and more productive than the current copyright / capatilist one.This /is/ a capitalist system. People invest in a product to suit their own needs - that's the very definition of capitalism.Even the obvious downside of the above plan: someone chooses not to invest hoping that someone else will and he still benefits, is purely capitalist. He is looking out for his own interests, trying to get the most product for the least amount of money.Another obvious downside is that people dont like having to wait. They want the product now. So not only is it crippled by the problems of "design by commitiee", and the problems of "excesive administration", it's also crippled by the fact that consumers dont want to have to wait 12 months to get what they paid for.The counterbalance to this is that if he doesn't invest in it, he might not get what he wants, or it might not be created at all. So he has to make a decision.So you expect customers are going to wander around the interent, investing money in lots of different projects that might or might not give them what they want in 6 months time? And then when half these schemes fail they are going to go chasing the developers up to get their money back? CUCKOO!If I was a software developer in such a world, I'd keep the current list of shareholders and amount of money I've been paid a secret. Then someone looking at the website doesn't know if he has to invest or not to get the product, so hopefully, he will, meaning I get a bit more profit. The customer is safe in donating to me, even if I don't get enough capital to make the product, since if I don't deliver, he can sue me for his money back. That is pure, unrestrained and safe competition in a wholly capitalist system.Look there's been nothing stopping businesses operating like that for decades, maybe even centuaries. If it did work, if it was so much better than the current system, we'd be talking about the multitude of businesses that do actualy work that way. And yet we're not.
Aug 18 2008
On Mon, Aug 18, 2008 at 06:28:57PM +0100, Jb wrote:I know people who have done things like this. They get 1000s of downloads and accaisionaly someone donates 5 bucks.That's not the same. What I'm proposing is that the software plain isn't written if you don't get enough money up front. Downloading it isn't an option at all until the money is already paid, because before then, the software doesn't exist yet.The vast majority of people will not pay if they dont have to.Right, so the trick is to make it so they think they have to. Tax season is coming up, and you really wish you had a program up to date with this year's tax code to help you out. Uh oh, no program exists, but there is a development company saying they'll make one if they get a total of $100,000 in investments. Someone else might pay for it, but everyone would think that, so the rational person has to assume that no one is going to pay for it, thus, the software will never be written and he won't be able to use it. Since he wants to use it, he must buy into the company. Of course, he can't afford $100k up front, and even if he could, it isn't worth that much to him, so he puts in a fraction of the total and hopes other people think the same way. If they do, good, they all get the product. If they don't, he can demand his money back, since the development company didn't deliver the product.It may work for massive projects, with tens or hundreds of thousands of users, but for small to medium size enterprize it will never work. At least not for anything but a handful of developers.Valid: I could see it being very hard for someone with a poor reputation to get started, but that's again where the satisfaction guaranteed or your money back clause comes in. Potential investors have very little risk giving a new guy a chance, since they have little to lose if he fails.It's hard enough getting half a dozen people to decide on what features to include in a prjoect they are all working on without having a couple of hundred "investors" arguing over it as well.Put a price on each feature. If you want feature A, you have to pay an additional $1000 total. Feature B is an additional $500. An investor says "well, feature A is worth $20 to me, so I'll buy it." If 50 other investors feel the same way, then feature A gets implemented - they paid for it, so they should get it. If not, then it doesn't happen. Adding a direct price up front for features is an easy way to keep them limited. You set the prices so features that you really don't think are a good idea cost more, to discourage people from buying them. Then if they do buy it, you still win, since you get more money.And actualy, if I had to bend to the whim of my customers on every single thing my product would actualy be worse for it. It would be the worst case of design by commitee ever.Well, it is still your product, so you can always do it a different way. This is just a suggestion, just like copyright restrictions are a suggestion on how to make money.If I dont own the product I am producing then no it's not a capatilist system. The fundamental mechanism in capatilism is private ownership, whether of physical or intellectual property.So construction contractors aren't capitalists? They don't own the building they were hired to build either. They do own their time and skill though, just like a software developer working as a contractor.Another obvious downside is that people dont like having to wait. They want the product now.Good point, and businesses could specialize in this. Someone could put up an offer saying that the software is already written, and if we receive X dollars, we'll release it. If not, we'll delete the whole thing. It is like selling the software, but doing so in such a way that piracy is impossible. By the time the program is out in the open so it can be pirated, the company already has their money and doesn't care anymore.So you expect customers are going to wander around the interent, investing money in lots of different projects that might or might not give them what they want in 6 months time?So you expect customers are going to wander around the Internet, investing money in lots of different projects that might nor might not give them what they want when the download is complete? That's what copyrighted software as the product does and people are willing to do it.And then when half these schemes fail they are going to go chasing the developers up to get their money back? CUCKOO!It's their money, if they want to throw it away, fine. But if you invested money in something and you didn't get that something, you'd probably want your money back too, and since you have a contract (again, this isn't just a donation button I'm talking about), you can prove that you deserve it back to a court of law.Look there's been nothing stopping businesses operating like that for decades, maybe even centuaries.Yes, and things have been done that way for centuries. This isn't an original idea. How are buildings designed, constructed and maintained? One option there is a building as a product - you build it and wait for someone to come and buy it. I think that is how Donald Trump made his money. The other option is you wait for someone to hire you to build it to their specifications. This is how most construction companies and architecture firms make their money. -- Adam D. Ruppe http://arsdnet.net
Aug 18 2008
Adam D. Ruppe wrote:Downloading it isn't an option at all until the money is already paid, because before then, the software doesn't exist yet.Adam, you have some mind-bogglingly weird ideas about software development, creativity, sociology, economics, etc, etc. Last year, I downloaded TurboTax on April 14th. For about $25. Without joining a co-op or voting or features or pledging to pay for the future delivery of undeveloped software or anything like that. It was easier than buying a candy bar, and took less time. --benjiThe vast majority of people will not pay if they dont have to.Right, so the trick is to make it so they think they have to. Tax season is coming up, and you really wish you had a program up to date with this year's tax code to help you out. Uh oh, no program exists, but there is a development company saying they'll make one if they get a total of $100,000 in investments. Someone else might pay for it, but everyone would think that, so the rational person has to assume that no one is going to pay for it, thus, the software will never be written and he won't be able to use it.
Aug 18 2008
On Mon, Aug 18, 2008 at 03:41:14PM -0400, Benji Smith wrote:Last year, I downloaded TurboTax on April 14th. For about $25.Which means you gave them $25 in a vote saying you want them to make a product with similar features for next year. My scheme really isn't that different. -- Adam D. Ruppe http://arsdnet.net
Aug 18 2008
"Adam D. Ruppe" <destructionator gmail.com> wrote in message news:mailman.15.1219085627.19733.digitalmars-d puremagic.com...On Mon, Aug 18, 2008 at 06:28:57PM +0100, Jb wrote:I know I was just emphasising how reluctant people are to part with their money when they dont have to. And likewise how reluctant they still are even when they see a developer whose products they apparently use & love shutting up shop.I know people who have done things like this. They get 1000s of downloads and accaisionaly someone donates 5 bucks.That's not the same. What I'm proposing is that the software plain isn't written if you don't get enough money up front.Im sorry that just wont work. If you cant get people to donate for somthing they can download and use today, you wont get them to donate for somthing that they might or might not get in 6 months time. They will use the exact same rationale that they use already for pirating movies. Whether they pay or not will be a drop in the ocean. It'll make little difference if they buy into the scheme or not. So they may as well let other people do it.The vast majority of people will not pay if they dont have to.Right, so the trick is to make it so they think they have to. Tax season is coming up, and you really wish you had a program up to date with this year's tax code to help you out. Uh oh, no program exists, but there is a development company saying they'll make one if they get a total of $100,000 in investments.Someone else might pay for it, but everyone would think that, so the rational person has to assume that no one is going to pay for it, thus, the software will never be written and he won't be able to use it.No the rational person would think "Look it's gonna take 10,000 people to get this up and running, whether I invest or not doesnt matter, and the developers are probably raking it in anyway" And on top of that I have no guarantee of what I will get. They could just code up some piece of crap and then I've wasted my money. And no, some kind of "quality validation" mechanism wouldnt work, it'd add so much pointless overhead and chaff to an already cumbersome and inneficient business model.Since he wants to use it, he must buy into the company. Of course, he can't afford $100k up front, and even if he could, it isn't worth that much to him, so he puts in a fraction of the total and hopes other people think the same way.Or he thinks "screw that" and looks elsewhere. <g>What I'm saying is that your kind of scheme would require a very high number of investors. People will be far less willing to invest 100$ in somthing they might get 6 months from now than they will be to spend $100 on somthing they can download now, where they can try the demo and see if they like it. So for smaller enterpises where the number of customers and margins are already small. Your scheme simply would not work. I would be out of business in 6 months with you as my business adviser. Sorry. And yes it would make entry into the market much hard for new upstarts.It may work for massive projects, with tens or hundreds of thousands of users, but for small to medium size enterprize it will never work. At least not for anything but a handful of developers.Valid: I could see it being very hard for someone with a poor reputation to get started, but that's again where the satisfaction guaranteed or your money back clause comes in. Potential investors have very little risk giving a new guy a chance, since they have little to lose if he fails.Oh FFS.. why dont I just run a raffle or a tombola? I'd spend more time auctioning features, talking customers, running voting systems, managing who'd paid what, and who wants how much back because this or that didnt apear. I'd never have any time for programming.It's hard enough getting half a dozen people to decide on what features to include in a prjoect they are all working on without having a couple of hundred "investors" arguing over it as well.Put a price on each feature. If you want feature A, you have to pay an additional $1000 total. Feature B is an additional $500. An investor says "well, feature A is worth $20 to me, so I'll buy it." If 50 other investors feel the same way, then feature A gets implemented - they paid for it, so they should get it. If not, then it doesn't happen. Adding a direct price up front for features is an easy way to keep them limited. You set the prices so features that you really don't think are a good idea cost more, to discourage people from buying them. Then if they do buy it, you still win, since you get more money.They *COULD* own it if they want. And a lot of small building contractors do do it this way. What you are doing is removing that possibility from them. You are forcing them to only do business as a service.If I dont own the product I am producing then no it's not a capatilist system. The fundamental mechanism in capatilism is private ownership, whether of physical or intellectual property.So construction contractors aren't capitalists? They don't own the building they were hired to build either. They do own their time and skill though, just like a software developer working as a contractor.And the customer will think "Heck they've already written it, they are going to release sooner or later because otherwise they loose every pennty of their investment"Another obvious downside is that people dont like having to wait. They want the product now.Good point, and businesses could specialize in this. Someone could put up an offer saying that the software is already written, and if we receive X dollars, we'll release it. If not, we'll delete the whole thing.It is like selling the software, but doing so in such a way that piracy is impossible. By the time the program is out in the open so it can be pirated, the company already has their money and doesn't care anymore.It wont work... i think the donationware / honesty box model would probably work better than that would.They can download a demo and try it first. Or they have 14 day money back guarentee. Of they can sell the product to someone else.So you expect customers are going to wander around the interent, investing money in lots of different projects that might or might not give them what they want in 6 months time?So you expect customers are going to wander around the Internet, investing money in lots of different projects that might nor might not give them what they want when the download is complete?That's what copyrighted software as the product does and people are willing to do it.Except they can usualy try a demo. And they dont have to wait for months to get it. And once purchased the product still has intrinsic value. They can sell it on to someone else. Whereas with your model the software is worthless to the customer, it has no resale value because now anyone can download and use it for free.Yes and how often do consumers take companies to court over a 50$ payment? And say I'm a budding record producer, and I've bought into 15 of these schemes in the last year. 7 still havnt turned up the goods. Am i going to go round chassing up all these microdonations? Dont we have enough shit to do in our lifes with out complicating the purchase of software to such an extent that I have to keep track of all my investments, and the promises and requestes I made for each one?And then when half these schemes fail they are going to go chasing the developers up to get their money back? CUCKOO!It's their money, if they want to throw it away, fine. But if you invested money in something and you didn't get that something, you'd probably want your money back too, and since you have a contract (again, this isn't just a donation button I'm talking about), you can prove that you deserve it back to a court of law.Lots of them? Are there lots of businesses working this way? Nope.Look there's been nothing stopping businesses operating like that for decades, maybe even centuaries.Yes, and things have been done that way for centuries. This isn't an original idea.How are buildings designed, constructed and maintained? One option there is a building as a product - you build it and wait for someone to come and buy it. I think that is how Donald Trump made his money.Yes and this is still how it's done in the vast majority of cases.The other option is you wait for someone to hire you to build it to their specifications. This is how most construction companies and architecture firms make their money.A bad analogy. Do we see hundreds of people clubbing togther in order to finance the building of residential tower blocks, or residential estates? No we dont. We do see big companies comissioning buildings, or developments. But that is actualy little different from big companies commisioning custom made software. Sure it happens, but in the vast majoirty of cases people / businesses dont need custom made software. So that model doesnt work because it's many orders of magnitude cheaper for it to be produced via the generic product based model.
Aug 18 2008
This is taking way more time than I bargained for, so this will probably be my last word on the subject. I have real work I need to be doing. My plan isn't at all as radical as it might look. In practice, I would expect something like this: Liked 1.0? Pre-order 2.0 now, and remember, if we don't get enough pre-orders, 2.0 will never be released, and this is no bluff. I say we come back to this debate in ten years and see what has happened. I'm willing to guess that regardless of our personal opinions on copyright in principle, the fact is that it will lose its effectiveness as piracy continues to grow and it doesn't look like piracy will stop growing. My plan might be a way around this, and it might not be. Heck, most businesses fail even in the best of times, and this would likely be no exception. Either way, software as a product like we see now is something I expect to be dead or mostly dead by 2020 and something will take its place. The reality is it looks like piracy is here to stay. We need to make the best of that fact if we want to survive in the business of programming. If I'm wrong, you'll have my full concession in the next decade :) -- Adam D. Ruppe http://arsdnet.net
Aug 18 2008
Adam D. Ruppe Wrote:but there is a development company saying they'll make one if they get a total of $100,000 in investments.The $100,000 is the about enough to pay the wage of one developer for about one year. Once you add in a few Tax specialist to do the design, a few more developers, some QA people and someone to write the documentation, the wages bill would be much closer to the $1,000,000 mark.
Aug 18 2008
Adam D. Ruppe wrote:On Sun, Aug 17, 2008 at 06:58:13PM +0100, Jb wrote:Copyright has no relevance to the spread of information. That's what NDAs and opaque governments are for. You are absolutely free to divulge anything and everything you know about copyrighted material. You just can't copy if for distribution. Go ahead, write an essay describing the inner workings of the copyrighted software you've reverse engineered so that others can recreate it. You'll violate no copyright by doing so (and no need to mention the DMCA -- that's nothing to do with copyright and everything to do with corporate bottom lines). That's information and you are at total liberty to spread it as you see fit. The software itself is *not* information.I think the mistake you and Yigal are making is assuming that it should all be done in the same way.My own position is may be a little weird. As far as rights to information goes, there are a two: 1) You cannot force someone to divulge anything. Thus, he is free to charge someone for a piece of information if he wants. 2) You cannot force someone /not/ to divulge something. Thus, once you tell someone something, he is free to resell it if he wants. In short, I'm saying a person can choose to tell or not tell whatever he wants. face undesirable consequences.
Aug 17 2008
bobef wrote:Anyway. In my opinion it comes down to greed cause no one is stealing anything. Just some people are not willing to share although they are not losing anything. And to lose something you must own it. So you can't lose a million dollars of sales because you haven't sold anything in the first place. If authors were more conscious (less greedy) they would share because if the users were more conscious (less living in a society where everyone wants to *make you* pay for something) they would show gratitude by paying.So in effect you are saying that software developers expecting to live of it are silly, because the rest in general are dishonest? -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the Tango
Aug 15 2008
Lars Ivar Igesund Wrote:bobef wrote:Haha. I didn't say they are silly. But it is a fact that people in general are dishonest so it becomes harder (as many other things) :) I am saying that developers need to adapt. If they treat software as chairs they may fail to live of their work. I am developer and I live (mostly) of it so it still possible. Dishonest or not this is not stealing. It sucks if you make a lot of effort for something and nobody buys it, I know. But fist of all examine the quality of what you are selling. People are not buying effort but results. Then if you think (I don't mean personally you) you are selling a good product and people are still pirating it, then the dishonesty could be the case. And then the one who did the effort becomes emotional and all of that, but at the end everyone should be happy, because at least one of the parties got something (without depriving the other party of anything). It is better for someone to make use of the work, although he didn't buy it, than neither using it nor buying it. And the important point that is somehow related to the topic: this licensing stuff IMO is waste of time. Nobody can blame Phobos/Tango for stealing because nothing is stolen. But I think Walter has point about corporate lawyers and all of that, because these people care only about the money, not about the logic about stealing or not stealing. Lol. Regards, bobefAnyway. In my opinion it comes down to greed cause no one is stealing anything. Just some people are not willing to share although they are not losing anything. And to lose something you must own it. So you can't lose a million dollars of sales because you haven't sold anything in the first place. If authors were more conscious (less greedy) they would share because if the users were more conscious (less living in a society where everyone wants to *make you* pay for something) they would show gratitude by paying.So in effect you are saying that software developers expecting to live of it are silly, because the rest in general are dishonest?
Aug 15 2008
Robert Fraser wrote: ...I see the D community heading for a split. One side will be D1 (hopefully a D 1.5) +tango, and the other side will be D2+phobos. I don't think of this as a bad thing nessescarily, just two different directions.I find this all to be a bit confusing. A 'split' was kind of inevitable since the D2 branch and the phobos / tango division. (Actually since D2 there was more unification for a while, because a stable version of D didn't exist before.) But this kind of split was (is?) also something temporary and had workarounds (tangobos). At least I perceived it as temporary, until now. What do you mean by a D 1.5? This all gives the vague impression there is a movement towards forking the language itself. That's not a split in the D community, more like part of the D community saying goodbye and starting their own language with a seperate community. I hope I'm wrong here, but would like to know if this is the case or intent.
Aug 14 2008
Robert Fraser wrote:Sean Kelly Wrote:Oh, it would definitely be bad, that's for sure. Any such duplication of effort in a developing language such as D would be very harmful. Having two standard libraries is already bad IMO, but having each standard library force the use of a particular D language version... now that would be disastrous! -- Bruno Medeiros - Software Developer, MSc. in CS/E graduate http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#D== Quote from Moritz Warning (moritzwarning web.de)'s articleI see the D community heading for a split. One side will be D1 (hopefully a D 1.5) +tango, and the other side will be D2+phobos. I don't think of this as a bad thing nessescarily, just two different directions.On Wed, 13 Aug 2008 15:29:45 +0400, Denis Koroskin wrote:Unfortunately, for this to be resolved it requires cooperation from both sides. It takes two to Tango, as they say (sorry, bad joke). SeanThe biggest issue is diffent Tango and Phobos runtime implementation, I think. I didn't find any bugzilla reports on this subject, though. :(I haven't taken a look at those runtime implementation differences, but I wonder why there are no activities to solve this issue. It makes it look like the participants are playing the golden throne game...
Aug 15 2008
Sean Kelly wrote:Unfortunately, for this to be resolved it requires cooperation from both sides. It takes two to Tango, as they say (sorry, bad joke).For my part, I have explicitly allowed the Tango team to look at, use and incorporate any part of Phobos into Tango without prejudice and release it under the Tango license (excluding stuff that I didn't write that has its own copyright license terms). A lot of the new stuff, such as the array op code are even in the public domain to make it super easy. In order for Phobos to move towards compatibility, I need a reciprocal statement from the Tango team. The Tango license does not allow this, and I try to be very careful in making sure Phobos is clean from a legal standpoint. Sean and Don have been most generous in offering such, but the rest of the Tango team have not been willing to, and they have every right to not do so, but it does stand in the way of cooperation. P.S. The reason for the relicense when code is transferred is to avoid the untenable situation of one module in the library having different licenses for different sections of code.
Aug 13 2008
On Wed, 13 Aug 2008, Walter Bright wrote:Date: Wed, 13 Aug 2008 14:32:32 -0700 From: Walter Bright <newshound1 digitalmars.com> Reply-To: digitalmars.D <digitalmars-d puremagic.com> To: digitalmars-d puremagic.com Newsgroups: digitalmars.D Subject: Re: Tango vs Phobos Sean Kelly wrote:Additionally, Sean has had commit access to phobos for well over a year. As far as I can recall, there's been no submits. I did a good bit of unification of the thread model at one point (though far from complete), and was accused of stealing code from Tango (no, I'm not going to try to dig up exact quotes). It left a rather sour taste in my mouth at which point my enthusiasm was somewhat diminished. I let the license issue further stall any effort on my part. I hate airing dirty laundry, so I hope this to be my one and only post on the topic. Sigh, BradUnfortunately, for this to be resolved it requires cooperation from both sides. It takes two to Tango, as they say (sorry, bad joke).For my part, I have explicitly allowed the Tango team to look at, use and incorporate any part of Phobos into Tango without prejudice and release it under the Tango license (excluding stuff that I didn't write that has its own copyright license terms). A lot of the new stuff, such as the array op code are even in the public domain to make it super easy. In order for Phobos to move towards compatibility, I need a reciprocal statement from the Tango team. The Tango license does not allow this, and I try to be very careful in making sure Phobos is clean from a legal standpoint. Sean and Don have been most generous in offering such, but the rest of the Tango team have not been willing to, and they have every right to not do so, but it does stand in the way of cooperation. P.S. The reason for the relicense when code is transferred is to avoid the untenable situation of one module in the library having different licenses for different sections of code.
Aug 13 2008
On Wed, 13 Aug 2008, Brad Roberts wrote:As far as I can recall, there's been no submits. I did a good bit of unification of the thread model at one point (though far from complete), and was accused of stealing code from Tango (no, I'm not going to try to dig up exact quotes).Sorry.. the implication was that Sean made the accusations which isn't the case. He was very helpful in integrating the changes and reviewing both the tango and phobos changes that I made -- obviously far more on the phobos side. Sigh, Brad
Aug 13 2008
Brad Roberts wrote:On Wed, 13 Aug 2008, Brad Roberts wrote:As an aside... that code change review tool you had set up on PureMagic was super cool. SeanAs far as I can recall, there's been no submits. I did a good bit of unification of the thread model at one point (though far from complete), and was accused of stealing code from Tango (no, I'm not going to try to dig up exact quotes).Sorry.. the implication was that Sean made the accusations which isn't the case. He was very helpful in integrating the changes and reviewing both the tango and phobos changes that I made -- obviously far more on the phobos side.
Aug 14 2008
Brad Roberts wrote:On Wed, 13 Aug 2008, Walter Bright wrote:To be fair, there was anger at the approach chosen on your side when starting with this work, and too strong words may have been used, and if I was guilty, I am sorry for that. As it was, we didn't in any way feel that what happened in any way reflected what we talked to Walter about at the conference. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoDate: Wed, 13 Aug 2008 14:32:32 -0700 From: Walter Bright <newshound1 digitalmars.com> Reply-To: digitalmars.D <digitalmars-d puremagic.com> To: digitalmars-d puremagic.com Newsgroups: digitalmars.D Subject: Re: Tango vs Phobos Sean Kelly wrote:Additionally, Sean has had commit access to phobos for well over a year. As far as I can recall, there's been no submits. I did a good bit of unification of the thread model at one point (though far from complete), and was accused of stealing code from Tango (no, I'm not going to try to dig up exact quotes). It left a rather sour taste in my mouth at which point my enthusiasm was somewhat diminished. I let the license issue further stall any effort on my part. I hate airing dirty laundry, so I hope this to be my one and only post on the topic.Unfortunately, for this to be resolved it requires cooperation from both sides. It takes two to Tango, as they say (sorry, bad joke).For my part, I have explicitly allowed the Tango team to look at, use and incorporate any part of Phobos into Tango without prejudice and release it under the Tango license (excluding stuff that I didn't write that has its own copyright license terms). A lot of the new stuff, such as the array op code are even in the public domain to make it super easy. In order for Phobos to move towards compatibility, I need a reciprocal statement from the Tango team. The Tango license does not allow this, and I try to be very careful in making sure Phobos is clean from a legal standpoint. Sean and Don have been most generous in offering such, but the rest of the Tango team have not been willing to, and they have every right to not do so, but it does stand in the way of cooperation. P.S. The reason for the relicense when code is transferred is to avoid the untenable situation of one module in the library having different licenses for different sections of code.
Aug 14 2008
Brad Roberts wrote:On Wed, 13 Aug 2008, Walter Bright wrote:I don't even have time to maintain the Tango runtime, let alone the Phobos runtime as well. And I honestly don't know what I should change given that I don't know what the plan is for the Phobos runtime. As for accusations about stealing code, I will only say that I never made any such accusations. But I do recall some contention at the time for your having full commit rights to Tango, etc, so I do understand your concern. SeanDate: Wed, 13 Aug 2008 14:32:32 -0700 From: Walter Bright <newshound1 digitalmars.com> Reply-To: digitalmars.D <digitalmars-d puremagic.com> To: digitalmars-d puremagic.com Newsgroups: digitalmars.D Subject: Re: Tango vs Phobos Sean Kelly wrote:Additionally, Sean has had commit access to phobos for well over a year. As far as I can recall, there's been no submits. I did a good bit of unification of the thread model at one point (though far from complete), and was accused of stealing code from Tango (no, I'm not going to try to dig up exact quotes). It left a rather sour taste in my mouth at which point my enthusiasm was somewhat diminished. I let the license issue further stall any effort on my part.Unfortunately, for this to be resolved it requires cooperation from both sides. It takes two to Tango, as they say (sorry, bad joke).For my part, I have explicitly allowed the Tango team to look at, use and incorporate any part of Phobos into Tango without prejudice and release it under the Tango license (excluding stuff that I didn't write that has its own copyright license terms). A lot of the new stuff, such as the array op code are even in the public domain to make it super easy. In order for Phobos to move towards compatibility, I need a reciprocal statement from the Tango team. The Tango license does not allow this, and I try to be very careful in making sure Phobos is clean from a legal standpoint. Sean and Don have been most generous in offering such, but the rest of the Tango team have not been willing to, and they have every right to not do so, but it does stand in the way of cooperation. P.S. The reason for the relicense when code is transferred is to avoid the untenable situation of one module in the library having different licenses for different sections of code.
Aug 14 2008
Nick B Wrote:Lars Ivar Igesund wrote:I recognize a number of core Tango folks participating in this thread. I find it very telling that Walter has not found this thread sufficiently interesting to reply.dsimcha wrote:So what is the plan to resolve these creative differences ? When is the Tango team and Walter going to get in the same room to thrash though these differences, because if these issues are not resolved, then the split will get wider, and wider. Finally, both communities will go their separate ways, and the community (both D and Tango) will burn and die.What about, at least initially, releasing a subset of Tango for D2 and gradually porting more as issues are fixed? For example, just for now, just release whatever subset of Tango is high-level enough to run on top of the D2 Phobos runtime and isn't plagued too severely by const issues, even if it doesn't mesh perfectly, i.e. requires some casting, etc. on the part of client code.There isn't really a subset of Tango that can run on top of any Phobos runtime. The Tango runtime probably works fine with D2 without any major changes, it is the user library that is problematic. The work on the porting has begun in a branch in Tango's svn repository, but cannot be continued properly until certain issues are fixed.I'm not really sure, but I would guess that this would leave a reasonably large subset with plenty of useful things. To be honest, I'm not sure how feasible this is, but I thought I would throw it out there as a suggestion. Tango is a huge library with tons of nice stuff, and it seems like a shame that D2 users can't use any of it if only parts of it are broken.It is typically the behaviour of certain core parts (text manipulation, io) that doesn't work properly, and so most of the other parts of Tango won't work either. Right now it isn't really compilable either if I understand correctly. But we got people on it! :) Really, it would be swell if Tango could work with D2, but currently D2 is not usable for a library like Tango.
Aug 13 2008
Lars Ivar Igesund wrote:There isn't really a subset of Tango that can run on top of any Phobos runtime. The Tango runtime probably works fine with D2 without any major changes, it is the user library that is problematic. The work on the porting has begun in a branch in Tango's svn repository, but cannot be continued properly until certain issues are fixed.I don't understand. I fixed the one issue you identified to me that was impeding Tango on D2 (Bugzilla 1644, and 2204 is the same). What else is there?
Aug 13 2008
Walter Bright wrote:Lars Ivar Igesund wrote:I wasn't aware that 2204 was a duplicate of 1644, and I guess Steven wasn't either. If there are no further stumbling blocks, all are great :) Although, clearly, the better solution would be fixing Bugzilla 1961, 1644 is only a workaround for that. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoThere isn't really a subset of Tango that can run on top of any Phobos runtime. The Tango runtime probably works fine with D2 without any major changes, it is the user library that is problematic. The work on the porting has begun in a branch in Tango's svn repository, but cannot be continued properly until certain issues are fixed.I don't understand. I fixed the one issue you identified to me that was impeding Tango on D2 (Bugzilla 1644, and 2204 is the same). What else is there?
Aug 14 2008
On Thu, 14 Aug 2008 12:02:46 +0400, Lars Ivar Igesund <larsivar igesund.net> wrote:Walter Bright wrote:Too bad 2204 was marked as an acceptable solution :)Lars Ivar Igesund wrote:I wasn't aware that 2204 was a duplicate of 1644, and I guess Steven wasn't either. If there are no further stumbling blocks, all are great :) Although, clearly, the better solution would be fixing Bugzilla 1961, 1644 is only a workaround for that.There isn't really a subset of Tango that can run on top of any Phobos runtime. The Tango runtime probably works fine with D2 without any major changes, it is the user library that is problematic. The work on the porting has begun in a branch in Tango's svn repository, but cannot be continued properly until certain issues are fixed.I don't understand. I fixed the one issue you identified to me that was impeding Tango on D2 (Bugzilla 1644, and 2204 is the same). What else is there?
Aug 14 2008
"Lars Ivar Igesund" wroteWalter Bright wrote:In fact, I wasn't aware. 2204 was a legitimate bug, which worked in D 2.007. 1644 was an enhancement request, I didn't really consider it a bug, but it did not work in 2.007. So I viewed them as separate issues. Of course, it's entirely possible that in adding the 1644 enhancement, the 2204 bug also got fixed. I'll check it (haven't had a chance yet to try out the new D2). I also would have preferred 1961, but I understand the preference for 1644 as 1961 would be a huge feature change. I still think 1961 is a worthwhile enhancement, but I don't think it blocks D2/Tango development at this time. I will check the status of these bugs soon. The benefits of 1961: Not a template solution. Ability to not munge the caller's const contract. -SteveLars Ivar Igesund wrote:I wasn't aware that 2204 was a duplicate of 1644, and I guess Steven wasn't either. If there are no further stumbling blocks, all are great :) Although, clearly, the better solution would be fixing Bugzilla 1961, 1644 is only a workaround for that.There isn't really a subset of Tango that can run on top of any Phobos runtime. The Tango runtime probably works fine with D2 without any major changes, it is the user library that is problematic. The work on the porting has begun in a branch in Tango's svn repository, but cannot be continued properly until certain issues are fixed.I don't understand. I fixed the one issue you identified to me that was impeding Tango on D2 (Bugzilla 1644, and 2204 is the same). What else is there?
Aug 14 2008
"Steven Schveighoffer" wroteIn fact, I wasn't aware. 2204 was a legitimate bug, which worked in D 2.007. 1644 was an enhancement request, I didn't really consider it a bug, but it did not work in 2.007. So I viewed them as separate issues. Of course, it's entirely possible that in adding the 1644 enhancement, the 2204 bug also got fixed. I'll check it (haven't had a chance yet to try out the new D2).Confirmed that both issues are fixed in 2.018, at least for the given test cases. I'll work on trying to port the Tango branch again :) -Steve
Aug 15 2008
Sean Kelly wrote:== Quote from bearophile (bearophileHUGS lycos.com)'s articleBut does delegate usage cause that much erroneous outer variable heap allocation? (by erroneous, I mean in situations were it would not be necessary) Or is the problem here that you are afraid that the developer might make a mistake were he would create a delegate that would capture an outer variable (and thus heap allocate it), but the developer would not notice it? Would a semantic tool that detects delegate's outer variables (ie, the heap-allocated local variables) be useful? I think it wouldn't be too hard to create such functionality in Descent/Mmrnmhrm. -- Bruno Medeiros - Software Developer, MSc. in CS/E graduate http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#DSean Kelly:the "safer" version (what "safer" is can be debated). It's just a matter of opinion, I suppose. As D is a systems language, I don't agree with many arguments about safety when that safety conflicts with my ability to control what the language is doing behind the scenes. Portability between versions is also an issue--code that is correctly designed for D 1.0 may be unusable on D 2.0 because the default behavior for certain language features is different, although the syntax is still completely legal. Also, there isn't any way to easily grep for the use of delegates so finding such trouble spots requires a manual code review.I would prefer that the old behavior the the default and that "new &fn" or something similar would be used for full closures.We have already discussed why this is negative, when practically possible in D the default has to be
Aug 15 2008
Bruno Medeiros wrote:Sean Kelly wrote:From what I've been told, it does. But I haven't personally tested D 2.0 enough to say.== Quote from bearophile (bearophileHUGS lycos.com)'s articleBut does delegate usage cause that much erroneous outer variable heap allocation? (by erroneous, I mean in situations were it would not be necessary)Sean Kelly:the "safer" version (what "safer" is can be debated). It's just a matter of opinion, I suppose. As D is a systems language, I don't agree with many arguments about safety when that safety conflicts with my ability to control what the language is doing behind the scenes. Portability between versions is also an issue--code that is correctly designed for D 1.0 may be unusable on D 2.0 because the default behavior for certain language features is different, although the syntax is still completely legal. Also, there isn't any way to easily grep for the use of delegates so finding such trouble spots requires a manual code review.I would prefer that the old behavior the the default and that "new &fn" or something similar would be used for full closures.We have already discussed why this is negative, when practically possible in D the default has to beOr is the problem here that you are afraid that the developer might make a mistake were he would create a delegate that would capture an outer variable (and thus heap allocate it), but the developer would not notice it?No. My issue is simply with performance guarantees.Would a semantic tool that detects delegate's outer variables (ie, the heap-allocated local variables) be useful? I think it wouldn't be too hard to create such functionality in Descent/Mmrnmhrm.Not sure. I'd have to look into how the compiler decides whether to heap allocate before saying. Sean
Aug 15 2008
Sean Kelly wrote:Bruno Medeiros wrote:Is there any bug report or code sample of such situation? I recall you mentioning this problem before, but I haven't seen any concrete example so far. (not saying there isn't ;) )But does delegate usage cause that much erroneous outer variable heap allocation? (by erroneous, I mean in situations were it would not be necessary)From what I've been told, it does. But I haven't personally tested D 2.0 enough to say.Guarentees by the D spec itself? -- Bruno Medeiros - Software Developer, MSc. in CS/E graduate http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#DOr is the problem here that you are afraid that the developer might make a mistake were he would create a delegate that would capture an outer variable (and thus heap allocate it), but the developer would not notice it?No. My issue is simply with performance guarantees.
Aug 18 2008
Bruno Medeiros wrote:Sean Kelly wrote:I believe others have shown that it can disrupt normal running. -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoBruno Medeiros wrote:Is there any bug report or code sample of such situation? I recall you mentioning this problem before, but I haven't seen any concrete example so far. (not saying there isn't ;) )But does delegate usage cause that much erroneous outer variable heap allocation? (by erroneous, I mean in situations were it would not be necessary)From what I've been told, it does. But I haven't personally tested D 2.0 enough to say.
Aug 18 2008
Lars Ivar Igesund wrote:Bruno Medeiros wrote:I was asking for a piece of code were the compiler would unnecessarily heap-allocate a local (and not a situation where doing so would botch up a program). But in reading Frank Benoit's post in the full closure thread below, I've already seen one meanwhile. I didn't know the compiler heap-allocated a local in every situation where a local is used as an outer variable. That indeed puts a serious burden on the use of scoped closures :( -- Bruno Medeiros - Software Developer, MSc. in CS/E graduate http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#DSean Kelly wrote:I believe others have shown that it can disrupt normal running.Bruno Medeiros wrote:Is there any bug report or code sample of such situation? I recall you mentioning this problem before, but I haven't seen any concrete example so far. (not saying there isn't ;) )But does delegate usage cause that much erroneous outer variable heap allocation? (by erroneous, I mean in situations were it would not be necessary)From what I've been told, it does. But I haven't personally tested D 2.0 enough to say.
Aug 18 2008
Bruno Medeiros wrote:But in reading Frank Benoit's post in the full closure thread below, I've already seen one meanwhile. I didn't know the compiler heap-allocated a local in every situation where a local is used as an outer variable. That indeed puts a serious burden on the use of scoped closures :(It doesn't do it in every situation. It does it in a situation where a pointer is taken to a function that accesses it.
Aug 18 2008
Walter Bright wrote:Bruno Medeiros wrote:Hum, that's right, I hadn't noticed. My previous comment was due to the fact that I was always experimenting with delegate literals. And unfortunately a delegate literal itself counts as "taking a pointer to a function", so any outer variable used in a delegate literal will be allocated. :/ -- Bruno Medeiros - Software Developer, MSc. in CS/E graduate http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#DBut in reading Frank Benoit's post in the full closure thread below, I've already seen one meanwhile. I didn't know the compiler heap-allocated a local in every situation where a local is used as an outer variable. That indeed puts a serious burden on the use of scoped closures :(It doesn't do it in every situation. It does it in a situation where a pointer is taken to a function that accesses it.
Aug 25 2008
Bruno Medeiros wrote:Sean Kelly wrote:No, guarantees by Tango. Like how the STL provides "big O" guarantees for its algorithms. SeanBruno Medeiros wrote:Is there any bug report or code sample of such situation? I recall you mentioning this problem before, but I haven't seen any concrete example so far. (not saying there isn't ;) )But does delegate usage cause that much erroneous outer variable heap allocation? (by erroneous, I mean in situations were it would not be necessary)From what I've been told, it does. But I haven't personally tested D 2.0 enough to say.Guarentees by the D spec itself?Or is the problem here that you are afraid that the developer might make a mistake were he would create a delegate that would capture an outer variable (and thus heap allocate it), but the developer would not notice it?No. My issue is simply with performance guarantees.
Aug 18 2008
Sean Kelly schrieb:I think this is not a bug in the compiler. Instead it shows the bug in the concept. The concept is "simply allocate the whole stack frame on the heap". But it turns out to be not sufficient. Now what? Heap allocated each scope also? for every loop iteration?3.) the closures are not really closures. E.g. const variables can change value. (Bug 2043)This one, at least, is clearly a bug.
Aug 11 2008
== Quote from Frank Benoit (keinfarbton googlemail.com)'s articleSean Kelly schrieb:Yup. It's essentially the same as heap allocating for the scope created by a function call. I imagine the hope is that compiler introspection would be able to figure out when such allocations are necessary and when only one would suffice. Barring that, the programmer would need some way of indicating this to the compiler, which is something we need anyway as always heap allocating in a systems language renders delegates unusable for certain classes of application. SeanI think this is not a bug in the compiler. Instead it shows the bug in the concept. The concept is "simply allocate the whole stack frame on the heap". But it turns out to be not sufficient. Now what? Heap allocated each scope also? for every loop iteration?3.) the closures are not really closures. E.g. const variables can change value. (Bug 2043)This one, at least, is clearly a bug.
Aug 11 2008
On Mon, 11 Aug 2008 22:39:56 +0400, Sean Kelly <sean invisibleduck.org> wrote:Frank Benoit wrote:If I understand the issue correctly, it's not a delegate itself that should be allocated on heap but rather a function context (i.e. local variables): auto foo() { int i = 0; int bar() { return ++i; } return &bar; } It's clear enough that i should be allocated on heap. On the other side, there is a scope modifier, that doesn't allow returning of pointer to the attributed variable: auto foo() { scope Bar bar = new Bar(); return bar; // illegal } So these variables should be allocated on stack in any case, even for delegates: auto foo() { scope Bar bar = new Bar(); Bar foobar() { return bar; } doSomething(&foobar); // legal (unless foobar is saved somewhere in global scope) return &foobar; // illegal } Note that bar is a scoped variable and isn't supposed to be heap allocated. So a solution would be to allow marking built-in type and struct instances as scope, too, and those variable won't be heap allocated. The default one, however, would be non-scope, i.e. heap-allocated. It fits perfectly with current semantics, it allows marking of some variables as heap- others as scope-allocated (flexibility), it doesn't introduce any new keywords or concepts.Jarrett Billingsley schrieb:Yup. Much like the change in meaning of "const," which I've admittedly complained about perhaps overmuch."Lars Ivar Igesund" <larsivar igesund.net> wrote in message news:g7mboq$qcl$1 digitalmars.com...i second that. It is an closure solution which was implemented too easy, imho. 1.) it breaks the semantic of an existing syntax. So existing code can be broken without any warning. (change in runtime behaviour)Also as long as closures are allocated on stack, that is likely to be rather detrimental to the performance.Heap. That is another major blocker for me besides const. Most of my code uses nested functions that are never supposed to be closures, and this "feature" would cause it all to unnecessarily allocate memory.2.) there is still no alternative syntax to get the old behaviourI would prefer that the old behavior the the default and that "new &fn" or something similar would be used for full closures.3.) the closures are not really closures. E.g. const variables can change value. (Bug 2043)This one, at least, is clearly a bug. Sean
Aug 12 2008
Jarrett Billingsley wrote:"Lars Ivar Igesund" <larsivar igesund.net> wrote in message news:g7mboq$qcl$1 digitalmars.com...Heap. Stack. Hack. Ehrm ... sorry ... -- Lars Ivar Igesund blog at http://larsivi.net DSource, #d.tango & #D: larsivi Dancing the TangoAlso as long as closures are allocated on stack, that is likely to be rather detrimental to the performance.Heap.
Aug 10 2008
On Sun, 10 Aug 2008 13:18:20 +0400, Lars Ivar Igesund <larsivar igesund.net> wrote:Nick B wrote:We need some other kind of `version' for this, I'm afraid. Something like this, maybe: #version (StructInsteadOfClass) struct Foo { #else class Foo { #end void bar() {} }Sean So what is the plan to transition Tango to D2.0 ? Is the Tango team waiting for const to be removed from D2.0, or will Tango continue to use D1.0 forever, or is the team waiting to see the final form of D2.0 before deciding what to do ?We don't expect const to be removed :) As it is, this must be resolved before it is possible to properly port Tango: http://d.puremagic.com/issues/show_bug.cgi?id=2267 1644 was fixed now, but is in our opinion the lesser solution to the problem - we'd much rather have 1961. 2204 is still open I think. Also as long as closures are allocated on stack, that is likely to be rather detrimental to the performance. Once we have a resolution on that, work on the Tango D 2.0 branch will probably continue, and this branch will be available to all who need it. If possible, an official release may happen shortly after the time Walter calls D 2.0 to be stable. One other concern is that it is almost impossible to have code that is both D1 and D2 compatible, something which mean the mantainance of two branches, a potentially daunting task - it would be good if the "syntactical correctness" restriction on versioned out blocks could be removed for at least D1/D2 identifiers.
Aug 11 2008
On Mon, 11 Aug 2008 20:03:29 +0400, Koroskin Denis <2korden gmail.com> wrote:On Sun, 10 Aug 2008 13:18:20 +0400, Lars Ivar Igesund <larsivar igesund.net> wrote:I would also like to have something like this: #if CompileTimeConfig.TargetOS == OS.MacOS && CompileTimeConfig.TargetOSVersion >= 10_3_2 // do something #else // do something else #endif Note that it is exactly like static if (sameCondition) { } (i.e. it can benefit from CTFE etc), but allows wrong code in false clause.Nick B wrote:We need some other kind of `version' for this, I'm afraid. Something like this, maybe: #version (StructInsteadOfClass) struct Foo { #else class Foo { #end void bar() {} }Sean So what is the plan to transition Tango to D2.0 ? Is the Tango team waiting for const to be removed from D2.0, or will Tango continue to use D1.0 forever, or is the team waiting to see the final form of D2.0 before deciding what to do ?We don't expect const to be removed :) As it is, this must be resolved before it is possible to properly port Tango: http://d.puremagic.com/issues/show_bug.cgi?id=2267 1644 was fixed now, but is in our opinion the lesser solution to the problem - we'd much rather have 1961. 2204 is still open I think. Also as long as closures are allocated on stack, that is likely to be rather detrimental to the performance. Once we have a resolution on that, work on the Tango D 2.0 branch will probably continue, and this branch will be available to all who need it. If possible, an official release may happen shortly after the time Walter calls D 2.0 to be stable. One other concern is that it is almost impossible to have code that is both D1 and D2 compatible, something which mean the mantainance of two branches, a potentially daunting task - it would be good if the "syntactical correctness" restriction on versioned out blocks could be removed for at least D1/D2 identifiers.
Aug 11 2008
Auria Wrote:Yes, and even if i know this has been discussed to death, i'll allow myself to add i really dislike the direction D is taking. D's homepage states it is driven by practical experience and not academical feats. Hasn't a solid standard library been shown over time to be absolutely necessary for any language to become popular and highly usable? It seems like D is taking the direction of adding lots of sugar features, and misses basic practical experience stuff. All that sugar is totally useless if D doesn't even have a standard library upon which everything can be builtI'll second that.
Aug 10 2008