📰 newsreader

twostopbits score 0.21 好み 0.00 en

Oberonの曾祖父:LuaJIT上で動作するAlgol60 (retrocomputingforum.com)

原題: The great-grandfather of Oberon: Algol60 running on LuaJIT (retrocomputingforum.com)

原文 ↗

日本語訳

# タイトル

Oberonの曾祖父:LuaJIT上で動作するAlgol60 (retrocomputingforum.com)

# 本文

Algol 60は、今日存在するほぼすべての命令型プログラミング言語の母体といえる言語です。私は、この言語の60周年のタイミングで、コンパイラの実装を開始しました。それまでの間、自身のOberonから最近のMicronコンパイラに至るまで、中間言語やバックエンドの実験や実装のバリエーションに多くの時間を費やしてきました。Micronは、自身のOberon+コンパイラで使用した.NET (ECMA 335) CILから派生させたIR(中間表現)を採用しています。今回のAlgolコンパイラについては、Micronから新しいIRを派生させました。これはLuaJITバックエンドにより適しており、また2020年から制作を進めているSimula 67コンパイラの実装にも活用できるものです。

興味のある方は、こちらのプロジェクトをご覧ください:GitHub - rochus-keller/Algol60: Algol 60 compiler with reusable intemediate representation (AIR) and LuaJIT backend, written in C++98/Qt5 · GitHub

Linux x64およびWindows x86用の事前コンパイル済みバージョンも用意されています。

原文(英語)を表示

Algol 60 is the mother of nearly all imperative programming languages in existence today. I started to implement a compiler a few years ago at the 60th anniversary of the language. Meanwhile I spent a lot of time with experiments and implementation variations of intermediate languages and backends, from my Oberon to my recent Micron compiler. Micron has an IR which I derived from the DotNet (ECMA 335) CIL which I used for my Oberon+ compiler. For the Algol compiler I derived a new IR from Micron which is better suitable for the LuaJIT backend and which will allow me to implement the Simula 67 compiler which is in the making since 2020 as well.

In case anyone is interested, here is the project: GitHub - rochus-keller/Algol60: Algol 60 compiler with reusable intemediate representation (AIR) and LuaJIT backend, written in C++98/Qt5 · GitHub

There are precompiled versions for Linux x64 and Windows x86.

← 一覧に戻る