Hi, I'm Patrick Viry

Thanks for creating this community, there is no other place where I feel I belong more than here. So let me introduce myself.

I did a PhD on term rewriting, whose main application area is to publish a lot of pointless academic papers (it can also serve as the underlying engine for program transformation). My best contribution to the field is “Equational rules for rewriting logic” which provides an operational foundation for theorem provers with built-in knowledge of theories such as equality or arithmetic, like those that are used to prove program properties.

I got hooked to language tools when I discovered syntax editors and had the opportunity to spend a few weeks with Gilles Kahn’s team at INRIA. They had just created Centaur, a fascinating tool that envisioned a fantastic future for language-based tools. Centaur’s main teaching was to show how it should not be done, but hey that’s how science makes progress.

As a side project, I wrote my own syntax editor - in Emacs Lisp, what else - based on the papers by the Harmonia team such as “Practical Algorithms for Incremental Software Development Environments”. And absolutely nobody cared. Maybe I was at wrong place at the wrong time. The same techniques have been reused recently in the Atom editor and enjoyed quite a success.

After working a while on DSL design and implementation, and watching the evolution of several DSLs over time, I got under the impression that many DSLs would be better designed as extensions of existing programming languages. And I launched a company to do precisely that. At Ateji we designed and shipped several extensions of Java with Eclipse tooling support, the most interesting being Ateji PX, a combination of Java and pi-calculus primitives that makes parallel programming simple. It was quite highly esteemed but never became a commercial success (Intel acquired Cilk instead, and the rest is history).

I made a small incursion towards spreadsheets by designing a way to bring structured data and programs to these unstructured monsters, but still haven’t found funding for this project (blink, blink).

Since then I have been working mostly on legacy code modernization. I am building tools that aim to combine a high degree of automation and a high degree of interactivity. This is quite challenging but is the key to provide good quality results for a limited effort. My latest language of interest is RPG, initially developed in 1959 for punched cards, and still in use on 100k’s sites worldwide today.


Welcome Patrick!

My latest language of interest is RPG, initially developed in 1959 for punched cards, and still in use on 100k’s sites worldwide today.

My condolences for RPG – I also spent some time with application modernization, and this is one of the nastier languages. Do you work with the column-based variant or have at least some keywords (as bleeding edge technology)?

Column-based is more fun :wink:
And it makes for interesting parsers.

If you enjoy RPG have a look at http://neograms.com/index.php/example-005-convert-java-to-rpg/

1 Like

Anyone got a React to Screen Sections converter out there?

Hi Patrick. Long time no see! How are you doing?

Hi Patrick,

Are you living in France still? I’ll keep my ears open for opportunities, but it’s hard indeed in this time.