# Contributing?

**URL:** <https://www.ruby-forum.com/t/contributing/197941>\
**Category:** IronRuby\
**Created:** [October 23, 2010, 2:19am UTC](https://www.ruby-forum.com/t/contributing/197941 "2010-10-23T02:19:52Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Dobai-Pataky\_BSSSSl](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/77aa72/32.png) [@Dobai-Pataky\_BSSSSl](https://www.ruby-forum.com/u/Dobai-Pataky_BSSSSl)\
**Post date:** [October 23, 2010, 2:19am UTC](https://www.ruby-forum.com/t/contributing/197941/1 "2010-10-23T02:19:52Z")

</div>

With a brave new world ahead for IronRuby, what do you all think about  
the  
following ideas?

1. Move to GitHub - I won’t likely contribute if I have to use CodePlex.  
And  
I’d like to contribute. Can we do like the rest of Mono and make GitHub  
the  
central repository and source of all truth? Please?

2. Detach IronPython - Looking through the code, it seems that  
IronPython is  
in the same repo. I’m sure this is a holdover of how Microsoft had  
everything organized. And I’m sure it made sense then, but I don’t think  
it  
makes sense now. I’d like to work on IronRuby, and I honestly don’t care  
about having to check IronPython. Now that the DLR API is fixed, and  
there  
is no longer one Microsoft group in charge of both projects, can we move  
these into separate repos?

3. Detach from Visual Studio - I’m not on Windows, and I won’t be using  
Visual Studio. I’d prefer everything to build with rake tasks on Windows  
and  
Mono. I assume things are the way they are right now because of  
Microsoft’s  
build process. And right now it does not seem possible for me to build  
without Visual Studio. What about devs who are using MonoDevelop? Or any  
of  
the more powerful text editors? I’m convinced this is a major hurdle to  
getting many of the other Rubyist language implementors involved.  
Assuming I  
am not alone on this, is it possible we can make this project reflect  
the  
realities of the majority of folks that would like to contribute?

4. Remove ancillary projects into their own repos - IronRuby.Rack should  
live in its own repo, IMO. So should the Visual Studio tools. This is  
similar to separating IronPython into its own repo, but it needs to go  
further. Are there any reasons this should not be done?

What else do you guys think needs to change now that IronRuby is free  
from  
Microsoft’s processes?

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 3:50am UTC](https://www.ruby-forum.com/t/contributing/197941/2 "2010-10-23T03:50:05Z")

</div>

A couple thoughts below:

On Fri, Oct 22, 2010 at 8:10 PM, Mike M. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> With a brave new world ahead for IronRuby, what do you all think about the  
> following ideas?
> 
> 1. Move to GitHub - I won’t likely contribute if I have to use CodePlex. And  
> I’d like to contribute. Can we do like the rest of Mono and make GitHub the  
> central repository and source of all truth? Please?

[http://github.com/ironruby/ironruby](http://github.com/ironruby/ironruby)

My understanding is that Codeplex is used only for end user  
distribution and bug tracking

> 3)Detachfrom Visual Studio - I’m not on Windows, and I won’t be using  
> Visual Studio. I’d prefer everything to build with rake tasks on Windows and  
> Mono. I assume things are the way they are right now because of Microsoft’s  
> build process. And right now it does not seem possible for me to build  
> without Visual Studio. What about devs who are using MonoDevelop? Or any of  
> the more powerful text editors? I’m convinced this is a major hurdle to  
> getting many of the other Rubyist language implementors involved. Assuming I  
> am not alone on this, is it possible we can make this project reflect the  
> realities of the majority of folks that would like to contribute?

You can certainly build without VS, this has always been the case.  
All you need is msbuild or xbuild for the solution files, in the past  
there have been Rake files as part of the repo from very early on..  
but they seem to have disappeared.. anyone know what happened?

I’m taking a look now on building under mono on linux, it’s something  
me and Ivan were working on earlier in the year and this seems like a  
good time to revisit.

–  
Michael L.  
IronRuby MVP

> **[Michael Letterle's Blog ·](https://blog.prokrams.com/)**

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 3:55am UTC](https://www.ruby-forum.com/t/contributing/197941/3 "2010-10-23T03:55:05Z")

</div>

1. IronRuby is on github. I has been there for a while. There is no  
source code on CodePlex. The only CodePlex service we use is the bug  
tracker.

2. It is not a holdover. It makes a lot of sense actually for at least  
the following reasons:  
a) Some IronRuby tests test interop between these languages. So there is  
a direct dependency. When you debug issues in language interop you need  
to have IronPython source code as well to step thru and make sense of  
the interactions.  
b) DLR has two parts - the “inner ring” that shipped in .NET Framework  
4.0 and the “outer ring”, which hasn’t shipped. Although the outer ring  
is pretty stable there are still many improvements that can/should be  
done. Obviously when you change the DLR you should run tests for both  
languages so that you don’t break anything. Thus IronPython’s test suite  
in the repo is handy. Also, if you change public API in the outer ring  
you might need to change both IronPython and IronRuby. All of this could  
be done in stages across different repos and even source control  
systems, but that’s obviously much more complicated than having it just  
work.

Is size of the repo really an issue? If not, what is?

1. It is absolutely possible to build without Visual Studio. On Mono you  
can build using xbuild. Sometimes Mono’s xbuild might have a bug but I  
can assure you that Mono guys are more than happy to fix it asap if it  
breaks IronRuby or IronPython builds. Doesn’t MonoDevelop support  
.csproj files? I have no experience with it, but I would assume it does.  
The only part of the repo that is Visual Studio specific is (not  
surprisingly) Visual Studio integration in the Tools directory. Building  
a separate rake build system is just a redundancy that is difficult to  
maintain. Trust me, we tried. The less duplication in the build  
infrastructure the better.

2. We have an installer builder in the MSI directory that builds the  
entire IronRuby.msi and IronPython.msi from command line. These  
installers include Visual Studio integration so it needs to be there. Of  
course we can come up with some sub-module structuring of the repo that  
allows you to make a local enlistment with VS and without VS. That might  
be the way to go. Though, again, why spend time on changing the  
infrastructure? Shouldn’t we focus on implementing features and fixing  
bugs instead? Does the size of the repo bother you?

Be assured that me and Dino have spent a lot of time to make sure no  
unnecessary process (Microsoft’s or not) is needed when working on  
IronRuby and IronPython.  
There might be a few small things to clean up that were needed at  
Microsoft and are not needed now. I’ll be happy to make the changes. Two  
of them that I can think of right now are removing “LCA\_RESTRICTED” and  
TFS bindings from the solutions. Other than that there is not much.

Any ideas how to make the development easier on Windows, Linux or MacOS  
are indeed welcome. Just be aware there might be good reasons behind the  
current repo setup and virtually none of them would be Microsoft process  
requirements. I’ll be happy to explain them should you have any  
questions.

Thanks,  
Tomas

From: removed\_email\_address@domain.invalid  
[[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)] On Behalf Of Mike M.  
Sent: Friday, October 22, 2010 5:10 PM  
To: removed\_email\_address@domain.invalid  
Subject: [Ironruby-core] Contributing?

With a brave new world ahead for IronRuby, what do you all think about  
the following ideas?

1. Move to GitHub - I won’t likely contribute if I have to use CodePlex.  
And I’d like to contribute. Can we do like the rest of Mono and make  
GitHub the central repository and source of all truth? Please?

2. Detach IronPython - Looking through the code, it seems that  
IronPython is in the same repo. I’m sure this is a holdover of how  
Microsoft had everything organized. And I’m sure it made sense then, but  
I don’t think it makes sense now. I’d like to work on IronRuby, and I  
honestly don’t care about having to check IronPython. Now that the DLR  
API is fixed, and there is no longer one Microsoft group in charge of  
both projects, can we move these into separate repos?

3. Detach from Visual Studio - I’m not on Windows, and I won’t be using  
Visual Studio. I’d prefer everything to build with rake tasks on Windows  
and Mono. I assume things are the way they are right now because of  
Microsoft’s build process. And right now it does not seem possible for  
me to build without Visual Studio. What about devs who are using  
MonoDevelop? Or any of the more powerful text editors? I’m convinced  
this is a major hurdle to getting many of the other Rubyist language  
implementors involved. Assuming I am not alone on this, is it possible  
we can make this project reflect the realities of the majority of folks  
that would like to contribute?

4. Remove ancillary projects into their own repos - IronRuby.Rack should  
live in its own repo, IMO. So should the Visual Studio tools. This is  
similar to separating IronPython into its own repo, but it needs to go  
further. Are there any reasons this should not be done?

What else do you guys think needs to change now that IronRuby is free  
from Microsoft’s processes?

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 3:56am UTC](https://www.ruby-forum.com/t/contributing/197941/4 "2010-10-23T03:56:58Z")

</div>

I would caution you against moving too far away from Microsoft  
Technology,  
lest you alienate Windows developers.

1. If this project is going to be owned by Mono, then it would be  
reasonable  
to move to GitHub. But to drop CodePlex just because you feel like being  
stubborn isn’t.

2. One of the biggest barriers for Windows developers who want to  
contribute  
to Mono is the project/build system. When looking at it for the first  
time  
it is really hard to just figure out where to start. And they certainly  
don’t want to go back to editing source files with notepad. So while  
being  
able to build without Visual Studio is important, be careful not to  
remove  
the VS/MSBuild option.

Jonathan A.

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 6:03am UTC](https://www.ruby-forum.com/t/contributing/197941/5 "2010-10-23T06:03:44Z")

</div>

On Fri, Oct 22, 2010 at 7:02 PM, Jonathan A.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)wrote:

> I would caution you against moving too far away from Microsoft Technology,  
> lest you alienate Windows developers.

I don’t think Windows developers could be anymore alienated from  
IronRuby.

> 1. If this project is going to be owned by Mono, then it would be  
> reasonable to move to GitHub. But to drop CodePlex just because you feel  
> like being stubborn isn’t.

Dropping CodePlex because it requires some Uber Visual Studio product to  
access the code repo and make code contributions is reasonable, and not  
some  
emotional reaction. Gladly this doesn’t seem to be the case anymore.

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 6:12am UTC](https://www.ruby-forum.com/t/contributing/197941/6 "2010-10-23T06:12:29Z")

</div>

On Fri, Oct 22, 2010 at 6:59 PM, Tomas M. \<  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)\> wrote:

> 1. It is not a holdover. It makes a lot of sense actually for at least  
> the following reasons:
> 
> a) Some IronRuby tests test interop between these languages. So there is a  
> direct dependency. When you debug issues in language interop you need to  
> have IronPython source code as well to step thru and make sense of the  
> interactions.

I don’t understand why the code needs to exist within the same git repo  
for  
this then. Can you not have a Visual Studio solution that includes  
multiple  
projects with their own repository? Can’t you have your automated build  
system pull both the IronRuby and IronPython projects to run the  
integration  
tests?

> b) DLR has two parts the inner ring that shipped in .NET Framework  
> 4.0 and the outer ring, which hasnt shipped. Although the outer ring is  
> pretty stable there are still many improvements that can/should be done.  
> Obviously when you change the DLR you should run tests for both languages so  
> that you dont break anything. Thus IronPythons test suite in the repo is  
> handy. Also, if you change public API in the outer ring you might need to  
> change both IronPython and IronRuby. All of this could be done in stages  
> across different repos and even source control systems, but thats obviously  
> much more complicated than having it just work.

I assumed the DLR was fixed. If that is not the case then shouldn’t the  
DLR  
should be its own separate git repo as well?

Is size of the repo really an issue? If not, what is?

> 

No, its not the size of the repo, rather the amount of tangental code.  
As  
someone who hasn’t looked at the code for well over a year, I am struck  
by  
the amount of orthogonal concerns that are front and center. I find it  
too  
busy and off-putting as a developer looking to become familiar with the  
code  
or make a small contribution. I don’t doubt there aren’t reasons it is  
the  
way it is, just that it can be better if you want to really open the  
floodgates of contributions.

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 6:16am UTC](https://www.ruby-forum.com/t/contributing/197941/7 "2010-10-23T06:16:51Z")

</div>

> > 1. If this project is going to be owned by Mono, then it would be  
> > reasonable to move to GitHub. But to drop CodePlex just because you feel  
> > like being stubborn isn’t.
> 
> Dropping CodePlex because it requires some Uber Visual Studio product to  
> access the code repo and make code contributions is reasonable, and not some  
> emotional reaction. Gladly this doesn’t seem to be the case anymore.
> 
> * * *

Uh.. you know it doesn’t, right? Codeplex supports SVN and Mercurial  
and there are free TFS tools available in any case.

[http://codeplex.codeplex.com/wikipage?title=Source%20Control&version=1](http://codeplex.codeplex.com/wikipage?title=Source%20Control&version=1)

–  
Michael L.  
IronRuby MVP

> **[Michael Letterle's Blog ·](https://blog.prokrams.com/)**

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 6:30am UTC](https://www.ruby-forum.com/t/contributing/197941/8 "2010-10-23T06:30:37Z")

</div>

Along the lines of IronRuby on mono, a small change was required for  
now since Mono doesn’t implement one of the newer Monitor.TryEnter  
overloads, see my branch here:  
[http://github.com/mletterle/ironruby/tree/linux](http://github.com/mletterle/ironruby/tree/linux)

compiles with:

xbuild /property:TreatWarningsAsErrors=false  
/property:DefineConstants=“DEBUG MONO” Ruby.csproj

Working on getting IronRuby.Console compiled now… already ran into a  
casing issue \>.\<

On Fri, Oct 22, 2010 at 9:02 PM, Jonathan A. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> don’t want to go back to editing source files with notepad. So while being
> 
> > 1. Move to GitHub - I won’t likely contribute if I have to use CodePlex.  
> > Visual Studio. I’d prefer everything to build with rake tasks on Windows and  
> > further. Are there any reasons this should not be done?  
> > –  
> > Jonathan A.  
> > 619-933-8527
> 
> * * *
> 
> Ironruby-core mailing list  
> [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
> [http://rubyforge.org/mailman/listinfo/ironruby-core](http://rubyforge.org/mailman/listinfo/ironruby-core)

–  
Michael L.  
IronRuby MVP

> **[Michael Letterle's Blog ·](https://blog.prokrams.com/)**

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 6:31am UTC](https://www.ruby-forum.com/t/contributing/197941/9 "2010-10-23T06:31:53Z")

</div>

On Fri, Oct 22, 2010 at 7:06 PM, Michael L. \<  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)\> wrote:

> [http://github.com/ironruby/ironruby](http://github.com/ironruby/ironruby)
> 
> My understanding is that Codeplex is used only for end user  
> distribution and bug tracking

Good to know. Last time I was paying attention this was not the case.  
The  
commits I’ve seen through twitter seemed to be syncing commits from  
Microsoft’s internal system out. I readily admin I am ignorant of the  
truth  
however. 🙂

You can certainly build without VS, this has always been the case.

> All you need is msbuild or xbuild for the solution files, in the past  
> there have been Rake files as part of the repo from very early on..  
> but they seem to have disappeared.. anyone know what happened?
> 
> I’m taking a look now on building under mono on linux, it’s something  
> me and Ivan were working on earlier in the year and this seems like a  
> good time to revisit.

Excellent. I’d prefer to have rake be the official way to test and  
build,  
since that is what every other Ruby project I work on does.

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 7:06am UTC](https://www.ruby-forum.com/t/contributing/197941/10 "2010-10-23T07:06:56Z")

</div>

The Rake files were deleted because they were hard to maintain and  
redundant.

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 8:01am UTC](https://www.ruby-forum.com/t/contributing/197941/11 "2010-10-23T08:01:25Z")

</div>

On Oct 22, 2010, at 10:00 PM, Jim D. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> The Rake files were deleted because they were hard to maintain and redundant.

Not all of them.

[http://github.com/ironruby/ironruby/blob/master/Rakefile](http://github.com/ironruby/ironruby/blob/master/Rakefile)

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 8:05am UTC](https://www.ruby-forum.com/t/contributing/197941/12 "2010-10-23T08:05:49Z")

</div>

On Oct 22, 2010, at 10:13 PM, Michael L.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Uh.. you know it doesn’t, right?

Obviously I don’t. 🙂

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 8:35am UTC](https://www.ruby-forum.com/t/contributing/197941/13 "2010-10-23T08:35:50Z")

</div>

> Dropping CodePlex because it requires some Uber Visual Studio product to  
> access the code repo and make code contributions is reasonable, and not  
> some  
> emotional reaction.

While academic at this point, I would like to reiterate that you don’t  
need  
Visual Studio for CodePlex, Subversion works just fine. In fact,  
Subversion  
is preferred over VS because it allows anonymous access the source  
control  
repository while VS requires at least developer status on the project.

Jonathan

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 9:30am UTC](https://www.ruby-forum.com/t/contributing/197941/14 "2010-10-23T09:30:57Z")

</div>

On Oct 22, 2010, at 8:27 PM, Mike M. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Dropping CodePlex because it requires some Uber Visual Studio product to access  
> the code repo and make code contributions is reasonable, and not some emotional  
> reaction. Gladly this doesn’t seem to be the case anymore.

Or, has never been the case. I’ve used vim and mono on some pieces  
before, so the new arrangement doesn’t change anything except allow us  
to contribute directly to parts of the codebase we couldn’t before. 🙂

Ryan

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 9:54am UTC](https://www.ruby-forum.com/t/contributing/197941/15 "2010-10-23T09:54:14Z")

</div>

What do you need the “DEBUG MONO” constant for? The default “Debug”  
configuration doesn’t work?

What version of Mono do you use? I think 2.8 should be the target for  
IronRUby.

Tomas

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 9:55am UTC](https://www.ruby-forum.com/t/contributing/197941/16 "2010-10-23T09:55:30Z")

</div>

I don’t understand how three distinct github repos that I need to map  
into some directories on my disk whose relative location to each other  
is hardcoded in some scripts in each are better than a single repo that  
has a well-defined structure.

The amount of code you need to know depends on the part you contribute  
to. If you work on IronRuby libraries you don’t need to even look at  
IronPython. It is indeed better to look there because similar  
functionality might already be implemented there. For example, if you  
worked on FFI you might want to check out IronPython’s CTypes and  
perhaps reuse some code. Why would you need to understand the entire  
code base if you needed to do a local change? Just don’t look where you  
don’t need to :). Building IronRuby is also simple - you just run xbuild  
Ruby.sln from Solution directory. Subsequent builds are incremental, so  
you don’t even need to build everything if you don’t change core  
components. I don’t see how this could be any simpler.

Tomas

From: removed\_email\_address@domain.invalid  
[[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)] On Behalf Of Mike M.  
Sent: Friday, October 22, 2010 8:27 PM  
To: removed\_email\_address@domain.invalid  
Subject: Re: [Ironruby-core] Contributing?

On Fri, Oct 22, 2010 at 6:59 PM, Tomas M.  
\<removed\_email\_address@domain.invalid[mailto:removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)\>  
wrote:  
2) It is not a holdover. It makes a lot of sense actually for at least  
the following reasons:  
a) Some IronRuby tests test interop between these languages. So there is  
a direct dependency. When you debug issues in language interop you need  
to have IronPython source code as well to step thru and make sense of  
the interactions.

I don’t understand why the code needs to exist within the same git repo  
for this then. Can you not have a Visual Studio solution that includes  
multiple projects with their own repository? Can’t you have your  
automated build system pull both the IronRuby and IronPython projects to  
run the integration tests?

b) DLR has two parts - the “inner ring” that shipped in .NET Framework  
4.0 and the “outer ring”, which hasn’t shipped. Although the outer ring  
is pretty stable there are still many improvements that can/should be  
done. Obviously when you change the DLR you should run tests for both  
languages so that you don’t break anything. Thus IronPython’s test suite  
in the repo is handy. Also, if you change public API in the outer ring  
you might need to change both IronPython and IronRuby. All of this could  
be done in stages across different repos and even source control  
systems, but that’s obviously much more complicated than having it just  
work.

I assumed the DLR was fixed. If that is not the case then shouldn’t the  
DLR should be its own separate git repo as well?

Is size of the repo really an issue? If not, what is?

No, its not the size of the repo, rather the amount of tangental code.  
As someone who hasn’t looked at the code for well over a year, I am  
struck by the amount of orthogonal concerns that are front and center. I  
find it too busy and off-putting as a developer looking to become  
familiar with the code or make a small contribution. I don’t doubt there  
aren’t reasons it is the way it is, just that it can be better if you  
want to really open the floodgates of contributions.

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 10:23am UTC](https://www.ruby-forum.com/t/contributing/197941/17 "2010-10-23T10:23:45Z")

</div>

Jim, Jimmy, Tomas, and Miguel:

Shri used to offer pair programming sessions to people interested in  
helping out with the project. I know at least a few participated, and I  
found it really helpful. Is there any chance of starting this up again?  
I don’t mean for you to necessarily be the ones to do it, but you might  
know some food candidates. This might help onboard people like Mike who  
are interested but unsure where to begin.

Ryan

Sent from my iPhone

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 1:40pm UTC](https://www.ruby-forum.com/t/contributing/197941/18 "2010-10-23T13:40:50Z")

</div>

Well, it’s just the DEBUG constant and a MONO constant.

I’m building with mono trunk, I added the MONO to the ifdef to use the  
Monitor.TryEnter(object) overload that is also used for CLR2. I  
couldn’t just use the CLR2 constant because that broke everything  
else. I’m going to look into adding the Monitor.TryEnter(object,  
bool) overloads to mono proper so this is just temporary.

On Sat, Oct 23, 2010 at 3:19 AM, Tomas M.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Subject: Re: [Ironruby-core] Contributing?
> 
> > the first time it is really hard to just figure out where to start.
> > 
> > > about the following ideas?  
> > > 3)Detachfrom Visual Studio - I’m not on Windows, and I won’t be  
> > > This is similar to separating IronPython into its own repo, but it
> 
> * * *
> 
> Ironruby-core mailing list  
> [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
> [http://rubyforge.org/mailman/listinfo/ironruby-core](http://rubyforge.org/mailman/listinfo/ironruby-core)

–  
Michael L.  
IronRuby MVP

> **[Michael Letterle's Blog ·](https://blog.prokrams.com/)**

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 3:05pm UTC](https://www.ruby-forum.com/t/contributing/197941/19 "2010-10-23T15:05:32Z")

</div>

On Oct 23, 2010, at 1:30 AM, Tomas M.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> I don’t understand how three distinct github repos that I need to map into some  
> directories on my disk whose relative location to each other is hardcoded in some  
> scripts in each are better than a single repo that has a well-defined structure.

You are speaking like someone responsible for both languages and the  
DLR. I’m making a suggestion as someone really only interested in  
IronRuby. The repo isn’t called “DynamicLanguages”, it’s called  
“IronRuby”, which is at best confusing. If only git had some way to  
define a link to another repository as some sort of sub module…

As a Rubyist I’d like to run a rake task to build to each defined target  
and run the RubySpecs. It wouldn’t replace xbuild, just automate it. I  
don’t understand the pushback to this idea. Why not make a dedicated  
repo for IronRuby free of the ancillary projects and geared to someone  
like me? And likewise make the IronPython repo friendly to our Pythonic  
friends?

> The amount of code you need to know depends on the part you contribute to. If  
> you work on IronRuby libraries you don’t need to even look at IronPython. It is  
> indeed better to look there because similar functionality might already be  
> implemented there. For example, if you worked on FFI you might want to check out  
> IronPython’s CTypes and perhaps reuse some code. Why would you need to understand  
> the entire code base if you needed to do a local change? Just don’t look where you  
> don’t need to J. Building IronRuby is also simple – you just run xbuild Ruby.sln  
> from Solution directory. Subsequent builds are incremental, so you don’t even need  
> to build everything if you don’t change core components. I don’t see how this  
> could be any simpler.

Unfortunately I do see how this could be simpler.

---

<div class="post-metadata">

**Author:** ![mike-moscow](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/53a042/32.png) [@mike-moscow](https://www.ruby-forum.com/u/mike-moscow)\
**Post date:** [October 23, 2010, 5:19pm UTC](https://www.ruby-forum.com/t/contributing/197941/20 "2010-10-23T17:19:16Z")

</div>

Maybe it is time to come up with the why’s??

This is how I see the Iron languages.

The languages are built on top of the DLR for Interoperability between  
the languages and  
to Ensure that the DLR offers the basic building blocks for Dynamic  
languages and to the base CLR.  
(be that mono or the CLR now that it is oss)

the Iron languages are built so that a Rubiest will feel comfortable in  
the .net platform or a pythonist for that matter.

But more importantly that the libraries built can be used clr/dlr wide.  
IOW a Ruby library can be used (in theory) by  
a rubiest for sure, but also a pythonist, a c sharper, a Vber, and for  
that matter a Fsharper.

Now to get working on my programming skills so I can contribute in the  
future. took a 17 year diversion into equipment  
repair.

But to me the single most important part of the project is the  
interoperability it offers.

D

From: removed\_email\_address@domain.invalid  
Date: Sat, 23 Oct 2010 06:44:16 -0600  
To: removed\_email\_address@domain.invalid  
Subject: Re: [Ironruby-core] Contributing?

On Oct 23, 2010, at 1:30 AM, Tomas M.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

I dont understand how three distinct github repos that I need to map  
into some directories on my disk whose relative location to each other  
is hardcoded in some scripts in each are better than a single repo that  
has a well-defined structure.  
You are speaking like someone responsible for both languages and the  
DLR. I’m making a suggestion as someone really only interested in  
IronRuby. The repo isn’t called “DynamicLanguages”, it’s called  
“IronRuby”, which is at best confusing. If only git had some way to  
define a link to another repository as some sort of sub module…

As a Rubyist I’d like to run a rake task to build to each defined target  
and run the RubySpecs. It wouldn’t replace xbuild, just automate it. I  
don’t understand the pushback to this idea. Why not make a dedicated  
repo for IronRuby free of the ancillary projects and geared to someone  
like me? And likewise make the IronPython repo friendly to our Pythonic  
friends?

The amount of code you need to know depends on the part you contribute  
to. If you work on IronRuby libraries you dont need to even look at  
IronPython. It is indeed better to look there because similar  
functionality might already be implemented there. For example, if you  
worked on FFI you might want to check out IronPythons CTypes and perhaps  
reuse some code. Why would you need to understand the entire code base  
if you needed to do a local change? Just dont look where you dont need  
to J. Building IronRuby is also simple you just run xbuild Ruby.sln  
from Solution directory. Subsequent builds are incremental, so you dont  
even need to build everything if you dont change core components. I dont  
see how this could be any simpler.  
Unfortunately I do see how this could be simpler.

\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_ Ironruby-core mailing  
list removed\_email\_address@domain.invalid  
[http://rubyforge.org/mailman/listinfo/ironruby-core](http://rubyforge.org/mailman/listinfo/ironruby-core)

[Next page](https://www.ruby-forum.com/t/contributing/197941.md?page=2)
