Re: [Chicken-users] Visual Studio is here

2014-11-24 Thread Peter Bex
On Mon, Nov 24, 2014 at 10:18:10PM +0300, Oleg Kolosov wrote:
> On 24 Nov 2014, at 12:44, Peter Bex  wrote:
> The main benefit from this is that there is no more “cross chicken”: just 
> host and target. So it’s actually possible.

This sounds interesting.  I don't know much about cross-compilation,
though, so I have no idea whether there's a good reason that
cross-chicken exists.

> >> The development is completely public, on github, and I don’t mind breaking 
> >> things, maybe this will encourage people who does not want to bother with 
> >> patches and mailing lists to contribute.
> > 
> > We already have a manpower problem, with not enough people contributing.
> > Diluting this manpower across two projects is wasteful and hurts *both*
> > projects.
> 
> This is not my intention. Considering that commits to the core are quite 
> rare, by putting some action to github I was hoping to make the the project 
> more visible.

I'm very relieved to hear this!

> > But more importantly, I'd really hate to see all your work go to waste.
> > I've seen it before, and done it myself even: if you just go off on your
> > own and hack, merging back the work is going to be Very Hard.  If you
> > just send a huge patch bomb to the mailinglist, that will make it
> > impossible for us to merge it back, not only due to the inevitable merge
> > conflicts but also because too large patches are hard to digest.
> 
> Well, actual code changes, not counting moves and renames, are quite small. 
> I’m still not sure how it will work in the end. I guess most of these things 
> will require few tries, so to not waste anyones time I will experiment in my 
> own branches.

Experimentation is fine.  If in the end you can produce small self-contained
patches, I'm all for it.

> > Evntually, CHICKEN 5 may evolve beyond the ability to merge back changes
> > into your branch.  The same will happen vice versa.  This will ensure
> > people will need to choose between your branch or ours, which is unfair
> > and unnecessary.
> 
> To make this clear: mine - "try you wildest ideas, don’t complain if it eats 
> your cat” (broken builds, merge conflicts); mainline - peer reviewed, stable 
> and time proven.

Excellent, thank you for stating this clearly!

> > How many platforms are you testing on?
> 
> Windows 7: (MSVC, MinGW32), MacOS X (Xcode and ninja build), occasionally 
> cross compile for Linux (x86 and MIPS) with the eggs and run on our device.

Nice, that's quite a few test systems.  Do you think you could
contribute a Salmonella Windows box?  That would be helpful in
making egg authors aware of how their eggs are doing on Windows.

Cheers,
Peter
-- 
http://www.more-magic.net

___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Visual Studio is here

2014-11-24 Thread Oleg Kolosov
On 24 Nov 2014, at 12:44, Peter Bex  wrote:
> 
> On Sat, Nov 22, 2014 at 11:42:29PM +0300, Oleg Kolosov wrote:
>> Well, merging back into the core will make me happy, but, before that, I 
>> plan to actually implement the aforementioned features. Right now I have 
>> only barely working prototypes. You, as an upstream, have strong policies 
>> and obligations (like maintaining backward compatibility and such) which 
>> will slow me down. I prefer to rapidly change everything without 
>> discussions. So, it looks like this will be a real fork for the time being.
> 
> Please remember that we've actually decided to _break_ backwards
> compatibility for CHICKEN 5.  If there's any time to contribute large
> changes to core, it's now!
> 
> Of course we'll still want to review changes, but this is to ensure
> quality and avoid introducing bugs, as well as to ensure that more
> people are familiar with the new code.  At least two core developers
> will have looked at the code, which means we reduce the "bus factor"
> (i.e., what would happen if one core dev would be hit by a bus?).
> Everyone benefits from this:  Suppose you lose interest in CHICKEN
> or something was to happen to you, who will maintain your changes
> if nobody has seen and understood them in detail?

Yes, you are right. I’m moving things around mainly to familiarise myself with 
the code. I’ve received complaints from people I know personally, who would 
like to contribute, that the existing code base is hard to navigate, so, to 
make the job easier, I’ve removed and renamed few things, like setup-api, csc 
and friends, most of the platforms and such. The conversion was pretty 
mindless, I don’t think this is worthy of contribution.

The main benefit from this is that there is no more “cross chicken”: just host 
and target. So it’s actually possible.

> 
>> The development is completely public, on github, and I don’t mind breaking 
>> things, maybe this will encourage people who does not want to bother with 
>> patches and mailing lists to contribute.
> 
> We already have a manpower problem, with not enough people contributing.
> Diluting this manpower across two projects is wasteful and hurts *both*
> projects.

This is not my intention. Considering that commits to the core are quite rare, 
by putting some action to github I was hoping to make the the project more 
visible.

> But more importantly, I'd really hate to see all your work go to waste.
> I've seen it before, and done it myself even: if you just go off on your
> own and hack, merging back the work is going to be Very Hard.  If you
> just send a huge patch bomb to the mailinglist, that will make it
> impossible for us to merge it back, not only due to the inevitable merge
> conflicts but also because too large patches are hard to digest.

Well, actual code changes, not counting moves and renames, are quite small. I’m 
still not sure how it will work in the end. I guess most of these things will 
require few tries, so to not waste anyones time I will experiment in my own 
branches.

> Evntually, CHICKEN 5 may evolve beyond the ability to merge back changes
> into your branch.  The same will happen vice versa.  This will ensure
> people will need to choose between your branch or ours, which is unfair
> and unnecessary.

To make this clear: mine - "try you wildest ideas, don’t complain if it eats 
your cat” (broken builds, merge conflicts); mainline - peer reviewed, stable 
and time proven.

>> The test suite still passes and I have complex production system (thread 
>> heavy and performance sensitive) which still runs, so I hope the real 
>> breakage will not go unnoticed. 
> 
> How many platforms are you testing on?  We have an extensive continuous
> integration system (Salmonella), which tests on several platforms.
> Writing portable code is hard enough as it is, without this safety net
> you're almost guaranteed to break a thing or two without knowing it.

Windows 7: (MSVC, MinGW32), MacOS X (Xcode and ninja build), occasionally cross 
compile for Linux (x86 and MIPS) with the eggs and run on our device.

-- 
Regards, Oleg
Art System



___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users


Re: [Chicken-users] Visual Studio is here

2014-11-24 Thread Peter Bex
On Sat, Nov 22, 2014 at 11:42:29PM +0300, Oleg Kolosov wrote:
> Well, merging back into the core will make me happy, but, before that, I plan 
> to actually implement the aforementioned features. Right now I have only 
> barely working prototypes. You, as an upstream, have strong policies and 
> obligations (like maintaining backward compatibility and such) which will 
> slow me down. I prefer to rapidly change everything without discussions. So, 
> it looks like this will be a real fork for the time being.

Please remember that we've actually decided to _break_ backwards
compatibility for CHICKEN 5.  If there's any time to contribute large
changes to core, it's now!

Of course we'll still want to review changes, but this is to ensure
quality and avoid introducing bugs, as well as to ensure that more
people are familiar with the new code.  At least two core developers
will have looked at the code, which means we reduce the "bus factor"
(i.e., what would happen if one core dev would be hit by a bus?).
Everyone benefits from this:  Suppose you lose interest in CHICKEN
or something was to happen to you, who will maintain your changes
if nobody has seen and understood them in detail?

> The development is completely public, on github, and I don’t mind breaking 
> things, maybe this will encourage people who does not want to bother with 
> patches and mailing lists to contribute.

We already have a manpower problem, with not enough people contributing.
Diluting this manpower across two projects is wasteful and hurts *both*
projects.

But more importantly, I'd really hate to see all your work go to waste.
I've seen it before, and done it myself even: if you just go off on your
own and hack, merging back the work is going to be Very Hard.  If you
just send a huge patch bomb to the mailinglist, that will make it
impossible for us to merge it back, not only due to the inevitable merge
conflicts but also because too large patches are hard to digest.

Evntually, CHICKEN 5 may evolve beyond the ability to merge back changes
into your branch.  The same will happen vice versa.  This will ensure
people will need to choose between your branch or ours, which is unfair
and unnecessary.

> The test suite still passes and I have complex production system (thread 
> heavy and performance sensitive) which still runs, so I hope the real 
> breakage will not go unnoticed. 

How many platforms are you testing on?  We have an extensive continuous
integration system (Salmonella), which tests on several platforms.
Writing portable code is hard enough as it is, without this safety net
you're almost guaranteed to break a thing or two without knowing it.

Cheers,
Peter
-- 
http://www.more-magic.net

___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users