Originalmente publicado por
caleb
el sentido es que la verdad es que si el kernel estuviera en C++ seria bastante mas facil de desarrollar .. no solo con la STL sino con BOOST además .. y sin contar que hay muchos mas programadores que prefieren C++ a C (oop, stl y boost hacen una diferencia enorme) ...
como dijo eze, kde y qt son excelentes ejemplos .. sin contar que en la mayoria de las industrias grandes ( gaming por ejemplo ) C++ es el estandar para lo que corcho sea que hagas ...
Si, y a veces no hay otra que
en realidad ya no existen meritos para que el kernel de linux este escrito en C y deberia haberse portado o haber dejado que se escriban modulos en C++ desde hace unos cuanto años ya ...
Lo malo es que el kernel de Linux, es de Linus .. y el decide =P ... a lo Pat .. "benevolent dictator" que le dicen ...
EDIT: Me olvidaba .. encima C++ usa templates .. =P
Totalmente de acuerdo, si el kernel estuviera en C++ seria mucho mas facil desarrollar, y mucho mas comodo. Creo que cualquiera que ha desarrollado para el kernel de Linux se ha encontrado con la porqueria de nombres de las funciones... cosa que en C++ se puede evitar con sobrecarga, namespaces, plantillas, OBJETOS !!!! y eso por nombrar lo mas bobo que se me ocurrio.
Desde luego, todo lo que haga con C++ tambien lo puedo hacer en Ensamblador si quiero... pero bueno... nadie haria eso. Ademas, C++ tiene facilidades de lenguajes de alto nivel pero al mismo tiempo es una poderosa arma de bajo nivel; yo mismo tengo hecho un pequenio sistemita en C++ y la verdad que cuando le agarras la mano es una masa tener un arma tan poderosa a tu disposicion, los unicos incovenientes pueden venir por el lado de RTTI y manejo de excepciones, pero nadie te obliga a utilizar eso... y tampoco nadie te obliga a no implementar un framework xDDD.
Y eso es poco y nada, he visto kernels/sistemas operativos hechos en Python, Java y C# (un proyecto de investigacion de Micro$oft), desde luego que por ahora yo no los utilizaria para desarrollo de cosas de bajo nivel a ninguno de esos, pero es una demostracion de que son cada vez mas factibles. De hecho hace relativamente poco llego un mail a la lista de desarrolladores de Hurd que hablaba sobre hacer "translators" (un "driver" entre comillas :P) en Java, y de hecho, actualmente se pueden hacer en Perl... en particular Hurd esta bastante verde, pero a lo que voy es que no me parece bien fanatizarse con C y descalificar a C++, es un poderoso lenguaje y podria ser muy util en el kernel o en desarrollo de modulos.
De todas formas lo que causo mi reaccion no fue otra cosa que la actitud de Troll que tuvo al descalificar ese lenguaje de programacion. Podria ser un poquito mas abierto... creo que favoreceria un poco mas el avance... que se yo... quizas hoy Linux seria un microkernel hecho en C++... vaya uno a saber... :P (no digo que prefiera un microkernel, pero desde un punto de vista arquitectonico es mas elegante)
Y como bien dijiste, en la industria del gaming es TODO C++.
Saludos.
P.D: Disculpen acentos y caracteres raros, estoy en la compu de mi viejo y tiene el teclado en ingles....