De acuerdo con sus creadores...
Julia is a high-level, high-performance dynamic programming language for technical computing, with syntax that is familiar to users of other technical computing environments.
Julia es un lenguage dinámico de alto nivel y alta performance para computación técnica, con sintaxis que es familiar para usuarios de otros entornos de computación técnica.
Recién comencé a aprenderlo hace algunos días...y debo decir que realmente me gusta...tiene una sintaxis parecida a Python así que me sentí comodo desde el principio...
Por supuesto...es prácticamente un nuevo lenguaje, así que hay cosas que se están agregando y corrigiendo mientras hablamos...pero la comunidad está creciendo y me alegra estar entre sus primeros entusiastas -:)
Lo primero que hice después de leer la documentación y ver algunos videos fué simplemente pasar una de mis antiguas aplicaciones hecha en Python a Julia...la aplicación fué "LCD Numbers" la cual simplemente pide un número y lo retorna impreso con formato LCD...
Este es el código en Python...
LCD_Numbers.py |
---|
global line1, line2, line3 line1 = "" line2 = "" line3 = "" zero = {1: ' _ ', 2: '| | ', 3: '|_| '} one = {1: ' ', 2: '| ', 3: '| '} two = {1: ' _ ', 2: ' _| ', 3: '|_ '} three = {1: '_ ', 2: '_| ', 3: '_| '} four = {1: ' ', 2: '|_| ', 3: ' | '} five = {1: ' _ ', 2: '|_ ', 3: ' _| '} six = {1: ' _ ', 2: '|_ ', 3: '|_| '} seven = {1: '_ ', 2: ' | ', 3: ' | '} eight = {1: ' _ ', 2: '|_| ', 3: '|_| '} nine = {1: ' _ ', 2: '|_| ', 3: ' _| '} num_lines = {0: zero, 1: one, 2: two, 3: three, 4: four, 5: five, 6: six, 7: seven, 8: eight, 9: nine} def Lines(number): global line1, line2, line3 line1 += number.get(1, 0) line2 += number.get(2, 0) line3 += number.get(3, 0) number = str(input("\nEnter a number: ")) length = len(number) for i in range(0, length): Lines(num_lines.get(int(number[i:i+1]), 0)) print ("\n") print line1 print line2 print line3 print ("\n") |
LCD_Numbers.jl |
---|
zero = [1=> " _ ", 2=> "| | ", 3=> "|_| "] one = [1=> " ", 2=> "| ", 3=> "| "] two = [1=> " _ ", 2=> " _| ", 3=> "|_ "] three = [1=> "_ ", 2=> "_| ", 3=> "_| "] four = [1=> " ", 2=> "|_| ", 3=> " | "] five = [1=> " _ ", 2=> "|_ ", 3=> " _| "] six = [1=> " _ ", 2=> "|_ ", 3=> "|_| "] seven = [1=> "_ ", 2=> " | ", 3=> " | "] eight = [1=> " _ ", 2=> "|_| ", 3=> "|_| "] nine = [1=> " _ ", 2=> "|_| ", 3=> " _| "] num_lines = [0=> zero, 1=> one, 2=> two, 3=> three, 4=> four, 5=> five, 6=> six, 7=> seven, 8=> eight, 9=> nine] line = ""; line1 = ""; line2 = ""; line3 = "" function Lines(number, line1, line2, line3) line1 *= number[1] line2 *= number[2] line3 *= number[3] line1, line2, line3 end println("Enter a number: "); number = chomp(readline(STDIN)) len = length(number) for i in [1:len] line = Lines(num_lines[parseint(string(number[i]))],line1,line2,line3) line1 = line[1]; line2 = line[2]; line3 = line[3] end println(line1) println(line2) println(line3 * "\n") |
Por supuesto...este es solo un test...las cosas se van a poner interesantes cuando pase un poco de código en R hacia Julia y haga algunas comparaciones de velocidad -;)
Saludos,
Blag.
Development Culture.
No comments:
Post a Comment