2nd PGD Challenge Official Announcement

Planned dates are from March 30th to April 29th, below is an excerpt from the announcement, head over to the PGD Challenge page for more details:

In a couple of weeks we are going to start the next PGD Challenge with a brand new theme. As promised it will be simple, yet fun for creating ideas. The development period will last about 4 weeks, plus a weekend to wrap things up. All are welcome to participate.

It’s going to be a lot of fun. There is lots of possibilities from the theme I’ve picked and I hope you will have fun with it.

All game entries must be made using a Pascal-based programming language or they will be disqualified. The game can take advantage of any game library or API written in another language, but the core of the game must be written in a Pascal-based language.

Allowed Pascal-based Languages:

  • Pascal (aka Classic Pascal, Borland Pascal, etc)
  • Object Pascal (called “Delphi language” by some)
  • Objective-Pascal
  • Oxygene (new language based on Object Pascal)

Key Development tools that support the above languages:

  • Delphi
  • Free Pascal
  • Lazarus
  • Prism (Oxygene for .NET)
  • Oxygene for Java
  • Smart Mobile Studio

DWScript 2.3 preview 1

A new DWScript 2.3 source archive is available (417 kB) for the SVN-averse, the previous available zip was the 2.2 version, which is quite outdated. Given the continuous extension of the unit tests suite, this should hopefully be one of the most stable versions to date, in addition to being the most advanced, but it’s likely less stable and less advanced than the SVN version will be when you’ll read these lines 😉

(more…)

“Live” IDE scripting for DWScript

DWS compiler and execution engine are reaching very nice maturity levels, meaning they can be used to compile & execute code interactively, for instance to edit a web page, which mixes HTML, CSS, server-side dynamic Object Pascal content generation and client-side Object-Pascal scripted content.

(more…)

“heredoc” multi-line strings

DWScript now supports multi-line strings, aka “heredoc”, using the same syntax as Prism/Oxygene, which involves double-quoting them, for instance:

s := "Lorem ipsum 'dolor' sit amet, consectetur adipiscing elit.
Duis l'ipsum odio, pretium ""hendrerit"" varius sed,
aliquet vitae elit.
Sed eu libero nec nisl ""malesuada"" dignissim.";

is equivalent to

s := 'Lorem ipsum ''dolor'' sit amet, consectetur adipiscing elit.'#13#10
    +'Duis l''ipsum odio, pretium "hendrerit" varius sed,'#13#10
    +'aliquet vitae elit.'#13#10
    +'Sed eu libero nec nisl "malesuada" dignissim.';

Which can be quite useful when you have multi-line string content, such as an SQL query, a long format string, a snippet of CSS/HTML/XML, etc.

Nate that if you’re using The SynEdit, the DWS highlighter has been updated and properly highlights those, you just need to get it from the SynEdit SVN.

It a slight cosmetic issue, shared AFAICT by other languages that implement “heredoc”, which is that if you don’t want to have spurious whitespace/tabs in the multi-line string, you basically have to break indentation.

Does any one knows a language which has a convenient “heredoc” syntax that would alleviate this issue?