He vuelto a programar efusivamente en javascript y vuelvo a ver que hay unos errores de diseño muy gordos que dan problemas. Que si, que PHP apesta mas y tal estarás diciendo, o dirás «anda con el señorito seguro que piensa que Python es un regalo de los dioses» …pero estamos hablado de Javascript ahora.
¿Hay hilos en javascript? Si, si los hay pero no son accesibles desde el propio lenguaje.
Entonces hay hilos, Error no hay acceso a hilos.
Y añado ¿Porque no hay un simple mutex / semáforo? Hubieran ahorrado toda esa mierda que tiene nueva de webworkes y flautas dulces, un semáforo para gobernarlos a todos…y después si tu ego te incita a crear meta-mierdas para vender libros de portadas animales grises pues bien para ti y bien para tus mojados canzoncillos.
Vale…no hay semáforos…pero ¿Porqué no hay un sleep? Maravillosa instrucción para no quemar CPU mientras espero una ejecución por otro hilo (de los que son como paranormales, no existen pero existen en javascript) y con un apaño guarro de un semáforo con una variable global. Y si yo hago mal en javascript y se queda ahí clavado, es mi culpa un lenguaje no tiene que estar diseñado para cuidarme como un tontito que no se hacer nada, si soy un manazas y un bruto me jodo y hago bien las cosas.
Lo del sleep es un error gordo pero gordo gordo, y no lo digo yo solo, si no gente tan potente como los de emscripten (un traspilador de C a javascript muy famoso) https://github.com/kripken/emscripten/wiki/Asyncify.
Y para finalizar el famoso living standard de javascript que se ha puesto de moda, que significa nuevas versiones de diseño del lenguaje no chocan con los navegadores que soportan versiones viejas porque en tiempo de ejecución (o previo por el rollo de los headers http) le manda código parcheado y librerías para que use las nuevas cosas en el navegador con la versión vieja….¿Pinta bien?…claro que si, pero tienes que meterte en la secta de node.js y todo eso, te ofrecen el caramelo y después ¡¡zasca!! ya estas enmarronado usando miles de frameworks y tonterias de hipsters con pegatina del gatopulpo en su blaquito mac.
¡Vaya! Eres la primera persona que me encuentro que se queja por la manera en como JavaScript trata los hilos, que tantas ventajas le aporta: es más seguro así y da mejor rendimiento. Si no se han añadido sleep a JavaScript es por un muy buen motivo, para no bloquear el hilo principal de ejecución (en hilos secundarios sí que se pueden hacer paradas). Parecerá una tontería pero cada vez más lenguajes como Python están añadiendo soporte a programación asíncrona, que es uno de los grandes fuertes de JavaScript.
Voy a ver si estudio y me hago con la programación asíncrona en javascript, con el tema de los webworkers y promesas y esas cosas.
Si aún no lo veo, volveré y me quejaré ;) jejejeje.
Java script es el lenguaje más asqueroso que te puedes echar a la cara, un lenguaje con un ecosistema disperso al mas no poder, han cogido los cimientos de una bicicleta y han empezado a meterle parches por aquí, parches por allá HTML,CSS,JS y ahora quieren que la bicicleta haga de todo, vamos que han fabricado de la bicicleta un maldito avión que se cae a cachos, pero oye tienes controles para manejarlo desde donde quieras, como quieras y de la forma que quieras. Si quieras añadir piezas básicas y estándares en otros aviones al avión, reinventa la pieza o paga por ella a terceros, bueno también las hay gratis pero fíate de quien la ha programado…
HTML fantástico para la maquetación de texto, pero ahora sirve para hacer aviones, esto es lo que hay, nos dicen que es el internet, como lo tenemos que consumir y cuál es la tecnología que debemos de utilizar para programar el contenido que se visualiza y se comparte en internet, además es gratis.. No se te vaya a ocurrir ir a contracorriente o invitarte otro formato que no sea el HTML, js O CSS el islam dice que el HTML/js/css es dios!!!
Por cierto solo debería haber un navegador/proyector de código abierto y gratis que fuera controlado por una entidad sin ánimo de lucro y no por empresas, una entidad que escuche a los usuarios y a los programadores y no intenten inculcar sus ideas talibanes ni sus restricciones, quienes coño se creen para decirnos cómo y con que debemos consumir el internet, quienes cojones se creen para decidir cómo debe evolucionar las tecnologías de intercambio en internet?
Firefox, edge, chrome, Apple, iros todos a cascarla, sin ánimos de ofender
La luz parecía vislumbrarse con webassembly pero parece ser que se va a quedar también en un medio parche, un espejismo… Un quiero y no puedo, porque no les dejan sustituir javascript.
2018 un año en el que las tecnologías cloud, aplicaciones de escritorio potente y GRANDE ya deberían surgir del lado del cliente pero no, a ver quien se enfrasca en un gran aplicativo para empresas del lado del cliente, con los mierdi navegadores que tienen cientos de miles de líneas de código basura para cosas no necesarias para navegar, código que te meten porque a ellos les sale de los mismísimos y ya no te digo nada del pupurri LENTOOO de html/JS/CSS, el navegador cojo de turno tiene que interpreta el html, y el css y luego la vm de js interpreta el js menuda tortuga neneeee.
Espero que no le escueza a nadie, pero exceptuando los que hacen 4 páginas web chorras seguro que les parece genial JS, pero el que tenga que plantearse un gran aplicativo para empresas y con buena productividad de seguro le escocerá el ano solo con escuchar las palabras HTML/JS/CSS
Animo gurús del JS, PUTOS FRIKIS PIJOS!!
Gracias por tu enorme comentario tanto en longitud como en contenido.
Se te ha olvidado mencionar los dichosos transpiladores, que hacen mediolenguajes que incluso micro$oft ha metido mano inventandose un aborto llamado typescript. Y que muchos desarrolladores confian en el código generado por jsx y webpack como si fuera una compilación de verdad.
Yo solo dire una cosa:
nodejs y mongodb son mierda!
De mongo no opino porque no me he puesto con el, pero nodejs tiene cosas muy malas y alguna buena.