Project "Abacus" home page (last revised on 1998/10/25)
Spreadsheet , actual version:0.9.13

What is Abacus?
Development stage
What do I need?
Where do I get it?
How do I contact the team?


What is the Abacus?

Abacus is a small, light and easy to use spreadsheet being developed as our graduation project in our University IST , Portugal. We are working at INESC, under the tutorship of Prof. Arlindo Oliveira, and the spreadsheet is being developed using the Tcl/Tk toolkit, as well as plain old C/C++ for all the "number-crunching" tasks. The project works for us on a Linux box running kernel 2.x and Tcl/Tk 8.0.x, we are pretty sure you can build the source on any 2.0 box, though we haven't tested it...but it shouldn't be too hard :)

The good news is that our twin project - the Abacus for the PalmPilot Organizer - is now available! The Abacus for the Pilot is now undergoing its first alphatest, but you can download the app and actually take the Abacus around with you on your Pilot so you won't miss it anymore when you're away from your computer! Please remember, however, that the PilotAbacus is being deloped by a different team (also working under Prof. Arlindo who coordinates us), so when sending mail check if you're using the right address.

Development stage

We have finished adding new features to the Abacus and are now working towards a truly first alfa release. Currently, we're going to try and make it work on as many *NIXES as possible and fix some bugs still in the code to make it as stable as possible. We're also going to try and document the macro system better, which is quite powerful but is not properly documented yet. We'll start making releases more often too, the first release was now a long time ago mainly because there was a lot of stuff to fix and new stuff to do, but since development is now more geared towards bugfixing and not implementing new stuff, the release frequency should increase.


The following functionalities are available in the latest version: (Abacus v0.9.13)

  • Multiple spreadsheets, limited by the amount of memory you have available.
  • Small set of built-in functions that include statistical, financial, and the usual math & trig functions, including a slick menu-like interface to make it easy to paste formulas. (We stopped implementing these when we couldn't think of any more that could be useful, so if you think of one, let us know!)
  • Cell editing with all the usual Cut/Copy/Paste/Delete functions implemented.
  • Cell formating with a load of different formats, plus fonts, italics, bold font size and borders.
  • Abacus imports and exports wk1 format (so you can edit your Excel sheets).
  • Column and Row insertion, deletion, resizing.
  • Sorting using all sorts of weird sort methods, so many we find it confusing ourselves!
  • Autosum - you select and press the button and it sums the data up the way (we hope!) you want.
  • Graphs you can delete, move around and resize.
  • Printing via Postscript.
  • Imports/Exports CSV,Tab separated, Wk1 and TinySheet (for the popular PalmPilot organizer) formats.
  • Multilevel Undo and Redo support.
  • Help system available (NEW).
  • Find and Replace (NEW).
  • Autosave (NEW).
  • Paste Special (NEW).
  • Abacus now uses Tcl/Tk as its scripting language, you can call Tcl scripts within a spreadsheet and use about 100 macros in scripts to work within your spreadsheets (NEW).


Sorry, it still not available :-(


  • Download the source.
  • Gunzip It: 'gunzip abacus.tgz'
  • UnTar It: 'tar xvf abacus.tgz'
  • That should create a new directory called abacus-[current_version]. Inside there's an INSTALL file with more specific instructions.

What do I need ?

In order to install the Abacus you will need to have already installed:

  • Tcl/Tk8.0(or higher)
  • C and C++ compiler (tested only with gcc, but we'd like to hear from people using other compilers)
  • Lex/Yacc
  • Have about 15 Mb free disk.

Can I see some screenshots?

There are available some screenshots here. (We hope you like them !)


Where do I get it?

The Abacus file is about 1 Meg big. You may get it by saving one of the following links (press shift and left button, if you are using Netscape):


How do I contact the team?

If you have any ideas/suggestions/flames, er, not flames please, you can send us mail here and we promise we'll try to answer all letters we get.


Professor Coordinator:
Team members:

Arlindo M. L. Oliveira
Antonio J. S. Rendas
Vasco M. M. Amaral