O'Reilly logo

Mastering Perl/Tk by Nancy Walsh, Stephen Lidie

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

TclRobots.pm

Chapter 20 discusses TclRobots in detail. TclRobots.pm allows you to write Robot Control Programs in Perl instead of Tcl.

$TclRobots::VERSION = '2.1'; package TclRobots; # This module implements a thin API that interfaces Perl with tclrobots # version 2, written by Tom Poindexter. This means that you can write # RCPs (Robot Control Programs) in your favorite language - Perl - and # do battle with all the existing Tcl RCPs. # # This module is rather wierd - you're never supposed to use it! # Instead, it's used when tclrobots runs an instance of perl, at which # time this module is loaded and begins execution on behalf of your # RCP. It creates the main window of the required dimensions and at # the proper location on the display, and adds all the widgets, text, # and images # # When instructed by tclrobots, this module then loads your Perl RCP # (via require, so be sure your code returns a TRUE value!), and the # contest begins. From that point on, incoming tclrobot messages are # dispatched to Perl emulation handlers, and Perl RCP commands are # converted to Tcl syntax and sent to tclrobots - the communication is # via Tk::send() and Tk::Receive(). # # Stephen.O.Lidie@Lehigh.EDU, 1999/05/07. # Stephen.O.Lidie@Lehigh.EDU, 2000/04/13, for Perl 5.6.0. use Exporter; @ISA = qw/Exporter/; @EXPORT = qw/after alert cannon damage dputs drive dsp heat loc_x loc_y scanner speed team_declare team_get team_send tick update/; use File::Basename; use Tk; use Tk qw/after catch/; use ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required