elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [17] 18 19 20 21 22
161  Seguridad Informática / Análisis y Diseño de Malware / Re: Concurso Mayo: CoreWar (Apuntate!!!) en: 29 Abril 2010, 15:24 pm
Sería mucho pedir algun ejemplo?  :rolleyes:
162  Seguridad Informática / Análisis y Diseño de Malware / Re: Concurso Mayo: CoreWar (Apuntate!!!) en: 28 Abril 2010, 23:39 pm
Yo jugaba a ese grandioso juego!!! aunque ya estaba muerto(no, no tengo 60 años  ;D), nadie quería jugar conmigo. Había piezas muy ingeniosas.

Aunque parece una locura, pero me gusta la idea.

Sólo un pero, en CW había una igualdad de condiciones, aquí como se garantiza eso? creo que el que primero mueva tiene mucha ventaja, vale tiene que dejar mover al otro, pero entonces el otro tiene ventaja, con hacerse con el sistema... no se cual tiene ventaja pero uno seguro. Por ejemplo, me hago con el sistema, cambio todas las llamadas de sistema a mis propias llamadas en cuanto llame el otro para intentar saltar a modo privilegiado pum!... mmm estoy dando ideas xD no me apuntes pero quizá haga algo!
163  Programación / Programación General / Re: Lenguajes de programacion mas modernos! en: 28 Abril 2010, 23:07 pm
Tienes razón, no debe ser un java vs. C#, pero podía salir ya que preguntaba por lenguajes modernos. Lo siento.

Lo cierto es que retomando el tema, .net aporta mucho más sobre lenguajes modernos(en número) que en la jvm. F# siendo una copia que no inventa nada nuevo sigue siendo una buena opción y quizás hasta buena oportunidad de introducirse en la programación funcional, aunque te advierto que este tipo de programación tiene una curva de aprendizaje bestial. No os creáis, lo critico pero a la vez lo tengo instalado :xD

Antes no te lo mencioné, pero mercury es un nuevo prolog, aunque ya tiene unos añitos y no ha tenido mucho tirón.

Si es que un lenguaje puede ser moderno con 20 años, porque ellos mismos siguen en evolucion, ya ves con java 6 o C++0x

Hay lenguajes muy antiguos con ideas realmente modernas... y los hay muy modernos con ideas muy gastadas

Yo sigo recomendándote scala ;)
164  Programación / Programación General / Re: Lenguajes de programacion mas modernos! en: 28 Abril 2010, 21:31 pm
F# = Haskell con sintaxis Ocaml para .net, que no hay nada revolucionario hombre, ese concepto es un invento de Apple para vender más. Si ya está todo inventado, nada nuevo bajo el sol, todo está basado en otra cosa.  :xD

Además creo que Java > .net, porque? cual es el sentido de una máquina virtual que enlentezca los programas? que sea multiplataforma, pero .net no se desarrolla por sus fabricantes en algo que no sea windows. Lo unico que tiene bueno es la interoperabilidad de lenguajes, y la multiplicidad que hay(java supongo que permite igual pero no han sacado tantos)

Ademas, lo de C# no sé de donde viene pero C# se parece al C lo que un perro a una lechuga, los 3 principios de C están rotos en C#, flexibilidad, portabilidad y eficiencia

P.D.: F# = Haskell me refiero a que copia de él, ya quisiera F# ser tan bueno como Haskell
165  Programación / Programación C/C++ / Re: [C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes en: 28 Abril 2010, 21:07 pm
Las string de C desde siempre fueron un punto flaco del lenguaje yo lo consideraría incluso error de diseño garrafal, no lo dije antes porque no encontré el link donde lo había leído, pero se puede razonar, son fuente de bugs explotables, y realmente ineficientes(sin posibilidad de evolucionar ni repararse dado que expone directamente el acceso a su representación interna, aunque esto tenia que ser así por la filosofía en sí del mismo lenguaje), realmente ineficientes me refiero a que concatenar y calcular la longitud son O(n) pudiendo ser en casi cualquier otra implementación O(1) esto es un orden de magnitud y son unas operaciones muy comunes, de hecho casi ningún lenguaje posterior siguió esta senda.
Hasta son poco flexibles y engorrosas.

Mira, y eso que dices de que pueden evolucionar no es verdad, piénsalo, no pueden evolucionar, jamás podrán ser buenas, porque si pudieran serlo ya se habría arreglado y créeme que muchos se han tirado y tiran de los pelos por ellas. Han costado mucho dinero ya.

Ahora bien, alguna ventaja tendrán, y encima es lo que el lenguaje da más facilidades para usar, siempre hay que partir de una no? porque no hay literales para objetos string.

Como ventajas te doy sencillez de uso, si no me equivoco hay mas operaciones estandar para trabajar con arrays de caracteres que con strings. Además los literales son arrays de char, y la entrada salida creo que tambien ergo siempre se parte de un array de chars.
Sencillez de implementacion, estructura interna sencilla de comprender
Cierto polimorfismo primitivo, las operaciones con arrays sirven para ellas, aunque esto solo vale para indexado y reasignacion, los arrays no tienen mas operaciones. Bueno y diferencia. Y memcpy, etc xD y algunas más
Son más eficientes con cadenas pequeñas que los string, que tienen más sobrecarga en las operaciones(debido a una estructura interna mas compleja)

Que rollo, en conclusión, para un ejercicio está de p**a madre como lo has hecho
, pero hay que tener todo eso en cuenta a veces

P.D.: Si alguien me recuerda el link donde decía el error de diseño de los strings C se lo agradecería  :)
166  Programación / Programación C/C++ / Re: [DUDA] Adición de librerías en: 28 Abril 2010, 16:31 pm
Por norma general NO incluye todas las librerías, de una librería sacas libros independientes, o sea funciones. Incluye TODAS las funciones en compilación(declaraciones), pero en linkado(ejecutable final) solo mete las que uses(y dependientes), por eso las librerías son objetos especiales, no simples .obj, sino que son colecciones de simbolos indexados o algo así.

@Littlehorse: es error-prone :P

Por otra parte puedes implementarlas, a veces es util y otras necesario, a veces se necesitan implementaciones ligeras(uClib) otras reimplementaciones (cualquier nuevo sistema operativo necesitará cambios en las llamadas al sistema), mas eficientes(hay multitud de librerias para gestion de heap(malloc/free), smartpointers). Yo hice una vez mi propio new delete, para debuguear memory leaks. Y también es sabido que una de los mayores cuellos de botella fácilmente optimizables son precisamente en la gestión de memoria dinámica(sólo daros cuenta que la implementación que te dan es genérica y debe servir para todos más o menos, pero tú en tu programa tienes más información de como se usa la memoria pues puedes adaptarlo, especializarlo a tí haciendolo más rápido, evitando congelamientos a veces para no desmejorar la inmediatez de la respuesta(que raro suena esto, no recuerdo como era en inglés xD))
167  Programación / Programación C/C++ / Re: [C++] [ESTRUCTURAS] Sistema de manejo de datos de clientes en: 28 Abril 2010, 16:09 pm
string sí es estándar, sólo eso
168  Programación / Programación General / Re: Lenguajes de programacion mas modernos! en: 28 Abril 2010, 14:43 pm
C# esta influenciado por java y otros, y de novedoso tiene poco
Tiene razón Novlucker, no creo que encuentres un lenguaje realmente nuevo, siempre están basados en otros.
Mi aporte:
Estoy notando que ultimamente la tendencia de esta evolucion es a juntar paradigmas.
Yo ultimamente estoy usando Scala, que es del 2003, corre en JVM y te ahorra mucho código respecto a lo mismo hecho en Java, creo y espero que lo desplace, le veo futuro.
Básicamente no aporta nada nuevo, junta cosas de otros, coge:
  • del mundo de la programacion funcional: closures, curryficacion, inferencia de tipos(tipado estático), una especie de tipos algebraicos, encaje de patrones, traits(herencia multiple sin problemas, solo permite reutilizar codigo no representacion de datos), funciones como ciudadanos de primera clase, expresiones lambda, funciones de orden superior, se puede escribir código monádico aunque yo no he sido capaz y creo que también se puede utilizar un paso de parámetros por nombre(evaluacion perezosa, listas infinitas, aunque el en sí es de eager o strict evaluation(voraz?))
  • del mundo de POO: clases, objetos, incorpora directamente objetos singleton(solo una instancia), getter setters, herencia, polimorfismo, interfaces, *creo que* reflectividad, genericidad(con restricciones = mas expresiva), iteradores, facil interoperabilidad con java, de hecho se compila a java y puedes utilizar toda su libreria estandar, anotaciones
  • del mundo imperativo: en sí es imperativo OO(como java), no os asustéis por tanta cosa funcional
  • del C: conversion de tipo implicita, pero definibles, esto que yo creía que era un problema en C y nunca volvi a ver en otro lenguaje
  • Su propia librería estándar, aunque puedes usar la de java, pero la suya esta completita y tiene colecciones mutables e inmutables, concurrencia basada en actores
Dicen que está llamado a reemplazar a java.
169  Programación / Programación C/C++ / Re: ¿Loco? en: 27 Abril 2010, 21:09 pm
Pos si eso no te vale ya solo te queda tirar de http://en.wikipedia.org/wiki/Arbitrary-precision_arithmetic
170  Programación / Programación C/C++ / Re: ¿Loco? en: 27 Abril 2010, 00:46 am
Puedes probar quizás también "long double" aunque a lo mejor es lo mismo, si no te da la precision(que es mayor cuanto mas cercano a cero sea el numero) no te queda otra que usar librerías o implementarlo tu mismo
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [17] 18 19 20 21 22
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines