El lenguaje de programación Smeagol fue creado por John Burrhus Maximus en el centro Xerox de Palo Alto, entre 1976 y 1977. Más tarde fue implementado en Unix V y cuenta con interfaz de compilación para gcc. Actualmente se está probando una versión beta mejorada, Gollum, pero Smeagol sigue siendo el marco de referencia para miles de programadores en todo el mundo - quitándole cuotas de mercado a Perl y COBOL.

Smeagol fue concebido como un lenguaje orientado a deseos - aunque toma elementos de la programación orientada a objetos y la programación orientada a aspectos. Al ser un lenguaje POD, el programador puede limitarse a un nivel especulativo-abstracto, creando funciones totalmente inútiles que llenen el código de basura y dificulten por lo tanto el plagio digital de la fuente. Veamos un ejemplo de típico programa "Hola Mundo!" hecho en Smeagol:


~~// Comentario "cola de ratón"
~~// Este programa dice "Hola Mundo!"

import smeagol.mouth.tongue.blabla.*
import smeagol.whatever.yakyak.*
export rubbish

static dead frozen class iMpRoPeRiO {
public return kiss main (String[] Shoes) {

system.speakers.ShoutOutLoud("Hola Mundo" + "!");;
system.washMouth();
system.getTheHellOutofHere();

break(down);

}
}
Smeagol es un lenguaje de nivel medio-bajo, dependiendo de la humedad y la temperatura del programador. Soporta herencia, divorcios, adopciones y matanzas. El manejo del espacio en memoria es bastante dinámico: tras cada ciclo de reloj, el interprete se encarga de ir quitando variables hasta que el programa deja de funcionar - de ahí que se diga que Smeagol es un lenguaje extremadamente rápido ("efímero" dicen los críticos). El manejo de excepciones es realmente innovador: si el interprete halla una excepción, abre enseguida el Buscaminas para que el programador pase un rato agradable. En todo caso, la mayoría de IDEs para Smeagol cuentan con un botón de pánico que activa la eyección automática del disco duro a través de una ventanilla en la semi-torre.

Los tipos primitivos o tipos de variables de Smeagol son los siguientes: boolean, bolero, int, char, float, string, double, triple, extra-with-cheese, hotstuff, whoop, bigwhoop y vacuum. La conversión de un tipo a otro se lleva a cabo mediante la función makeItFit(). El tipo boleano de Smeagol es especial: sus valores posibles se ajustan a una teoría de lógica difusa, así que además de true y false tenemos maybe, perhaps, would-be-good, nice y yewch!. Es un poco complicado de dominar al principio, pero luego las ventajas son muchas. Por lo que se refiere al tipo vacuum hace referencia a un tipo de variable vacía, ideal para programas de guru meditation.

Los operadores aritméticos y semánticos de Smeagol son pocos pero sencillos:

+ para sumar
- para restar
* para multiplicar
/ para dividir
% módulo
$ dólares
� euros
ª mujer
º hombre
? ojitos en la noche
ç concatenación dulce


Por lo que se refiere a los operadores relacionales, unarios y lógicos, tenemos:

++ añade una unidad
-- quita una unidad
+- un pasito atrás y uno alante
-+ al revés, nena
+-+- tango
> mayor que
< menos que
v más alto
^ más bajo
= asignación
== igual
!= hey
=== tubería
&& inglés
|| pared
---> gira a la derecha


Etcétera.

Las estructuras de control de flujo y los bucles son variados. La principal novedad con respecto al lenguaje C es la eliminación de if... else por if... watchOut... lastWarning... or else... then... que añade muchísima más riqueza al código. Los bucles pueden llevarse a cabo con for( ; ; ) o con repeatThat(). Por lo que se refiere a los do... while han sido sustituidos por los do... until... or else... y el famosísimo bucle de un solo paso, just do it. Los bucles pueden anidarse facilmente, pero romperlos es muy difícil, a menos que se use la función gotoHell o similares. Smeagol puede crear y manejar ventanas mediante la biblioteca myTreasureX, pero también puede hacerlo con puertas, sillas, mesas y estanterías.

Smeagol está siendo intensamente empleado en la industria bélica para guía de misiles imprevisibles y tácticas de intereferencia electrónica irónica. También se utiliza para programar automátas psicóticos y aplicaciones de cálculo de seguros de vida. Los sistemas expertos programados en Smeagol son eficaces y muestran cierta tendencia a la doble personalidad - síntoma del avanzado polimorfismo de la POD. El inteprete-terapeuta de Smeagol está disponible para las plataformas x86, Amiga, Dreamcast, SPARC, Itanium y Heidi. Funciona en los principales sistemas operativos: Linux, Finux, Minix, Windows, Hasefroch, DOS, TRES, TESSERA, PENTE, OS/2, OS/TIA, DEC, MEC, YAK, Irix, Chulix, Asterix, SkyOS, Spectrum, etcétera.

# - Escrito por Fabrizio el 2004-04-29 a las 01:00


Referencias (TrackBacks)

URL de trackback de esta historia http://fbenedetti.blogalia.com//trackbacks/18094

Comentarios

1
De: Algernon Fecha: 2004-04-29 11:49

He oido que hay un repositorio de módulos como el CPAN de Perl, y se llama TREASURE.



2
De: fer Fecha: 2004-04-29 12:39

Seguro Microsoft le está echando el ojo....



3
De: Algernon Fecha: 2004-04-29 12:45

Seguro... están preparando Visual Smeagol .RING



4
De: Chewie Fecha: 2004-04-29 13:43

¿De tipado fuerte o débil?



5
De: Algernon Fecha: 2004-04-29 13:46

Tipado mild



6
De: David Fecha: 2004-04-29 19:57

¿Alguna estructura de datos interesante?
¿Quizá una lista dinámica tipo ANILLO, con el último elemento enlazando al primero?



7
De: Telendro Fecha: 2004-04-29 20:23

Con ese lenguaje no dudo que el siguiente paso sea crear un software con real inteligencia artificial ... inteligencia 100% humana, of course.

apoya un telendro.



8
De: alberto bastos Fecha: 2004-04-29 21:25

Aah, uno de estos textos que, cuando caes en la cuenta de que te hacen gracia, piensas "pero que asquerosamente friki que soy".

Y yo programando en Java y C... qué pérdida del tiempo!

a_cascarla aaaah!;
exit(aaaah!);



9
De: grager Fecha: 2004-04-29 22:11

begin procedure:
print "PEASO DE GEEK ALGERNON!!!"
end



10
De: el forastero Fecha: 2004-04-30 00:30

Ja ja ja ja.

Y yo sin saber programar tardé dos minutos en darme cuenta y otros diez disfrutando el post-



11
De: netrunner Fecha: 2004-04-30 08:58

jajajaja, es increíble. Aún me estoy carcajeando!



12
De: Alfred Ego Fecha: 2004-04-30 10:30

JAJAJJAJAJAJAJA XDDDDD

Que alguien le de un premio a este hombre PERO YA!!!

Muy bueno Algernon. En respuesta a tus preguntas, este es el tipo de post que mas me gustan



13
De: Algernon Fecha: 2004-04-30 10:52

Por cierto, por si alguien todavía no lo ha captado, lo reitero: es un post de coña xD



14
De: Is-Land Fecha: 2004-04-30 11:11

y yo olvidé decir que los que me gustaban eran los de temática científica... inventados por ti. Tienes por ahí auténticas joyas.
Pues sí, éste es la OS/TIA. :D



15
De: karthur Fecha: 2004-05-01 09:55

Un buen momento para la creación de un nuevo lenguaje, dado el hecho de que se cumplen 40 años de la invención del BASIC ; )



16
De: Algernon Fecha: 2004-05-01 10:27

Guau, pues no lo sabía :)



17
De: Richie Adler Fecha: 2004-05-03 05:38

Algernon, estás completamente loco.

Pero hacen falta más locos como tú. Sobre todo para hacernos reír a los de Sistemas. Ya bastante tenemos con tratar con los (l)users.

Sigue así.



18
De: Algernon Fecha: 2004-05-03 11:17

Jeje



19
De: Algernon Fecha: 2005-01-10 22:40

ups! dios mio, que es eto?? =P



20
De: Algernon Fecha: 2005-01-10 22:40

ups! dios mio, que es eto?? =P



21
De: jose Fecha: 2005-02-20 04:00

Dios, pedazo de frikada.

Lo siento, has sobrepasado el punto de no retorno. Dentro de unos meses dejarás de hablar español para pasarte a Perl. Hasta entonces, que te sea leve.



22
De: Hornblower Fecha: 2005-04-28 12:46

Es el mejor chiste friki que he oído en mucho tiempo. Lo peor es que estoy trabajando en el desarrollo de un lenguaje de programación que pensaba llamar smeagol y hasta la sintaxis se parece. Quiza deba implementar algunas de tus ideas...



23
De: Adykto Fecha: 2005-05-27 20:00

Jajaja... se pasan de lanza, es la frikeada más curada que he leído... Estás pirata Algernon!!!



24
De: sule Fecha: 2005-06-19 03:42

Donde puedo descargar su compilador y manuales



25
De: zutano Fecha: 2005-08-11 10:05

ah.



26
De: pcman Fecha: 2005-08-11 15:00

Cuántos niveles de desoptimización o ineficiencia distintos hay disponibles en la ejecución del intérprete?
Además, qué tipo de 'contaminador' de errores ofrece la IDE? parecido al gdb o ddd?

Este lenguaje deberían enseñarlo en la facultad, vamos.



27
De: Char Fecha: 2005-08-11 16:25

Felicidades, es de lo más gracioso que he leido durante mis abundantes aunque no suficientes momentos en los que no me apetece trabajar y prefiero leer cosas frikies.

sería la ostia, si además lo escribias desde el trabajo con lo cual el lenguaje atravesaría la frontera de la ineficiencia y propagaría su asombroso poder a los antiguos y pseudo-utiles lenguajes como java,c,perl,phyton...

¿has pensado en implementar una funcion tipo sleep_em_all()?

que escribas mas tessooros como este, supongo que con este comentario y muchos anteriores ya habrás abrillantado tu ego suficiente no?



28
De: Christian Fecha: 2005-08-12 06:38

le haria falta otro bucle de un solo paso

hasta donde quieres llegar hoy?

esta muy bueno el inutil lenguaje
salu2



29
De: posy Fecha: 2005-08-12 11:02

llevo años programando en c y el Smeagol me ha intrigado sabeis de donde me lo puedo descargar, es que despues de un ratito buscando acabo cansadillo del señor de los anillos


jejeje



30
De: juana perez Fecha: 2005-09-04 20:40

fue horrible



31
De: Hans Stoelting Fecha: 2005-09-10 21:34

Enero 2006, Microsoft presenta Visual Smeagol .NET

Excelente tu post.



32
De: lucia sosaislas Fecha: 2005-10-31 17:18

la comprencion es un conjunto de temas aentender



33
De: anthony Fecha: 2006-04-19 22:40

de verdad noentendi nada



34
De: Computina Fecha: 2006-10-29 22:32

jajaja esta demaciado cool...



35
De: Akaro Fecha: 2006-12-20 20:22

Se comenta que el grupo de programadores de Microsoft recodifico por completo Windows Vista con este lenguaje.

hasta donde quieres llegar hoy?

Que coeficiente intelectual tendran estos tipos...



36
De: Cesar Fecha: 2007-05-09 05:39

Oigan, No se trata de coeficiente intelectual de las personas, es simplemente la capacidad intelectual que se consiga al programar con este lenguaje, en cuenta a recodifico por completo el Vista, te recomiendo que leas un poquitos mas, creo que no sabes lo que se tiene y lo que se debe hacer para lograr lo que tu dices, sinceramente programar con el lenguaje que sea, siempre y cuando logres lo que deseas. Llevo programando en C 6 años y he agregado modulos a las distribuciones ULAnix y GuriLinux, además de rutinas a un brazo mecanico hecho en la faculta de ing. de la universidad de donde vengo.



37
De: [Alx] Fecha: 2007-05-18 18:35

COÑO PERO SI ESTO ES CIERTO QUIERE DECIR QUE ES LA PUTA DE LOS LENGUAJES DE PROGRAMACION


ESTA QUE QUEMA ES LA OSTRA TIOS ;)



38
De: Raool Fecha: 2007-09-11 22:30

la ptm alguien sabe en ke lenguaje de programacion fue kreado el windows vista???



39
De: ferrnaster Fecha: 2007-09-19 16:10

la pis frre gyuna



Nombre
Correo-e
URL
Dirección IP: 54.205.159.168 (3d710e1fd4)
Comentario

Ver historias anteriores