Una vez más, el índice Tiobe, que se basa en la popularidad de búsquedas de los distintos lenguajes de programación en Internet, ha otorgado el premio honorífico de lenguaje de programación más importante de 2019 y también ha lanzado la lista de los más utilizados a enero de 2020. En lo que respecta al premio honorífico del lenguaje de programación más importante de 2019, contra todo pronóstico, ha recaído en C a pesar de contar con 48 años desde su implementación.
|
etiquetas: desarrollo , software , sorpresa , lenguajes , programación , premio , honorífico
Se programa en otro lenguaje y se compila a webaseembly.
Para hacer algo con webassembly no puedes usar cualquier lenguaje. Hay un subconjunto muy reducido que compila a webassembly, encabezado por Rust.
Y cuando dices que se programa en javascript porque no hay otra alternativa tampoco es cierto. Si te refieres a programar para un navegador web hay infinidad de alternativas, como coffeescript, typescript, ... y un montón más. Que se ejecute javascript no significa que tengas que programar en javascript.
Mientras esto siga siendo así, C no morirá.
Por cierto, D es una verdadera maravilla, especialmente su programación genérica (templates o generics, como queráis).
Eso sí, no es un lenguaje de programación de propósito general, es evidente que está intrínsecamente especializado en trabajar con bases de datos.
Como es lógico es un lenguaje interpretado pero aún así dependiendo del servidor que utilices el propio servidor es capaz de optimizar vistas, stored procedures y cosas así para que se ejecuten mñás rápidamente.
Cuando compilas freestanding, El programa se ejecuta 'tal cual' sin necesidad de tener un sistema operativo debajo y sin necesidad de librerías externas ni nada. Esto te limita bastante algunas cosas (generalmente no tienes acceso a ficheros, redes, etc...) pero te permite que puedas compilar para prácticamente cualquier máquina, por cutre que sea, y te permite controlar el acceso al hardware sin muchos impedimentos.
Que ventajas tiene esto? Pues entre otras, te permite escribir sistemas operativos, drivers, firmware, programar en máquinas con pocos recursos...
BAIA
www.tiobe.com/tiobe-index/
github.com/kevinjpetersen/BlazorQuery
La NES lleva un procesador basado en 6502, y su diseño hace que se adapte bastante mal al lenguaje C. En general, los procesadores de 8 bits tienen bastantes limitaciones (entre ellas el tener pocos registros, y que el juego de instrucciones es poco ortogonal) que hacen que el código generado sea bastante pobre, pero en el caso del 6502, al tener una pila relativamente pequeña y limitada a 256 bytes lo hace especialmente problemático. Yo trabajé hace tiempo desarrollando un pequeño proyecto para el Spectrum usando el z88dk, que tiene un compilador de C "optimizador" para Z80, y acabé pasando y escribiendo directamente en ensamblador las partes que requerían máximo rendimiento, porque el código de bucles y demás era bastante malo, así como el uso de punteros para acceder a la memoria de vídeo. Y eso que en el Z80, con su pila de tamaño "ilimitado" y registros índice, el código de las llamadas era relativamente aceptable.
Algunas de las fuentes de lo que digo:
retrocomputing.stackexchange.com/questions/6095/why-do-c-to-z80-compil
www.xtof.info/blog/?p=714
www.cc65.org/doc/internal.txt
No busco "blablabla kotlin", lo busco para Android. Si los demás hacen como yo, lo lógico es que muchas búsquedas de desarrollo en kotlin no estén cuantificadas.
Total, a mí me da igual que mi solución me la den en Java o en Kotlin.
Y ojo, no es que me queje de ese software. Estoy seguro de que es mucho más confiable que cualquier programa hecho por becarios de alguna consultora.
con la version 7 es muchisimo mas rapido que Java y que casi C o ensamblador.
Eeeehhh, no te pases. ¿ensamblador?
python también. Pero da la casualidad de que python se usa mucho más en proyectos actuales.
Sólo he dicho que creo que el criterio que utiliza la empresa del artículo puede ser muy sesgado. No estoy negando nada.
Cuando tú en C usas la función read para leer un fichero realmente le estás diciendo al sistema operativo lo haga por tí, y él lo hará de la forma en la que esté programado. A ésto se denomina "llamada al sistema". En una compilación freestanding esto no se hace, y además, si no me equivoco (corregidme si está mal), no se encapsula el código en una estructura que le da información adicional al SO, como es el caso del icono del programa en Windows (que va dentro del .exe sin ser código).
Cuando tenga tiempo hago el mismo código en C y PHP, un generador de números primos, y veo cuál tarda más y cuál tarda menos
rt.cpan.org/Public/Bug/Display.html?id=124787
En C no pierdes nada en lo que lenguaje se refiere, solo librerías.
El problema del código máquina es que pierdes toda la abstracción de los lenguajes de alto nivel y programar algo medianamente complejo se vuelve impracticable.
Y justo eso es también lo peor... Cualquiera puede programar en él y así sale el código a veces