Installing Quorum

While Quorum has a bare-bones online compiler and output window on its home page for testing basic operations, in order to obtain a full-featured version of the language, we need to download and install a full Integrated Development Environment (IDE). To do this for Quorum, we go to the download page, which contains links and instructions. Once Quorum is installed, we can create a Quorum project. While using Quorum offline is optional, we recommend using it as projects increase in size.

Creating a Quorum project

Once we have installed Quorum, we can create a Quorum project in NetBeans. Quorum projects now come in four pre-configured templates, which are as follows:

Note that any of these projects can be expanded or re-configured to use any kind of Quorum features. These templates are included as a resource to help us get started, but as applications evolve they can be changed in whatever way is helpful. In other words, just because we started a Lego robots project does not mean we cannot use that project for other types of code. To make any new project in the IDE, we follow these standard steps:

This is an image of the default NetBeans environment start screen.This is an image of the Accessibility Startup Window. When NetBeans loads for the first time, 
         it launches a window to ask us if we want to enable self-voicing.This image shows Quorum selected in the left pane and the four default project types in the right pane.  These are: 
         blank, application, game, and Lego robot.

Running or Debugging a Quorum program

Once we have created a new project, we can type code into in the editor window of our project, which we can get to with either the mouse or the keyboard shortcut (CTRL + 0 on Windows or APPLE + 0 on Mac). Once there, we can type code like the following:

//this program outputs the words Hello, World! to the screen.
//lines with "//"in front of them are comments and are ignored by Quorum.
output "Hello, World!"

To run a program, we can either press the green button on the top bar of the program, which looks like a play button on a remote control, or we can navigate to the Run menu and select Run Project (hotkey is F6 by default). The following shows an image of the run and debug buttons:

This is an image of NetBeans with a Quorum project open. On the top, 
     the run and debug buttons are present. All of these buttons are available with 
     keyboard shortcuts.

To debug a program, the steps are similar. Normally, the purpose of debugging is to temporarily halt a program so that we can investigate its state. To do this, we have to set a breakpoint, which means set a point in our program where Quorum knows to stop. This is accomplished by either clicking the vertical line where the line numbers are (called the glyph gutter), or by going to the line and using the hotkey (CTRL + F8 or APPLE F8 on Mac). The following is an image of a breakpoint that has been set:

This is an image of NetBeans with a set breakpoint. If self-voicing mode 
     is active, Breakpoints send text information to a blind user to indicate the breakpoint 
     is set on a particular line.

The following is an example of a breakpoint that has been hit:

This is an image of NetBeans with a hit breakpoint. If self-voicing mode 
     is active, Breakpoints send text information to a blind user to indicate the breakpoint 
     is hit on a particular line.

Debugging Controls

Debugging Quorum in NetBeans is very similar to debugging in most programming languages. Specifically, when a debug session is started, Netbeans loads new controls, which are in the top bar (as shown in the previous image). These controls and their keyboard shortcuts are named below and their purpose is described.

Miscellaneous Shortcut Keys

There are many shortcuts for performing various tasks in Netbeans. Many additional shortcut keys can be found in Oracle's guide to NetBeans' shortcuts. An incomplete list of additional shortcuts is provided on the Quorum Development Environment page.

Next Tutorials

There are several tutorials from which you can choose at this point to learn more about programming in Quorum. We suggest you start with one of the following: