BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Presentations Clojure and LLVM

Clojure and LLVM

Bookmarks
33:59

Summary

Timothy Baldridge presents clojure-py2, a compiler written in Clojure that uses LLVM for code generation.

Bio

Timothy Baldridge is a developer at Relevance Inc. He enjoys studying compilers, low level optimization and new programming paradigms.

About the conference

Clojure/West is the newest conference creation from Alex Miller (aka @puredanger). Alex has been running the Strange Loop conference in St. Louis since 2009, smashing together the worlds of functional and dynamic programming languages, concurrency, distributed systems, web and mobile. Since early 2010, Alex has also been part of a team using Clojure at Revelytix.

Recorded at:

Jul 16, 2013

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • Slides missing

    by Axel Katerbau,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    It seems that slides are missing starting at the mid of the talk?

  • Slides missing

    by Timothy Baldridge,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Sadly, InfoQ doesn't record live coding. So half way through all the examples were done in emacs and output to the projector. I guess it was too hard for the camera man to pan over to the screen.

  • Re: Slides missing

    by Timothy Baldridge,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    however, the examples are available here: github.com/halgari/mjolnir/tree/master/src/exam...

  • Fascinating - what about memory use?

    by Michael Swierczek,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    The presentation is amazing, thanks. I really should fill in more of the gaps in my knowledge of compilers.

    It's my understanding that Java performance, especially when the JVM is "warmed up", is very close to well-written C. Your Mandelbrot example seems to bear that out. On the other hand, because of the way the JVM works a program running on the JVM typically uses far more - even 10 or 100 times more - memory than an equivalent C program. That doesn't matter for many programs, but for a smart phone or Raspberry Pi I can imagine many Java programs would run out of RAM well before they had taxed the CPU.

    Did you benchmark memory usage for Mendelbrot between your Java implementation and the Mjolnir/LLVM version?

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT