BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Languages Content on InfoQ

  • Programming Languages: More Powerful with Less Freedom?

    In quest for more power, languages are often grown with new features. While it provides programmer with more freedom, does this actually achieve more power? Reg Braithwaite believes that this is not necessarily true and argues that it is possible to render language more powerful yet limiting options offered to programmers.

  • David Pollak on lift and Scala

    With the release of lift 0.6, the web application framework for Scala, InfoQ took the opportunity to ask David Pollak some questions around lift and developing in Scala.

  • Debate about Testing and Recoverability: Object Oriented vs. Functional Programming Languages

    In his latest blog post, Michael Feathers argued that object oriented programming languages offer some built-in features that facilitate testing and are therefore more recovery friendly than functional languages. Proponents of functional languages expressed strong disagreement with this statement, which provoked a very passionate debate in the blog community.

  • Rush - OOP shell in Ruby

    Rush is a new OOP shell written in Ruby. Unlike shells like bash, Rush has commands interacting with objects instead of strings, which allows to use regular Ruby constructs to iterate over files and other objects. Rush goes further with remote shell functionality and more. InfoQ caught up with Adam Wiggins the creator of Rush.

  • Interview: CORBA Guru Steve Vinoski on REST, Web Services, and Erlang

    In a new interview, recorded at QCon San Francisco 2007, CORBA Guru Steve Vinoski talks to Stefan Tilkov about his appreciation for REST, occasions when he would still use CORBA and the role of description languages for distributed systems. Other topics covered include the benefits of knowing many programming languages, and the usefulness of of Erlang to build distributed systems.

  • Ruby 1.9 with Symbol#to_proc and (soon) curried Procs

    Ruby 1.9 added the to_proc feature to Symbol, which allows for a very succinct way to create Procs that just call one method. Also: a recent development version of 1.9 added currying to Ruby. We look at how these features work and what they can be used for.

  • Presentation: Ruby and the Art of Domain Specific Languages

    Rich Kilmer gives an introduction to the art of creating Domain Specific Languages in Ruby. The presentation gives a basic introduction, but moves on to useful distinctions in DSL styles, such as implicit vs. explicit internal DSLs or declarative vs. imperative DSLs. A look at a long list of real world DSLs Rich has created rounds of the presentation.

  • QCon Panel: What will the Future of Java Development Be?

    In this panel from QCon San Francisco, Joshua Bloch, Chet Haase, Rod Johnson, Erik Meijer and Charles Nutter discussed and debated the future of the Java language and APIs based upon the lessons we have learned from the past. Topics included static versus dynamic languages, removing code from Java, forking the JVM, and the next big programming language.

  • Article: An Approach to Internal Domain-Specific Languages in Java

    In this article, Alex Ruiz and Jeff Bay describe Java's suitability as a DSL-producing language, delve into the creation of internal DSLs in Java, walk through an example of a Java-based internal DSL, and give recommendations on writing DSLs in Java.

  • Communicating Intent through Idiom and Paradigm Selection

    What about using idioms and programming conventions as signals to achieve more readability and expressiveness? This is what Reg Braithwaite advocates for, suggesting that syntax or even paradigm choices can be a means to communicate the intent.

  • Using ParseTree for LINQ-style queries and extracting metadata

    Whether it's LISP macros or LINQ's expression trees - access to the AST of code is a powerful tool. We look at how ParseTree allows this in Ruby - and how it's being used in libraries like Ambition, Sequel and the web framework Merb.

  • Visual C++ 2008 Feature Pack Beta Now Downloadable

    The Visual C++ 2008 Feature Pack beta is available for download. The Feature Pack extends the VC++ Libraries which come with Visual Studio 2008.

  • Scalability: Dynamic and Static Programming Languages

    In the wake of the demise of Chandler personal information management project, a discussion has occurred on TSS about the scalability potential of dynamic languages. Ted Neward attempted to go beyond language quarrel in order to provide some structured insights on this issue.

  • A Look at the First HTML 5 Working Draft

    The World Wide Web Consortium (W3C) has published a draft of the HTML 5 specification, which reflects the changing nature of the web since HTML 4 was released more than 10 years ago.

  • New Scala Tutorials for Java Developers

    Scala continues to make news with two more tutorial series, one by Ted Neward at IBM’s developerWorks and one by Daniel Spiewak on his blog.

BT