Skip to content
0:00 / 0:00

#erlang#languageprocessing#simonthompson

Erlang Master Class 1: Video 1 - Introduction to language processing

Kent Computing

1.4K subscribers • 1 video on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.
  • Presented by Simon Thompson, Professor of Logic and Computation at the University of Kent

Intermediate. Assumes working knowledge.

25K views11 years ago1 recommendation

Programming languagesComputer scienceElixir and ErlangFunctional programmingCompilers and interpreters

Simon Thompson introduces language processing in Erlang, focusing on representing and processing arithmetical expressions.

cs.kent.ac.uk/ErlangMasterClasses These Master Classes will show you how Erlang can be used in practice to solve larger problems. The examples provide 'capstones' for different aspects of Erlang: functional programming, concurrent programming and larger-scale programming with OTP. In this first master class we look at language processing in general, and in particular we focus on processing arithmetical expressions in a language like Erlang; of course, this is a model for processing all sorts of other languages: XML, domain-specific languages, test and “make” systems and so on. Once a representation is established, we show how this representation can be interpreted, or compiled and run on a virtual machine. Expressions can also be simplified symbolically, as well as converted to and from a textual form. Simon Thompson is Professor of Logic and Computation at the University of Kent. He has been a teacher and researcher in functional programming for most of his career. Recent research has concentrated on refactoring programs in Erlang and Haskell, and he is the author of textbooks on Erlang, Haskell, Miranda and type theory.

Why it's here

1 person recommends this

What people say. Recommended as an excellent introduction to functional language processing and Erlang's elegant approach to building language tools.

u/snarkuzoidin r/ProgrammingLanguages • Recommends

On “could someone direct me to resources to make my own programming language?”

Others have answered you well, so let me approach it differently. I'll assume you're a competent developer, have assembled the tools you need, read some books, etc. This is how I start with a new language: First, figure out what the syntax of your language (let's call it "L"). You don't need all of it, just a smallish subset to play with. Write some code in it. Little toy programs. See if you can express what you want your pretend program to do. Are parts of it awkward? Are you missing constructs? Don't set anything in stone, tinker with it until you have something you like. And know that you'll likely change much of it as you go further. Next, read up about lexers and parsers. I'll assum…

u/snarkuzoidin r/ProgrammingLanguages • Recommends

On “Is there a programming language that will blow my mind?”

Erlang blew my mind two decades ago, and it has remained blown. A small set of well designed primitives provides immense power. The syntax has a little cruft to it, but overall is elegant and spare. To get a taste, check out the video series from University of Kent here. Over the course of a few videos he builds some language processing tools that really give a good feel for the functional approach. Later videos get into the concurrency and distribution aspects, OTP, all that good stuff. I would avoid, for now, Elixir. While it inherits much of what Erlang provides, there's a whole lot more piled on top that obscures the elegance and simplicity of the Erlang approach. You can always learn…

u/snarkuzoidin r/ocaml • Mentions

On “Doing practical projects in OCaml”

Check out this relatively short series of tutorials on language processing with Erlang, from the University Of Kent