Como hacer que la maquina entienda nuevo lenguaje?

Iniciado por Robocop8, 23 Septiembre 2017, 19:09 PM

0 Miembros y 1 Visitante están viendo este tema.

Robocop8

Mi pregunta es como hacen para que la maquina entienda un nuevo lenguaje de programacion? Ya que la sintasix de cada lenguaje es diferente, aunque parecidas la de algunos y el concepto es el mismo. Pero por ejemplo cuando desarrollan un nuevo lenguaje como go de google que no tiene tanto tiempo. Como hacen para que la maquina entienda un nuevo lenguaje nunca visto o sea con nuevas palabras y eso? Gracias!

n-utz

Las máquinas siempre tratan el mismo lenguaje, el lenguaje máquina y todos los lenguajes se traducen a este, atrás de todo siempre son unos y ceros.

Los que se encargan de la conversión de cualquier lenguaje al lenguaje máquina no es la máquina en sí, sino los compiladores compatibles con cada lenguaje, o los intérpretes.


Al lanzar un nuevo lenguaje al mercado, este precisa estar respaldado por un compilador/intérprete que pueda traducirlo a lenguaje máquina.

engel lex

si es lenguaje compilado, el compilador convierte el lenguaje escrito a lenguaje maquina para que el procesador lo entienda (Ejemplo C++)... si es interpretado, el interprete es un programa que comete acciones según lee en el archivo de texto (ej python)... si es interpretado por maquina virtual, se compila en un lenguaje maquina especial que la maquina virtual que este pasa como instrucciones al procesador (ej java)
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

Robocop8

O sea que cuandp alguien va a inventar un nuevo lenguaje debe hacer el trabajo doble (crear el lenguaje y traducirlo al lenguaje de maquina) ?

engel lex

si!... el lenguaje es solo una interfaz entre tu y el procesador de allí el "bajo nivel" y "alto nivel" de los lenguajes

por lo menos C aunque sea en su forma especifica te permite manejar la memoria a bajo nivel... en cambio python, ni si quiera necesitas aclarar el tipo de variable porque asigna memoria de manera automática... sin embargo, esto trae efectos en el rendimiento, C es muchisimo más rapido que python...

así mismo si no quieres "interfaces", puedes programar en lenguaje maquina... eso si, es ridiculamente complicado...
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

PalitroqueZ

los lenguajes "modernos" interpretados traen ciertas ventajas para el programador como lo es la portabilidad, pero es una pesadilla para el usuario final quien tiene que tener un sistema operativo actualizado al dia con las ultimas versiones de la maquina virtual que soporte las aplicaciones.

los tiempos buenos del visual basic eran cuando se resolvian con el runtime, una pequeña instalación y soportabas montones de aplicaciones.

ahora no, ahora tienes que tener instalado un montón de net framework porque no sabes cual aplicación te pedirá cual versión.

con java no es tanto, pero microsoft (a mi parecer) se enredó mucho con los nuevos visual studios.
"La Economía planificada lleva de un modo gradual pero seguro a la economía dirigida, a la economía autoritaria y al totalitarismo" Ludwig Erhard