Terrapin Resources

Thoughts for Logo V6

This file collecty design ides for a new version of Logo. This version will be easier to use for younger students while

Logo Statistics

These are statistics without any Terrapin staff, and active, no-trial licenses only.

  • Home licenses: 987
  • Classroom licenses (20): 17
  • School licenses (50): 8
  • Campus licenses (500+): 4

None of the home licenses have ever changed anything via the config page.

Only 10 multiuser licensees used the config page to alter settings:

Field Count Comments
Login via campus name 5 3 with a campus password
Login via CSV file with student names 1  
Auto-login 2 desktop verion only
Startup commands 3  
Startup file with commands 2 both code and file, desktop only
Vetting 2  
Suppressed menu items 3  
Suppressed icons 0  
Suppressed load or save items 0  

All of the other licensees simply use the campus name, no password, as a student login.

General design

I’d like to replace the panels with a set of predefined layouts, where panels are separated by movable separators, just like the separator on the Resources pages. The Help panel should be a new browser tab so it does not occupy screen space.

If at all possible, the menu bar should be replaced with the icon bar.

Toolbox

Do we need the Toolbox? If yes, can it be a floating panel?

Graphics

Should the Graphics screen auto-zoom to the display size? If so, what would a screen unit be like?

Features to be removed

Logo Apps

This feature is far too advanced for younger students.

Controls and other turtle-like objects

There should only be turtles. Controls are useful for Logo apps only.

Logo commands

HTML

Language

Relaxed Syntax (no colons in front of variables) should be by default, not changeable.

A new binary operator := is a shortcut for MAKE, with no needs for quotes (instead of MAKE “A 5, use A := 5). The MAKE command also eliminates the need for quotes. This is a bit contrary to the Logo ised, where a procedure could return a variable name (MAKE A 5 stores 5 into a variable whose name the procedure A returns).

Settings

The Settings dialog should be tabbed. Many settings should not be accessible via dialog (like the tab width, or the stack depth). Tabs may include e.g. the Layouts dialog.

Debugging

The current Debug panel is buggy, and apparently not used at all. I’d like to create a new debugger that replaces the Editor panel automatically, with two panes, a pane with all known variables (with editable values), and a code panel showing the current line.

A live view should be available where the student can alter the execution speed with a scroll bar to see statements being highlighted as they are executed; this way, they can watch their program flow.

Should that panel allow code to be altered while a program executes? Or should the code view be read-only?