InfoQ Homepage Languages Content on InfoQ
-
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.
-
Interview: Evan Phoenix on Rubinius
Evan Phoenix, lead developer of the Rubinius project talks to InfoQ about the latest developments of Rubinius, a modern Ruby VM loosely based on the Smalltalk-80 architecture.
-
A .NET Triumvirate: IronScheme, IronLisp, and Xacc
Dynamic Languages are all the rage over the last year. Thanks to Llewellyn Pritchard two classics, Lisp and Scheme, are receiving the attention they deserve to run on the .NET runtime.
-
Concept Programming
Looking for a way to cope with the increasing complexity in software? Concept programming introduces a new way to look at how software is conceived and created, by closing the gap of how you represent the business problem concepts in your head and in code.
-
Mark Mahieu Creates CICE Closure Prototype
One of the hottest topics in Java in recent years has been around adding full closure support to the Java language. Given the complexity that closures could introduce however, it is difficult to judge their full impact without being able to experiment with prototypes for the various proposals.
-
Interview: Didier Girard, are GWT and Volta GCC for the Web?
Microsoft released a preview of Volta last month. Some people have commented that Volta was a direct competitor to GWT. InfoQ talked to Didier Girard, CTO of SFEIR and GWT expert to ask him how they compare and share his perspective on what they represent for developers.
-
Python Web Framework on the JVM
Recently there has been a lot of news about numerous languages making their way onto the JVM, providing endless possibilities. Python has been around for years and its JVM implementation, Jython, hopes to bring a Python web framework to the JVM. It could prove to be what Rails is to Ruby and Grails is to Groovy.
-
Treetop - PEG parser generator for Ruby
Parsing Expression Grammars (PEG) are a type of recursive descent parsers that have become quite popular recently. Now Ruby gets its own PEG parser generator with Treetop.
-
The state of the Lambda in Ruby 1.9
One of Ruby 1.9's little additions is a new, more concise way to create lambda functions, amongst some other clarifications in the way Blocks work. We take a look at the changes and the reasons for them.