Skip to content

9214/7guis-red

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 
 
 

Repository files navigation

About

7GUIs benchmark tasks implemented in Red programming language.

This project serves a fourfold purpose:

  1. A fresh take on all the seven challenges, without peeking into existing solutions;

  2. A baseline for comparison of Red’s approach to GUI programming with other mainstream toolkits;

  3. Evaluation of VID dialect and View engine, search for their potential improvements;

  4. Testbed for GUI backends supported by View.

Other known implementations:

Status

All the 7 challenges are completed and clock under 270 lines of code, barring script headers.

The project was tested on all supported View backends with Red 32f10e8; the following issues were found:

Table 1. Known issues.
Backend Task Issue

Cocoa

Timer

Progress bar is not updated.

Cocoa

Cells

Spreadsheet cells are unresponsive.

GTK

CRUD

Some critical assertions are failing inside the GTK library.

GTK

Cells

Evaluation of self-referential formulas hangs the application.

Structure

Tasks

Solutions to 7GUIs challenges; files are named after a task they implement.

Setup

  1. Clone project’s repository.

  2. Setup the Red toolchain by downloading the automated build from the official website.

  3. Having toolchain binary and this repository in place, check out the implemented tasks:

    • with red <filename> from system shell;

    • from the interpreter (do %<filename> or File > Run…​ in Red console);

    • or via compilation for your platform of choice (see red --help for details).

Alternatively, Red console and 7GUIs tasks can be built from sources.

License

The project is released under 3-clause BSD license.