Giter Site home page Giter Site logo

dbanullnet / algol-68rs-source Goto Github PK

View Code? Open in Web Editor NEW

This project forked from coolbikerdad/algol-68rs-source

0.0 0.0 0.0 9.51 MB

The RSRE Algol-68RS Compiler. An update of the original port by Sian Mountbatten of a68toc (ctrans) from Algol-68RS/ELLA2000 updated to run on Intel and ARM processors (32- and 64-bit) Linux and macOS systems.

Shell 0.14% C++ 0.74% Perl 0.09% C 79.74% Objective-C 0.92% MATLAB 0.88% Forth 0.01% CSS 0.01% TeX 8.66% Mercury 0.03% Makefile 0.21% CWeb 8.58% sed 0.01%

algol-68rs-source's Introduction

		      The Algol-68RS Compiler (a68toc)
		      --------------------------------

This is the A68toC Algol 68 development system. It was extracted from
the ELLA package which is used for VLSI chip design.

This repository contains a version of a68toc derived from a Linux
port of a68toc by Sian Mountbatten. See README.Sian for more.

The compiler front-end is essentially the Algol-68RS portable
compiler originally written by the Defence Research Agency when it
was known as the RSRE (Royal Signals and Radar Establishment). Only
that part of Algol-68 needed for the ELLA compiler was implemented by
the `a68toc' translator with the result that formats are unavailable
and are likely to remain unavailable for the foreseeable future. The
`PAR' construct, for parallel programming, with the associated mode
`SEMA' and the operators `LEVEL', `UP' and `DOWN' never were part of
the Algol 68 RS compiler.

After extracting the A68toC system from the ELLA package, it became
clear that the library preludes provided by the ELLA team were
entirely unsatisfactory for the general user, not least because they
were almost completely without documentation (see ctrans.texi).

The QAD Standard Prelude given here (in sub-directory qad)
uses the conversion routines from the van Vliet Transput Model of
transput.

This version of the translator dispenses with the module manager `mm' and,
instead, uses `ca' to create preludes and programs.

Starting from Dr Mountbatten's Linux port (labelled as v1.15) this
package has been enhanced with bug-fixes and has machine-specific
dependencies resolved. The result is a sequence of new versions,
starting at v1.20 (a v1.19 version was previously known to exist
but the author has not been able to locate it).

The current branch of a68toc now compiles, runs, and self-compiles
on little-endian CPUs (Intel/AMD) and big-endian CPUs (ARM) in
both 32-bit and 64-bit forms on the Linux operating system
and on Intel 64-bit on macOS.

Support for macOS has been made possible by the integration of the
Boehm-Demers-Weiser Garbage Collector (bdwgc), a version of which
is contained in this repository, and is a compile-time option for
the Linux variants, being set as the default for all 64-bit systems.

Further example programs have been added to this repository including
some from Glyn Webster; see the examples folder.

Neil Matthew
[email protected]
May 2021


Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.