A view from Helsingør by Tony/WildHeart
A Plea for Simplicity by John Scholes
How about a Nice Game of Chess? by Morten Kromberg
Forking Demo by Morten Kromberg
Herding cats for fun and profit by Joakim Hårsman
Gridifying FinE using the Techila Grid by Claus Madsen
Rain flips its q by Adrian Smith
Serving Lunch with Dyalog APL by Tommy Johannessen
OO Stats - Performing Statistical Calculations using Dyalog APL by Alan Sykes
Snooping with APL by Charles Brenner
APL - An Excellent Return by Romilly Cocking
The Array Constraint Engine by Gert Møller
Conga and Ssl Part 1 by Morten Kromberg
Conga and Ssl Part 2 by Morten Kromberg
Migrating to Unicode - part 1 by Morten Kromberg
Migrating to Unicode - part 2 by Morten Kromberg
Migrating to Unicode - part 3 by Morten Kromberg
Technical keynote by Morten Kromberg
Version 12.1 IDE Features by John Daintree
Performance Improvements in Dyalog: A Case Study by Roger Hui
Journaled files by Richard Smith
John Scholes calls Ed’s hardware store to complain about the design of one of his tools… The Masso-matic SK-90 Digital Lump Hammer. (From John’s talk celebrating the 25th anniversary of Dyalog APL).
Morten Kromberg shows why Unicode is a good thing, using Dyalog APL version 12.0 to build a GUI for playing Chess – using Excel as a multi-dimensional database for recording the moves…
Profdoc is a leading provider of healthcare information technology. Profdoc Care makes Profdoc HIS - a medical record system, and has grown from two to 13 APL developers in just a couple of years. Joakim was there for the ride and will talk about what had to change as the numbers of programmers grew, and how development at Profdoc Care works today.
The purpose of this presentation is to show a practical and real-life embedding of the Techila Grid Technology into a financial commercial product - FinE.
The Core part of FinE is an In-Process OLE-Server written entirely in Dyalog v.11.0.1.
The application is used by 25,000 school children and their parents for ordering and payment of school lunches. The lunches are produced in 25 kitchens in different
geographical locations all over Denmark.
Each kitchen has its own set-up and menu, and the application caters for the design, creation and running of individual kitchen websites.
The application further handles catering for businesses as well as meals-on-wheels programmes for pensioners. It is possible to order fast-food as well as cater
for special dietary requirements and one off events such as children's birthday parties at the local swimming pool.
In order to stay in sync with the users the application also offers an online survey facility.
Access to the application is through a standard web browser, from PDA's and smart phones. Users also have the option of sending a text message from their mobiles.
The presentation will focus on how this success story started and demo the various aspects of the application.
We will hear about the challenges encountered along the way, look at IIS settings, memory leak, trap settings, sessions and user behaviour.
The technical aspects will focus on how we created the .aspx files, the file structure, backup procedures, communication between the servers and the call structure.
The advent of the object-oriented features in recent Dyalog Interpreters provides a new and exciting framework within which to construct software to analyse data. The talk will demonstrate statistical objects that allow an APL user to perform statistical calculations on realistic data sets that may well contain missing values. All statistical functionality is made available either directly from user commands from the session, or, for more speedy data exploration sessions where a variety of alternative analyses might be envisaged, by using a menu-driven GUI version.
Charles is a world recognized authority in Forensic Mathematics - covering complex areas such as DNA identification,
biostatistics, and population genetics. His DNA•VIEW APL based software solution is the acknowledged leader and is
standard worldwide for DNA identification. The software has been used in countless cases amongst others the World Trade
Center victim identification work, Tsunami victim identification in Thailand, mass identification projects
including desaparacito children from El Salvador and war victims in Bosnia.
DNA identification is a fascinating, challenging, and constantly expanding and shifting area of genetics susceptible
to mathematical treatment, and for these reasons well-adapted to APL. The facets of identification include linking crooks
to crimes, bashful fathers to parental responsibilities, grieving families to mass disaster victims and anxious heirs
to family fortunes.
Identification regions of the genome are a set of short DNA neighborhoods ("loci") that are conveniently coded as numbers
which may be analyzed using mathematical programs implementing genetic and population genetic principles. The digital
nature of the genome, in striking contrast to the generally analogue nature of biology, inevitably appeals to the
programmer's intellect.
Consequently the talk, while based on the APL program DNA•VIEW which Charles has developed and distributed world-wide
over the past 20 years, will concentrate on the science and applications more than the implementation.
In this presentation Romilly will show how he's been using APL to explore and experiment with Genetic Algorithms.
Romilly has been interested in biology-based Artificial Intelligence since the 1970s. He's recently started to follow up on his early AI research. After great
frustration using Python and Java, he's now using APL again, and is delighted to find that the environment is even more pleasant and productive than it used to be.
Array Technology is a provider of technology for solving complex constraint problems in real-time - on a very small memory footprint. The technology is used in a range of business applications, e.g. for product configuration with a lot of business rules or constraints. The key to the performance of the technology is the use of nested arrays (array-based logic) for handling logical constraints with a multitude of combinations. Dyalog 8.2 was used for prototyping of the first version of the technology, but Gert will present how the next generation of the technology may benefit from the power of the latest Dyalog releases.
Conga is a new tool which enables the easy construction of client/server and peer-to-peer applications. Conga is
included with version 12.0, and from 12.0.3 it also includes support for "Secure Sockets", allowing the use of
encrypted communication channels.
The tutorial introduces Conga and some of the code samples which are included and makes it straightforward
for Dyalog users to implement web client and server programs, and "remote procedure call" mechanisms.
Conga is a new tool which enables the easy construction of client/server and peer-to-peer applications. Conga is
included with version 12.0, and from 12.0.3 it also includes support for "Secure Sockets", allowing the use of
encrypted communication channels.
The tutorial introduces Conga and some of the code samples which are included and makes it straightforward
for Dyalog users to implement web client and server programs, and "remote procedure call" mechanisms.
The defining feature of Dyalog Version 12.0 is support for Unicode character data. Unicode is an industry standard allowing
computers to consistently represent and manipulate text expressed in any of the world's writing systems. It assigns a number,
or code point, to each of approximately 100,000 characters, including the APL character set.
The workshop will briefly introduce the new Unicode features, and then focus on the differences between the Classic and
Unicode "editions" of Version 12.0. The Classic edition, which is upwards compatible with version 11.0, will continue to exist
for an extended period to allow for an orderly migration. The workshop will discuss inter-operability between the editions,
and offer suggestions on how to approach the issue of migrating applications to take advantage of the Unicode data.
The defining feature of Dyalog Version 12.0 is support for Unicode character data. Unicode is an industry standard allowing
computers to consistently represent and manipulate text expressed in any of the world's writing systems. It assigns a number,
or code point, to each of approximately 100,000 characters, including the APL character set.
The workshop will briefly introduce the new Unicode features, and then focus on the differences between the Classic and
Unicode "editions" of Version 12.0. The Classic edition, which is upwards compatible with version 11.0, will continue to exist
for an extended period to allow for an orderly migration. The workshop will discuss inter-operability between the editions,
and offer suggestions on how to approach the issue of migrating applications to take advantage of the Unicode data.
The defining feature of Dyalog Version 12.0 is support for Unicode character data. Unicode is an industry standard allowing
computers to consistently represent and manipulate text expressed in any of the world's writing systems. It assigns a number,
or code point, to each of approximately 100,000 characters, including the APL character set.
The workshop will briefly introduce the new Unicode features, and then focus on the differences between the Classic and
Unicode "editions" of Version 12.0. The Classic edition, which is upwards compatible with version 11.0, will continue to exist
for an extended period to allow for an orderly migration. The workshop will discuss inter-operability between the editions,
and offer suggestions on how to approach the issue of migrating applications to take advantage of the Unicode data.
Morten will review version 12.0, which was released during the summer, and talk about what’s in the pipeline for 12.1 and beyond.
John has started work on a number of new features which, amongst other things, will make it easier to edit class and namespace scripts. This session will offer a sneak preview of some of these features, and there should also be ample time for discussion and suggestions from the audience.
In the next version of Dyalog, some common boolean functions will be improved by factors ranging from 2 to 1600.
Version 12.0 allows you to switch Journaling on for component files, which protects them from damage due to many kinds of system failure.