# Ruby on windows

**URL:** <https://www.ruby-forum.com/t/ruby-on-windows/131593>\
**Category:** Ruby\
**Created:** [March 11, 2008, 6:23pm UTC](https://www.ruby-forum.com/t/ruby-on-windows/131593 "2008-03-11T18:23:22Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![t3chn0n3rd](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e36b37/32.png) [@t3chn0n3rd](https://www.ruby-forum.com/u/t3chn0n3rd)\
**Post date:** [March 11, 2008, 6:23pm UTC](https://www.ruby-forum.com/t/ruby-on-windows/131593/1 "2008-03-11T18:23:22Z")

</div>

right now I am running ruby on red hat 8. Is there a compiler for  
windows vista?

---

<div class="post-metadata">

**Author:** ![t3chn0n3rd](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e36b37/32.png) [@t3chn0n3rd](https://www.ruby-forum.com/u/t3chn0n3rd)\
**Post date:** [March 11, 2008, 6:47pm UTC](https://www.ruby-forum.com/t/ruby-on-windows/131593/2 "2008-03-11T18:47:49Z")

</div>

On Tue, Mar 11, 2008 at 6:14 PM, t3chn0n3rd [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> right now I am running ruby on red hat 8. Is there a compiler for  
> windows vista?

There are interpreters for all Windows plattform, yes. Some WinAPI  
libraries might not work though

---

<div class="post-metadata">

**Author:** ![t3chn0n3rd](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e36b37/32.png) [@t3chn0n3rd](https://www.ruby-forum.com/u/t3chn0n3rd)\
**Post date:** [March 12, 2008, 3:09am UTC](https://www.ruby-forum.com/t/ruby-on-windows/131593/3 "2008-03-12T03:09:53Z")

</div>

t3chn0n3rd wrote:

> right now I am running ruby on red hat 8. Is there a compiler for  
> windows vista?

If by “compiler” you mean “interpreter,” then yes. Google  
“ruby+windows”. If by “compiler” you mean “a thing that turns Ruby code  
into object code,” then no. There are no Ruby compilers. If you mean  
something else, please clarify.

---

<div class="post-metadata">

**Author:** ![t3chn0n3rd](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e36b37/32.png) [@t3chn0n3rd](https://www.ruby-forum.com/u/t3chn0n3rd)\
**Post date:** [March 13, 2008, 1:53pm UTC](https://www.ruby-forum.com/t/ruby-on-windows/131593/4 "2008-03-13T13:53:11Z")

</div>

On 12 Mar 2008, at 01:58, Tim H. wrote:

> t3chn0n3rd wrote:
> 
> > right now I am running ruby on red hat 8. Is there a compiler for  
> > windows vista?
> 
> If by “compiler” you mean “interpreter,” then yes. Google “ruby  
> +windows”. If by “compiler” you mean “a thing that turns Ruby code  
> into object code,” then no. There are no Ruby compilers. If you mean  
> something else, please clarify.

Except the one in jruby. oh and rubinius (is that working yet?). Oh  
and 1.9.

😉

---

<div class="post-metadata">

**Author:** ![t3chn0n3rd](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e36b37/32.png) [@t3chn0n3rd](https://www.ruby-forum.com/u/t3chn0n3rd)\
**Post date:** [March 13, 2008, 2:05pm UTC](https://www.ruby-forum.com/t/ruby-on-windows/131593/5 "2008-03-13T14:05:26Z")

</div>

t3chn0n3rd wrote:

> right now I am running ruby on red hat 8. Is there a compiler for  
> windows vista?

I have several ruby-on-rails projects that run on Windows XP 32-bit and  
run the same on Linux 64-bit. So yes, they’re compatible.

Uh, they run ‘the same’ with the exception that the faster hardware runs  
it faster, of course.

---

<div class="post-metadata">

**Author:** ![t3chn0n3rd](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e36b37/32.png) [@t3chn0n3rd](https://www.ruby-forum.com/u/t3chn0n3rd)\
**Post date:** [March 13, 2008, 2:23pm UTC](https://www.ruby-forum.com/t/ruby-on-windows/131593/6 "2008-03-13T14:23:34Z")

</div>

James T. wrote:

> On 12 Mar 2008, at 01:58, Tim H. wrote:
> 
> > t3chn0n3rd wrote:
> > 
> > > right now I am running ruby on red hat 8. Is there a compiler for  
> > > windows vista?
> > 
> > If by “compiler” you mean “interpreter,” then yes. Google “ruby  
> > +windows”. If by “compiler” you mean “a thing that turns Ruby code  
> > into object code,” then no. There are no Ruby compilers. If you mean  
> > something else, please clarify.
> 
> Except the one in jruby. oh and rubinius (is that working yet?). Oh  
> and 1.9.
> 
> 😉

I knew somebody would quibble. That’s why I specified “a thing that  
turns Ruby code into object code.” Neither JRuby nor YARV is turns Ruby  
code into object code. VM instructions, yes. Object code, no.

---

<div class="post-metadata">

**Author:** ![t3chn0n3rd](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e36b37/32.png) [@t3chn0n3rd](https://www.ruby-forum.com/u/t3chn0n3rd)\
**Post date:** [March 13, 2008, 8:13pm UTC](https://www.ruby-forum.com/t/ruby-on-windows/131593/7 "2008-03-13T20:13:09Z")

</div>

C and assembler run directly on the hardware. Sometimes in user mode,  
sometimes in kernel mode. Sometimes with an extensive run time library,  
sometimes without.

I suppose you could call virtual memory a ‘VM’, but few do. And neither  
C nor assembler require virtual memory underneath.

James T. wrote:

> Most code that you will ever write (including C or any form  
> of assembler to run under an operating system (any of the 6 most  
> common OSes), runs inside a virtual machine).

---

<div class="post-metadata">

**Author:** ![t3chn0n3rd](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/e36b37/32.png) [@t3chn0n3rd](https://www.ruby-forum.com/u/t3chn0n3rd)\
**Post date:** [March 13, 2008, 5:21pm UTC](https://www.ruby-forum.com/t/ruby-on-windows/131593/8 "2008-03-13T17:21:05Z")

</div>

On 13 Mar 2008, at 13:24, Tim H. wrote:

> > > something else, please clarify.
> > 
> > Except the one in jruby. oh and rubinius (is that working yet?). Oh  
> > and 1.9.
> > 
> > 😉
> 
> I knew somebody would quibble. That’s why I specified “a thing that  
> turns Ruby code into object code.” Neither JRuby nor YARV is turns  
> Ruby  
> code into object code. VM instructions, yes. Object code, no.

I don’t really want to argue, but I do feel it’s important to point  
this out. Most code that you will ever write (including C or any form  
of assembler to run under an operating system (any of the 6 most  
common OSes), runs inside a virtual machine). Whilst some or even most  
of the instructions may run directly on the processor, there are many  
layers of indirection providing a genuine virtual machine experience.  
That is, memory management, scheduling, memory access security, and so  
on and so forth. Many C heads (of which I am actually not one) will  
tell you that “most C code is written for a virtual machine on any  
modern OS”.

Now if you want to get 1 step closer to the processor, and this is  
your definition (of object code), that’s fine, but there are often no  
genuine benefits to doing so, by comparison to what becomes available  
expanding the size (or more specifically capability) of the VM you run  
on. Start up time aside, it’s relatively well known that Java is  
starting to push these boundaries.

The real gain that businesses see to ‘object code’ is that it is very  
hard to ‘steal implementation code’ from ‘object code’. This is partly  
a product of optimization and of the effective (co-incidental)  
obfuscation of the code. According to some of the Jruby folks, it’s  
very hard indeed, to get ‘implementation code’ from jruby compiled  
classes.

Moreover, I’m not sure it’s practical, or even entirely possible, to  
implement ruby without at least some ‘VM’ style code running in the  
background, even under an attempt to make that all static, stateless  
code. I’d like to be proven wrong, though.

As I say, I don’t want to argue on the definition of object code. We  
probably share different opinions. This is just mine, and I’m happy to  
discuss it, but not to argue. 🙂
