archives

Good Language Design Principals for Scripting Languages

I work for a vendor of an application for the management of trades. We would like to extend an application with a simple scripting language for batch processing. The idea being that someone non-technical could use a script to schedule processor intensive tasks, such as pricing a portfolio, to run over night. What we have in mind is something very simple just a few verbs and noun pairs, i.e.

import "fixing.dat"
price "portfolio a"

The script would then be run by a scheduler.

However, I vaguely remember a discussion on ltu about "ant" starting off like this with relatively simple objectives, but getting a bit bogged down because people inevitably used it for more complex scripting tasks. I think the designers of the language ended up saying they’d have been better off applying good language design principals up front. So my question is what sort of good language design principals should be applying to a litte scripting language like this? Or would it better to use an existing scripting language? Part of the application is written in caml so this would probably the scripting language of choice, but I’m a bit worried would be over kill.

Registration for the 10th ICFP Programming Contest is open

Registration for the 10th ICFP Programming Contest is now open.

You can register via the homepage of the contest:

http://www.icfpcontest.org/

-- The organisation team

.NET-oriented metaprogramming framework for rapid compiler development

Message deleted, see thread below for explanation.

I decided to leave the thread here, because I think the discussion may help orient new members.

The original poster is not banned, and is invited to repost a more appropriate message - per the suggestions below - if he so wishes.

-- Ehud

Q tutorial

Q (a functional PL based on term rewriting) has been mentioned on LtU a few times before, so I thought I should point out that there is a new tutorial available, which is supposed to provide a quick and informal introduction to the language.

From the preface: "In a nutshell, Q is a kind of functional programming language with a syntax similar to Miranda and Haskell, but with general term rewriting instead of the lambda calculus as the underlying computational model. [...] Q has some fairly unique features, in particular its user-definable special forms and algebraic types with inheritance, which makes it a somewhat exotic but powerful member of the FP language zoo."

You can download the tutorial here (PDF): Q in a Nutshell

More information about Q can be found here: http://q-lang.sf.net/