Funktionale Programmierung at Universität Düsseldorf

Flashcards and summaries for Funktionale Programmierung at the Universität Düsseldorf

Arrow Arrow

It’s completely free

studysmarter schule studium
d

4.5 /5

studysmarter schule studium
d

4.8 /5

studysmarter schule studium
d

4.5 /5

studysmarter schule studium
d

4.8 /5

Study with flashcards and summaries for the course Funktionale Programmierung at the Universität Düsseldorf

Exemplary flashcards for Funktionale Programmierung at the Universität Düsseldorf on StudySmarter:

Was sind Pure Functions?

Exemplary flashcards for Funktionale Programmierung at the Universität Düsseldorf on StudySmarter:

Was sind Lisps?

Exemplary flashcards for Funktionale Programmierung at the Universität Düsseldorf on StudySmarter:

Was ist in Clojure Truthy und Falsey

Exemplary flashcards for Funktionale Programmierung at the Universität Düsseldorf on StudySmarter:

3-Schritte der Funktionsauswertung

Exemplary flashcards for Funktionale Programmierung at the Universität Düsseldorf on StudySmarter:

Welche dir bekannten Funktionen sind Lazy?

Exemplary flashcards for Funktionale Programmierung at the Universität Düsseldorf on StudySmarter:

Wie sind in Clojure die Datenstrukturen implementiert?

Exemplary flashcards for Funktionale Programmierung at the Universität Düsseldorf on StudySmarter:

Erkläre Copy-on-Write

Exemplary flashcards for Funktionale Programmierung at the Universität Düsseldorf on StudySmarter:

Was ist Structural Sharing?

Exemplary flashcards for Funktionale Programmierung at the Universität Düsseldorf on StudySmarter:

Was ist Lazyness

Exemplary flashcards for Funktionale Programmierung at the Universität Düsseldorf on StudySmarter:

Was ist Simplicity?

Exemplary flashcards for Funktionale Programmierung at the Universität Düsseldorf on StudySmarter:

Was ist Easyíness?

Exemplary flashcards for Funktionale Programmierung at the Universität Düsseldorf on StudySmarter:

Erkläre Zustand

Your peers in the course Funktionale Programmierung at the Universität Düsseldorf create and share summaries, flashcards, study plans and other learning materials with the intelligent StudySmarter learning app.

Get started now!

Flashcard Flashcard

Exemplary flashcards for Funktionale Programmierung at the Universität Düsseldorf on StudySmarter:

Funktionale Programmierung

Was sind Pure Functions?

Pure Functions sind Funktionen ohne Seiteneffekte. Bei der Eingabe des gleichen Input folgt immer der gleiche Output. Sie sind extrem einfach testbar und vieleinfacher zu verstehen. Es ist kein Locking notwendig.

Funktionale Programmierung

Was sind Lisps?

Lisps sind implementierungen des Lambda Kalküls.

Funktionale Programmierung

Was ist in Clojure Truthy und Falsey

In Clojure ist nur nil und false - falsey

alles andere ist truthy

Funktionale Programmierung

3-Schritte der Funktionsauswertung

  1. werte das erste Element aus um die Funktion zu erhalten
  2. werte die restlichen Elemente aus um die Argumente zu erhalten
  3. wende die Funktion auf die Argumente an
    • kopiere den Funktionskörper substituiere dabei die formalen parameter durch die Operanden
    • werte den resultierenden neuen Körper aus

Funktionale Programmierung

Welche dir bekannten Funktionen sind Lazy?

map

filter

remove

range

take etc.

drop etc.

repeat

iterate

cycle

concat

interleave

interpose

partition

Funktionale Programmierung

Wie sind in Clojure die Datenstrukturen implementiert?

Clojure collections sind Java Klassen und Interfaces. Diese sind zusätzlich alle Immutable.

Funktionale Programmierung

Erkläre Copy-on-Write

Hierbei geht es um Immutable Datenstrukturen.

  • Wenn iche eine Liste ändern will, wird diese kopiert und die Kopie geändert.
  • Das Kostet O(n)

Funktionale Programmierung

Was ist Structural Sharing?

  • Um mit Immutable Datenstrukturen arbeiten zu können, müssen diese kopiert und auf der Kopie verändert werden.
  • Um dies nun effizienter durchführen zu können, nutzt man structural sharing.
  • Dabei teilen sich die neue Struktur und die alte Struktur, so gut es geht, Daten indem z.B. die neue Struktur eine Referenz auf den "Root" der alten Struktur erhält und nur ihren spezifischen Teil verändert.
  • Es funktioniert nur wenn man sich darauf verlassen kann dass sich Werte niemals (sichtbar) ändern.

Funktionale Programmierung

Was ist Lazyness

  • Unter Lazyness versteht man die Auswertung von Objekten erst dann wenn sie gebraucht werden.
  • Die Rückgabe einer Funktion kann hierbei z.B. lazy sein.
  • In Haskell ist Lazyness auf der Ebene der Berechnung implementiert (d.h. implizit)
  • In Clojure ist Lazyness auf Ebene der Datenstrukturen/Funktionen (d.h. explizit) implementiert. (Abgesehen von Vektoren)

Funktionale Programmierung

Was ist Simplicity?

  • Simplicity ist keine Frage der Anzahl sondern der Interaktionen
  • Simple kann man objektiv durch die Betrachtung des Codes beurteilen

Funktionale Programmierung

Was ist Easyíness?

  • Naheliegend,mühelos, Unkompliziert
  • subjektiv

Funktionale Programmierung

Erkläre Zustand

  • Zustand ist im Prinzip komplex
  • Zustand verpflechtet Zeit und Wert
  • Wert einer Identity zu einem Zeitpunkt

Sign up for free to see all flashcards and summaries for Funktionale Programmierung at the Universität Düsseldorf

Singup Image Singup Image
Wave

Other courses from your degree program

For your degree program Funktionale Programmierung at the Universität Düsseldorf there are already many courses on StudySmarter, waiting for you to join them. Get access to flashcards, summaries, and much more.

Back to Universität Düsseldorf overview page

What is StudySmarter?

What is StudySmarter?

StudySmarter is an intelligent learning tool for students. With StudySmarter you can easily and efficiently create flashcards, summaries, mind maps, study plans and more. Create your own flashcards e.g. for Funktionale Programmierung at the Universität Düsseldorf or access thousands of learning materials created by your fellow students. Whether at your own university or at other universities. Hundreds of thousands of students use StudySmarter to efficiently prepare for their exams. Available on the Web, Android & iOS. It’s completely free.

Awards

Best EdTech Startup in Europe

Awards
Awards

EUROPEAN YOUTH AWARD IN SMART LEARNING

Awards
Awards

BEST EDTECH STARTUP IN GERMANY

Awards
Awards

Best EdTech Startup in Europe

Awards
Awards

EUROPEAN YOUTH AWARD IN SMART LEARNING

Awards
Awards

BEST EDTECH STARTUP IN GERMANY

Awards