sábado 21 de junio de 2008

Lenguajes de programacion

LENGUAJES DE PROGRAMACION :


Un lenguaje de programación es un lenguaje que puede ser utilizado para controlar el comportamiento de una máquina, particularmente una computadora. Consiste en un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones.Un lenguaje de programación permite a uno o más programadores especificar de manera precisa: sobre qué datos una computadora debe operar, cómo deben ser estos almacenados, transmitidos y qué acciones debe tomar bajo una variada gama de circunstancias.

Objetivos de la programación:
Tres objetivos fundamentales:
Corrección: un programa es correcto si hace lo que debe hacer. Para determinar si un programa hace lo que debe es muy importante especificar claramente qué debe hacer el programa antes de desarrollarlo y una vez acabado compararlo con lo que realmente hace.
Claridad: es muy importante que el programa sea lo más claro y legible posible para mejorar el mantenimiento del software. Cuando se acaba de escribir el código del programa, se deben buscar errores y corregirlos. Más concretamente, cuando el programa está concluido, es necesario hacerle ampliaciones o modificaciones, según la demanda de los usuarios, esta labor puede ser llevada acabo por el mismo
programador que implementó el programa o por otros.
Eficiencia: debe consumir la menor cantidad de recursos posible. Normalmente al hablar de eficiencia se suele hacer referencia al consumo de tiempo y/o memoria.

¿Para que sirve programar?


Una persona piensa y se comporta obedeciendo a un secuencial lógico. Un computador realiza tareas y maneja datos en memoria obedeciendo a una secuencia de pasos lógicos para lo cual ha sido programado. Programación de computadoras es la ciencia que permite a una persona programar una computadora para que resuelva tareas de manera rápida. Un Programa de computadora se puede definir como una secuencia de instrucciones que indica las acciones o tareas que han de ejecutarse para dar solución a un problema determinado. Programar computadoras es indispensable en cualquier área de la ingeniería, ya que diferentes problemas que se puedan presentar tardan tiempo resolverlos de manera manual. La computadora resuelve problemas de acuerdo como se le haya programado de manera rápida.

Algunos lenguajes de programacion:

Ernlang:



Lenguaje Erlang es un lenguaje de programación concurrente y un sistema de ejecución que incluye una máquina virtual y librerías.
El subconjunto de programación secuencial de Erlang es un
lenguaje funcional, con evaluación estricta, asignación única, y tipado dinámico. Fue diseñado en la compañía Ericsson para realizar aplicaciones distribuidas, tolerantes a fallos, soft-real-time y de funcionamiento ininterrumpido. Proporciona el cambio en caliente de código de forma que éste se puede cambiar sin parar el sistema. Originalmente, Erlang, era un lenguaje propietario de Ericsson, pero fue cedido como open source en 1998.
La implementación de Ericsson es, principalmente interpretada pero también incluye un compilador
HiPE (sólo soportado en algunas plataformas). La creación y gestión de procesos es trivial en Erlang, mientras que, en muchos lenguajes, los hilos se consideran un apartado complicado y propenso a errores. En Erlang toda concurrencia es explícita.
Erlang recibe el nombre de
A. K. Erlang. A veces se piensa que el nombre es una abreviación de ERicsson LANGuage, debido a su uso intensivo en Ericsson. Según Bjarne Däcker quién fue el jefe del Computer Science Lab en su día, esta dualidad es intencional



Perl:

Perl, Lenguaje Práctico para la Extracción e Informe es un lenguaje de programación diseñado por Larry Wall creado en 1987. Perl toma características del C, del lenguaje interpretado shell (sh), AWK, sed, Lisp y, en un grado inferior, de muchos otros lenguajes de programación.
Estructuralmente, Perl está basado en un estilo de bloques como los del C o AWK, y fue ampliamente adoptado por su destreza en el procesado de texto y no tener ninguna de las limitaciones de los otros lenguajes de script.
Perl es un
lenguaje de propósito general originalmente desarrollado para la manipulación de texto y que ahora es utilizado para un amplio rango de tareas incluyendo administración de sistemas, desarrollo web, programación en red, desarrollo de GUI y más.
Se previó que fuera práctico (facilidad de uso, eficiente, completo) en lugar de hermoso (pequeño, elegante, mínimo). Sus principales características son que es fácil de usar, soporta tanto la
programación estructurada como la programación orientada a objetos y la programación funcional, tiene incorporado un poderoso sistema de procesamiento de texto y una enorme colección de módulos disponibles. La estructura completa de Perl deriva ampliamente del lenguaje C. Perl es un lenguaje imperativo, con variables, expresiones, asignaciones, bloques de código delimitados por llaves, estructuras de control y subrutinas.
Perl también toma características de la programación
shell. Todas las variables son marcadas con un signo precedente (sigil). Los sigil identifican inequívocamente los nombres de las variables, permitiendo a Perl tener una rica sintaxis. Notablemente, los sigil permiten interpolar variables directamente dentro de las cadenas de caracteres (strings).

One laptop per child


Computadora portátil de 100 dólares

La computadora portátil de 100 dólares o un laptop por chico (ULPC, también abreviado OLPC del idioma inglés One Laptop Per Child), es una computadora portátil elaborada con el propósito de proporcionar a cualquier niño en el mundo acceso y conocimiento a las tecnologías de la información como formas modernas de educación. El proyecto cuenta con apoyo de Google, AMD, Red Hat, News Corp, Brighstar y la colaboración de otras empresas.
La computadora se basa en una plataforma
Linux, y es eficiente en la utilización de la energía de manera que con con un dispositivo mecanico de tipo manivela se puede generar suficiente energía para su operación. Un dispositivo de conectividad inalámbrica permite que los aparatos se conecten entre sí y a Internet desde cualquier sitio. Estos computadores portátiles serán vendidos inicialmente a los gobiernos y entregados a los niños en las escuelas bajo el principio "una computadora para cada niño".
El portátil de 100 dólares, como es conocido en términos coloquiales, a fecha de diciembre de 2007 se vendía en Estados Unidos por parejas por 199.5$ cada uno en el programa G1G1 (get one give one, compra uno dona otro) ademas de su canal de venta, para el que fue diseñado, la compra por gobiernos de paises en desarrollo.
La OLPC está siendo desarrollado por la organización One Laptop Per Child. La OLPC es una organización sin fines de lucro con sede en Delaware, creada por catedráticos del Laboratorio de Multimedia del
MIT para diseñar, manufacturar y distribuir estos ordenadores portátiles.
A esta computadora portátil también se le conoce como La Máquina Verde. Los promotores del proyecto quieren dejar claro que no es un producto creado para vender (en principio) sino que es sobre todo un proyecto educativo.



DESARROLLO:
A finales de noviembre de 2005, fue anunciado el proyecto durante una convención sobre Internet en Túnez, la ONU estuvo presente en una posterior exposición de este producto.
La OLPC fue presentada por su cofundador
Nicholas Negroponte en enero de 2006 en el Foro Económico Mundial en Davos, Suiza.
En una exhibicion,
Kofi Annan rompió la manivela del OLPC mientras lo estaba probando, dias despues, se presenta un nuevo modelo que reemplaza a la manivela, en lugar de esa manivela se ha incorporado una especie de hilo del que se tira para cargarlo, parecido al hilo que se utiliza en las cortadoras de césped de gasolina para arrancar su motor. Este mecanismo resuelve el problema de cómo hacer funcionar un ordenador en las áreas más remotas y pobres del globo que carecen de servicio eléctrico




Hardware
El aparato tiene un tamaño pequeño, incluso demasiado pequeño para ser manejado por las manos de un adulto. El hardware de la máquina está diseñado para que permita una larga duración de la batería, no para ser extremadamente rápida. Las baterías tienen una duración de días, no de horas, gracias a un procesador con baja frecuencia de reloj.
El portátil posee dos grandes antenas de
WiFi que son al mismo tiempo los cierres de la tapa. No tiene disco duro sino memoria flash como dispositivo para almacenar el sistema operativo y los datos del usuario. La memoria flash puede expandirse por medio de unidades externas de tipo estándar, a través de sus tres puertos USB.
La tapa puede girarse totalmente y convertir el aparato en un tipo tableta sin teclado, aunque los modelos mas recientes ya incoporan pantalla táctil.
También llevan una minicámara en la tapa, micrófono, dos altavoces, lector de tarjetas SD, varios botones tipo consola de juegos, y
LEDs diversos para teclado y batería.

El secreto de su precio
Se dice que en un portátil convencional, la mitad de su precio se debe al coste del montaje, al embalaje (plásticos y cartones) y a la publicidad.Del cincuenta por ciento restante, una gran proporción se emplea en costear un hardware costoso que debe ejecutar sistemas operativos derrochadores de almacenamiento en memoria y disco duro, procesador y recursos gráficos. De la consideración de que todo el hardware superfluo puede simplemente suprimirse en gran parte, nace el concepto de máquina justamente necesaria para su propósito (el educativo) y no de uso general. La falta de publicidad y los costes de montaje de una máquina sencilla en su diseño cooperan para conseguir un artículo perfectamente equilibrado. Sin embargo, no existe una razón comercial en su desarrollo tal y como se entiende en la mayoría de los PCs, sino que se trata de un proyecto educativo. A pesar de ello se ha realizado su comercialización desde finales del año 2007 en Estados Unidos.