programming-talkscurated list on GitHubRecommends
Under “Clojure”
Solving Problems with Automata 00:38:03 by **Mark Engelberg & Alex Engelberg** (2015)
#finite-state-machines#constraint-solving#loco
111K subscribers • 159 videos on Hallway
Intermediate. Assumes working knowledge.
13K views10 years ago2 recommendations
Computer scienceProgramming languagesLisp and ClojureAlgorithmsComputation and complexity
Mark Engelberg and Alex Engelberg demonstrate how to solve complex programming puzzles and constraint problems using finite state machines in Clojure.
Many of us have hazy memories of finite state machines from computer science theory classes in college. But finite state machines (FSMs) have real, practical value, and it is useful to know how to build and apply them in Clojure. For example, FSMs have long been popular to model game AIs and workflow rules, and FSMs provide the behind-the-scenes magic that powers Java's regexes and core.async's go blocks. In this talk, we'll look at two programming puzzles that, suprisingly, have very elegant solutions when looked at through the lens of FSMs, with code demonstrations using two different Clojure libraries for automata (automat and reduce-fsm), as well as loco, a Clojure constraint solver. About the speakers: Mark Engelberg has been an active member of the Clojure community ever since Clojure turned 1.0, and is the primary developer of math.combinatorics, math.numeric-tower, data.priority-map, ubergraph, and a co-developer of instaparse. By day, he teaches Scheme and Clojure to talented kids in the Seattle area; by night, he creates logic puzzles and games, using Clojure as his "secret weapon". His latest game is Code Master, a programming-themed puzzle game for kids, available exclusively at Target (and created with Clojure, of course!) Alex Engelberg was indoctrinated by his father in the ways of functional programming at a young age, and Clojure rapidly became his language of choice. He is happy to be using Clojure professionally as a software engineer at SecureOne in Seattle. Alex also enjoys contributing to open source; he is the primary developer of loco, and co-developer of instaparse.What people say. Recommended as a demonstration of using constraint solving and automata in Clojure.
programming-talkscurated list on GitHubRecommends
Under “Clojure”
u/chromalchemyin r/Clojure • Recommends
On “How to get started with time table generation?”