Ayuda! Creacion de interprete o compilador

#1
Que tal, lo que pasa es que en la escuela nos estan pidiendo que hagamos un interprete o compilador el caso es que lo que sea que hagamos sea capaz de tomar una linea y decir si esta bien escrita, el documento debe estar hecho en un .txt. Debe contener un alfabeto claro esta aun sin reglas. Podria alguien ayudarme con esto.
El programa lo estamos queriendo hacer en C#.
 
#2
Lo que tu necesitas es un analizador sintáctico, yo hice uno para la materia de programacion de sistemas 1, esta en borlan y si te sirve te lo paso, en esa materia hicimos las primeras tres etapas de un compilador, analizador lexico, sintactico y semantico.
 

leo_mex76

Bovino adicto
#3
NO LO PUEDO CREER..!! 2014 Y AUN SIGUEN CON ESAS MAM.............. EN LAS ESCUELAS.!!

Por eso estamos como estamos.!! salen de las universidades y salen solo a hacer monton de profesionistas desempleados o aceptando trabajos para los que no "estudiaron" porque simplemente los programas de estudios son totalmente obsoletos.!

me parece una reverenda estupidez por no decir otra cosa que "maestritos" de sistemas, agarren un pu..... libro y pongan a los chavos a hacer esa clase de pende... digo tonterias.!!


enseñen la logica, enseñen pseudocodigo, diagramacion, pero de problemas reales, soluciones reales, pobressssssss salen y salen al matadero

en una ocasion hace añoss iva a entrar un muchacho a la oficina donde estoy, se utiliza visual foxpro por algunas situaciones para manejar algunos datos, yo en lo particular me manejo tmb en PowerBuilder y Flex+php...
El asunto que me dicen ponle un examen, y dije ok, pues algunos programas que me generen un resultado apartir de una base de datos, resumenes, algunos querys sql, etc, etc.

resulta ke dice, es que yo no programo en foxpro, y nos volteamos a ver y dice mi jefe, en que entonces, ahhhh a "nosotros nos enseñaron C++" con su cara de orgullo, le dice bueno, haslos en c++, claro 1 semana despues me manda los dichos programas, y no funcionaron.!!


es a lo que me refiero.!! como es posible que se siga enseñando igual..! si yo se que en algunos lugares ya enseñan cosas mas modernas, pero son los pocos...

de verdad que estamos para dar pena..!
 
#4
NO LO PUEDO CREER..!! 2014 Y AUN SIGUEN CON ESAS MAM.............. EN LAS ESCUELAS.!!

Por eso estamos como estamos.!! salen de las universidades y salen solo a hacer monton de profesionistas desempleados o aceptando trabajos para los que no "estudiaron" porque simplemente los programas de estudios son totalmente obsoletos.!

me parece una reverenda estupidez por no decir otra cosa que "maestritos" de sistemas, agarren un pu..... libro y pongan a los chavos a hacer esa clase de pende... digo tonterias.!!


enseñen la logica, enseñen pseudocodigo, diagramacion, pero de problemas reales, soluciones reales, pobressssssss salen y salen al matadero

en una ocasion hace añoss iva a entrar un muchacho a la oficina donde estoy, se utiliza visual foxpro por algunas situaciones para manejar algunos datos, yo en lo particular me manejo tmb en PowerBuilder y Flex+php...
El asunto que me dicen ponle un examen, y dije ok, pues algunos programas que me generen un resultado apartir de una base de datos, resumenes, algunos querys sql, etc, etc.

resulta ke dice, es que yo no programo en foxpro, y nos volteamos a ver y dice mi jefe, en que entonces, ahhhh a "nosotros nos enseñaron C++" con su cara de orgullo, le dice bueno, haslos en c++, claro 1 semana despues me manda los dichos programas, y no funcionaron.!!


es a lo que me refiero.!! como es posible que se siga enseñando igual..! si yo se que en algunos lugares ya enseñan cosas mas modernas, pero son los pocos...

de verdad que estamos para dar pena..!
Deja que difiera de Ti, pero Compiladores es una materia muy importante porque aprendes a ver desde el interior la programacion y no es solo programar por programar, necesitas un analizador sintactico, con eso debes saber de tokens, de arboles (varios tipos), grafos, logica. Como seguramente en el CNCI no te lo enseniaron piensas que PHP es lo mejor pero para un compilador necesitas:
  • Analisis Lexico
  • Analisis Sintactico
  • Analisis Semantico
  • Generacion de Codigo Intermedio
  • Optimizacion de Codigo

Porque se ocupa C++ porque aun sigue siendo muy poderoso, cosa que tus scripts en PHP no pueden hacer por no ser orientados a objetos o tener apuntadores, tambien se pueden hacer en Java, yo hice el mio en Java y fue la demostracion de que cualquier lenguaje compilado puede ser interpretado.
Sobre el chavo al que entrevistaste seguramente era su primera experiencia laboral y pues se fue a la segura de decir que solo sabe C++. En mi caso soy un Tech Lead, trabajo en USA hace mucho tiempo y tengo un Master en Ciencias Computacionales con especialidad en el desarrollo de sistemas. Y cuando me toca hacer entrevistas me gustas hacerlas sobre experiencias, escribir un programa sencillo para ver su capacidad de analisis y la limpieza en su codigo. Te puedo decir que hemos contratado gente con cero experiencia incluso en el lenguaje de programacion, pero con excelente capacidad de abstraccion que en tres meses empiezan a dar resultados a la par de la gente en el proyecto.
Asi que creo que hay que tener mas conciencia sobre lo que se ensenia y para que sirve
 

leo_mex76

Bovino adicto
#5
JAJAJAJA CNCI ????? es lo unico que existia en tu ciudad o que ????

y si no se programa por programar, pero si se supone que se recibio debio aprobar todas las materias no ? jaja
si incluyendo programacion.

mis scripts en php ? parece que no sabes que php es para otras cosas, es como si yo te dijera que c++ no sirve para hacer paginas web o lo que se te ocurra.

Y yo jamas dije que c++ no sea poderoso, lo es y siempre lo sera, con respecto a java tengo manuales, libros, video cursos, me interesa mucho, pero mas como backend solo que no me eh dado tiempo para verlo y aprenderlo

y volviendo al chavo, lo contrataron por ser "recomendado de fulano de tal" y jamas dio el ancho, se le asigno un proyecto, pidio oportunidad de desarrollarlo en VB aun y cuando no se manejaba ahi, nunca pudo hechar a andar el sistema, hasta ke despues de buen tiempo, renuncio y se fue a otro trabajo, donde talvez si le sirvio que el que solo alla aprendido C++

yo lo que peleo es que les den las herramientas para defenderse en el mundo laboral, yo empeze hace muchos años con Basic, Cobol, Pascal, C++, Dbase, FoxBase, FoxPro, FoxPro windows, Visual Basic, Delphi, Visual Foxpro, PowerBuilder, algo de ASP, despues conoci ColdFusion, PHP ( me quedaria con CF pero era y es carisimo por eso son pocos los hostings que lo soportsan, aunque existe open blue dragon), en el mundo web nunca me gusto es la verdad, eso del revoltijo de html + php o el que gustes + jscript jamas me gusto, hasta que conoci Flex y utilizo de momento PHP solo para mis servicios (clases con funciones CRUD) las cuales llamo desde Flex, y estoy interessado en empezar a migrar a JAVA.

Vas a decir pues muy bien que te enseñaron eso, pues nooo, en la escuela, me enseñaron a programar y cuando tienes buenos maestros, cabeza y vocacion pues puedes migrar de lenguajes sin batallar tanto, y es por eso que hoy puedo decir lo que siempre digo para algun proyecto "Depende del sapo es la pedrada", depende del proyecto usar la tecnologia adecuada y esto viene a colasion porque conozco programadores que solo desarrollan en PowerBuilder y todossssssssssssssssssssss los proyectos los quieren desarrollar en PB, y es excelente herramienta, pero pues en algunos casos es ir a cazar patos a cañonazos, jaja




Deja que difiera de Ti, pero Compiladores es una materia muy importante porque aprendes a ver desde el interior la programacion y no es solo programar por programar, necesitas un analizador sintactico, con eso debes saber de tokens, de arboles (varios tipos), grafos, logica. Como seguramente en el CNCI no te lo enseniaron piensas que PHP es lo mejor pero para un compilador necesitas:
  • Analisis Lexico
  • Analisis Sintactico
  • Analisis Semantico
  • Generacion de Codigo Intermedio
  • Optimizacion de Codigo

Porque se ocupa C++ porque aun sigue siendo muy poderoso, cosa que tus scripts en PHP no pueden hacer por no ser orientados a objetos o tener apuntadores, tambien se pueden hacer en Java, yo hice el mio en Java y fue la demostracion de que cualquier lenguaje compilado puede ser interpretado.
Sobre el chavo al que entrevistaste seguramente era su primera experiencia laboral y pues se fue a la segura de decir que solo sabe C++. En mi caso soy un Tech Lead, trabajo en USA hace mucho tiempo y tengo un Master en Ciencias Computacionales con especialidad en el desarrollo de sistemas. Y cuando me toca hacer entrevistas me gustas hacerlas sobre experiencias, escribir un programa sencillo para ver su capacidad de analisis y la limpieza en su codigo. Te puedo decir que hemos contratado gente con cero experiencia incluso en el lenguaje de programacion, pero con excelente capacidad de abstraccion que en tres meses empiezan a dar resultados a la par de la gente en el proyecto.
Asi que creo que hay que tener mas conciencia sobre lo que se ensenia y para que sirve
 
Arriba