Definition

Was ist Julia?

| Autor / Redakteur: Stefan Luber / Nico Litzel

(Bild: © aga7ta - stock.adobe.com)

Julia ist eine General-Purpose-Programmiersprache mit wissenschaftlicher Ausrichtung. Sie eignet sich für allgemeine Programmieraufgaben, hat ihre Stärken aber bei numerischen Berechnungen und der Verarbeitung großer Datenmengen in hoher Geschwindigkeit.

Julia ist ein höhere Programmiersprache, die sich für allgemeine Aufgaben einsetzen lässt. Sie hat eine wissenschaftliche Ausrichtung und spielt ihre Stärken bei numerischen Berechnungen und Datenanalysen mit hoher Geschwindigkeit aus. Typische Anwendungsbereiche sind maschinelles Lernen, Künstliche Intelligenz (KI), die Verarbeitung großer Datenmengen, statistische Auswertungen und Anwendungen im Big-Data-Umfeld. Es handelt sich um eine noch recht junge, moderne Sprache, die in vielen Bereichen anderen Sprachen wie C, MATLAB, R, Java, Ruby, Perl oder Python ähnelt.

Im Vergleich zu vielen anderen Skriptsprachen ist Julia deutlich schneller. Gründe hierfür liegen unter anderem in der Arbeitsweise mit einem Just-in-Time Compiler und in der Parallelisierung von Aufgaben. Julia erzeugt zum Ausführungszeitpunkt einen von Prozessoren effizient zu abzuarbeitenden Binärcode. C-Bibliotheken lassen sich ohne Performanceverlust aufrufen.

Die Entwicklung von Julia begann im Jahr 2009 am Massachusetts Institute of Technology (MIT). Nach dreijähriger Entwicklungszeit veröffentlichten die Mathematiker und Informatiker Jeff Bezanson, Stefan Karpinski, Viral B. Shah und Alan Edelman im Jahr 2012 die erste Version der Programmiersprache. Erklärtes Ziel der Entwickler war es, die Vorteile dynamischer und statischer Programmiersprachen in einer neuen Sprache zu vereinen. Der Compiler von Julia ist in C, C++ und Scheme geschrieben, die Syntax teilweise an MATLAB angelehnt. Im August 2018 erschien die Version 1.0.0. Die aktuelle Version (Stand September 2019) ist Julia 1.2.0. Julia steht unter Open-Source-Lizenz und ist frei erhältlich. Sie ist Bestandteil einiger Linux-Distributionen und auch mit den Betriebssystemen Windows, MacOS oder FreeBSD nutzbar.

Die Geschwindigkeit von Julia

Eines der herausragenden Merkmale von Julia ist die hohe Ausführungsgeschwindigkeit. Programme werden ähnlich schnell ausgeführt wie bei den kompilierten Programmiersprachen C oder Fortran. Julia arbeitet wesentlich schneller als andere wissenschaftliche Sprachen wie R oder MATLAB. Zurückzuführen ist die hohe Geschwindigkeit zu einem großen Teil auf das Prinzip der Just-in-Time-Kompilierung. Der eigentliche Maschinencode wird bei dieser Kompilierungsart zur Laufzeit erstellt. Damit unterscheidet sich die Programmiersprachen von den langsameren Interpretersprachen wie Python, MATLAB, Perl oder Ruby. Dennoch verhält sich Julia ähnlich wie eine Interpretersprache und kann erstellte Skripte direkt, ohne vorheriges Kompilieren starten. Im Gegensatz zu Fortran, C oder C++ muss die Kompilierung nicht im Vorfeld einer Ausführung durchgeführt werden. Zur Just-in-Time-Kompilierung nutzt Julia das LLVM-Framework. Weiter Gründe für die hohe Geschwindigkeit von Julia sind:

  • Parallelisierung von Aufgaben
  • Typsystem mit parametrisierten Typen
  • dynamische Programmierumgebung
  • direkter Aufruf von7656 C- und Fortran-Bibliotheken
  • effiziente Operationen mit Gleitkommazahlen, Zufallszahlen und regulären Ausdrücken
  • effiziente Funktionen der linearen Algebra
  • integrierter Garbage Collector
  • Nutzung von Multimethoden

Die Vorteile der Programmiersprache Julia

Neben der hohen Geschwindigkeit bietet die Programmiersprache Julia weitere Vorteile. Diese sind:

  • einfach zu erlernen (nur wenige grundlegende Sprachelemente, leicht verständliche Syntax)
  • mächtige Sprachkonstrukte
  • integrierte Funktionen der linearen Algebra
  • unter MIT-Lizenz frei nutzbar
  • geeignet für die Betriebssysteme Linux, MacOS und Windows
  • viele Erweiterungspakete verfügbar
  • intelligentes, interaktives Kommandozeilenprogramm REPL
  • interaktive Nutzung ähnlich wie bei Skriptsprachen
  • für allgemeine Programmieraufgaben geeignet
  • Makros und andere Möglichkeiten der Metaprogrammierung
  • direkter Aufruf von C- und Fortran-Bibliotheken möglich
  • integrierte Paketverwaltung
  • Shell-ähnliche Möglichkeiten andere Prozesse zu verwalten

Das interaktive Kommandozeilenprogramm REPL

Bestandteil von Julia ist ein interaktives Kommandozeilenprogramm. Es nennt sich REPL (Read-eval-print loop) und eignet sich dank direkter interaktiver Ausführung von Code beispielsweise, um Programme zu testen oder während der Programmierung zu experimentieren. In REPL integriert sind Hilfefunktionen und eine Chronik ausgeführter Befehle.

Das Paketkonzept von Julia

Julia besitzt einen integrierten Paketmanager. Er erlaubt es, Pakete einfach zu installieren und auszuprobieren. Die Pakete sind einzelne Programmbibliotheken mit eigenem Git-Repository und lassen sich an beliebigen Orten bereitstellen. Sie werden über Julia mit der Paket-Add-Funktion installiert. Die Abhängigkeiten der Pakete sind in Metadaten gespeichert. Pakete können in Julia geschrieben sein, aber auch Code anderer Sprechen wie C oder Python enthalten. Bei der Installation eines Pakets mit Code anderer Sprachen werden die jeweils passenden Compiler auf dem System benötigt. Sie erzeugen zusammen mit Julia den ausführbaren Code des Pakets.

Typische Anwendungsbereiche für Julia

Aufgrund der hohen Performance numerischer Berechnungen und der Parallelisierungsmöglichkeiten eignet sich Julia hervorragend für rechnergestützte Datenanalysen. Typische Anwendungsbereiche der Programmiersprache Julia sind:

  • Machine Learning
  • Künstliche Intelligenz (KI)
  • paralleles Rechnen
  • Big-Data-Analysen
  • statistische Berechnungen
  • Simulationen

Kommentare werden geladen....

Kommentar zu diesem Artikel abgeben

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Das erhoffen sich Patienten von Doktor Roboter

KI in der Medizin

Das erhoffen sich Patienten von Doktor Roboter

Der Branchenverband Bitkom hat in einer Umfrage den Bundesbürgern auf den Zahn gefühlt und abgefragt, was diese vom Einsatz von Künstlicher Intelligenz (KI) in Diagnostik und Therapie halten. Offenbar sieht die Hälfte der Bürger in KI-basierten Expertensystemen eine effektive Unterstützung für Mediziner. Zudem will sich künftig jeder Dritte regelmäßig eine Zweitmeinung von einer KI einholen. lesen

Bosch will weitere 70 Millionen Euro in den „AI Campus“ investieren

Bosch will weitere 70 Millionen Euro in den „AI Campus“ investieren

Bosch will seinen geplanten Bosch AI Campus massiv erweitern. Der ursprüngliche Bauabschnitt für 35 Millionen Euro soll 2022 bezugsfertig sein. Weitere 70 Millionen werden anschließend unter anderem in Wohnungen für Forscher, Studenten und Mitarbeiter fließen. lesen

Interaktive Datendiagramme erstellen mit Mozilla Iodide

Mozilla Iodide als BI-Tool

Interaktive Datendiagramme erstellen mit Mozilla Iodide

Mit dem Projekt „Iodide“ will es die Mozilla Foundation Data Scientists ermöglichen, Daten sowohl zu visualisieren als auch mit diesen „Notebooks“ zu interagieren, sie also wie Dokumente zu behandeln. Damit das alles im Firefox-Browser ausgeführt werden kann, mussten einige Voraussetzungen geschaffen werden. lesen

KI – der richtige Einsatz in der Qualitätssicherung

Qualitätsmanagement mit Künstlicher Intelligenz

KI – der richtige Einsatz in der Qualitätssicherung

Mit Künstlicher Intelligenz (KI) entstehen neue Möglichkeiten für die Bilderkennung. Der Mensch als Individuum kann immer besser simuliert werden, was dazu führt, dass Fehlergenauigkeit und Geschwindigkeit und somit die Qualität in diesem Feld stark gestiegen sind. lesen

In nur zwei Jahren zum Bachelor Künstliche Intelligenz

Technische Hochschule Deggendorf

In nur zwei Jahren zum Bachelor Künstliche Intelligenz

An der Technischen Hochschule Deggendorf wird ab dem Wintersemester 2019/2020 der Studiengang Künstliche Intelligenz angeboten. Zum Start können einmalig auch Berufstätige mit Vorkenntnissen und entsprechend verkürzter Studienzeit den Studiengang belegen. Bewerbungen sind noch bis 20.09.2019 möglich. lesen

Siri, Alexa und Co. müssen Sozialkompetenz lernen

Kommentar von Edna Kropp, LivePerson

Siri, Alexa und Co. müssen Sozialkompetenz lernen

Sprachassistenten sind längst zu unseren täglichen Begleitern geworden. Kurz vor dem Feierabend fragen wir: „Siri, ist mein Zug pünktlich?“ Und falls der mal wieder ausfällt, folgt die schlecht gelaunte Aufforderung: „Siri, suche mir eine alternative Verbindung!“ Die Künstliche Intelligenz (KI) versorgt uns in kürzester Zeit mit Informationen und kann uns sogar das Aufstehen vom Sofa ersparen: „Alexa, schalte Netflix ein.“ lesen

KI-basierte Software für CT-Aufnahmen zugelassen

Siemens Healthineers

KI-basierte Software für CT-Aufnahmen zugelassen

Es wird viel über das Thema KI gesprochen, Siemens Healthineers hat es verwirklicht: die KI-basierte Software AI-Rad Companion Chest CT ist ein digitaler Assistent, der CT-Aufnahmen des Brustkorbs automatisch auswertet und pathologische Auffälligkeiten kennzeichnen sowie messen kann. lesen

Die Ethik der Künstlichen Intelligenz

Ethik

Die Ethik der Künstlichen Intelligenz

Der Begriff „Künstliche Intelligenz“ (KI) taucht erstmals 1956 in den USA auf. Was KI heute schon kann, ist faszinierend. Aber ethische Fragen bleiben bislang unterbelichtet. Markus Dohm beschäftigt sich mit den aktuelle Entwicklungen: Seiner Meinung nach ist KI ohne menschliche Intelligenz (noch) nicht möglich. lesen

So gelingt der Einstieg in die Data Science

Kommentar von Benjamin Aunkofer, Datanomiq

So gelingt der Einstieg in die Data Science

Big Data, Data Science und Machine Learning sind die Buzzwords dieser Jahre und Daten sind der Rohstoff für ... Lassen wir das! Wer bei BigData-Insider liest, der weiß längst, welche Rolle Daten als Rohstoff und Kapital einnehmen und wie gefragt gerade Datenexperten sind. In diesem Artikel wollen wir den Job des Data Scientists mal strukturiert durchleuchten und dann Chancen für einen Quereinstieg ausloten. Auch auf den Data Engineer gehen wir dabei ein. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 46128457 / Definitionen)