Description
Course info
Rating
(57)
Level
Advanced
Updated
Apr 9, 2010
Duration
2h 34m
Description

Clojure is a new Lisp that runs on the JVM and CLR, and provides interesting new ways to write highly concurrent programs. Rather than make use of complicated locking primitives, Clojure provides a set of powerful, immutable-by-default data types and adds language-level support for mutating them in controlled ways. We'll examine just enough Clojure syntax to allow us to delve into this approach to managing concurrency-based complexity. No previous exposure to Clojure is assumed or required.

About the author
About the author

Specializing in large-scale web system implementation, Craig spent his early career working with COM and C++, but since 2001 has been teaching and consulting full-time on the .NET platform in C#. Craig has written for MSDN magazine and spoken at conferences both nationally and internationally.

Section Introduction Transcripts
Section Introduction Transcripts

Introduction
[Autogenerated] Hi, My name's Craig and ERA, and I'm here to talk to you about concurrent programming. Enclosure Closure is a relatively new language that has some interesting features meant to enable concurrent programming. We're gonna talk about why they're interesting and how close your achieved them. I'm going to approach the topic from the perspective of someone who hasn't seen closure before or indeed, of someone who may never have seen any list before. Because closure is a list member of that language family. I'm also going to come at it from the perspective of someone who spends most their time working with C Sharp using visual studio dot net. Since that's my background. So we're gonna talk about closure concurrency features. And in order to do that first, we're gonna look at just enough closure syntax so you can follow the code examples that I'll be showing from there we'll take a look at closure support for bars and mutability, which are key aspects of its support for concurrent programming and then from there will dive into the various reference types of closure provides Adams agents and refs, and these are the primary mechanisms that closer provides for sharing beautiful state, which is the main problem with concurrent for it. That's the hard part of it. Finally, we'll touch in a few other features, such as validators watchers, promises and futures, and we'll talk about what exactly all of those things are now. I also want to make sure to mention that the things that we're not going to talk about specifically, we're not gonna talk about how to set up closure. We're not gonna talk about tooling. We're not gonna talk about all the language features that are available or anything like that. Really, We just want to focus on the concurrency features of the language because I think it's very interesting, even for a dot net programmer to see what other environments are using, since you never know what the next version of our tools might look like. And there's a lot of good ideas here, and maybe we can get some inspiration or gain some understanding of what we may see Some day