Julia (programazio-lengoaia)

Julia konputazio teknikorako programazio-lengoaia bat da, goi-mailakoa, kode irekikoa, plataforma anitzekoa eta errendimendu handikoa. 2009an sortu eta 2012an plazaratu zuten MIT ospetsuan.[1][2]

 Julia (programazio-lengoaia)
Jatorria
Sorrera-urtea2009
Argitaratze-data2012
Ezaugarriak
Programazio paradigmaObjektuetara bideratutako programazioa, Programazio funtzional, Programazio inperatibo, multi-paradigm programming (en) Itzuli, array programming (en) Itzuli, metaprogramming (en) Itzuli, procedural programming (en) Itzuli, konputazio paralelo eta Multiple dispatch (en) Itzuli
Media motatext/julia
Sistema eragileaCSV, Hierarchical Data Format (en) Itzuli, Office Open XML eta netCDF (en) Itzuli
Irakur dezakeLinux, Microsoft Windows eta macOS
Deskribapena
Honen eragina jaso duMATLAB, Python, Lisp, C, FORTRAN, NumPy (en) Itzuli, Lua, R, Scheme (en) Itzuli, Perl eta Ruby
Ekoizpena
DiseinatzaileaJeff Bezanson (en) Itzuli, Alan Edelman (en) Itzuli, Stefan Karpinski (en) Itzuli eta Viral B. Shah (en) Itzuli
GaratzaileaJeff Bezanson (en) Itzuli, Stefan Karpinski (en) Itzuli, Alan Edelman (en) Itzuli eta Viral B. Shah (en) Itzuli

julialang.org
Twitter: JuliaLanguage GitHub: JuliaLang Edit the value on Wikidata
Logotipoa

Juliarekin C eta FORTRAN bezalako lengoaien pareko errendimendua lor daiteke LLVMn oinarritutako JIT konpiladoreari esker baina behe-mailako lengoaien zailtasunik gabe.

Julia script-lengoaien (interpretatuen) antzera modu interaktiboan exekuta daiteke baina baita ere, Julia programaren exekutagarria konpilatuz sor daiteke.

Julia datu-mota dinamikoak darabiltzan lengoaia da, funtzio edo metodoaren inplementazioa exekuzio-denboran bidaltzeko aukera eskaintzen du eta konputazio paralelorako diseinatuta dago.

Juliak pakete-kudeatzaile bat dauka.

Alderaketa beste lengoaia batzuekin aldatu

Julia lengoaia, Python bezain erraza, C bezain azkarra dela esaten da.

Honako benchmark hau nukleo bakarreko Intel(R) Xeon(R) CPU E7-8850 2.00GHz CPU 1TB eta 1067MHz DDR3 RAM duen mikroprozesadore batean lortu da, Linuxen gainean martxan jarrita:[3]

For

tran

Julia Py

thon

R Mat

lab

Octave Mathe-

matica

Java

Script

Go Lua

JIT

Java
fib 0,70 2,11 77,76 533,52 26,89 9324,35 118,53 3,36 1,86 1,71 1,21
parse_int 5,05 1,45 17,02 45,73 802,52 9581,44 15,02 6,06 1,20 5,77 3,35
quicksort 1,31 1,15 32,89 264,54 4,92 1866,01 43,23 2,70 1,29 2,03 2,60
mandel 0,81 0,79 15,32 53,16 7,58 451,81 5,13 0,66 1,11 0,67 1,35
pi_sum 1,00 1,00 21,99 9,56 1,00 299,31 1,69 1,01 1,00 1,00 1,00
rand_

mat_stat

1,45 1,66 17,93 14,56 14,52 30,93 5,95 2,30 2,96 3,27 3,92
rand_

mat_mul

3,48 1,02 1,14 1,57 1,12 1,12 1,30 15,07 1,42 1,16 2,36

C lengoaian konpilatutako kodeari dagozkion emaitzak (faktorea=1). Zenbat eta txikiagoa izan zifra, orduan eta hobea da abiadura.

Erreferentziak aldatu

  1. Bezanpson, Jef. Julia: A Fast Dynamic Language for Technical Computing. .
  2. (Ingelesez) Bezanson, Jeff; Edelman, Alan; Karpinski, Stefan; Shah, Viral B.. (2017-01). «Julia: A Fresh Approach to Numerical Computing» SIAM Review 59 (1): 65–98.  doi:10.1137/141000671. ISSN 0036-1445. (Noiz kontsultatua: 2023-12-05).
  3. al., Jeff Bezanson, Stefan Karpinski, Viral Shah, Alan Edelman, et. The Julia Language. julialang.org.

Bibliografia aldatu

Kanpo estekak aldatu