1 - Monad-Based Programming [ID:10747]
50 von 346 angezeigt

Okay, so, right, my name is Sergey.

Probably right is done.

Okay, well anyway.

So I named this course Monad programming.

Yeah, okay, by the way, about my question, is it all right?

That is going to be in English.

This is my first time that I'm giving it in English, I guess.

So, but for me it's easier.

I mean, I could do it in German,

but this is more effort for me.

I mean, you could do it,

but I would need to learn all the terms before,

and I'm going to make lots of mistakes,

and stumble, and stutter, etc.

So I'm much more fluent in English.

So I named the course Monad based programming,

and I'm not sure if you have the right expectation about the word programming.

I remember as a student,

I've been to the university and I came for the first time to a lecture which was

called linear programming or mathematical programming,

and lots of people were very frustrated because it was

not so much about programming,

actually it was not about programming at all.

Well, this is not true for this case.

It's going to be connected to this programming,

I think much more than the linear programming.

But this shouldn't be understood as coding.

We are not going to write programs every day,

and learn the syntactic details of some particular language.

I mean, we are going to do some programming,

I'm playing that, but basically as an illustration to the material we're going to learn.

I mean, this is my intention at least.

So we're going to learn certain things,

and to make it more fun and more easy,

we're going to program something.

I think nothing very complicated.

Basically, I think we will try to stick to Haskell.

Because presently, this provides the best background for the things you're going to learn.

So the title involves the word monad.

Monad is a certain concept which

defines your mind about how you do the programming.

So it's like classes in C++.

So if you learn classes,

then you put certain glasses on your face,

and see everything in terms of objects in classes.

You look at the table and say,

okay, this is probably an object of some class furniture.

So on whatever you look at,

you try to see it in terms of object and classes,

inheritance, virtual inheritance, whatever, virtual functions.

Teil einer Videoserie :

Zugänglich über

Offener Zugang

Dauer

00:48:51 Min

Aufnahmedatum

2015-04-14

Hochgeladen am

2019-04-23 22:59:03

Sprache

en-US

The course provides a background to various topics of the theory of programming. As a guiding paradigm monad-based functional programming is chosen. The idea of the course is to provide clear computational insights to various concepts of computer science and to practice these by concrete implementations in suitable programming languages such as Haskell.

Lernziele und Kompetenzen:

 

Fachkompetenz Wissen Students demonstrate an understanding of the role of computational monads in the context of functional programming and as a semantic tool for programming and system specification; Students reproduce the main definitions and results on monads, monad combination, and further categorical constructions end explain them from a programming perspective. Anwenden Students use the monad-based approach to formalise examples involving various kinds of computational effects as monads. Students use monads for practical programming in programming languages, such as Haskell. Analysieren Students identify various computational effects as monads and provide an appropriate treatment of problems from various semantic domains (probabilistic, nondeterministic, concurrent), possibly providing a monad-based software implementation. Selbstkompetenz Students will be regularly provided with small challenges in form of exercises to be able to have a gradual progress with the lecture material.    

Tags

functional monads programming haskell equational reasoning
Einbetten
Wordpress FAU Plugin
iFrame
Teilen