BT

InfoQ Homepage Presentations Clojure: Towards The Essence Of Programming

Clojure: Towards The Essence Of Programming

Bookmarks

Bio

Howard Lewis Ship is the creator of the Apache Tapestry project, and is a noted expert on Java framework design and developer productivity. He has over twenty years of full-time software development under his belt, with over ten years of Java. Howard is a frequent speaker at JavaOne, NoFluffJustStuff, ApacheCon and other conferences, and the author of "Tapestry in Action". Twitter: @hlship.

About the conference

The « What's Next » conference will be the biggest Java event ever organized in France as of 2011, gathering the vibrant French community. It will gather all the most important Java experts of the world around various high-level interventions. The goal of this annual conference is to bring the audience the most up-to-date information on the new and emerging technologies around the Java platform.

Recorded at:

Aug 22, 2011

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

  • Nice presentation!

    by Donald Parish /

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

    I've enjoyed his previous presentation also. Nice intro to Clojure.

  • Nice introduction to Clojure

    by Denis Fuenzalida /

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

    I found this intro easy to follow and very informative. I would to see more Clojure material published on InfoQ, all is excellent material.

  • Why Simula (and OOP) as a model for solving problem is not so strange

    by jean-simon Larochelle /

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

    The reason why Object Oriented programming became a model for solving problems with software is not so strange. The reason is because a large class of programs are very much like a simulation. For example, think about what is involved in an inventory software for a store. A large part of this software is simulating what is actually happening in the real world (items being removed or put on the shelves - sold and bought). The same is true for several other types of programs (software for a bank, flight reservation, ...).
    In fact despite the functional programming hysteria OO is still a good way to structure software. The verbose syntax of Java is not intrinsic to OO. In fact some OO languages are less verbose.
    For me the productivity gains of moving to OOP from procedural programming have been impressive and I think the best attitude about this is to remain open to new techniques and to use them when appropriate.

  • Thanks for the comments

    by Howard Lewis Ship /

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

    I'm sorry for some of the "ums" and "ahs" ... I was very badly jet-lagged. I'm glad they included the questions (and edited out the worrying period waiting for the first question!).

  • Re: Why Simula (and OOP) as a model for solving problem is not so strange

    by Howard Lewis Ship /

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

    It's not a question of modeling so much as a question of how state & properties of objects are stored and how the are operated upon. Java-style OO uses individual classes and almost universally encapsulates mutable data in private fields backed by public accessor methods ... and it's so dogmatic that people's heads' spin if you have a Java class with public fields. Clojure may do a better job of modeling these properties because the immutability embraces the idea that any set of properties is a snapshot of one instant within a continuum of time.

  • Re: Why Simula (and OOP) as a model for solving problem is not so strange

    by jean-simon Larochelle /

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

    I understand the problems with the way state is managed in "traditional" OO languages like Java. I was just pointing out some reasons why OOP languages became so dominant despite their imperfection. You seemed puzzled by that in your presentation pointing out the fact that Simula was a language for simulation. My point is that this is a very good reason to select languages similar to Simula (a lot of programming is simulation).

  • Nice presentation, but should we adopt it?

    by Srikanth Shreenivas /

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

    Thanks for great introduction to a new language. I noticed that programming seems to be following prefix expression style (en.wikipedia.org/wiki/Polish_notation).

    I am still not sure why would one switch to this language, unless you are working on open source projects and want to replicate/create frameworks that are available in other languages. While for every new project, one discusses which technology stack to use, langauge choice never comes up. Most orgranization/departments are already committed to one language, and it pays off to stick with that choice considering the fact that code has to be maintained for atleast few years to get some ROI.

    Regards,
    Srikanth

  • Cobol

    by Neil Murphy /

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

    Interestingly Cobol also has a built in sort function ....

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

Is your profile up-to-date? Please take a moment to review and update.

Note: If updating/changing your email, a validation request will be sent

Company name:
Company role:
Company size:
Country/Zone:
State/Province/Region:
You will be sent an email to validate the new email address. This pop-up will close itself in a few moments.