Adressen. Praktikum Funktionale Programmierung Organisation und Überblick. Termine WWW
|
|
- Alwin Ritter
- vor 6 Jahren
- Abrufe
Transkript
1 Adressen Adressen, Termine Studienleistung Praktikum Funktionale Programmierung Organisation und Überblick Dr. David Sabel Büro und Raum 216, Robert-Mayer-Str Sommersemester 2013 Webseite zur Veranstaltung Aktuelle und organisatorische Informationen Unterlagen zur Veranstaltung: Skript, Folien, Aufgaben Referenzen auf Bücher, Webseiten, Programmiersprachen usw. Stand der Folien: SoSe 2013 FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 2/20 Termine Adressen, Termine Studienleistung WWW Adressen, Termine Studienleistung Regelmäßiges Treffen Dienstag 14-16, Seminarraum 11 Präsentation der Programme Insgesamt 3 mal Das erste Mal in ca. 3 Wochen Termin individuell pro Gruppe Webseite zum Praktikum Aktuelle und organisatorische Informationen Unterlagen zum Praktikum (Anleitung) Referenzen auf Bücher, Webseiten usw. Links zu Haskell und Tools FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 3/20 FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 4/20
2 Adressen, Termine Studienleistung Studienleistung Adressen, Termine Studienleistung Ausarbeitung Gruppen Es sollen je 3 4 Teilnehmer eine Gruppe bilden. Studienleistung Wird vergeben, wenn sämtliche Aufgaben erfolgreich bearbeitet wurden, dazu gehört Implementierung der geforderten Programme Testen der Implementierung Kommentierung und Dokumentation der Programme akzeptierte Ausarbeitung (Protokoll) Präsentation der Implementierung Erläuterung der Grundlagen, die zur Lösung der Aufgabe notwendig waren. Beschreibung der Lösung ein Protokoll, das den Prozess der Problemlösung dokumentiert: Zeiten, Aufteiltung der Tätigkeiten, usw. Dokumentation der durchgeführten Tests Eine Ausarbeitung pro Gruppe, allerdings muss diese dreimal (aktueller Stand) abgeben werden! FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 5/20 FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 6/20 Adressen, Termine Studienleistung Präsentation der Ergebnisse Haskell Haskell Werkzeuge Code-Verwaltung kurze Vorführung der Programme kurze Erläuterung der Lösung jeder aus einer Gruppe sollte etwas vortragen Haskell Platform Homepage des GHC FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 7/20 FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 8/20
3 Haskell Werkzeuge Code-Verwaltung Werkzeuge: Happy, Haddock Haskell Werkzeuge Code-Verwaltung Concurrent Versions System (CVS) Zum Generieren des Parsers wird der Parsergenerator Happy verwendet: Homepage von Happy Für die implementierten Programme soll mit Haddock eine HTML-Dokumentation erstellt werden. Homepage von Haddock Quellenverwaltung per CVS. Für jeden Teilnehmer gibt es einen User. Für jede Gruppe ein CVS-Repository CVS Server: kitsch.ki.informatik.uni-frankfurt.de FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 9/20 FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 10/20 Ein Interpreter für CHF Projektübersicht Die Bestandteile sind: CHF = Concurrent Haskell mit Futures Funktionale Kernsprache mit monadischem IO MVars = Speicherplätze die voll oder leer sind takemvar liest den Wert aus einer gefüllten MVar und entleert sie putmvar schreibt einen Wert in eine leere MVar Operationen warten (Thread ist blockiert) falls die MVar leer (takemvar) bzw. voll (putmvar) Futures = Nebenläufige Threads, die einen Wert berechnen Andere Threads können diese Werte benutzen Berechnungen erfolgen monadisch aufgrund der Speicherzugriffe FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 11/20 FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 12/20
4 Drei Teile Teil 1: Lexen und Parsen Teil 2: Typecheck und Transformation in einfacherere Syntax Teil 3: Abstrakte Maschinen CHF Syntax Ausdrücke Expr e Expr ::= x Variable me Monadischer Ausdruck (λx e) Abstraktion (e 1 e 2 ) Anwendung (c e 1... e ar(c) ) Konstruktoranwendung (seq e 1 e 2 ) seq-ausdruck (case T e of { (c T,1 x 1... x ar(ct,1 )) e T,1 ;... (c T, T x 1... x ar(ct, T )) e T, T }) case-ausdruck (letrec x 1 = e 1 ;... ; x n = e n in e) letrec-ausdruck FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 13/20 FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 14/20 CHF Syntax (2) Beispiele Monadische Ausdrücke MExpr: me MExpr ::= (return e) return-operator (e 1 >>= e 2 ) bind -Operator (future e) future-operator (newmvar e) newmvar-operator (takemvar e) takemvar-operator (putmvar e 1 e 2 ) putmvar-operator Die Identitätsfunktion λx x (bzw. als Quelltext \x -> x) Der K-Kombinator: \x -> \y -> x case b of {True -> e1; False -> e2} verhält sich wie if b then e1 else e2. Beispiel mit >>= : (takemvar x) >>= (λy putmvar y True) FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 15/20 FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 16/20
5 Größeres Beispiel Typisierung letrec reverse = \xs -> case xs of { NilBool -> NilBool; (ConsBool y ys) -> append (reverse ys) (ConsBool y NilBool) }; append = \xs -> \ys -> case xs of { NilBool -> ys; (ConsBool u us) -> ConsBool u (append us ys) } in reverse (ConsBool True (ConsBool False (ConsBool False NilBool))) CHF ist monomorph getypt. Syntax von Typen τ, τ i Type ::= IO τ T MVar τ τ 1 τ 2 IO τ: Monadische Aktion, mit Ergebnis vom Typ τ MVar τ: MVar mit Inhalt vom Typ τ T ein Typkonstruktor (z.b. Bool) τ 1 τ 2 : Funktionstyp: Eingabetyp τ 1, Ausgabetyp τ 2 FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 17/20 FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 18/20 Daten- und Typkonstruktoren Typisierung einiger Konstrukte Werden durch Datentypdefinitionen vor dem Ausdruck angegeben: data Bool = True False definiert: Typkonstruktor Bool Datenkonstruktoren True und False vom Typ Bool data ListBool = NilBool ConsBool Bool ListBool definiert: Typkonstruktor ListBool Datenkonstruktoren: NilBool::ListBool ConsBool::Bool ListBool ListBool Genaues Typsystem später! return :: τ IO τ future :: IO τ IO τ takemvar :: MVar τ IO τ putmvar :: MVar τ τ IO Unit newmvar :: τ IO(MVar τ) ( >>= ) :: IO τ 1 (τ 1 IO τ 2 ) IO τ 2 seq :: a b b wobei a weder IO τ noch MVar τ sein darf. FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 19/20 FP-PR Organisation und Überblick Sommersemester 2013 D. Sabel 20/20
Adressen. Praktikum Funktionale Programmierung Organisation und Überblick. Termine. Studienleistung
Adressen Adressen, Termine Studienleistung Praktikum Funktionale Programmierung Organisation und Überblick Dr. David Sabel Büro und Email Raum 216, Robert-Mayer-Str. 11-15 sabel@ki.informatik.uni-frankfurt.de
MehrPraktikum BKSPP: Organisatorisches
Praktikum BKSPP: Organisatorisches Dr. David Sabel SoSe 2012 Adressen Organisatorisches Software Adressen, Termine Modulprüfung Büro und Email Raum 216, Robert-Mayer-Str. 11-15 sabel@ki.informatik.uni-frankfurt.de
MehrProgrammtransformationen und Induktion in funktionalen Programmen
Programmtransformationen und Induktion in funktionalen Programmen Prof. Dr. Manfred Schmidt-Schauß Künstliche Intelligenz und Softwaretechnologie 13. Januar 2009 Einschub: Monadisches IO verzögern Implementierung
MehrPraktikum Funktionale Programmierung Teil 1: Lexen und Parsen
Praktikum Funktionale Programmierung Teil 1: Lexen und Parsen Professur für Künstliche Intelligenz und Softwaretechnologie Sommersemester 2009 Überblick Teil 1: Lexen und Parsen Die Sprache LFP +C Professur
MehrHaskell, Typen, und Typberechnung. Grundlagen der Programmierung 3 A. Einige andere Programmiersprachen. Typisierung in Haskell
Haskell, Typen, und Typberechnung Grundlagen der Programmierung 3 A Typen, Typberechnung und Typcheck Prof. Dr. Manfred Schmidt-Schauß Ziele: Haskells Typisierung Typisierungs-Regeln Typ-Berechnung Milners
MehrSemantics of a Call-by-Need Lambda Calculus with McCarthy s amb for Program Equivalence
Semantics of a Call-by-Need Lambda Calculus with McCarthy s amb for Program Equivalence David Sabel Institut für Informatik Fachbereich Informatik und Mathematik Goethe-Universität Frankfurt Kolloquium
MehrEinführung in die Funktionale Programmierung: Einleitung & Motivation
Einführung in die Funktionale Programmierung: Einleitung & Motivation Prof Dr. Manfred Schmidt-Schauß WS 2011/12 Stand der Folien: 25. Oktober 2011 Motivation Funktionale Programmiersprachen Haskell Übersicht
MehrFunktionale Programmierung
Schleifen 1 Funktionale Programmierung Jörg Kreiker Uni Kassel und SMA Solar Technology AG Wintersemester 2011/2012 3 Teil I Jedem Anfang wohnt ein Zauber inne 4 Über mich Diplom in Informatik in Saarbrücken
MehrProgrammieren in Haskell
Programmieren in Haskell Syntax und Semantik von Haskell Programmieren in Haskell 1 Was wir heute (und nächstes mal) machen Datentypdefinitionen Wertdefinitionen, Variablenbindungen Musterbindungen Funktionsbindungen
MehrÜbersicht. Einführung in die Funktionale Programmierung: Einleitung & Motivation. Klassifizierung von Programmiersprachen (1)
Motivation Funktionale Programmiersprachen Haskell Übersicht Einführung in die Funktionale Programmierung: Einleitung & Motivation Prof Dr. Manfred Schmidt-Schauß 1 Motivation Übersicht Programmierparadigmen
MehrDer λ-kalkül. Frank Huch. Sommersemester 2015
Der λ-kalkül Frank Huch Sommersemester 2015 In diesem Skript werden die Grundlagen der Funktionalen Programmierung, insbesondere der λ-kalkül eingeführt. Der hier präsentierte Stoff stellt einen teil der
MehrWS 2011/2012. Georg Sauthoff 1. November 1, 2011
WS 2011/2012 Georg 1 AG Praktische Informatik November 1, 2011 1 gsauthof@techfak.uni-bielefeld.de Übungen Abgaben und Aufgabenblätter am Ende der Vorlesung Skript gibt es demnächst in den Übungen Der
MehrProgrammieren in Haskell Programmiermethodik
Programmieren in Haskell Programmiermethodik Peter Steffen Universität Bielefeld Technische Fakultät 12.01.2011 1 Programmieren in Haskell Bisherige Themen Was soll wiederholt werden? Bedienung von hugs
MehrBeispiele: (Funktionen auf Listen) (3) Bemerkungen: Die Datenstrukturen der Paare (2) Die Datenstrukturen der Paare
Beispiele: (Funktionen auf Listen) (3) Bemerkungen: 5. Zusammenhängen der Elemente einer Liste von Listen: concat :: [[a]] -> [a] concat xl = if null xl then [] else append (head xl) ( concat (tail xl))
MehrJavaScript und PHP-Merkhilfe
JavaScript und PHP-Merkhilfe David Vajda 10. November 2016 1 JavaScript 1. Einbinden von JavaScript in das HTML-Dokument
MehrSoftwaretechnik. Funktionale Programmierung. Christian Lindig. 23. Januar 2006. Lehrstuhl für Softwaretechnik Universität des Saarlandes
Softwaretechnik Funktionale Programmierung Christian Lindig Lehrstuhl für Softwaretechnik Universität des Saarlandes 23. Januar 2006 Quicksort in Java static void sort(int a[], int lo0, int hi0) { int
MehrFunktionale Programmierung
Funktionale Programmierung Jörg Kreiker Uni Kassel und SMA Solar Technology AG Wintersemester 2011/2012 2 Teil II Typen mit Werten und Ausdruck, sogar listenweise 3 Haskell Programme Programm Module ein
MehrÜbung zur Vorlesung Multimedia im Netz
Übung zur Vorlesung Multimedia im Netz Doris Hausen Ludwig-Maximilians-Universität München Wintersemester 2009/2010 Ludwig-Maximilians-Universität München Multimedia im Netz Übung 1-1 Organisatorisches
MehrWas bisher geschah. deklarative Programmierung. funktionale Programmierung (Haskell):
Was bisher geschah deklarative Programmierung funktional: Programm: Menge von Termgleichungen, Term Auswertung: Pattern matsching, Termumformungen logisch: Programm: Menge von Regeln (Horn-Formeln), Formel
MehrEinleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens
Grundlagen von C Jonas Gresens Proseminar C Grundlagen und Konzepte Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität
MehrProbeklausur: Programmierung WS04/05
Probeklausur: Programmierung WS04/05 Name: Hinweise zur Bearbeitung Nimm Dir für diese Klausur ausreichend Zeit, und sorge dafür, dass Du nicht gestört wirst. Die Klausur ist für 90 Minuten angesetzt,
MehrImperative vs. Funktionale Programmierung
Beispiel: Entwerfe eine Funktion, die testet, ob eine Zahl n eine Primzahl ist oder nicht. Beobachtung: (1) Wenn n Primzahl ist, ist die Menge der Teiler von n leer. (2) Die Menge der Teiler von n sind
MehrEntwicklung eines korrekten Übersetzers
Entwicklung eines korrekten Übersetzers für eine funktionale Programmiersprache im Theorembeweiser Coq Thomas Strathmann 14.01.2011 Gliederung 1 Einleitung
MehrFrage, Fragen und nochmals Fragen
Frage, Fragen und nochmals Fragen Berthold Hoffmann Universität Bremen and DFKI Bremen hof@informatik.uni-bremen.de In diesem Text stehen einige Fragen, die man sich zu den Folien der Veranstaltung Funktionales
MehrTypklassen, Eingabe und Monaden In Haskell
Typklassen, Eingabe und Monaden In Haskell Felix Rahmati Jonathan Beierle 1 Einleitung In dieser Ausarbeitung befassen wir uns mit den Vorteilen einiger fortgeschrittener Konzepte der funktionalen Programmierung
MehrProgrammiersprachen. Organisation und Einführung. Berthold Hoffmann. Studiengang Informatik Universität Bremen
Organisation und Einführung Studiengang Informatik Universität Bremen Sommersemester 2010 (Vorlesung am Montag, der 12. April 2010) (Montag, der 12. April 2008) 1 Vorstellung 2 Organisation 3 Einführung
MehrProgrammiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny
Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 5. Kontrollstrukturen Allgemein Kontrollstrukturen dienen zur Steuerung des Programmablaufs. (Bemerkung: C und C++ besitzen die selben Kontrollstrukturen.)
MehrProgrammierung 2. Übersetzer: Das Frontend. Sebastian Hack. Klaas Boesche. Sommersemester
1 Programmierung 2 Übersetzer: Das Frontend Sebastian Hack hack@cs.uni-saarland.de Klaas Boesche boesche@cs.uni-saarland.de Sommersemester 2012 Vom Programm zur Maschine Was passiert eigentlich mit unseren
MehrGrundlagen Internet-Technologien. Clientseitige Web-Programmierung
Clientseitige Web-Programmierung mit JavaScript Version 1.1 3.5.2010 1 aktuelles 2 clientseitige Web-Programmierung verschiedene Ansätze JavaScript Java Applet Adobe Flash Microsoft Silverlight RIA: rich
MehrALP I Einführung in Haskell
ALP I Einführung in Haskell WS 2012/2013 Was ist Haskell? Haskell ist eine rein Funktionale Programmiersprache mit einer nach Bedarf Auswertung-Strategie oder "Lazy Evaluation". Was bedeutet rein funktional?
MehrKommerzielle Softwareentwicklung mit Haskell
Kommerzielle Softwareentwicklung mit Haskell Ein Erfahrungsbericht Stefan Wehr factis research GmbH, Freiburg im Breisgau 7. Oktober 2011, Hal6 in Leipzig Viele Fragen Wer sind wir? Wer bin ich? Wie setzen
MehrProgrammieren in Haskell
Programmieren in Haskell Wir steigen ein... Programmieren in Haskell 1 Was wir heute machen Umfrage: Wer hat den Hugs ausprobiert? Ausdrücke und Werte Datentypen Funktionen Aufgabe für diese Woche Programmieren
MehrEinstieg in die Informatik mit Java
Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form
Mehr1. Übung zu "Numerik partieller Differentialgleichungen"
1. Übung zu "Numerik partieller Differentialgleichungen" Simon Gawlok, Eva Treiber Engineering Mathematics and Computing Lab 22. Oktober 2014 1 / 15 1 Organisatorisches 2 3 4 2 / 15 Organisatorisches Ort:
MehrEinführung in die Programmierung mit VBA
Einführung in die Programmierung mit VBA Vorlesung vom 07. November 2016 Birger Krägelin Inhalt Vom Algorithmus zum Programm Programmiersprachen Programmieren mit VBA in Excel Datentypen und Variablen
MehrProgrammieren von Webinformationssystemen
Programmieren von Webinformationssystemen Wolfgang Gassler Databases and Information Systems (DBIS) Institute of Computer Science University of Innsbruck dbis-informatik.uibk.ac.at 1 HTML Hypertext Markup
Mehr[10] Software Transactional Memory in Haskell, Tortenwurf und Aufgabenblatt 7
Haskell Live [10 Software Transactional Memory in Haskell, Tortenwurf und Aufgabenblatt 7 Bong Min Kim e0327177@student.tuwien.ac.at Christoph Spörk christoph.spoerk@inode.at Bernhard Urban lewurm@gmail.com
MehrFunktionale Programmiersprachen
Funktionale Programmiersprachen An den Beispielen Haskell und Erlang Übersicht Programmiersprachen λ-kalkül Syntax, Definitionen Besonderheiten von funktionalen Programmiersprache, bzw. Haskell Objektorientierte
MehrCrashkurs Haskell Mentoring WiSe 2016/17. Anja Wolffgramm Freie Universität Berlin
Crashkurs Haskell Mentoring WiSe 2016/17 Anja Wolffgramm Freie Universität Berlin 02/11/2016 , Inhalt Kommandozeile Haskell installieren & starten Ein 1. Haskell-Programm Funktionsdefinition Primitive
MehrProgrammieren in Haskell. Abstrakte Datentypen
Programmieren in Haskell Abstrakte Datentypen Einführung Man unterscheidet zwei Arten von Datentypen: konkrete Datentypen: beziehen sich auf eine konkrete Repräsentation in der Sprache. Beispiele: Listen,
MehrReal World Haskell Projekte 2
Real World Haskell Projekte 2 Julian Fleischer, Alexander Steen Donnerstag, 1. August 2013 Heute gilt es ein Projekt auszuwählen und in Gruppen von 2 bis 4 Studenten zu bearbeiten. Für alle Projekte gilt,
MehrMultimedia im Netz Wintersemester 2011/12
Multimedia im Netz Wintersemester 2011/12 Übung 01 Betreuer: Verantwortlicher Professor: Sebastian Löhmann Prof. Dr. Heinrich Hussmann Organisatorisches 26.10.2011 MMN Übung 01 2 Inhalte der Übungen Vertiefung
MehrGrundlagen der Programmierung 2 (1.C)
Grundlagen der Programmierung 2 (1.C) Prof. Dr. Manfred Schmidt-Schauÿ Künstliche Intelligenz und Softwaretechnologie 3. Mai 2006 Funktionen auf Listen: map map :: (a -> b) -> [a] -> [b] map f [] = []
MehrVerträge für die funktionale Programmierung Design und Implementierung
1 Verträge für die funktionale Programmierung Design und Implementierung RALF HINZE Institut für Informatik III, Universität Bonn Römerstraße 164, 53117 Bonn, Germany Email: ralf@informatik.uni-bonn.de
MehrPflichtenheft. AI-Soccer Frontend 2004/2005
Pflichtenheft AI-Soccer Frontend 2004/2005 Teilnehmer : Hanno Hugenberg Jens Henneberg Mathias Otto Betreuer: Prof. Maic Masuch Jan Fritz 1 Inhalt : 1. Aufgabenstellung 3 2. Lösungsansatz 3 3. Aufbau des
MehrLow-Level Client-Server Architektur
Softwareentwicklung in verteilten Umgebungen Einführung Übung 1 Low-Level Client-Server Architektur Alexander Lex 1 KEINE PLAGIATE! Einzel-Übungen! Eigenständige Arbeit jedes Teilnehmers Weitergabe von
MehrKapitel 5: Abstrakte Algorithmen und Sprachkonzepte. Elementare Schritte
Elementare Schritte Ein elementarer Berechnungsschritt eines Algorithmus ändert im Allgemeinen den Wert von Variablen Zuweisungsoperation von fundamentaler Bedeutung Zuweisungsoperator In Pascal := In
MehrKonzepte der Programmiersprachen
Konzepte der Programmiersprachen Lehrstuhl Prof. Plödereder Eduard Wiebe Institut für Softwaretechnologie Abteilung Programmiersprachen und Übersetzerbau Sommersemester 2007 Programm-Ausführung Programmiersprachen
MehrWas ist ein Compiler?
Was ist ein Compiler? Was ist ein Compiler und worum geht es? Wie ist ein Compiler aufgebaut? Warum beschäftigen wir uns mit Compilerbau? Wie ist die Veranstaltung organisiert? Was interessiert Sie besonders?
MehrWS 2011/2012. Georg Sauthoff 1. October 18, 2011
in in WS 2011/2012 Georg 1 AG Praktische Informatik October 18, 2011 1 gsauthof@techfak.uni-bielefeld.de Neue Übungsgruppen in neue Übungsgruppen neue Tutoren Sprechstunden in GZI-Arbeitsraum (V2-240)
MehrPraktische Informatik 3: Einführung in die Funktionale Programmierung Vorlesung vom 26.01.2011: Kombinatoren
Rev. 1347 1 [39] Praktische Informatik 3: Einführung in die Funktionale Programmierung Vorlesung vom 26.01.2011: Kombinatoren Christoph Lüth & Dennis Walter Universität Bremen Wintersemester 2010/11 2
MehrVorsemesterkurs Informatik
Stand der Folien: 31. März 2011 Vorsemesterkurs Informatik Sommersemester 2011 Grundlagen der Programmierung in Haskell SoSe 2011 Übersicht 1 Ausdrücke und Typen 2 Funktionen 3 Rekursion 4 Listen 5 Paare
MehrJavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.
JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung
MehrWelche Informatik-Kenntnisse bringen Sie mit?
Welche Informatik-Kenntnisse bringen Sie mit? So gehen Sie vor! Lösen Sie die Aufgaben der Reihe nach von 1 bis 20, ohne das Lösungsblatt zur Hilfe zu nehmen. Der Schwierigkeitsgrad der Aufgaben nimmt
MehrFunktionale Programmierung mit Haskell
Funktionale Programmierung mit Haskell Prof. Dr. Hans J. Schneider Lehrstuhl für Programmiersprachen und Programmiermethodik Friedrich-Alexander-Universität Erlangen-Nürnberg Sommersemester 2011 I. Die
Mehr2D22 Prinzipien der Softwareentwicklung. Prinzipien der Softwareentwicklung S. Strahringer 1
2D22 1 Inhalte der Lehrveranstaltung Einführung in die Programmierung mit PHP Literatur: Theis, Thomas (2010): Einstieg in PHP 5.3 und MySQL 5.4. [für Programmieranfänger geeignet]. 6., aktualisierte Aufl.
MehrProseminar: Moderne Technologien für die Entwicklung von verteilten, dynamischen Anwendungen
Proseminar: Moderne Technologien für die Entwicklung von verteilten, dynamischen Anwendungen Einführung Prof. Dr. Joel Greenyer 3. April 2013 Organisation Leitung: Joel Greenyer Büro: g322 email: greenyer@inf.uni-hannover.de
MehrTypdeklarationen. Es gibt in Haskell bereits primitive Typen:
Typdeklarationen Es gibt in bereits primitive Typen: Integer: ganze Zahlen, z.b. 1289736781236 Int: ganze Zahlen mit Computerarithmetik, z.b. 123 Double: Fließkommazahlen, z.b. 3.14159 String: Zeichenketten,
MehrWebentwicklung mit Vaadin 7. Theoretische und praktische Einführung in Vaadin 7. Christian Dresen, Michael Gerdes, Sergej Schumilo
Webentwicklung mit Vaadin 7 Theoretische und praktische Einführung in Vaadin 7 Christian Dresen, Michael Gerdes, Sergej Schumilo Agenda Allgemeines Architektur Client-Side Server-Side Vaadin UI Components
Mehrexpr :: Expr expr = Mul (Add (Const 3) (Const 4)) (Div (Sub (Const 73) (Const 37)) (Const 6))
1 - Korrektur 2 - Abstrakte Datentypen für arithmetische Ausdrücke Der Datentyp Wir beginnen zunächst mit dem algebraischen Datentyp für Ausdrücke. Hierfür definieren wir einen Konstruktor Number für Zahlen,
MehrEs ist für die Lösung der Programmieraufgabe nicht nötig, den mathematischen Hintergrund zu verstehen, es kann aber beim Verständnis helfen.
Ziele sind das Arbeiten mit Funktionen und dem Aufzählungstyp (enum), sowie - einfache Verzweigung (if else) - Alternativen switch case - einfache Schleifen (while oder do while) Aufgabe 3: Diese Aufgabe
MehrBeispiel für überladene Methode
Beispiel für überladene Methode class Gras extends Futter {... abstract class Tier { public abstract void friss (Futter x); class Rind extends Tier { public void friss (Gras x) {... public void friss (Futter
MehrFunktionale Programmierung mit Haskell
Funktionale Programmierung mit Haskell Prof. Dr. Hans J. Schneider Lehrstuhl für Programmiersprachen und Programmiermethodik Friedrich-Alexander-Universität Erlangen-Nürnberg Sommersemester 2011 I. Die
MehrZwischencodeerzeugung Compiler II
Zwishenodeerzeugung Compiler II Prof. Dr. Ursula Goltz 14.09.2012 Einleitung Front-End... Parser Sem. Analys Zwishenodegenerator Bak-End Codegenerator... Zwishendarstellung (Zwishenode) evtl. mashinennunabh.
MehrSoftware Engineering I
Software I Übungsblatt 1 + 2 Claas Pinkernell Technische Universität Braunschweig http://www.sse.cs.tu-bs.de/ Seite 2 Welche Werkzeuge? Programmiersprache Java Integrierte Entwicklungsumgebung Eclipse
MehrTag 6. Module, benannte Funktionen und Rekursion
Tag 6 Module, benannte Funktionen und Rekursion Wir verlassen nun die abgeschlossene kleine Welt des interaktiven Interpreters und lernen, wie man richtige Haskell-Programme schreibt. Im Interpreter haben
MehrFunktionale Programmierung mit Haskell
Funktionale Programmierung mit Haskell Prof. Dr. Hans J. Schneider Lehrstuhl für Programmiersprachen und Programmiermethodik Friedrich-Alexander-Universität Erlangen-Nürnberg Sommersemester 2010 I. Die
Mehr2.5 Listen. Kurzschreibweise: [42; 0; 16] Listen werden mithilfe von [] und :: konstruiert.
2.5 Listen Listen werden mithilfe von [] und :: konstruiert. Kurzschreibweise: [42; 0; 16] # let mt = [];; val mt : a list = [] # let l1 = 1::mt;; val l1 : int list = [1] # let l = [1;2;3];; val l : int
MehrInformatik I Übung, Woche 40
Giuseppe Accaputo 2. Oktober, 2014 Plan für heute 1. Fragen & Nachbesprechung Übung 2 2. Zusammenfassung der bisherigen Vorlesungsslides 3. Tipps zur Übung 3 Informatik 1 (D-BAUG) Giuseppe Accaputo 2 Nachbesprechung
MehrAPEX URLs Suchmaschienen- und Benutzerfreundlich
APEX URLs Suchmaschienen- und Benutzerfreundlich Christian Rokitta themes4apex Leusden (NL) Schlüsselworte APEX, URL, Parameter, Suchmaschinen, PLSQL, Google Analytics, Restful Services Einleitung Im Vergleich
Mehr1 Grammar Engineering. 2 Abstrakte Syntax als abstrakte Algebra. 3 LL(1)-Parser. 4 LR Parser. 5 Fehlerbehandlung. 6 Earley Parser
1 Grammar Engineering 2 Abstrakte Syntax als abstrakte Algebra 3 LL(1)-Parser 4 LR Parser 5 Fehlerbehandlung 6 Earley Parser Zusatzfolien Syntaktische Analyse Wintersemester 2008/09 1 / 44 Grammar Engineering
MehrProgrammieren I. Kapitel 5. Kontrollfluss
Programmieren I Kapitel 5. Kontrollfluss Kapitel 5: Kontrollfluss Ziel: Komplexere Berechnungen im Methodenrumpf Ausdrücke und Anweisungen Fallunterscheidungen (if, switch) Wiederholte Ausführung (for,
MehrPython Programmierung. Dipl.-Ing.(FH) Volker Schepper
Python Programmierung Kontaktdaten Homepage: http://wwwlehre.dhbw-stuttgart.de/~schepper/ Email: Volker. Schepper [A@T] yahoo.de Vorlesung Skriptsprachen Vorlesung: 06.03.2013 13.03.2013 20.03.2013 27.03.2013
MehrKorn-Shell: Einführung in Shellscripte 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung
1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung 1. Übersicht und Einführung 1.1 Die Shell allgemein 1.2 Die korn-shell 1.3 Der Weg zum ersten Skript 1.4 Nutzen und
MehrRuby. Programmieren mit Zucker. Thomas Kühn
Ruby Programmieren mit Zucker Thomas Kühn Gliederung Geschichte Philosophie Syntax mit Zucker Sprachkonzepte Pakete und Frameworks Ausblick Beispiele Yukihiro Matz Matsumoto Geboren am 14.April 1965 Geschichte
MehrFunktionale Programmierung. ALP I Lambda-Kalkül. Teil IVb WS 2012/2013. Prof. Dr. Margarita Esponda. Prof. Dr. Margarita Esponda
ALP I Lambda-Kalkül Teil IVb WS 2012/2013 λ-kalkül-parser Hilfsfunktionen: Die break-funktion ist eine Funktion höherer Ordnung, die eine Liste beim ersten Vorkommen einer Bedingung in zwei Listen spaltet.
MehrEinführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015
Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 4, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)
Mehrzu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme
Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen
MehrAlles außer Java! JVM-Sprachen sagen Happy Birthday
JUGS 20 Jahre Java Alles außer Java! JVM-Sprachen sagen Happy Birthday Jan-Paul Buchwald BeOne Stuttgart GmbH 15 Jahre JVM Sprachen Jython Rhino 2001: JRuby Groovy Scala 2007: Clojure 1992 2002 2012 1992:
MehrLanguage Workbench. Aktuelle Themen der Softwaretechnologie. Vortrag von: Arthur Rehm Steven Cardoso. Betreut von: Prof. Dr.
Language Workbench Vortrag von:! Aktuelle Themen der Softwaretechnologie Arthur Rehm Steven Cardoso Betreut von: Prof. Dr. Reichenbach [1] !2 Index Kontext Domain Specific Language (DSL) Language Workbench
MehrQuellcode-Repräsentation in Eclipse. Seminarvortrag PG Reclipse Jan Rieke
Quellcode-Repräsentation in Eclipse Seminarvortrag PG Reclipse Jan Rieke Gliederung Motivation Architektur von Eclipse Quelltext-Repräsentation in Eclipse Java-Modell Java DOM/AST Zusätzliche Konzepte
MehrMulti-Threading wie in C++11
Multi-Threading wie in C++11 Franco Chiappori Embedded Computing Conference 2013 Reiseroute Guards Lock-Free Data Structures Futures Promises Atomic Types Memory Barriers Compiler / Prozessor Compiler
MehrEntwicklungsumgebungen. Packer, Vagrant, Puppet. Alexander Pacnik Mannheim, 10.11.2014
Entwicklungsumgebungen Packer, Vagrant, Puppet Alexander Pacnik Mannheim, 10.11.2014 inovex... über inovex und den Referenten 2 Entwicklungsumgebungen... Übersicht Einführung Packer Konfiguration Packer
MehrDefinition von domänenspezifischen Sprachen mit Xtext: Einführung. 19. November 2014
Definition von domänenspezifischen Sprachen mit Xtext: Einführung 19. November 2014 Überblick Was ist zu tun, wenn wir selbst einen Ansatz für modellgetriebenen Entwicklung definieren wollen? Anforderungserfassung
MehrGrundlagen der Informatik 2
Grundlagen der Informatik 2 Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 1 Gliederung 1. Einführung
MehrFunktionale Programmierung mit Haskell
Funktionale Programmierung mit Haskell Dr. Michael Savorić Hohenstaufen-Gymnasium (HSG) Kaiserslautern Version 20120622 Überblick Wichtige Eigenschaften Einführungsbeispiele Listenerzeugung und Beispiel
MehrKurze Einführung in die Programmiersprache C++ und in Root
Kurze Einführung in die Programmiersprache C++ und in Root Statistik, Datenanalyse und Simulation; 31.10.2006 Inhalt 1 Einführung in die Programmiersprache C++ Allgemeines Variablen Funktionen 2 1 Einführung
MehrTag 7. Pattern Matching und eigene Datentypen
Tag 7 Pattern Matching und eigene Datentypen Heute werden wir eine Technik kennenlernen, die dafür sorgt, daß wir sehr viel übersichtlichere und kürzere Programme schreiben können. Als Überleitung auf
MehrProgrammieren mit Go. Sebastian tokkee Harl
Programmieren mit Go Sebastian tokkee Harl Überblick Was ist Go? https://golang.org/ Open Source Programmiersprache imperativ, Interfaces, Pakete statisch typisiert, kompiliert Nebenläufigkeit
MehrFrage: Gibt es Dinge die wir nur in anderen Sprachen berechnen können? Was kann man wirklich mit dem λ-kalkül ausdrücken?
3 Der λ-kalkül Ausdruckskraft des λ-kalküls 3.7 3.7 Ausdruckskraft des λ-kalküls Frage: Gibt es Dinge die wir nur in anderen Sprachen berechnen können? Was kann man wirklich mit dem λ-kalkül ausdrücken?
MehrMonadische Parser. Syntax-Analyse mit Haskell. Mathias Mierswa (winf2920) Thomas Stuht (inf6937) 8. Januar 2009
Monadische Parser Syntax-Analyse mit Haskell Mathias Mierswa (winf2920) Thomas Stuht (inf6937) 8. Januar 2009 Monadische Parser (Funktionale Programmierung WS 08/09) Gliederung 1 Motivation 2 Grundlagen
MehrAlgorithmen mit Python
Algorithmen mit Python Vorbesprechung zum Proseminar im Sommersemester 2009 http://www.python.org 1 Sie lernen in DAP Java und C/C++: 80% Syntax, 20% Algorithmen-Design Idee Schon ein einfaches Hello World
MehrEinführung in wxwidgets & wxdev-c++
Einführung in wxwidgets & wxdev-c++ Vortrag im Rahmen der Vorlesung Computational Physics im Sommersemester 2009 Folie 1/13 Gliederung wxwidgets: Übersicht wxdev-c++: Übersicht Installation wxwidgets Syntax
MehrProgrammierkurs Python I
Programmierkurs Python I Michaela Regneri 2009-10-30 (Folien basieren auf dem gemeinsamen Kurs mit Stefan Thater, der für diese Vorlesung auf Alexander Kollers Java-Kurs basierte) Organisatorisches Wöchentliche
MehrC.3 Funktionen und Prozeduren
C3 - Funktionen und Prozeduren Funktionsdeklarationen in Pascal auch in Pascal kann man selbstdefinierte Funktionen einführen: Funktionen und Prozeduren THEN sign:= 0 Funktion zur Bestimmung des Vorzeichens
MehrGrundlagen der Programmierung in C++ Kontrollstrukturen
Grundlagen der Programmierung in C++ Kontrollstrukturen Wintersemester 2005/2006 G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de Block Keine Kontrollstruktur im eigentlichen Sinn Dient
MehrAlgorithmen und Datenstrukturen CS1017
Algorithmen und Datenstrukturen CS1017 Th. Letschert TH Mittelhessen Gießen University of Applied Sciences Organisatorisches und Einführung Lehrpersonal Dozent Dr. Letschert Tutoren Alissia Sauer Jonas
MehrKontrollstruktur Verzweigung am Beispiel einer Spiel-KI für das Würfelspiel Meiern
Unterrichtsreihe: Erweiterung eines objektorientierten Modells zum vollständig lauffähigen Programm Kontrollstruktur Verzweigung am Beispiel einer Spiel-KI für das Würfelspiel Meiern Inhaltsverzeichnis
MehrFunktionale Programmierung mit Haskell
Funktionale Programmierung mit Haskell Prof. Dr. Hans J. Schneider Lehrstuhl für Programmiersprachen und Programmiermethodik Friedrich-Alexander-Universität Erlangen-Nürnberg Sommersemester 2011 I. Die
MehrHaskell. A Wild Ride. Sven M. Hallberg. sm@khjk.org. 21C3 Berlin / Bildungswerk Hamburg 20.6.2007 p. 1/36
21C3 Berlin / Bildungswerk Hamburg 20.6.2007 p. 1/36 Haskell A Wild Ride Sven M. Hallberg sm@khjk.org 21C3 Berlin / Bildungswerk Hamburg 20.6.2007 p. 2/36 Überblick Vorsichtsmaßnahmen Einführung und Sprachgrundlagen
Mehr