Está en la página 1de 8

INTRODUCCIN

En el presente trabajo les explicare el propsito de mi lenguaje de programacin, aqu les dar una breve explicacin del funcionamiento de mi lenguaje.

El lenguaje constara de declaracin e inicializacin de las variables, incluir tipos de datos, funciones y otras ciertas caractersticas que ms adelante mostrare. Este lenguaje tratara de un compilador que se encargue de resolver operaciones aritmticas bsicas tales como la suma (+), resta (-), multiplicacin (*) y divisin (/), tambin les mostrare la sintaxis de nuestro lenguaje y la manera en que este podr hacer toda la operacin.

Este trabajo se har cumpliendo con todo lo establecido por el profesor de la asignatura de Programacin de Sistemas, pero lo que realmente estaremos buscando es la manera en que se plantea y se crea un compilador ya que esta se encargara de resolver todas las funciones que nosotros especifiquemos en nuestro lenguaje.

DESCRIPCIN DEL LENGUAJE.


Nombre del lenguaje: LENGUAJE COMPI El lenguaje estar definido por la siguiente estructura:

Compi <arit> En donde Compi ser una variable esttica de inicializacin de la programacin y <arit> otra variable que estar indicando que la programacin que se estar haciendo, utilizara operaciones aritmticas. De esta manera la programacin en nuestro lenguaje estar arrancando.

Caractersticas del lenguaje:

Realizara operaciones aritmticas Los ficheros solo sern validos si la extensin es .arit. Estarn declaradas todas las funciones en letra minscula.

TIPOS DE DATOS

Todos los datos antes de definir contendrn un carcter que indicara que pertenecen al lenguaje. El carcter especificado ser gato (#).

#ent

Sirve para la declaracin de enteros

#pun Sirve para la declaracin de variables que utilicen punto flotante #car #sig Sirve para la declaracin de variables que utilicen solo caracteres Sirve para la declaracin de variables que utilicen operadores aritmticos.

Nota. Los tipos de datos sern declarados antes de las funciones.

Caracteres

= +-*/ () ? < > == && || ; si sino mien print

Operador de asignacin Operadores aritmticos, suma, resta, multiplicacin y divisin. Parntesis de apertura y cerradura respectivamente para la delimitacin de las instrucciones de un mtodo, as como para el uso de operaciones aritmticas. signos de apertura y cerradura respectivamente para la delimitacin de las instrucciones a realizar por una funcin Operadores de comparacin menor que, mayor que e igual que. Operadores lgicos and y or Punto y coma, utilizado despus de asignarle un valor a un tipo de dato Funcin condicional si Complemento de la funcin si. Funcin de ciclo Salida en pantalla

ESTRUCTURA
Las funciones estarn definidas con un nombre cualquiera, llevaran parntesis y el cierre y apertura se har con el smbolo de signos de interrogacin. En las funciones se incluirn ciclos, condiciones y las operaciones aritmticas.

Ejemplo de sintaxis:

nombre ( ) mient (algo) sentencia; print (); ? ?

Ejemplos de cdigo fuente de mi lenguaje:

Ejemplo 1. Compi <arit> #ent num1; #ent num2; #ent valor; #sig op; suma ()

Ejemplo 2. Compi <arit> #pun uno; #pun dos; #pun tres; #sig op; #pun suma; operacion () uno = 5.5; dos = 2.1; tres = 4.9; op = +; si (uno < dos && dos < tres)

num1=2; num2=3; op = +; mient (num1 < num2) valor = num1 op num2; print (valor);

? ?

sum=uno op tres; print (sum); ? sino (uno > dos && dos < tres) sum = uno op dos op tres; print (sum); ? ?

GRAMTICA GENERADORA G C S A I B U V H C Compi S < A arit I > B POMB | U OJGR P #ent | #pun | #car |#sig OT E T LB La | b |c |d |e |f |g |h |I |j |k |l |m |n |o |p |q |r |s |t |u |v |w |x|y|z B LB | E N |NE| N 0 |1 |2 |3 |4 |5 |6 |7 |8 | 9 R M; V WV| W FYH op S | I | == | && | II F MI | SI | SIN MI XJOopOGM X mient J ( G ) SI JKGR si | sino KOopOQ Q opOQ | Y OasigOZOM | prt | prt printJOGM asig= ar ZOar | Z +|- |* | / H ??

CONCLUSIONES
La creacin de lenguajes es una visin clara para la construccin de

compiladores, ya que a partir de una serie de anlisis pudimos crear una parte de nuestro lenguaje, solamente validando o construyendo una estructura que se asemeje a lo que futuramente ser un compilador, este trabajo est basada en la gramtica la cual nos genera o nos valida el lenguaje con el que estaremos trabajando ms adelante. Lo importante de este trabajo es que nos permite conocer y aprender formas ms complejas de programacin pero que a la vez son ms interesantes, este proceso fue un poco difcil ya que el generar la gramtica llevo un poco de tiempo, pero bueno este es nuestro documental.

BIBLIOGRAFAS

www.wikipedia/compiladores

Libro: Compiladores Traductores y Compiladores con Lex/Yacc, JFlex/cup y JavaCC con Lex/Yacc, JFlex/cup y JavaCC

Sergio Glvez Rojas Doctor Ingeniero en Informtica Miguel ngel Mora Mata Ingeniero en Informtica Dpto. de Lenguajes y Ciencias de la Computacin E.T.S. de Ingeniera Informtica Universidad de Mlaga

También podría gustarte