Login Barrapunto
Ximian prepara Mono, la alternativa libre a MS.NET
Desde que se presentó Microsoft .NET dentro de la comunidad del software libre se ha ido analizando como podría afectar esta plataforma al futuro del
software libre y preparando una respuesta. En esta línea Ximian liberó una versión de SOAP para su uso desde C, SOUP, un primer paso para integrar el entorno GNOME con entornos SOAP. Pero .NET va bastante más allá y desde Advogato, nos hablan del proyecto Mono, que será anunciado el próximo Lunes por Ximian y que pretende ser una respuesta a MS.NET. ¿Qué nos deparará el futuro de las arquitecturas distribuidas?
Este hilo ha sido archivado.
No pueden publicarse nuevos comentarios.
Ximian prepara Mono, la alternativa libre a MS.NET
|
Log in/Crear cuenta
| Top
| 25 comentarios
| Buscar hilo
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.

Un poco offtopic pero bueno...
(Puntos:1, Interesante)Hace poco hice una busqueda en el google y encontre esto:
http://gcc.gnu.org/ml/gcc/2001-02/msg00895.html
Un pavo ya lo ha hecho (el port a jvm), y ha discutido con Stallman el tema. A RMS no le gusta, transcribo:
> If it is possible to compile languages such as
> C into Java byte codes, I see a great danger. > The danger is that people will use Java byte
> codes to hook GCC up to proprietary back ends > and proprietary front ends. They could also
> generate Java byte codes, run a proprietary
> optimizer, and feed the result back into GCC. > In effect, the support for Java byte codes
> would undermine the goals of the GPL.
No tengo mucho tiempo para traducir ahora, pero viene a decir que el port hace peligrar los motivos de la GPL, por eso seguramente no esta incluido ni previsto en el gcc. No lo acabo de ver, alguien puede desmenuzar mas el tema?. Mereceria la pena un fork viendo las ventajas de un port a la jvm?
Re:Un poco offtopic pero bueno...
(Puntos:2)( http://barrapunto.com/ )
De todas formas, si que conozco compliadores de otros lenguajes (prolog?, eiffel?) que tienen como un destino posible instrucciones jmv.
Pero que se compile C a jmv no significa que se disponga de todas las ventajas de Java ni que pueda acceder a las funciones de la libreria de Java. Son cosas muy distintas.
En cuanto a la opinion de RMS, no me ha quedado clara para nada. Por mas que leo y releo no se que quiere decir.
Tu eggues muy malo, tu siemfprre negatiffo, nunca positiffo
Re:Un poco offtopic pero bueno...
(Puntos:1)( Última bitácora: Lunes, 19 Abril de 2010, 14:32h )
En otro artículo ( no tengo el enlace a mano ) que puse en BP conté la historia del colega mio que hizo un traductor de Object Pascal a bytecode, que podía utilizar todas las clases Java, llegando a hacer applets en Pascal..
En principio, si te dispones a hacer un traductor de C++ a bytecode, sabes que tendrás que atenerte a las consecuencias... sobre todo a las restricciones impuestas por la filosofía del entorno Java. ¿Posible? Yo creo que si. Pero no va a ser un C++ corriente... será una especie de hermano bastardo adaptado a las circunstancias... con sus ventajas y sus inconvenientes...
Más de mil biberones en tres meses... ¡casi ná!
Re:Un poco offtopic pero bueno...
(Puntos:2)( http://barrapunto.com/ )
Bueno, ahi ya vamos mal, en Java no hay enlazador, hay cargador de clases.
Desde luego una interaccion C++-libreria Java no tiene que ser imposible, pero seguramente solo sea facil en casos triviales. Por ejemplo, un objeto C++ no deriva de Object, no tiene el mismo tipo de RTTI que Java, no existe el concepto de interfaz. La libreria java suele esperar objetos "tipo java" como parametro, no tipos elementales.
Por supuesto todo esto se puede implementar o apañar de alguna forma en C++, pero me temo que al final tendriamos un C++ sospechosamente parecido a Java, no portable.
En cuanto el articulo que citas, no aporta muchas novedades. Java se diseño con la seguridad y estabilidad en mente (otra cosa es que lueo falle), y una de las posibilidades es que aunque Java (lenguaje) no permita hacer "cosas feas", un programa escrito en otro lenguaje sobre JVM si podria hacerla. Por ello se evitaron a proposito ciertas instrucciones tipicas de codigo maquina.
Esto no obliga a usar Java (lenguaje) sobre Java (plataforma). Seguramente la mayor parte de lenguajes de alto nivel pueda sobrevivir sin estas instrucciones. Pero C y C++ emplea manipulaciones directas en memoria que hora estan prohibidas.
Por ello me temo que Sun ve el no soporte a C (y similares) como una "feature" (caracteristica positiva) y no un bug. La comunicacion con C y compañia se hara con CORBA y mecanismos similares, si no me equivoco.
Es logico, por otra parte,que microsoft tenga soporte a C++ en NET, ya que la mayor parte de los programas de M$ estan hechos en C++. Lo contrario seria un suicidio.
Por cierto, el hombre este del articulo no distingue entre freeware y free source.
Tu eggues muy malo, tu siemfprre negatiffo, nunca positiffo
Re:Un poco offtopic pero bueno...
(Puntos:2)( http://chemaper.blogspot.com/ )
La idea es la contraria, compila java y bytecodes a código nativo. Implementa el recolector de basura y buena parte de la librería estándar de Java. Lamentablemente RMI es una de las partes que aún no está portada.
Con gcj puedes mezclar código de Java con C++, internamente las clases de Java se implementan como las de C++ y está documentado como hacer llamadas de uno a otro, pasarse datos y manejar temas como las excepciones.
La máquina virtual supone una sobrecarga potente, la única ventaja que la veo insustituible sobre el código compilado son los administradores de seguridad para implementar una sandbox.
Las objeciones de Stallman me parecen muy razonables. Las implementaciones libres de máquinas virtuales y sobre todo de la biblioteca de clases van muy por detrás de la de Sun. Estaríamos desarrollando no para GNU/Linux, sino para una plataforma propietaria de Sun que funciona sobre varias plataformas, entre ellas GNU/Linux.
Además si escribo código para que se ejecute en una máquina virtual con la biblioteca de clases de Java, no veo útil utilizar como lenguaje C en lugar de Java, si no voy a obtener sus ventajas de rendimiento: es más natural usar Java. Con gcj en cambio programas en Java la parte que use la biblioteca de clases de Java y en C la que utilice bibliotecas de C.
Re:Un poco offtopic pero bueno...
(Puntos:2)( http://barrapunto.com/ )
Tu eggues muy malo, tu siemfprre negatiffo, nunca positiffo
Re:Un poco offtopic pero bueno...
(Puntos:2)( http://barrapunto.com/ )
La de Sun es una implementacion minima,pero hay buenos ORB libres para C++ y Java. Tambien hay recolectores de basura para C++, y la STL es una buena coleccion de objetos.
Lo unico que no tiene C++ es una biblioteca grafica standard, tipo Swing.
En cuanto a gcj, no es el unico compilador de java a codigo nativo. Existen varios compiladores comerciales con la misma idea. Eso si, todos fallan a la hora de hacer aplicaciones graficas, estan orientados a servidores y sistemas empotrados.
En realidad, hacer gcj es sencillo, ya que java se parece bastante al Objetive C, que es soportado desde hace tiempo por gcc.
Lo que es una labor de chinos es clonar la libreria standard de Java soft libre, entre otras cosas por que Sun esta sacando nuevas API y extensiones constantemente.
Las objeciones de Stallman me parecen muy razonables. Las implementaciones libres de máquinas virtuales y sobre todo de la biblioteca de clases van muy por detrás de la de Sun. Estaríamos desarrollando no para GNU/Linux, sino para una plataforma propietaria de Sun que funciona sobre varias plataformas, entre ellas GNU/Linux.
Por la misma regla de tres, estariamos desarrollando para la plataforma Intel, o la plataforma Sun Sparc, o en la plataforma PA Risc, ninguna de las cuales es libre ni por asomo.
Me hacen gracia ciertas cosas. Se "puede" desarrollar un program GPL para Windows en Visual Basic, propietario por entero, pero no en Java, ya que de momento falta alguna libreria. Curioso, curioso...
Tu eggues muy malo, tu siemfprre negatiffo, nunca positiffo
Eiffel a JVM
(Puntos:1)( http://barrapunto.com/tags/restalman | Última bitácora: Jueves, 12 Abril de 2018, 20:25h )
La última vez que hablamos de .NET ya enlacé a una página con 130 lenguajes que compilaban más o menos para la JVM.
Lo que he vist hoy es que en 1997 hubo un proyecto para compilar Eiffel en la JVM hecho por gente del Microsoft Research Institute de una universidad australiana.
__
Comprare è combattere.
Recogida de basura en C++
(Puntos:2)( http://barrapunto.com/tags/restalman | Última bitácora: Jueves, 12 Abril de 2018, 20:25h )
De estos, sé que existen pero no sé de ningún programa conocido que los use. ¿Algún ejemplo? ¿No se usa porque no viene de fábrica o hay otras razones?
__
Comprare è combattere.
Títulos alternativos
(Puntos:2, Divertido)( http://barrapunto.com/tags/restalman | Última bitácora: Jueves, 12 Abril de 2018, 20:25h )
Aunque la mona se vista de seda,...
__
Comprare è combattere.
Managed Extensions
(Puntos:2)( http://barrapunto.com/tags/restalman | Última bitácora: Jueves, 12 Abril de 2018, 20:25h )
__
Comprare è combattere.
una idea excelente
(Puntos:1)( http://www.orcero.org/irbis/ )
Otro problema es que al Ajatolah no le guste el projecto, y solo los proyectos más fuertes -como KDE o el fork del gcc- consiguen sobrevivir a la ira del Ajatolah.
Solucion
(Puntos:1, Informativo)Re:Un poco offtopic pero bueno...
(Puntos:2)( http://quie.blogalia.com/ )
Bueno... Esto es discutible. Una de las "features" que destacan los defensores de Java con respecto a la herencia del lenguaje es que lo han simplificado (respecto a, por ejemplo, C++), en que no hay herencia múltiple.
Sin embargo, la funcionalidad de una interfaz es sospechosamente la misma que aporta una clase abstracta (con métodos virtuales puros), de manera que se puede reproducir un modelo de jerarquía tipo Java (se hereda de una clase normal, y 0 o más interfaces), en C++ sin gran problema.
Las dos diferencias
(Puntos:2)¿Algo más útil? Java es lo mejor para programar que tenemos hoy en día. Con diferencia.
Java es lo peor para programar que tenemos hoy en día. Con diferencia.
Hacer eso disponible sería lo mejor que Ximian, Red Hat, IBM o cualquiera podría hacer por Linux.
Hacer eso disponible sería lo peor que Ximian, Red Hat, IBM o cualquiera podría hacer por Linux.
Re:Un poco offtopic pero bueno...
(Puntos:2)( http://chemaper.blogspot.com/ )
Hombre, no es lo mismo, en un caso hablamos de software y en el otro de hardware. El problema con la JVM es que es en sí misma una plataforma y que controla un sólo fabricante, con todos los riesgos que conlleva. Ahora Sun da muy buen soporte a GNU/Linux (aunque sólo para plataformas Intel), de hecho creo (aunque no estoy seguro) que uno de los últimos SDK salió antes para Linux que para Solaris/Sparc, pero no siempre ha sido así de guay ni tiene por qué serlo en el futuro. Puede que Sun un día vuelva a ser la empresa que se negó a dejar publicar una foto de unas Sparc en la Linux Journal porque "Linux es un rival de Solaris".
>Me hacen gracia ciertas cosas. Se "puede" desarrollar un program GPL para Windows en Visual Basic, propietario por entero, pero no en Java, ya que de momento falta alguna libreria. Curioso, curioso...
Yo no he dicho nada de eso y que yo sepa tampoco Stallman ni nadie de la Free Software Foundation. De hecho en www.gnu.org hay una sección de Java y en lo que se refiere a mí he escrito varios programas en Java bajo licencia GPL. Eso no impide que muchos pensemos que el que Java no sea libre es un problema. Y que mientras está bien que GNU/Linux tenga un muy buen soporte para Java, pues tiene muchos usos interesantes y un papel importante en las empresas, no es buena idea orientar el futuro de los desarrollos libres hacia la JVM. Aparte que Java tampoco es la solución para todo: sería estúpido implementar todos los programas de un escritorio sobre Java o código de bytes.
Re:Un poco offtopic pero bueno...
(Puntos:2)( http://icewinddale.blogspot.com/ | Última bitácora: Jueves, 30 Enero de 2014, 23:34h )
No veo mucho sentido en eso que dice Stallman. Creo que puede hacerse ya sin necesidad de usar jvm. El gcc tienen una representación interna en un lenguaje de transferencia de registro (RTL). Nada impide usar un volcado de ese RTL contra un programa que llame desde el gcc y que sea propietario (es un ejecutable distinto). Haces modificaciones al gcc para que en el punto que te interese llames a ese optimizador propietario sobre el RTL y asunto concluido. Las modificaciones GPL y lo otro es "programa aparte".
Además que una cosa no esté incluida en el gcc no significa que no se pueda hacer, porque cualquiera puede iniciar su propia rama con estas cosas.
Pero si realmente lo de portar a jvm es una ventaja tecnológica, creo que se puede hacer, ya te digo, la excusa de la GPL no me parece muy válidad: se puede hacer ya de por sí, sin necesidad de ella
-- icewinddale.blogspot.com [blogspot.com]