SS_Logo

Conectividad de Maple con otros lenguajes de programación

Autor: William Alfredo Fajardo Cárdenas / Portafolio: Scientific / Vie. 23 de Jun de 2023

Transcripción de este video

00:00:34:28 Shopper Shop, la empresa líder en la implementación de herramientas analíticas y software especializado en Latinoamérica, les da la bienvenida a esta presentación. El día de hoy contamos con el acompañamiento del instructor William Fajardo, matemático de la Universidad Nacional de Colombia, con maestría y doctorado en esa misma institución. Cuenta con extensa experiencia de docencia en la Educación Superior, en cursos de Matemáticas para Ingeniería y Matemática Pura, entre otros, además de una amplia formación e investigación en matemáticas puras y aplicadas.

00:00:49:21 Bienvenidos. Hola, Lisa. Buenos días para ti y para todos. Gracias, profesor. Bienvenido a este espacio. Gracias por acompañarnos. Le confirmo que la estoy viendo correctamente. La escucho bien. También gusta. Por favor, compartir su pantalla.

00:01:24:19 Listo? Perfecto. Ya estamos. Que podemos dar? Inicio entonces, profesor. Gracias. Listo? Sí. Voy a cancelar. Digamos el video por si acaso. Para que ya no hay problemas de conexión o cerca. Es bueno que el profesor entonces en el tema que ha usado, el que vamos a hablar hoy es acerca de conectividad Coletilla México con lenguaje de programación. Bueno, veamos acerca de hablemos de la introducción de del tema.

00:01:56:15 Bueno, entonces bajo el es una herramienta muy potente que tiene, digamos, esa, esa posibilidad de relacionar lenguajes de programación, de comunicarse con ese tipo de elementos. Obviamente hay cosas que tiene que decir desde una perspectiva digamos, natural a la diversidad de lenguajes de programación, hace que no sea tan yo tengo un dos, es un código y ya lo puedo traducir completamente.

00:02:28:06 No necesariamente, pero digamos que hay una potencia interesante, por ejemplo, entre lo que se puede hacer, por ejemplo entre beisbol y cine, digamos, series y más, más y hasta el punto con Java hay un buen toque y se están haciendo trabajos con Phyton últimamente, pero digamos que hasta ahora hay solamente como un lado que sí que se ha trabajado la parte de Python, digamos que es un poco como las de los tres lenguajes, así más importantes a mi parecer.

00:03:02:10 Pues que digamos aquí cuánto alcanzaremos a hablar? Y bueno, entonces la idea de esta charla es hablar acerca de cómo generar código a partir, digamos, de código maple en otros lenguajes de programación. Vamos a también a tocar el tema de usar código compilado dentro de mapa, o sea, codigo compilado externamente dentro de realmente. El otro tema que es usar main por el código compilado, es un tema extenso y es un tema un poco más técnico.

00:03:45:14 Entonces de pronto vamos a hablar un poquitico de ello, vamos a aplicar qué es lo que pasa allí, pero no vamos a entrar digamos en, digamos en concreto en ese tema, si es bien importante, digamos, si alguien quiere trabajar en eso hay mucha cosa o por revisar y por trabajar. Bueno, vamos a empezar entonces con la primera sección importante acá, que es generación de código en otros lenguajes, entonces en esta, en esa sección aquí aparece si lo que se entiende como el paquete Code Generation, listo, que sepa que un paquete clave, vamos a revisar ese paquete.

00:04:15:18 Entonces el paquete Code Generation proporciona, como lo dice allí, utilidades para para traducir Keigo en el paquete de programación. Entonces el de los que había comentado algunas se Phyton, Java, Malak, Visual Basic, hay otros y esto es el código resultante se puede compilar sin necesidad digamos, de tener el software de mi computer listo? Vamos a ver, vamos a decir aquí, por ejemplo, sí.

00:04:52:00 Y aquí nos aparece, digamos, la funcionalidad de paquete en particular y en particular, que nos aparece una lista de comandos del paquete como parte de comandos del paquete. Mira que aquí parece en particular los dos tipos de códigos en los que uno puede trabajar aquí, en ese paquete que vaya derecho, se desecha por tan java javascript día mezcla crear patrón R Sí, y si habéis visto.

00:05:33:01 Bueno, pues aquí también hay ejemplos por empleemos UI, cargamos el paquete, miramos, por ejemplo, qué es lo que nos está cargando bien, algunas funciones y de entrada también digamos y digamos algunos e incluye variables de del paquete. Coordinar el chiste en sí son pues los mismos una y lenguajes de programación visto bueno. Aquí por ejemplo, miremos este ejemplo yo sencillo bien, si es uno de estas funciones de AC particulares, la función que coge una expresión y x+ ma z, entonces x z es una expresión de ya, de por y.

00:06:10:15 Entonces cuando leamos c de esta expresión, me lo convierte a código, a código en sí y listo. Por ejemplo, MATLAB Miren, tenemos acá una expresión si realmente lo que tenemos acá es dos, usa una lista que está formada por dos listas, es lo que está dentro aquí esto realmente es simplemente código. Y bueno, si le aplicamos más las tres, lo que genera es este código de tema, habla listo, como por ejemplo esta expresión aquí con Visual Basic y esto pues es como para simplemente introducirlos un poquito más en ese paquete.

00:06:40:14 Bueno, volvamos entonces antes a la parte teórica que que vamos a tocar acá. Where y volvemos por aquí. Bueno, entonces se puede utilizar el entorno simbólico en Apple para desarrollar por un algoritmo numérico y luego introducirlo, digamos, a otro lenguaje listo. Y pues eso es lo que nos permite pues trabajar, digamos el algoritmo en un lenguaje donde se pueden hacer cosas un poco más rápido, más eficientemente.

00:07:15:28 Bueno, pues esa es una de las cosas interesantes, digamos, de todo esto, por ejemplo, bien, para realizar una traducción a uno de los lenguajes soportados, entonces se utiliza el paquete coger el hecho en particular, como acabamos de observar, digamos, en los ejemplos que mostraban aquí en la documentación de él, el software. Bueno, también se pueden ampliar los traductores se pueden para definir nuevos una, pero después también está la.

00:07:47:26 La presentación está avanzada, entonces vemos la primera imagen, se está mostrando en este momento alguna imagen, algún modelo, algún no estoy, estoy en el texto. Sí, si hay algo que es lo que estaban indicando en el chat que no estamos avanzando, entonces estamos ok, si no es que realmente el sistema como tal tiene muchísima, muchísima información, entonces de pronto hay pasen más de contarles cosas, más adelante vamos a mirar un poquito de código, pero digamos que en esencia no vamos a entrar a.

00:08:09:10 Perfecto, gracias. Si, yo creo que me voy a quedar más que todo en mapa, horitas y cambié, cambié de página para ver, pero no es una página de menú macros. No se sienta. No, no es. Entonces yo creo que es ahí lo que me estaban indicando que no, ya voy a cambiar aquí, pues es que hasta aquí no, no, no cambia, está cambiando a ya o que?

00:08:33:22 Porque es del NOM del nuevo mapa, entonces no lo podría cambiar. Es más bien el modo de compartir una primer registro en su pantalla. Madre Sí, mejor así. Listo, por si el caso. Bien, pues de pronto me voy a retroceder la patente que creo importante. Sí, acá nos dicen que cuando vio el ejemplo ahí ahora sí. Ah, ok, aquí.

00:09:13:18 Listo. Bueno, entonces miren, aquí había utilizado comején en hecho de coloque antes en el símbolo de interrogación. Entonces me abrió esta página de de la documentación donde pues salen digamos, conceptos básicos de la funcionalidad en particular aquí aparecen digamos los paquetes de los cuales no puede coger código de tránsito respectivo. Paquetes entonces hay que pones en ejemplos, pues por ejemplo cogemos C, colocamos y la expresión y aquí nos genera el código de tipo de la especie que está aquí en Maipú.

00:09:49:09 Bueno, lo mismo así con mandar o con visual. Pues eso, pues ese eran los ejemplos que había comentado anteriormente. Bien, pues me voy a retroceder otra vez. Son ah, aquí bien, entonces ahora sí no, que iba por aquí. Entonces aparte de utilizar el paquete, queda bien en ello. Podemos utilizar lo siguiente. Voy atrás. No se preocupe que por acá es que no lo veo por la esta y le vamos a ir a dar a herramientas asistentes.

00:10:41:20 Y aquí nos aparece este asistente que se llama Generación de código listo, generación de código. Bien, entonces este ya es una herramienta digamos elemental, muy fácil de utilizar, que nos permite coger un código en Maipú. Sí, y bueno, uno le puede colocar, por ejemplo, que aquí digamos, está esa opción de que optimice el código y bueno, digamos aquí es el valor que va a devolver si embarcado o ver por ejemplo, si es una función, si como procedimiento también como va sin mapa que pone tres valores y entonces devuelve un valor listo y por ejemplo le damos para que esto lo traduzca uno de los lenguajes, por ejemplo Apache, y esto nos aparece ahí la tracción

00:11:09:01 apache, por ejemplo, le cambiamos a R, a Visual Basic, a Julia JavaScript. Entonces esta es una herramienta que nos permite y hace esas observaciones. Así de manera inmediata y de manera ágil. Y esto es, ese es el primer elemento cinemático que hace que, digamos, nos permite, digamos, en el software como tal. Bueno, vamos a volver otra vez por acá.

00:11:40:21 Pues a eso nos referimos con el menú conceptual. Digamos que digamos, la hoja de trabajo nos permite trabajar con ese asistente y de una forma muy, muy fácil. Y pues digamos que es muy rápida de trabajo. Así le decía escribir a tu correo. Bueno, entonces, como les había comentado antes, los lenguaje los traductores se pueden mejorar o se puede hasta crear para nuevos lenguajes de programación.

00:12:13:14 Bueno, esta nota que coloco aquí es importante tener en cuenta, hay veces que la librería las van actualizando, entonces antes se utilizaba ese paquete que es el que marcó Allen. Si ese paquete pues digamos que tiene alguna funcionalidades para se y botón, pero digamos que más actuales contiene. De hecho sí. Sin embargo, y vamos a Joe, quien maneja, digamos algunas cosas muy particulares para, para, digamos, para ese tipo de cuellos, pues simplemente lo coloco simplemente como una observación así.

00:12:50:16 Bueno, entonces para llamar funciones del paquete cuello derecho, se utiliza esta. Esta sintaxis genera dicho aquí se coloca, digamos, en el lenguaje. Si entre tres paréntesis rectangulares, aquí tenemos los parámetros en si, pues uno que es una expresión, otro que es unas opciones. Listo, la secuencia de opciones. Bueno, entonces la expresión pues es, por ejemplo, una expresión algebraica como los siguientes que vimos antes, o pueden ser ecuaciones o pueden ser listas matriz.

00:13:18:17 Insertamos pues el funciones pueden ser procedimientos o pueden ser módulos módulos de nivel. No sé si pronto recuerden si han mirado tanto, pueden iPod o han visto alguna de las otras Charles, donde parece ser este no es el de módulo que es muy interesante. Listo. Entonces. Pues dependiendo digamos de cada uno de esos elementos. Entonces y dependiendo también estén de en el lenguaje objetivo o el lenguaje.

00:13:58:23 Sino pues la expresión de la forma en que sea. Pues dábamos registrar de una manera para traducirla a una forma adecuada en ese lenguaje. Si ahora, si no, por ejemplo define módulo muy raro y quiere traducir ese módulo a otro lenguaje. Es posible que a veces no, no es no exactamente lo que me esperaba, sí lo traduzca lo que me esperaba ahorita, cuando las cosas son un poco más, más claras, no tan complejas, pues digamos que la traducción realmente pues es muy interesante porque perfectamente desarrolla lo que uno ve que no querría.

00:14:29:03 Bueno, pues por ejemplo, aquí está dos declaraciones que ya aquí simplemente es como para observar documentación. La documentación tiene cosas muy interesantes. Miren por ejemplo aquí ese, este code DN code generation y aquí entre paréntesis angular, ese entonces nos tiene, digamos, información de collar, ha hecho para el el lenguaje, sí, listo, ya que hay cosas particulares del lenguaje y hay ejemplos para revisar allí.

00:14:56:13 Sí. Entonces la documentación también ayuda. Este, por ejemplo, es para mirar un poquito más, digamos la parte de detalles. Si en caso digamos del mismo se miren que aquí está una descripción corta, pero con algunos detalles interesantes, muy particulares, digamos, de la traducción. Hay en ese lenguaje listo, entonces son observaciones acerca de. De cómo, digamos el se nos acompaña también.

00:15:32:10 Bueno, entonces atrás habíamos hablado de que las funciones también tienen aquí unas opciones. Sí, pues algunas de esas opciones, por ejemplo, son optimice igual un valor, se le coloque aquí un valor ahorita, si revisamos algo acerca de eso, o poco o igual un valor, rehúsan análisis, igual van a poner esto entonces por ejemplo, o tenis igual un valor y se va, no puede ser true o false, entonces eso es para optimizar código inicia antes de que sea traducido o put.

00:15:58:06 Pues el valor aquí va a ser un tipo desafío. Ahorita enviamos estos dichos para hacer un poco más de referencia, rehúsan análisis en particular ahí. Qué pasa cuando uno por ejemplo, trabajando con funciones? Hay parámetros que tienen ciertos tipos o la función devuelve un valor en cierto tipo, pues pueden haber conflictos cuando se traducen a un cierto lenguaje, entonces se hace un análisis.

00:16:42:18 Entonces puede pasar que se el análisis uno se reduzca, pues el true puede tomar valor true o false. Visto entonces ahí depende, digamos, si no, por ejemplo, el valor de es el de value. Esto significa que se reducen a análisis, o sea, aquí pueden cometerse errores. Sí, sí, pero digamos que no, si estamos entonces a contar, si se reduce el tiempo, sí y la memoria requerida, pero digamos que en ese caso va a reducirse, digamos, la cantidad de va a aumentar la posibilidad de que llaneros sí, y en el caso, digamos de que porque vemos falso va a pasar todo lo contrario.

00:17:15:03 Si sí, entonces como que uno gana tiempo, pero digamos que con que habilidad de cálculo se pierde por una y viceversa, digamos. En el otro caso es que uno puede jugar con ese tipo de variables dentro de las opciones que coloque para las funciones que que digamos use para traducir. Bueno, también digamos que se utilizan otras funciones por aquí, aquí, si es que aparecen acá, fuerza y claro de usted a falta y listo, pues son otras funciones más.

00:17:42:21 Aun así, pongamos en esos tipos que vienen a continuación como las podemos utilizar. Bueno, vuelve y juega y la documentación se cumplimentado bastante, digamos. Lo se, fue a decir y unas observaciones. Acá va a ver más adicionales el tipo de retorno de un procedimiento CMD, si no es declarado, si por ejemplo, si no se declara que cuál es el valor que retorna?

00:18:14:21 Pues el ID dentro de un análisis que hace allí implícitamente, pues le debe dar como un tipo implícito a ese valor que retorno. Si ahora sí, si hay más de una instrucción, reto los tipos de todos los objetos de bueno deben ser compatibles en ese lenguaje que que sea el o tritio. Y si la declaración contiene una secuencia de objetos, entonces la secuencia de secuencia se traduce a un arreglo dentro del código, digamos, de del lenguaje objetivo.

00:18:51:23 Y esto son como detallitos así va a tener en cuenta, digamos con respecto a, a la, digamos, a a esta parte de traducción de códigos. Vamos a mirar algunos ejemplos aquí, pues ese primer ejemplo, por ejemplo, tenemos acá un procedimiento aigo de Maybe y le estamos diciendo imprima código de esta función F en Java lista. Entonces leamos simplemente ahí y lo mismo aquí para hacerlo en patrón o para el se en matlab para en visual Basic.

00:19:51:24 Dese cuenta que lo podemos hacer utilizando código, si corremos eso nos aparece esta expresión de aquí visto. Pues bien, y tenemos el código del procedimiento en Java, si tiene que está utilizando digamos una clase y un patrón. Si la sintaxis en MATLAB, un Visual Basic, bueno, esto es un ejemplo pequeñito. Otro ejemplo pues es por ejemplo aquí, bueno, es un es redundante que tenemos los tests y tenemos aptitudes y un procedimiento G Listo, DNI por entonces aquí generamos código, entonces estamos digamos, entendamos como primer parámetro el procedimiento y le estamos colocando entonces opciones, pues por aquí desaparece de pantalla y a poco de práctica aquí empezamos diciendo que es entero, entonces los valores aquí x

00:20:15:06 gz y es lo que retorna, va a tener valor entero. El nuevo string, entonces la salida, el código de salida se va a hacer en ese caso una cadena de caracteres y esto entonces va a ser una cosa como esta y ahí estará la cara. Digamos que lo que va a ser es que es lo que es, que les está haciendo el sprite.

00:20:49:29 Bueno, y otro ejemplo yo aquí entonces por ejemplo en Fortran y el no es, digamos, el el, el es insensible, con mayúsculas y minúsculas. Entonces por ejemplo, aquí tenemos un código, un juego de béisbol sí que se acaba. Es otro procedimiento que coge un una función que tiene un parámetro numérico y otro que tiene un array. Si aquí aparece una equis mayúscula en minúscula, les vamos a al hacer la traducción en puerta, nos aparece así, nos hace una traducción.

00:21:35:01 Pero entonces qué pasa? La equis minúscula nos está advirtiendo que la está transformando, le está convirtiendo en una nueva variable. Seji Si, entonces digamos que dentro de un análisis especial que nació allá dentro, entonces también digamos tiene esa información que nos indica, digamos como ese comportamiento fuera de ese pequeño, digamos, ramo de situaciones que pueden ocurrir. Pues esto por ejemplo en lo que ocurre ahí con con Fortran, bueno, código intermedio es importante, digamos, tocar ese tema, pero más no porque pronto lo conozcamos y simplemente es como información.

00:22:06:07 No es tan, digamos una cosa que vayamos a entrar en diciembre, pero es fundamental saber entonces cuando uno entra, por ejemplo, código de Maybe sí y le aplica una de esas funciones para traducir o o simplemente digamos, llega ahí. Queremos traducirlo a uno de los lenguajes de programación que están habilitadas con Collen en ella. Entonces ese código se transforma en implícitamente una forma intermedia.

00:22:40:03 Es como un lenguaje intermedio visto ahorita. Miramos entonces en particular un ejemplo vaya bien, entonces es esa parte del lenguaje como intermedio, es una forma como desgranar el código inicial. Sí, es como una forma de volverlo como excepciones atómicas, si, entonces, por ejemplo, cuando él hace un análisis para traducir, él realmente lo hace sobre esa versión intermedia, sobre esa forma intermedia.

00:23:29:19 Si, pues allí es donde revisa errores o da advertencias, listo. Bueno, entonces esa parte intermedia a veces es útil analizarla antes de aceptar, digamos, de atrasos como tal. Entonces, si el intermedia Code es un sub paquete? Sí, del paquete en derechos, sí. Entonces no colocas juntos John y le coloco intermedio. Esto ya, si es que uno puede llamar, digamos, el paquete o la función, entonces miremos a ver, por ejemplo, tenemos una especie de como dos, de acuerdo, vamos a Aplícale Code, genera dicho y vamos a llamar, digamos, aquí está este elemento intermedio, a ver quién era eso ni qué género.

00:24:09:20 Aquí aparece, digamos, una estructura o un argumento que se va a llamar esto sí es simplemente como un elemento. Digamos que se puede entender como del lenguaje intermedio si nos aparecen acá unos parámetros primeros en la lista de indicando que este elemento es expresión, o sea que es el cuadrado -1 dentro del lenguaje intermedio. Es como un tercer referencia, como una tabla, entonces no es tal, es el nombre de una tabla esto y es point statement secuencia va a ser referencia que a los elementos de estados.

00:24:33:17 Entonces aquí que hay un asigna miento, sí, entonces a un elemento que se le llama un nombre de base, un artículo, una suma, que lo que es ya acá también tiene la expresión y la suma que tiene, pues en este caso serían dos elementos, cierto, uno está formado por un producto y así que aquí está desgranando la información de dos con la potencia de X afuera.

00:25:03:29 Y el otro elemento que está sumando es pues el negativo de una lista. Entonces por eso les decía como que el el código intermedio es como tener la misma información pero expresada digamos de forma bien desganada como atómica, en formato big. Y esto pues uno si quiere hacer programación bien a fondo, pues seguramente tendrá que empezar a trabajar con ese, con esa parte y con internet y.

00:25:40:14 Y eso ayudará mucho. Y vamos a entender un poquito más para, digamos, para que públicas. Bueno, esa sección es la más importante. Esta primera parte, sí. Entonces hablemos un poco. Extensión de la capacidad de traducción del paquete code genera hecho los como lo hice aquí es posible definir juegos 14 que permiten generar código para otros lenguajes. Como les había comentado al comienzo de la charla, las herramientas para esta tarea están disponibles en estos paquetes.

00:26:15:24 En este paquete lenguaje, definición. Eso es un paquete de tener hechos. Bien, entonces se puede de forma completa o se puede, digamos, ampliar si la capacidad de un paquete que ya chista o pues se genera uno completamente nuevo. Si es no, pues le damos un paquete interesante que lo dedica. Me gustaría, no sé traducir algo, digamos enunciados pensando de que tiene edición de textos.

00:26:42:17 Bueno, sé por decir algo y se podría trabajar una cosa de esas si u para una disciplina particular. Si, obviamente que hay que revisar, digamos la documentación y poquito más de digamos de todas las armas que hay ahí para hacer programación, eh? Con esto de códigos y vamos a hablar un poquito de acerca de eso, no tan tanto detalle, pero a groso modo.

00:27:24:11 Bueno, entonces vamos a revisar, por ejemplo, con este y selección sintaxis de aquí. Este es un diez, tenemos code generation, hacemos referencia al paquete lenguaje definición y vamos a de aquí a sacar normal es portable que es Lunch Language y colocamos entre paréntesis, sin argumentos, o sea, si tenemos un procedimiento y evaluamos esto, nos aparece una lista con los paquetes y que aquello con los o los lenguajes a los cuales se les puede hacer, digamos ampliaciones.

00:27:44:09 Si por decir alguno puede coger un paquete de estos y no sea adicional de cosas nuevas, o de pronto cambian de una función cinta que les pide algo de una forma o así de otra. Si, entonces esos son los paquetes a los cuales uno les puede hacer ese tipo de cambios, pero también uno puede crear otros nuevos, como les decía anteriormente.

00:28:11:08 Bueno, entonces para hacer todo este proceso, entonces una primera fase es lo que se llama la fase de impresión. Entonces, como les decía antes, uno tiene el paquete allá, era dicho entonces con el código y aplica una función de estas y traduce, pero realmente recuerden lo que se les haya comentado antes de traducir. Hay un paso intermedio que es generar como ese código intermedio.

00:28:50:15 Después de generar el código intermedio y antes de hacer la traducción, lo que él hace antes es un proceso de impresión. Listo, entonces el proceso de impresión es como tratar de trabajar sobre el código intermedio y traducir partes por partes de esas secciones que están como autorizadas. Sí, entonces en eso consiste todo este proceso de traducción, escoger las secciones del lado del del lenguaje intermedio, empezar a traducir parte por parte ver.

00:29:25:17 Vamos a unir algo acerca de la definición de un traductor personalizado. Listo? Entonces, aquí vamos a explicar un poquito, digamos como es proceso, pues utilizamos lo que se entiende como módulo printer. Listo, entonces el paquete code generation. Sí, asunción. Modulo llamado módulo printer una impresora. Si este es el que contiene datos y manejadores de impresión que son específicos para un lenguaje o a veces de forma genérica y eso.

00:29:59:06 Entonces hay dos formas de definir un módulo. Es como parece aquí, sí, y ese que es utilizando este estén este par, este, bueno, esta variable y exportable, el paquete agua, este de división y en el primer si o bien utilizando esta sintaxis de aquí sí que en particular de arriba es para obtener un printer, un impresor genérico y esté acá es para obtener un impresor y ya está más enfocado.

00:30:25:17 Y vamos hacia un lenguaje específico de los que estaban por ahí atrás que mostramos en la lista anterior. Bueno, entonces aquí aparecen algunas de las funciones de printer. Recuerden que un printer que les acabo de decir es un módulo y un módulo como tal que tiene variables, que exporta. Y las variables pueden ser en otra vez, pueden ser elementos que pueden ser, me refiero, procedimientos en particular.

00:30:57:16 Bien, entonces esos son algunos de los más importantes. Si, por ejemplo, a Chucho define una traducción para un nombre, un tipo de función a que Operator define una traducción para un operador, digamos un área urinaria a Spring Handler. Esta vez si un procedimiento es un controlador de impresión con, es que aparecen ya algunos términos, digamos ya un poco técnicos dentro de esa parte de traducción de lenguajes.

00:31:22:18 Sí, pero no voy a entrar en tanto detalle. Aquí aparece, por ejemplo, esas funciones GET, que lo que hacen es como devolver, digamos como tener, que era lo que uno define aquí. Y bueno, hidden print imprime un buffer, sí, o sea, un espacio temporal de memoria vintage. Bueno, sí, digamos algo que inicia la impresión de una forma intermedia.

00:31:54:11 Bueno, son funciones que el primer vamos a mirar entonces, por ejemplo, es un poquito acerca, es bueno, entonces este código que viene a continuación ilustra cómo se almacena y se recuperan datos se un módulo printer. Entonces esta es 1/1 de acá. Entonces cargamos el paquete language definición que es un sub paquete de tener hello y de entrada printer y es en que el nombre printer le estamos asignando un impresor.

00:32:22:27 Si, un. Un impresor. Módulo impresor genérico. Bien, ahí ya se lo deje, lo asignamos. Entonces utilizamos la función A operator, que es la que llamamos antes y entonces a adición le vamos a asignar musa, a vamos a definir allí el operador sur. Si bien aquí vamos también a definir una función, si la función se va a llamar función coseno.

00:32:38:20 Bien, aquí vamos entonces a obtener qué es lo que hay en el operador adición? Y aquí vamos a mirar en lo que es, en el operador de. O sea que se nos devuelve la información.

00:33:23:11 Bueno, vamos a mirar cómo se puede definir entonces un traductor de lenguaje. Entonces, aquí digamos que se pueden ilustrar dos métodos. Uno es utilizando este. Este comando que aparece aquí es un comando del lenguaje definición. Si se llama define, sí, entonces, en particular, para este ejemplo que vamos hacer, pues vamos a suponer que existe una función, Mi Michele, que es, digamos, es un tipo de multiplicación, si de elementos distinta, la usual que digamos tiene para realizar la con el producto normal.

00:34:06:20 Si, y entonces aquí utilizamos code generation, digamos, aquí cargamos entonces el paquete language definition y utilizamos entonces el el comando de point que les acabo de decir. Y esto es el primer parámetro que aparece acá, es un string. Este va a ser referencia sí al nuevo lenguaje y vamos a decir que el es extiende al lenguaje, si bien es cuando yo le pego ahora esta función de acá, el me está agregando, si una forma en que va a imprimir el lenguaje y o lo que yo quiera, digamos casi.

00:34:34:12 Entonces qué es lo que va a hacer? El va a reemplazar el producto, por lo que así llamo la función mi debut. Si utilizando dos argumentos, pues ahí lo que estamos haciendo es armando un lenguaje nuevo donde estamos cambiando una de las formas en que escribíamos un producto por medio de otra expresión, digamos, utilizando una función que exista por allí.

00:35:15:02 Sí, pues esa es una forma de definir nuevos lenguajes, extendiendo uno pronto el símbolo, un pequeño cambio. Pues entonces aquí lo que les estaba comentando ese acting handler, sí, sí, toma un nombre y un procedimiento con argumentos, sí, y eso es lo que nos permite, digamos, imprimir una expresión nueva aquí, imprimir una expresión where. Ah, bueno, aquí también se utiliza el primer print, sí, pues es precisamente esto que lo que hace es imprimir, es esto es lo que va a traducir realmente?

00:36:03:06 Sí, eso es lo que va a traducir cuando hablemos del producto, eso es lo que va a traducir. El sí es el que imprime la traducción. Bueno, la otra forma, digamos, y para diseñar, digamos, lenguajes nuevos o ampliarlos, es por medio de la creación de un módulo de definición de lenguaje. Listo, pues resulta que los módulos de definición de lenguaje son modelos que tienen dos variables que exporta una que se llama un target y otra que se llama printer, al estilo de lo que habíamos dicho antes, pues el módulo printer tiene las mismas relaciones de lo que habíamos hablado antes y esto bien, aparte de que yo creo que es importante para tener en cuenta,

00:36:52:17 entonces eso ya lo habíamos dicho. Entonces el módulo printer, si es que hay, digamos, formas de definirlo de cuatro, entonces una era de forma genérica o la otra era utilizando, digamos y digamos, basado en un lenguaje muy específico. Bien, para el target, ese es el que devuelve un string. Si la salida traducía al estilo de lo que estaba haciendo el PRI, la función print acá del primer bueno, entonces el cuerpo de definición del módulo debe contener, pues precisamente lo que se hace con las variables que exporta, que serían el printer y el pintar.

00:37:45:26 Listo? Bien, otra cosa importante aquí es que esto se debe colocar entre esas comillas, sí, o sea, como que se debe retrasar la acción de la ejecución del módulo. Si eso es importante aquí. Bueno, miremos este ejemplo donde se está generando un lenguaje nuevo. Dos El lenguaje se va a llamar a puertas, portón 77 y vamos a decir que es un módulo se coloque entre comillas, listo, pues él exporta dos variables, las que les acabo de decir primer y principal es printer simplemente lo que hace es que evalúa el lenguaje porta y simplemente utiliza el digamos en el procedimiento printer que vuelve como tal y en el print target.

00:38:13:00 Que va a hacer entonces? Él va a imprimir si, entonces fíjese que quiero que va a ser. Es esta estas comillas de acá y el al que está en el caso, entonces él va a imprimir lo que imprime normal el mismo FORTRAN, pero ahora en mayúscula, cuando le colocamos esto porque es en sí este lenguaje que lo que está haciendo está haciendo lo mismo que el Fortran.

00:38:43:20 Pero de todas maneras, si ya mire, toda la ejecución se hace en Avenida 30 en lo que va a imprimir. Bueno, vamos a darle a ver aquí ya. Entonces lo, lo digamos, lo activamos. Miremos en este pequeño ejemplo como se usa entonces, pues aquí definimos un procedimiento, código, mapa y hacemos código que vaya derecho, porten de ese procedimiento.

00:39:16:12 Entonces aquí se genera pues simplemente digamos lo que sería en código J. Ahora vamos a utilizar el código que acabamos de definir. Entonces, qué hay en el hecho de que colocamos acá la expresión código, mapa y la lengua es igual al nuevo lenguaje, listo, entonces ahí queda el nuevo lenguaje. Esta parte del caso es la pues ahora, porque lo mismo acá arriba de 50, aquí yo lo mismo, pero ya en mayúsculas, si presiono pueden alterar cosillas de ese estilo.

00:39:51:03 Bien, pues obviamente se pueden hacer más cosas y empezar a revisar un poquito más en la documentación de cómo hacer las expresiones. Bueno, esa parte era como la sección más larga, el contenido. Vamos a leer, digamos de sus secciones un poco más subsecciones, entre comillas grandes, digamos, y a groso modo. Bueno, entonces empezamos a utilizar código compilado micro usando código apilado de la idea de aquí en la siguiente.

00:40:48:22 Yo tengo un lenguaje distinto, amable, tengo un código y supongamos, yo compilo ese código y yo quisiera poder utilizar ese código dentro de mí. Obviamente tiene, pues está referenciado digamos, a alguna función, digamos que se aplica dentro del contexto matemático. Si ubicamos dentro de la visión, digamos de de algún esquema algorítmico, si que se ajuste, no? Entonces hay digamos tres posibilidades que realizar, como lo hice allí una vez utilizamos lo que se llama funciones externas, si otra generación de routers, si envolturas, esas escenas además de una red de contactos que con las cámaras de programación digamos que son también digamos ahí nociones en varios lenguajes existen varios lenguajes de programación y también lo que se

00:41:22:29 entiende como personalización de esos routers. Sí, pues de este último no vamos a tocar mucho, vamos a revisar un poquito el primero y el segundo, como que uno acá en al otro. Entonces los como dice allí, cualquiera de los tres métodos se puede utilizar para llamar a una función externa. Listo. A veces el método uno es suficiente método uno básicamente sirve para trabajar, digamos, con estructuras de datos elementales básicas.

00:42:14:18 Sí, es como, digamos, elementos numéricos y strings de cadenas, digamos básicas, apuntadores de T, de elementos de punto flotante o como para ese clima, crisis. Y entonces si no tiene, por ejemplo, funciones donde solamente aparecen de ese tipo de cosas, digamos que puede utilizar ese primer método, que es lo que se entiende como un método de funciones. Esther Hablamos un poquito de salud y ilustramos el método de brackets, entonces es al estilo de funciones externas, entonces ella se le coloca un parámetro que se llama Rapport, pero realmente que digamos aquí la esencia es que si uno tiene un código con ya no necesariamente elementos básicos sin datos básicos como números o matrices o vectores, sino

00:42:53:17 ya elementos un poco más complejos. Entonces allí sí es interesante utilizar ese párrafo, pues él utiliza el código externo sí, para poder manipular aun en la compilación y luego sí por medio de hacer, digamos la compilación, digamos en dentro de que el código en que sí he traducido dentro de ellos, digamos que obviamente hay ciertas condiciones. Entonces, por ejemplo, ya hay Fortran, digamos, aquí no tiene como la posibilidad de trabajar en ese tipo de estructura.

00:43:22:13 Sí, pues solamente digamos aquí se reduce así esta parte se reduce a sus tres lenguajes. Si lo que son estos métodos estoy comentando aquí de usar como compilador macro, si no estoy seguro si estoy se está haciendo para, para trabajar en muchos lenguajes, pero digamos que por la disponibilidad. Lo que tengo entendido es que hasta ahora se está trabajando en Excel, en esos tres lenguajes para ese tipo de situación.

00:44:05:00 Bueno, y la otra posibilidad es personalizar las barras, pues aún para situaciones un poco más complicadas, a veces uno lo que puede hacer es hacer buffers específicos y se utilizan APIs especiales externas, pues digamos que digamos de lenguaje, si bien de lenguaje se soportan. En ese caso, entonces para Java sí solamente se puede aplicar el primer caso en el método para hacer se pueden aplicar los tres y para Fortran el primero o el tercer, si el primero o el tercer.

00:44:39:15 Vamos a mirar un poquito en el checamos del método uno a ver esto que está aquí, que en dentro de esta expresión larga es código escrito en C y esto es código escrito en si. Bien, entonces aquí tenemos digamos funciones. Si, pues estas funciones yo les puedo colocar en un fichero y yo puedo generar un elemento de leer.

00:45:17:08 Visto una librería en las dinámicas, pues esta parte necesita de conocimiento, es de compilación y vamos allí. Pero se puede generar, digamos, un archivo es que tenga precisamente esas funciones, pues para llamar funciones externas es lo primero que uno hace es armar una biblioteca. DLL Es hablando para el caso de Wix, esto también se puede hacer, digamos para mágico archivo, para que un sí dependiendo digamos allí, entonces uno puede generar un ciertas librerías con función esto.

00:45:55:12 Bueno, pues el paso siguiente es especificar digamos como las dos características de la función si pues nombre, tipo de parámetros y digamos el nombre de la librería. Y el otro paso que es importante ya después es invocar la función que vamos a mirar dentro de este ejemplo no va a correr esto entonces y esto hoy ya está corrido, no se que u suena increíble así para que se diera.

00:46:26:06 Entonces ahí está simplemente lo que hice bueno, está bueno. Y si lo que estamos haciendo aquí, pues mira mi nueva suma. Mi nueva suma es el nombre de una función lista que vamos a obtener a partir de este comando vamos a utilizar que se llama define externa y esto, pues esta es una función externa que estamos utilizando, pero resulta que estamos utilizando la función F suma.

00:47:01:13 Esto f suma que se definió en este, en esta era en la que está la primera capa desde la primera fila. Si F suma, esa tiene de entrada dos parámetros que son done y retorno. Un parámetro. Ok, listo, entonces colocamos en el primer parámetro aquí dentro de estas comillas el el nombre de la función. Aquí colocamos un parámetro de tipo otro parámetro de tipo doble para indicar los parámetros ya ya retornable.

00:47:36:19 Aquí colocamos clic, aquí colocamos tipos. Aquí colocamos el nombre de la librería. Yo generé una librería precisamente con ese código listo, con este código, esa librería. Entonces la pegué, digamos, en un archivo, vamos a ir por acá arriba, pero si vamos a ir por acá arriba y entonces aquí se llama opciones y vemos acá seguridad. Entonces miren, aquí se bibliotecas ejecutables.

00:48:17:12 Una de las bibliotecas ejecutables es esto que coloque acá de yo puedo, aquí y añadir un no sé, una dirección, esto es si dentro del equipo donde yo coloco la biblioteca, entonces ahí me la va a cargar. Sí, pues precisamente yo generé un dll utilizando Visual Studio, por ejemplo. Sí, entonces ahí colocamos las funciones y entonces simplemente aquí le coloco el nombre del dr y llamé funciones, punto en él visto entonces hay por riesgo.

00:48:47:03 Bien, pues este proceso acá es la especificación de la función y en aquí ya voy a utilizar entonces mi nueva última ASUMA, sino una función está utilizando una función externa. Sí, una función externa, pero es un pequeño ejemplo, un pequeño ejemplo, digamos, dentro de la utilización de este concepto de funciones externas, miremos dentro de los brokers, sí, porque es algo de los valores.

00:49:55:00 Entonces, bueno, para este ejemplo, entonces tenemos un código, este código aquí escrito, digamos, sitio, una pequeña sintaxis de código se listo, los meto en un método de Newton. Bien, entonces vamos a correr aquí esta cosa. Bien, una y lo corrimos. Ahorita hablamos de código, abuela. Acá ya corrimos. Y así fue. Vamos a ampliar este aquí a entonces. Mire, tenemos Newton dos puntos, igual aplicamos, define, es interna, pues el nombre de la función, que es la nombre que tenía ya mire por lo menos por acá atrás, entonces mire, la función tiene un parámetro que es un procedimiento u otro procedimiento que se reprima y dos elementos de tipo doble.

00:50:31:09 Sí, dos. Ya no solamente hay datos que son de tipo doble precisión, sino ya hay elementos que son funciones, procedimientos y por eso es que ahí necesitamos utilizar. Ahí es donde se utiliza el broker. Sí, ese tipo de cosa. Bien, entonces lo mismo en funciones, punto a dlls, guardo esa función y se cargo. Entonces definimos a cada dos funciones, una que a X le hace corresponder el polinomio y otra es que prima que a x se corresponden la derivada y not list y pues entonces ahí nos devuelve digamos de los dos parámetros.

00:51:06:20 El parámetro este aquí es el valor inicial del método de Newton. Este elemento, lo que es una tolerancia, es una cosa muy pequeña y aquí la imagen de ese valor es la que nos dio. Ahí se utiliza el método new de una función externa y bueno, entonces digamos aquí es importante tener en cuenta, digamos que uno tiene que ser familiarizado un poco con la parte de recopilación, consiste con otros lenguajes para poder trabajar con esto de los DNS sí es importante eso.

00:51:31:09 Bueno, pues eso, con respecto a usar pollo compilado en etc bueno, esta última parte simplemente lo publiqué. Como le dije al comienzo. Simplemente voy a comenzar a comentar un poco acerca de usar me y con el código compilado. Entonces la idea aquí ya es como hacer lo contrario, que era lo que estábamos haciendo, cogíamos código externo y la idea era utilizarlo dentro de ella.

00:52:04:23 Pues ahora la idea es coger herramientas de Maicol y Puente y salas en código externo, esa es la idea. Entonces mejor proveer lo que se tiene como el open maple. Sí, Open Maple es una interfaz de programación de aplicaciones listo y proporcional. Cori Y es así como lo dice así y estructuras de datos es muy amplia y es bien interesante, digamos, yo voy haber explicitado un ejemplo de pero entonces tendría que entrar a hablar.

00:52:37:14 Es realmente prácticamente de programación en C y pues como que si no era el no era la cuestión, pero digamos que en sí la idea es es la idea. Hacer es poder utilizar herramientas de Maipú, algunas funciones que se tengan, trabajar de forma externa, si dentro de, por ejemplo un código de c decimal más, si esa es la idea, bien, entonces uno lo que hace es cargar una una librería allá y utilizar herramientas de micro para ello.

00:53:10:09 Qué se necesita? Se tiene que tener software de Maipú? Si, y entonces uno ya con eso tiene que pues simplemente cargar la librería y realizar digamos como que algunas direccionamiento entre donde se encuentren las cosas para que sí se pueda cargar la librería. Efectivamente, si pues hay un proceso de recrear el núcleo de México y controlarlas allí, sí, como la ejecución, o sea de la creación del núcleo y la ejecución de de los elementos, pues esto ya es un poco más técnico, está.

00:53:58:12 Creo que en otra charla podría hablar un poco de ese tema. Pues eso es como a groso modo el el elemento aquí importante entonces es que ya como el tal escena, eso realmente eso es lo que habría que contarles, digamos de la de la parte de programación. Miremos un poquito entonces de de conclusiones. Bueno, entonces la charla que de, de que hablamos, hablamos de participó de tener hecho que nos servía para traducir juegos de por en otros lenguajes se discutió también acerca de como se puede extender con el núcleo si y pues usar código compilado si usando integrando código compilado dentro de mapa y pues lo que no alcanzamos a hablar a groso modo, pero

00:54:31:00 digamos que por lo menos en la idea inicial, así que fuera de lo que se entiende como bueno el otro, es interesante que se puede ampliar o recrear nuevas estructuras, digamos de traducción de lenguajes de programación. Si, pues realmente con la misma y hemos utilizado con el tener hecho bueno y pues significativamente pues que el potencial de mapear hace evidente, digamos, el hecho de que se pueden integrar lenguajes para poder resolver problemas.

00:54:53:27 Si digamos en todas las disciplinas en las que sea posible, digamos, intentar con algoritmos. Entonces algo de esto es más o menos la idea de lo que pretendía contarles. Sí, a veces, digamos, estas charlas se vuelven demasiado técnicas, pero pues por lo menos la idea es como darles una idea de lo que se puede hacer. Yo no soy un especialista, digamos, en programación completamente.

00:55:23:22 Ahora conozco algunos lenguajes de programación que hace rato uno trabaja con el grupo Phyton. Lo conozco no hace mucho. Yo se que ahorita es uno de los lenguajes con los que más se trabaja y sé que se están haciendo cosas así, que se están haciendo cosas ahorita en latín para mejorar esa parte, para integrar, pero un poquito más y y Java también digamos esta parte open maple, y ahí como que también hay mucho trabajo por ese favor, es parte.

00:56:10:27 Sí, de usar más y ponen código compilador Java. Sí, eso también como que se está trabajando bastante. Si, entonces esto de, digamos, estudiar y tienen muchas cosas interesantes para hacer, por ejemplo la tesis como jueves clase es un lenguaje de código y pues sí, digamos aquí ya hay como algunas utilidades, pero uno podría perfectamente si tiene un texto, digamos, armar un trato a la medida de lo que uno desea, por decir algo, no sé, pues una de las como de las cosas ya a groso modo que que podría como publicar.

00:56:41:05 Bueno, entonces no sé si tienen preguntas de casualidad. Bueno, profe William, buenos días. Muchísimas gracias por el espacio que nos ha brindado por, por, por esta charla y por esa temática tan interesante y pertinente. Si hay unas preguntas que nos dan mucho, llega entre los participantes, entonces pues vamos a comentarlas con el Consumer C para que todo es posible.

00:57:20:18 Se puedan solucionar. Bueno, una primera pregunta es, aparte del lenguaje propio de N y cuál es el siguiente lenguaje de programación más utilizado en la herramienta para hacer desarrollos? Pues a ver, Napoli se ha trabajado con un núcleo, ese si, entonces de yo diría que precisamente se hicimos más, digamos banco de la mano, ahí, por ejemplo. Si, sí, eso es lo que yo noto ahí, digamos de lo que uno puede observar, digamos en todos esos trabajos de traducción.

00:58:16:09 Si bien, perfecto, muchísimas gracias. A parte de la ayuda de, a parte de la información que es Merci, nos presenta en el menú de ayuda existe alguna bibliografía, lo o lugar donde se puedan encontrar mayor información acerca del use Python dentro de mapa es ms puedo recomendarle a los participantes pues mira que sabes que no he encontrado mucho acerca de este, digamos, de traducción de Python, o sea, por lo menos lo que he visto es que desde el lenguaje mapuche se puede traducir afecta, si no contrario, por lo menos no es rabino, no es lo observado y no he visto documentos que como tal, yo creo que así se está trabajando en eso, pero por

00:58:45:21 ahora no hay mucha documentación. Sí, exactamente. Respecto dice grupo de pronto comenzando algo un poco más familiar acerca de esta pregunta, como indica eso no es cierto? No más que todo en este momento, debido a que hace al Mundial. Hace dos versiones atrás, Nicola escribió reforzar ese lenguaje entre se herramienta precisamente por la llegada de aplicaciones en ciencias de datos, inteligencia artificial.

00:59:12:11 Si se encuentra mucha información dentro de los foros técnicos, pero sí bibliografía como tal no es tan conocido aún como lo menciona William Nystrom. Guía Disculpen lo que preguntar y que nos hacen esto de acuerdo a lo que usted explicaba? Para que sirve crear funciones junto de en Maipú? Porque quisiera uno o porque cree media uno que sería bueno crear una función de ese tipo?

00:59:52:07 Pues digamos aquí la funcionalidades, crear una librería. Sí, y que pues podamos utilizar esos, esas funciones para digamos, reemplazarlas, utilizarlas acá es que en el software como tal, si en esencia es eso, si ahora no estoy seguro si la es, digamos, si la extensión de ser punto dll sea, digamos, o sea, si hay otra posibilidad, digamos, de otro tipo de extensión aquí, pero digamos que yo probé con otras y no funciona tan bien, realmente tiene que ser DLL por lo que he trabajado.

01:00:18:10 Tengo que ser sincero que no soy un especialista en todo esto y me papado porque me gusta mucho el tema, si, más aún si ha mejorado ciertas cosas, pero como que ha sido muy lento, si, poco a poco. Yo no sé si es que como les estoy diciendo se está trabajando hasta ahora y como que es posible que después como que hay un salto salto amplio en esa parte de traducción.

01:00:47:26 Si, por ahora la parte de los DLL creo que para al menos en el caso de Windows no es no digamos, hay otra posibilidad, pero es eso o sacar de ahí funciones en el la librería y en ese, en ese, en ese punto vale, pero muchas gracias. Perfecto. Y una última pregunta profe Maipu un soporte de programación paralela para aplicaciones que necesiten recursos muy fuertes en Chile para su ejecución.

01:01:20:09 Si, o sea maple maple tiene digamos para trabajar con hilos. Si programación paralela. Si, obviamente que digamos que hay que configurar el computador y figura en África de Maipú para que vayan aquí. Tiene sentido es en computadoras que que tengan digamos el potencial. Si, de por si la librería que yo había creado por ahí, una parte que la que digamos de alguna Corín que era muy denso de la genere así por por hilos.

01:01:58:01 Pero pues depende del computador, depende del computador que si pues a ver, no, pero si hay posibilidad de hacer programación paralela, si señor dice profe perfecto. Bueno profe William, pues no hay más preguntas de los participantes por ahora eh? Muchísimas gracias por por el espacio y nuevamente muchas gracias. Pues lo pertinente y bueno, lo actual de esta temática no es dar un salto, como indicas, marca un poquito más allá el impulso y digamos más convencional de la herramienta o un uso más avanzado.

01:02:34:22 Si es bastante interesante y ver que eso finalmente lo que hace es ampliar Spectre aplicaciones de desarrollo que se puede hacer en Japón, entonces es muy bueno si, si. Si señor, no, lo que te lo quería decir que esto de open medieval y es muy interesante, o sea Daria piso para hablar bastante, pero pues digamos que ya es más más hacia el lado de programación en C C++ pues digamos que, pero digamos que la vista de interacción de mismo la ya es muy muy muy muy muy chévere.

01:03:13:24 Si, pues, por ejemplo, no más ese campo me parece que es un campo que se puede abrir muchísimo. Um, claro que si señor. Bueno, entonces muchísimas gracias también, pues queríamos recordarle a nuestros participantes que en ese momento hemos lanzado una encuesta para que se nos puedan ayudar con sus opiniones de pronto también con sus comentarios. Eso para nosotros es de mucho o de mucha importancia, porque podemos conocer sus necesidades y también conocer temáticas que ustedes contestarían y pueden tratar más adelante por nuestros expertos en la herramienta.

01:03:49:05 Bueno profe, muchísimas gracias nuevamente por su tiempo y muchísimas gracias a las personas que no, pero generosas también y nos acompañaron en el día de hoy. Bueno no gracias a ustedes y. Y pues bueno que se entusiasmen con con la programación, digamos de los lenguajes. Muy interesante. Muchísimas gracias. Creo que sí, señor. Nos despedimos entonces. Una feliz mañana para todos y los invitamos para que estén muy pendientes de entre sus correos electrónicos a través de nuestra página web, para saber y conocer las novedades de como se va a encontrar.

01:05:27:12 Desarrollar. Pero mañana que. Que. Muy bien. Gracias. Hasta luego. Para mayor información respecto al software o en temas relacionados, no dude en contactarnos a través del correo electrónico, entrenamientos a software Ya.com o visitar nuestra página web triple o punto Software Guión Ya.com.

Conectividad de Maple con otros lenguajes de programación


Maple es una herramienta sumamente poderosa que ofrece una característica única: la capacidad de trabajar con diversos lenguajes de programación y facilitar la traducción y conversión de código entre ellos. En esta presentación, exploraremos las funcionalidades de Maple para traducir la sintaxis del lenguaje propio de Maple a otros lenguajes, así como la posibilidad de traducir código de diferentes lenguajes a la sintaxis de Maple. Así, aprenderemos a utilizar de manera eficiente las herramientas disponibles para aprovechar al máximo las fortalezas de Maple y los lenguajes de programación más populares. También descubriremos cómo traducir código proveniente de otros lenguajes a Maple, abriendo así un mundo de posibilidades para trabajar con diversos entornos de programación. Al hacerlo, obtendremos una solución integral y eficiente para satisfacer nuestras necesidades de desarrollo.

Etiquetas relacionadas

  • Aprendizaje
  • Programming
  • Software matemático

¡Comparte este video con tus colegas!

Compartir

Ver más

Cotizar
Próximos
Eventos

X

Mis cotizaciones:

Comentarios a tu solicitud:

Cotizar