stringtranslate.com

¡Ir! (lenguaje de programación)

¡Ir! es un lenguaje de programación basado en agentes en la tradición de los lenguajes de programación basados ​​en lógica como Prolog . [1] Fue presentado en un artículo de 2003 por Francis McCabe y Keith Clark . [2]

Diseño

Los autores de ¡Vamos! lo describen como "un lenguaje de programación multiparadigma que está orientado a las necesidades de programación segura, calidad de producción y aplicaciones basadas en agentes. Es multiproceso , fuertemente tipado y de orden superior (en el sentido de programación funcional). Tiene relación , definiciones de procedimientos de acción y funciones. Los subprocesos ejecutan procedimientos de acción, llaman a funciones y consultan relaciones según sea necesario. Los subprocesos en diferentes agentes se comunican y coordinan mediante mensajes asincrónicos. Los subprocesos dentro del mismo agente también pueden utilizar relaciones dinámicas compartidas que actúan como almacenes de tuplas al estilo Linda . " [2]

Los autores también proponen que el lenguaje es adecuado para representar ontologías debido a su integración de estilos de programación lógica , funcional e imperativa . [3]

Ejemplo

El siguiente ejemplo ilustra el tipo "orientado a ontologías" y el estilo de declaraciones de Go!: [3]

Sexo  ::=  masculino  |  femenino .persona  <~  { díaDeNacimiento: []  =>  día .  edad :[]  =>  entero .  sexo :[]  =>  Sexo .  nombre :[]  =>  cadena .  inicio :[]  =>  cadena .  vidas :[ cadena ]{}}.persona :[ cadena ,  día ,  sexo ,  cadena ]  $ =  persona .persona ( Nm ,  Nacido ,  Sx ,  Hm )..{  díaDeNacimiento ()  =>  Nacido .  edad ()  =>  años entre ( ahora (),  nacido ).  sexo ()  =>  Sx .  nombre ()  =>  Nm .  inicio ()  =>  Hm .  vive ( Pl )  :-  Pl  =  hogar ().  añosentre: [ entero ,  día ]  =>  entero .  añosEntre (...)  =>  .. }.nuevaPersona: [ cadena ,  día ,  Sexo ,  cadena ]  =>  persona .nuevaPersona ( Nm ,  Nacido ,  Sx ,  Hm )  =>  $ persona ( Nm ,  Nacido ,  Sx ,  Hm ).

Conflicto con Google

En noviembre de 2009, Google lanzó un lenguaje de programación Go con un nombre similar (sin signo de exclamación ). McCabe le pidió a Google que cambiara el nombre de su idioma porque le preocupaba que estuvieran "sobre nosotros". [1] [4] El tema recibió atención entre los sitios web de noticias de tecnología, y algunos de ellos caracterizaron a Go! como "oscuro". [5] El hilo del tema abierto sobre el tema fue cerrado por un desarrollador de Google el 12 de octubre de 2010 con el estado personalizado "Desafortunado" y con el siguiente comentario: "hay muchos productos y servicios informáticos llamados Go. En los 11 meses transcurridos desde nuestro lanzamiento, ha habido una confusión mínima de los dos idiomas." [6]

Referencias

  1. ^ abc Claburn, Thomas (11 de noviembre de 2009). "El nombre de Google 'Go' genera acusaciones de 'maldad'". Semana de la Información . Archivado desde el original el 22 de julio de 2010 . Consultado el 14 de noviembre de 2009 .
  2. ^ ab Clark, KL; McCabe, FG (2003). "¡Vamos! Para agentes deliberativos multiproceso". Actas de la segunda conferencia conjunta internacional sobre agentes autónomos y sistemas multiagente . págs. 964–965. CiteSeerX 10.1.1.117.184 . doi :10.1145/860575.860747. ISBN  978-1581136838. S2CID  2047545.
  3. ^ ab Clark, KL; McCabe, FG (2006). "¡Programación orientada a ontologías en marcha!". Inteligencia Aplicada . 24 (3): 189–204. CiteSeerX 10.1.1.117.184 . doi :10.1145/860575.860747. S2CID  2047545. 
  4. ^ "Número 9 - listo - Ya usé el nombre de *MI* lenguaje de programación". 2009-11-10 . Consultado el 14 de noviembre de 2009 .
  5. ^ Brownlee, John (13 de noviembre de 2009). "Google no buscó en Google" Go "antes de nombrar su lenguaje de programación". Geek.com. Archivado desde el original el 6 de mayo de 2012 . Consultado el 18 de enero de 2010 .
  6. ^ "Ya utilicé el nombre de *MI* lenguaje de programación · Número 9 · golang/go". GitHub . Consultado el 4 de julio de 2019 .

Otras lecturas

enlaces externos