elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Sobre Genie [Python], Vala [C#]
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Sobre Genie [Python], Vala [C#]  (Leído 2,530 veces)
Maurice_Lupin


Desconectado Desconectado

Mensajes: 356

GPS


Ver Perfil WWW
Sobre Genie [Python], Vala [C#]
« en: 7 Marzo 2018, 19:02 pm »

Recién me topé con Vala que es un C disfrazado de C# , ahora aprendo otro de sus dialectos quizá muchos están enterados pero en el foro no he visto comentarios. Genie es un dialecto de Vala similar a Python. El compilador Valac lo convierte a C  :xD

¿Qué es Vala?
Código:
Vala es un nuevo lenguaje de programación que permite utilizar modernas técnicas de programación
para escribir aplicaciones que funcionan con las bibliotecas de tiempo de ejecución de GNOME,
particularmente GLib y GObject. Esta plataforma ha proporcionado durante mucho tiempo un
entorno de programación muy completo, con características como un sistema de tipado dinámico y
gestión asistida de memoria. Antes de crear Vala, la única manera de programar para la plataforma
era con la API nativa de C, que expone muchos detalles no deseados, con un lenguaje de alto nivel
que tiene una máquina virtual auxiliar, como Python o el lenguaje C# de Mono o, alternativamente,
con C++ a través de una biblioteca contenedora (wrapper)...
https://wiki.gnome.org/Projects/Vala/Tutorial/es

Instalando en las distintas plataformas
https://wiki.gnome.org/Projects/Vala/ValaPlatforms

Doc Inglés
https://wiki.gnome.org/Projects/Genie

Doc español
http://genie.webierta.skn1.com/Genie%20Doc

Ventanas
http://genie.webierta.skn1.com/wiki/gtk

Aún no he probado cross build, pero aqui la info como compilar para Window desde Linux
https://wiki.gnome.org/Projects/Vala/Win32CrossBuildSample

Ejemplo Genie
Código
  1. // compila con valac --pkg gtk+-3.0 nombre_archivo.gs
  2.  
  3. uses Gtk
  4.  
  5. init
  6. new MyApplication( "test.application",
  7. ApplicationFlags.FLAGS_NONE
  8. ).run( args )
  9.  
  10. class MyApplication:Gtk.Application
  11.  
  12. window: Gtk.ApplicationWindow
  13. icon: Gdk.Pixbuf
  14.  
  15. construct( application_id:string, flags:ApplicationFlags )
  16. if !id_is_valid( application_id )
  17. error( "application id %s is not valid", application_id )
  18. this.application_id = application_id
  19. this.flags = flags
  20.  
  21. def override activate ()
  22.  
  23. var window = new Gtk.ApplicationWindow( this )
  24. window.set_default_size (800, 600)
  25. window.window_position = WindowPosition.CENTER
  26. window.set_border_width(10)
  27.  
  28. headerbar: Gtk.HeaderBar = new Gtk.HeaderBar()
  29. headerbar.show_close_button = true
  30. headerbar.title = "GENIE DOC"
  31. window.set_titlebar(headerbar)
  32.  
  33. button: Gtk.Button = new Gtk.Button.with_label ("About")
  34. button.clicked.connect(acercade)
  35. headerbar.pack_end(button)
  36.  
  37. stack: Gtk.Stack = new Gtk.Stack()
  38. stack.set_transition_type(Gtk.StackTransitionType.SLIDE_LEFT_RIGHT)
  39.  
  40. var image1 = new Gtk.Image ()
  41. image1.set_from_file ("genielogo2.png")
  42. stack.add_titled(image1, "label1", "GENIE")
  43.  
  44. var image2 = new Gtk.Image ()
  45. image2.set_from_file ("pythonlogo.png")
  46. stack.add_titled(image2, "label2", "PYTHON")
  47.  
  48. stack_switcher: Gtk.StackSwitcher = new Gtk.StackSwitcher()
  49. stack_switcher.halign = Gtk.Align.CENTER
  50. stack_switcher.set_stack(stack)
  51.  
  52. vbox: Gtk.Box = new Gtk.Box(Gtk.Orientation.VERTICAL, 0)
  53. vbox.pack_start(stack_switcher, false, false, 0)
  54. vbox.pack_start(stack, false, false, 10)
  55.  
  56. window.add(vbox)
  57. window.show_all ()
  58.  
  59. def acercade(button:Button)
  60.  
  61. try
  62. icon = new Gdk.Pixbuf.from_file ("genie64.png")
  63. except e : GLib.Error
  64. stderr.printf ("Error: %s\n", e.message)
  65. authors: array of string = { "JESUS CUERDA", null }
  66. license: string = "CC Attribution 4.0 International"
  67. Gtk.show_about_dialog (window,
  68. "program-name", ("Wiki Genie Doc"),
  69. "logo", icon,
  70. "copyright", ("CC BY 4.0 2017 Wiki GENIE DOC"),
  71. "license", license,
  72. "authors", authors,
  73. "website", "http://genie.webierta.skn1.com",
  74. "website-label", ("Wiki Genie Doc"),
  75. null)
  76.  

Saludos.


En línea

Un error se comete al equivocarse.
Maurice_Lupin


Desconectado Desconectado

Mensajes: 356

GPS


Ver Perfil WWW
Re: Sobre Genie [Python], Vala [C#]
« Respuesta #1 en: 10 Abril 2018, 16:56 pm »

Para no hacer doble post, agrego aquí

El Juego de la vida, Vala con SDL
https://pastebin.com/NmKQsKeh

Tutos en inglés:

Más sobre compilación desde Linux para Windows (Comprobado funciona)
http://www.tarnyko.net/en/?q=node/15

Y algo que me ha dejado  :xD
Vala, compilando para Android desde Linux
http://www.tarnyko.net/en/?q=node/25

Saludos.


En línea

Un error se comete al equivocarse.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
pregunta sobre python.
Scripting
desnight 8 3,660 Último mensaje 27 Febrero 2008, 00:05 am
por Xpod
Aprendizajes sobre python
Scripting
bond200_7 6 4,306 Último mensaje 5 Agosto 2008, 01:48 am
por dooque
Duda de if sobre if [Python]
Scripting
CaronteGold 9 6,517 Último mensaje 28 Diciembre 2009, 17:17 pm
por CaronteGold
Pregunta sobre python.
Scripting
Bomb-P 3 2,191 Último mensaje 11 Septiembre 2012, 01:48 am
por MCKSys Argentina
¿De donde bajo el Genie Engine?
Programación Visual Basic
pirat 0 1,557 Último mensaje 25 Marzo 2014, 01:10 am
por pirat
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines