comp04.gif - 4788 Bytes

Calvin's Computer Science Page

comp010.gif - 3813 Bytes

This page is dedicated to the computer science students at Penn State Harrisburg. I have spent a lot of time finding ways to avoid the computer labs. Below you will find information about general software and software specific to classes. If you find other software that you think others would be interested in please email me at ced118@psu.edu. I will check it out and add it to the appropriate area. Remember, any information you supply will help your fellow students, so be generous.


My first suggestion is to install Linux on your home computer. This is by far the least expensive method to acquire about 90% of the software that you will ever need. With a Linux distribution, which costs under $70.00, you get C, C++, PASCAL, FORTRAN, etc. The hard part of this is installing it on your home computer, it takes time and it is not for the weak-of-heart. There are three main releases out there and all can be ordered from Walnut Creek CDROM or you can download them from the software archives at Walnut Creek CDROM. Unless you have access to a T1 line I'd suggest purchasing the CDROM's. The following is a list of Linux Web Sites along with other related sites that are dedicated to Linux.

FreeBSD www.freebsd.org
RedHat www.RedHat.com
Slackware www.slackware.com
Mandrake www.linux-mandrake.com
Related Linux Software Free Software Foundation
Linux Information Linux Org.
LinuxWorld Linux World

If you would like to email me with information about your experiences(pro or con) with any release of Linux, please include the release name and version. If I get enough information I will add a page of Linux information.


With that out of the way, lets look at general software that is handy in many classes. There are three that I use regularly.


arrowr.gif - 3202 Bytes Program File Editor(PFE). It is a very good text editor for programming and it is free.
arrowr.gif - 3202 Bytes EditPlus EditPlus is an excellent editor with syntax highlighting, auto completion, etc for a bunch of languages. You can also create your own syntax and auto complete files. Cost $30.00.
arrowr.gif - 3202 Bytes Smartdraw. It is a good program for doing linked lists, trees, ER diagrams and other types of flow diagrams.
arrowr.gif - 3202 Bytes Ghostscript, Ghostview and GSview This a a postscript system that allows you to view and print postscript files.
arrowr.gif - 3202 Bytes C, C++ & Pascal Compilers You can download free C, C++ and Pascal compilers. I have used the C/C++ compiler and it works fine.

Now lets look at software specific to classes. Most of the software mentioned below is free and will run under DOS, Windows or Linux so you have to check out the appropriate web site for what works with what. If multiple programs are listed for the same language, the ones marked with * are the ones I recommend.

COMP402
Computer Organization and Assembly Language
Diglog - Electronic Circuit Simulator
Minim - Boolean Expression Minimization Tool
Basic logic design and architecture of computers. Coding, number representations, arithmetic, logical operations, machine-level functions and assembly language programming. Prerequisite: Pascal, Ada, C, or FORTRAN.

COMP403
Advanced Assembly Language Programming
MASM - Microsoft Assembler
TASM - Inspire(Borland) Assembler
Assemblers for PC's
Binary arithmetic, table handling, editing, bit manipulation and translation, subroutines, Macro writing tape, direct-access programming. QSAM, ISAM, VSAM, JCL.

COMP 408
Introductory ADA and Program Design
ADA Compilers
Structured program design using Ada; strong typing, data abstraction, packages, subprograms, separate compilation, visibility, exceptions, generic units.

COMP409
Advanced ADA Programming Language
ADA Compilers
Advanced types, exceptions, generic units and tasking, and their use in software systems.

COMP412
System Programming
BACI - Ben-Ari Concurrent Interpreter
Design and implementation of systems software.

COMP416
Topics in Programming Languages
MIT Scheme
DrScheme *
Java
Anzi Prolog *
BinProlog
Specification, analysis, and run-time behavior of higher level (problem-solving) computer languages.

COMP418
Compiler Construction
FLEX - Fast Lexical Analyzer Generator
YACC - Yet Another Compiler-Compiler
Programming language structure, basic automata theory, design of a compiler, scanning and parsing, semantic processing, code generation, and error detecting. (Thanks Julie)

COMP519
Advanced Topics in Database Management Systems
ObjectStore - Object Database
JDK - Java Developement Kit
Forte - Java IDE
Installing JDK & ObjectStore
Concurrency control, crash recovery, query processing, semantic data models, advanced file access, distributed database systems, performance, case studies, advanced applications

Page designed using: hdbutton.gif - 6333 Bytes
© CED 1998