Timeline
Chat
Prospettiva

Julia (linguaggio di programmazione)

linguaggio di programmazione Da Wikipedia, l'enciclopedia libera

Julia (linguaggio di programmazione)
Remove ads

Julia[2] è un linguaggio di programmazione, multi-paradigma, open source pubblicato a partire dal 2012 (anche se le basi furono poste nel 2009) da un gruppo di programmatori impegnati professionalmente nel campo del calcolo numerico pensato con lo scopo di fornire uno strumento ad alte prestazioni dedicato in maniera particolare al mondo della programmazione scientifica.

Fatti in breve Julia linguaggio di programmazione, Autore ...

Scritto in C++ e Scheme questo linguaggio si basa su di un compilatore JIT (Just In Time) che si appoggia a sua volta sul noto framework LLVM. Fin dalle prime fasi dello sviluppo gli autori si sono impegnati nel fornire al linguaggio un adeguato supporto di librerie implementate tra l'altro in gran parte in Julia stesso ponendo nel contempo grande enfasi sulle prestazioni che dovevano essere comparabili con quelle ottenute in C o Fortran.[3]

Pur essendo stato ideato per applicazioni di carattere numerico e scientifico non è tuttavia precluso il suo utilizzo come strumento general purpose.

Remove ads

Hello, World

Il seguente esempio propone il classico "Hello, World!":

print("Hello, World!")

Come esempio più complesso ma significativo ecco il modo in cui si può risolvere con questo linguaggio il noto problema delle 8 regine:

addqueen(queens, queen) = push!(copy(queens), queen)
hitsany(queen, queens) = any(map(x -> hits(queen, x), queens))
hits(a, b) = any(a .== b) || first(abs.(a .- b)) == last(abs.(a .- b))

function solve(x, y, n, d = Vector{Tuple{Int, Int}}())
    if iszero(n)
        return d
    end
    for px in 1:x, py in 1:y
        if !hitsany((px, py), d)
            s = solve(x, y, n - 1, addqueen(d, (px, py)))
            if s !== nothing
                return s
            end
        end
    end
    return nothing
end

for i in 1:8
    println("# Solve for $i:\n", solve(8, 8, i))
end
Remove ads

Ecosistema

Julia offre un ampio ecosistema di librerie per molti ampi della computazione, raggruppati nel registro generale[4]. Il linguaggio offre uno strumento integrato per gestire le librerie (package), ovvero Pkg.jl[5].

Note

Altri progetti

Collegamenti esterni

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads