Informática en general > Dudas informáticas
'escala' De Los Lenguajes De Programación
x.cyclop:
--- Cita de: "JuanK" --- Si tiene:
--- Citar ---El lenguaje C fue inventado e implementado en una máquina Unix, por Dennis Ritchie, en los años 70. C fue "sucesor", por así decirlo, de un lenguaje llamado B, que a su vez descendía de otro llamado BCPL. Tras muchos años de ser un lenguaje sin reglar, en el verano de 1983 se decide formar un comité para crear el stándar ANSI (Instituto Nacional Americano de Estándares) y así formalizar el lenguaje. Pero, este proceso, no fue nada corto. 6 años después, por fin sale el stándar ANSI del lenguaje C, en diciembre de 1989, comenzando a comecializarse a partir de los 90. El stándar, también fue reconocido y aceptado por la ISO (Organización Internacional de Stándares). Cuando hacemos referencia a ese standar, solemos hablar de C89. En 1995 C89 se amplía con con varias funciones y se asientan las bases de lo que más tarde sería C++. Con el desarrollo de este nuevo lenguaje, C quedó algo apartado, pero en 1999 se definió otro stándar, el C99. C99 era prácticamente el stándar C89, si bien con funciones y bibliotecas nuevas y algunas características innovadoras.
Indistintamente, en nuestros artículos y programas utilizaremos los dos stándares, si bien hay que tener cuidado con C99, pues puede que algunos compiladores no lo acepten. Por ello, te recomiendo tener un compilador actualizado, que sea capaz de reconocerlo. Esta tarea no es difícil, buscar un poco en internet y listo De todas formas, sólo utilizaremos algunas cosillas propias de C99; como has visto éste se basa en C89.
--- Fin de la cita ---
mas info:
http://en.wikipedia.org/wiki/C_programming_language#History
--- Fin de la cita ---
Eso ya se. :P Me refería a que por ej. C# no es una versión de C...
--- Cita de: ""JuanK"" ---Cuando lo pruebes vuelve a postear, a mi en mis pruebas me ha salido mucho menor.
--- Fin de la cita ---
En Windows Vista... :P
Yo digo en XP, allí es donde consume lo mismo que el JVM.
--- Cita de: ""JuanK"" ---Se le agregan algunas palabras reservadas y no se que mas vainas para que pueda funcionar.
--- Fin de la cita ---
Y le quitan lo "difícil" (¿punteros?...). :whistling:
JuanK:
--- Cita de: "X.Cyclop" ---
--- Cita de: ""JuanK"" ---Cuando lo pruebes vuelve a postear, a mi en mis pruebas me ha salido mucho menor.
--- Fin de la cita ---
En Windows Vista... :P
Yo digo en XP, allí es donde consume lo mismo que el JVM.
--- Fin de la cita ---
En lo del rendimeinto hablo de Xp, aunque supongo que tambien es variable de acuerdo a la aplicacion que se este usando.
--- Citar ---
--- Cita de: ""JuanK"" ---Se le agregan algunas palabras reservadas y no se que mas vainas para que pueda funcionar.
--- Fin de la cita ---
Y le quitan lo "difícil" (¿punteros?...). :whistling:
--- Fin de la cita ---
Los punteros no son dificiles, lo dificil es no cometer errores de runtime por culpa de ellos.
adicional a eso una sintaxis mas clara, una implementacion de POO mas limpia, una sana costumbre de no nombrar las APIS o los componentes con nombres obsoletos, el uso de namespaces, comprobacion de tipos seguros en tiempo de compilacion, el garbage collector, y muchas otras cuialidades del lenguaje que no existen en C++ como por ejemplo los indexers, los properties, los atributos, los delegados, la implementacion nativa de safe threads etc.
Eternal Idol:
--- Cita de: "JuanK" ---A mi modo de verlo es el mismo principio de C++, pues asi sea para usar la API esta usando Dlls que le hacen el trabajo duro, solo que los lenguajes cada vez usan mas dll para que les haga el trabajo duro.
Finalmente esas dll (digamos las de la api) son del sistema operativo y para eso se hicieron los sistemas operativos, para crear una abstraccion de la maquina y asi ghacerla mas sencilla para el programador y ahi vamos con C#, java, etc... ahora el framewoek metido en el sistema operativp y en el caso de java ya lo estan metiendo tambien en los sistemas operativos ( Solaris? ubuntu? no se pero algo ohi) y en el firmware en el caso de los moviles... :whistling:
--- Fin de la cita ---
No estoy de acuerdo ya que en C/C++ tenes la POSIBILIDAD de usar la API del S.O. mediante en una DLL pero tambien podes "hablar" con el Kernel ya que no tenes una verdadera dependencia de una libreria externa que haga tu inicializacion (es muy facil desprenderse de la RTL y en esta misma pagina hay un par de articulos sobre como hacer una propia) y te provea toda tu funcionalidad. La versatilidad de C/C++ te permite hacer un modulo de modo Kernel que no depende en lo absoluto del S.O. (obviamente seria una abominacion escrita en inline assembly).
Eternal Idol:
--- Cita de: "JuanK" ---adicional a eso una sintaxis mas clara, una implementacion de POO mas limpia, una sana costumbre de no nombrar las APIS o los componentes con nombres obsoletos, el uso de namespaces, comprobacion de tipos seguros en tiempo de compilacion, el garbage collector, y muchas otras cuialidades del lenguaje que no existen en C++ como por ejemplo los indexers, los properties, los atributos, los delegados, la implementacion nativa de safe threads etc.
--- Fin de la cita ---
Los namespaces existen en C++, el garbage collector se puede implementar con bastante facilidad (eso no quiere decir que nos resulte util su funcionalidad comparada con su perdida de rendimiento ver Smart Pointers de cualquier manera). Muchas de las cualidades que nombras se pueden implementar (ver Boost http://en.wikipedia.org/wiki/Boost_library) y otras muchas mas vendran con el nuevo standard (ver http://en.wikipedia.org/wiki/Technical_Report_1) como pueden ser tablas hash o expresiones regulares.
¿Es esto realmente necesario para el lenguaje? Yo diria que no, util es, pero no es necesario. C++ no es una caja cerrada sino todo lo contrario, lo que no hay se puede implementar a mano sin ningun tipo de problema.
su -:
--- Cita de: "SteelX" ---Java es muy utilizado en estos momentos, 1 es licencia gpl, es multiplataforma y las universidades ven esto como una ventaja. ademas fue pensado para dispositivos ubicuos(portables) y ultimamente se han propagado en sistemas como celulares y pda,s etc. su desventaja .. interprete: eso lo hace mas lento que los otros.
--- Fin de la cita ---
Perl es multiplataforma, es Artistic license, puede ser usados en dispositivos tales como PDAs, moviles, etc.
Ventajas:
interprete: tine un muy buen debbuger, no es tan lento como el de Java/Ruby
Tiene tiempo de desarrollo.
Puede correr otros lenguajes tales como Java, C/C++, ASM, Pacal, Prolog, Awk, PHP...
Desventajas:
Los programadores: Perl tiene multiples variables, tales como Pugs o Parrot (implementaciones de maquina virtual, incluso del lenguaje mismo) pero clara mente los programadores se alejan un poco de la historia y se declinan a lo "nuevo es lo mejor".
Complejidad: Perl puede ser tan complejo que hay modulos que pueden tener su propia sintaxis (claro el estereotipo es muy equivalente) y esto mas peresa == (eq) desastre...
Pero como tiene tan buen debbuger el bien te dira que pasa, incluso en casos muy logicos te deice que te falto semicolon ( o como se escriba, no me suele pasar).
:whistling:
Navegación
[#] Página Siguiente
[*] Página Anterior
Ir a la versión completa