Index
- General
- Script languages
- UNIX shell programming
- AWK
- Rexx
- NetRexx
- SED
- TCL
- Perl (Practical Extraction and Report Language)
- Python
- PHP
- JavaScript
- Java
- Eiffel
- Postscript
- C
- C++
- C# (C sharp)
- Ada
- Basic
- Assembler (X86)
- Pascal
- Lisp
- ML
- Structured Query Language (SQL)
- PC low level programming
- Games programming
- Windows programming
- Linux programming
- Networking
- Multimedia
- Other useful links
PC programming information page
- Handling memory fragmentation - Fragmentation can be a sticky problem. How memory allocation occurs determines whether, when, and how memory fragmentation becomes an issue. Rate this link
- All Users Are Not Idiots - Ethan's Top Ten List of Stupid Programmer Tricks You Should Avoid Rate this link
- Chris's Chamber - articles, graphics programming, links Rate this link
- Coronado Enterprises Tutorials - online shareware tutorials on Ada, C, C++ and Pascal Rate this link
- Cygwin tools - ports of the popular GNU development tools and utilities for Windows 95, 98, and NT Rate this link
- Extreme Programming: A gentle introduction - check also Rate this link
- Flowcharts - a computer road map - Flowcharts allow you to visualize the computer program operation when you design computer programs. Rate this link
- Freebyte's Guide to Free Programming Rate this link
- How To Write Unmaintainable Code - tips from the masters on how to write code that is so difficult to maintain, that the people who come after you will take years to make even the simplest changes Rate this link
- How To Write Unmaintainable Code - tips from the masters on how to write code that is so difficult to maintain, that the people who come after you will take years to make even the simplest changes, if you follow all these rules religiously, you will even guarantee yourself a lifetime of employment, since no one but you has a hope in hell of maintaining the code Rate this link
- Mathtools.net - Mathtools.net is the technical computing portal for all scientific and engineering needs. The portal is provided as a free service to the scientific community and contains useful links for technical computing programmers. Rate this link
- Programming book reviews Rate this link
- Netlib Repository - contains freely available software, documents, and databases of interest to the numerical, scientific computing, and other communities Rate this link
- Programmer.org - special site for programmers Rate this link
- Programmers Heaven - The Internet's most complete source of free downloadable programming files, source codes, utilities, Assembler, C/C++, JAVA, and other tools for programmers and developers. Here you will find over 10000 files and 2500 links organized in an easy-to-find format. Rate this link
- Reliable Software - special web site about programming techniques Rate this link
- Softocean - Computer problems are solved with Qbasic,Foltran,Pascal,C,C++. Turbo Pascal, Borland Pascal(OOP),QBasic,C and C++ course notes. Taylor series, matrix, trigomeric equatio are solved with five computer language. Rate this link
- Suomessa erityisesti k?ytettyj? algoritmeja FAQ - pankin viitenumero ja henkil?tunnus, sfnet.atk.ohjelmointi FAQ Rate this link
- The top five software-testing problems and how to avoid them - Some common software-testing problems are not severe, and others are more costly to correct. Real-life scenarios provide helpful guidelines that can prevent these problems in the first place. Rate this link
- TopCoder - This site runs online computer programming competitions in the Java and C++ languages. By conducting these competitions, TopCoder attracts elite software developers. The attraction of competition, and the associate rewards, tries to create a powerful community. Rate this link
- Wosit's formats - The File Format Collection Rate this link
- Basic Regular Expressions Rate this link
- Basic Regular Expressions Rate this link
- Using Regular Expressions - This document is a regex tutorial with examples. Rate this link
- Using Regular Expressions Rate this link
- Advanced Bash-Scripting Guide - An in-depth exploration of the art of shell scripting Rate this link
- A Unix Cook-Booklet: Using shells - This is a short beginner's guide to practical using of Unix. Rate this link
- BourneShell - This is a very simple totorial to Bourne Shell scripting. Rate this link
- Description of different types of shell - There are several different shells available for Unix: the most popular are described here. Rate this link
- pdksh - the Public Domain Korn Shell - PD-ksh is a clone of the AT&T Korn shell. At the moment, it has most of the ksh88 features, not much of the ksh93 features, and a number of its own features. Rate this link
- Shell Wrappers - A "wrapper" is a shell script that embeds a system command or utility, that saves a set of parameters passed to to that command. Wrapping a script around a complex command line simplifies invoking it. This is expecially useful with sed and awk. Rate this link
- Selecting a Unix shell Rate this link
- Shell Programming: Ch Shell (ch) is a C compatible shell; C Shell (csh) is a C-like shell. Rate this link
- Shells and Shell Scripts Rate this link
- The UNIX Shell Guide - This on-line book describes the basics oc Bourne shell, Korn shell, C shell, TC shell, and Z shell. Rate this link
- Unix FAQ/shell - information on different UNIX shells Rate this link
- UNIX shell differences and how to change your shell Rate this link
- Unix Shells - csh, ksh, bash, zsh Rate this link
- UNIX Shells Programming Related Sites Rate this link
- An Awk Tutorial - he Awk text-processing programming language is a useful and (in general) simple tool for manipulating text. This document provides a quick overview of Awk. Rate this link
- Built-in Functions for String Manipulation in AWK Rate this link
- Effective AWK Programming: A User's Guide for GNU Awk Rate this link
- GAWK: Effective AWK Programming - Edition 1.0.3 of Effective AWK Programming book (A User's Guide for GNU Awk) for the 3.0.3 (or later) version of the GNU implementation of AWK Rate this link
- Introduction to AWK Rate this link
- The AWK Manual - This is Edition 1.0 of The AWK Manual, derived from the original gawk manual. Rate this link
- Guide to Writing CGI Scripts in REXX and Perl - This Guide is aimed at people who wish to write their own WWW executable scripts using WWW's Common Gateway Interface (CGI). Though the main emphasis is on REXX many examples are also provided in Perl. Rate this link
- IBM REXX Family Overview - Information on IBM REXX products Rate this link
- Rexx Frequently Asked Questions (FAQ) Rate this link
- Rexx Implementations - Here's a list of platforms (hardware, operating systems, and operating environments) on which you can use Rexx. Rate this link
- Rex Swain's REXX Summary Rate this link
- Rexx Language Association - The Rexx Language Association (RexxLA) is an independent organization dedicated to promoting the use and understanding of the Rexx programming language. Rate this link
- The Rexx Language - Rexx Language page at IBM Hursley. This page links to documents relating to the Rexx, Object Rexx, and NetRexx programming languages. Rate this link
- An Introduction to Sed & Awk Rate this link
- Do-it-with-sed - This is a little document to help people using sed. The examples gives in this document are intended to show real examples of sed, and to show also the power of sed, as well its weaknesses. Rate this link
- Handy One Liners for SED (Unix stream editor) Rate this link
- SED FAQ Rate this link
- SED man page Rate this link
- SED Tutorial Rate this link
- SED - A Non-interactive Text Editor - paper on sed program Rate this link
- SED & Regilar Expressions Rate this link
- sed . . . the stream editor - This page is an attempt to collect FAQ (Frequently Asked Questions) files and some sed utilities and introductions for novices. The text files are for any sed user; the binaries are for DOS/Windows users. Rate this link
- The SED FAQ - Frequently Asked Questions about sed, the stream editor in HTML format. Rate this link
- comp.lang.tcl FAQ Rate this link
- Getting Started with Tcl Rate this link
- Object-Oriented Language: Tcl/Tk - This page contains basic information on Tcl/Tk language and very many links to objects and components Rate this link
- Tcl/Tk Rate this link
- The World-Wide Web Virtual Library: Tcl and Tk Rate this link
- ActivePerl - The industry-standard Perl distribution for Linux, Solaris, and Windows Rate this link
- CGI.pm - a Perl5 CGI Library Rate this link
- CPAN: Comprehensive Perl Archive Network - Here you will find All Things Perl. Rate this link
- How PERL Works Rate this link
- Perl.com - Perl home site Rate this link
- Perl for MS-DOS - download directory for DOS and Windows versions Rate this link
- Perl Lessons - tutorial on the Perl programming language Rate this link
- Perl - Practical Extraction and Report Language - This web document is a re-organized version of the "perl.1" man page for PERL version 4. Rate this link
- Perl Reference Page Rate this link
- Perl Regular Expressions Rate this link
- Perl Tutorials from ITworld.com Rate this link
- Quick Perl Reference Rate this link
- Regex - A Modest Proposal - Regular expressions (or regexes as they're fondly known) have long been a mainstay of the Perl world. Perl is a hotbed of regex innovation, giving reluctant (non-greedy) quantifiers and zero-width assertions to the world, to name only two. Rate this link
- Regular Expression Tutorial Part 5: Greedy and Non-Greedy Quantification Rate this link
- Ten Neat Tricks With Perl Rate this link
- www.perl.com - the source for Perl Rate this link
- An Introduction to Tkinter - An introdyction to Python GUI toolkit. Rate this link
- Python language website - the official site Rate this link
- Regular Expression HOWTO - This document is an introductory tutorial to using regular expressions in Python with the re module. Rate this link
- Python for Lisp Programmers - This is a brief introduction to Python for Lisp programmers. Basically, Python can be seen as a dialect of Lisp with "traditional" syntax (what Lisp people call "infix" or "m-lisp" syntax). Python supports all of Lisp's essential features except macros, and you don't miss macros all that much because it does have eval, and operator overloading, and regular expression parsing, so you can create custom languages that way. Rate this link
- Dive Into Python - Dive Into Python is a free Python tutorial for experienced programmers. You can read the book on-line, or download it in a variety of formats. Rate this link
- DMOZ PHP Tutorials Links Rate this link
- Learning PHP: The What's and the Why's Rate this link
- PHP3 FAQ Rate this link
- PHP Manual Rate this link
- PHP: Hypertext Processor - The PHP language home page. Rate this link
- PHP Manual Function Reference Rate this link
- PHP OpenGL Windows - this is a hack to use OpenGL graphics in Windows system with PHP language Rate this link
- DMOZ PHP Tutorials Links Rate this link
- comp.lang.javascript meta FAQ Rate this link
- JavaScript Basics Rate this link
- JavaScript Frequently Asked Questions Rate this link
- The JavaScript Weenie - JavaScript expert and clone articles Rate this link
- Webmonkey Programming JavaScript Pages - lots of JavaScript information Rate this link
- How to Steal JavaScript - "Borrowing" JavaScript code is easy. Making it work on your own pages, however, can prove difficult. Nadav reveals what you need to know to make those pirated scripts sail. Rate this link
- JavaScript-opas - JavaScript tutorial in Finnish Rate this link
- Thau's Advanced JavaScript Tutorial - Take JavaScript to the next level with if-then-else statements, cookies, string handling, browser detection, preloaded images, debugging techniques, and a lot more. Rate this link
- Thau's JavaScript Tutorial - Learn the basics including variables, if-then statements, link events, and image swaps in what's been called the best JavaScript tutorial on the Web. Rate this link
- Coolnerds Electronic JavaScript Reference - reference with most important operators described Rate this link
- JavaScript Guide - official guide from Rate this link
- Official Netscape Javascript documentation Rate this link
- Complete Idiot's Guide to JavaScript, Second Edition - full book on-line Rate this link
- DevGuru JavaScript Quick Reference - This is an extensive 214 page reference source that explains and gives comprehensive, working examples of code in a definitive manner for the JavaScript language (and hence, for the ECMAScript and JScript languages). All elements of the language are covered, including the events, functions, methods, objects, operators, properties, statements, and values. Rate this link
- Doc JavaScript - biweekly column on JavaScript, a programming language for web page's object manipulation Rate this link
- Popup Closer Rate this link
- Programming JavaScript Rate this link
- The JavaScript Source - resource with tons of "cut & paste" Rate this link
- Website Abstraction Free JavaScripts! Rate this link
- An Introduction To DHTML - JavaScript and HTML make a nice couple Rate this link
- ECMAScript - based on several originating technologies, the most well-known being JavaScript (Netscape Communications) and JScript (Microsoft Corporation) Rate this link
- Download Ruby Rate this link
- Online Ruby Cookbook - This is an effort to bring an organized and complete set of recipes to the ruby community so that beginning and advanced ruby programmers can benefit from having one. This an on-going book project. Rate this link
- Programming Ruby: The Pragmatic Programmer's Guide - On-line Ruby programming guide. Rate this link
- Ruby: Programmers' Best Friend - This is Ruby language home site. Rate this link
- Ruby page Rate this link
- Ruby QuickRef Rate this link
- REBOL home - Commercial REBOL home page Rate this link
- REBOL.org - E-zine, scipt library, mail archive, quick refernce Rate this link
- comp.lang.java FAQ - This is a Java FAQ list for the comp.lang.java newsgroups. Rate this link
- J2EETM Technologies - JavaTM 2 Platform, Enterprise Edition (J2EE), is a standard architecture to define and support a multitiered programming model where thin-client applications invoke business logic that executes on an application server. Rate this link
- Java Overview Rate this link
- Collecting the Garbage for High-Availability Real-Time Java Systems - With emerging garbage collection technologies Java can be optimized for high-availability comm systems. Rate this link
- Creating Your First Java application in Linux Using Only VI and Viewing/Debugging It with Netscape Rate this link
- Java Servlet API - provides web developers a mechanism for extending the functionality of a web server using Java programs called servlets Rate this link
- Making it happen with J2EE - Slideset of J2EE basics tutorial. Rate this link
- Silicon variety vanquishes embedded-Java taboos - Java's portability and C-like familiarity make it the linchpin of Internet communications. Today's hardware developments enable Java to break out of Unix/Windows system programming and into embedded devices. Rate this link
- The Java Tutorial Rate this link
- Mobile Information Device Profile (MIDP); JSR 37, JSR 118 - The J2ME Mobile Information Device Profile (MIDP) lets you write downloadable applications and services for network-connectable, battery-operated mobile handheld devices such as cell phones, two-way pagers, and Palm Pilots. Rate this link
- Securing Java: Getting Down to Business with Mobile Code - full book on-line Rate this link
- Java(tm): Programming for the Internet - offical Java home page Rate this link
- JavaShareware.Com - promotes Java through sharing resources and Java site with lots of Java material Rate this link
- Sun Java Technologies Page Rate this link
- elj.com - Eiffel documents and quick links Rate this link
- SmallEiffel - The GNU Eiffel Compiler Rate this link
- The Home Page for Object-Oriented Technology and Eiffel Rate this link
- A First Guide to PostScript Rate this link
- Color Postscript tutorial - Color PostScript is trivial. For black & white pictures, you specify shades of gray with the command "setgray". "0 setgray" is black and "1 setgray" is white. For color PostScript, you can specify the color with the command "setrgbcolor". You give that command 3 numbers, the red, green, and blue levels. Rate this link
- comp.lang.postscript FAQ Rate this link
- Ghostscript, Ghostview and GSview - postscript interpreter and previewer Rate this link
- Internet PostScript Resources Rate this link
- Internet Resources for PostScript and Ghostscript Rate this link
- PostScript Mini-FAQ Rate this link
- PostScript - Answers to Questions (the comp.lang.postscript FAQ) Rate this link
- PostScript Sources FAQ Rate this link
- ANSI-C/FAQ/IAQ Rate this link
- comp.lang.c Frequently Asked Questions Rate this link
- comp.lang.c FAQ Rate this link
- Enumerations with noncontiguous values - Enumerations with noncontiguous values pose some complications, especially if you want to iterate through them in a loop. Rate this link
- GCC Home Page - Currently GCC contains front-ends for C, C++, Objective C, Chill, Fortran, and Java as well as libraries for these languages. Rate this link
- Learn C/C++ Today - This is a list of a few C and C++ language tutorials available to a user. This list will include interactive tutorials, public-domain code collections, books etc. Rate this link
- learnc.com: Controlling The Real World With Computers - real-world equipment controlling using PC and C from basics to actually providing output to and getting input from the board Rate this link
- Programming in C - Lecture notes + integrated exercises, solutions and marking, some Java animation examples are also available Rate this link
- Programming in C document collection Rate this link
- Tietoa C-ohjelmointikielest? (ja C++:sta) Internetiss? Rate this link
- Viper's C/C++ Web Page - source on the Internet for C/C++ programming material. Rate this link
- C routines for handling ways, week numbers etc. Rate this link
- C source code archive at ftp.funet.fi Rate this link
- Fast Square Root in C - This application note describes a solution for a fast square root routine in C. Both the parameter and the result are 16-bit unsigned ints. Even though it is not 100% precise, the result can be used with many applications in the real world running in real time. Rate this link
- Material for C/C++ Programmers Rate this link
- The International Obfuscated C Code Contest - to write the most Obscure/Obfuscated C program under the rules Rate this link
- The SNIPPETS collection - huge collection of small C routines Rate this link
- Are there any good shareware/freeware compilers? Rate this link
- Antique Software: Turbo C version 2.01 - This software is provided to the Borland community free of charge. They may be downloaded and used "as is" for personal use only. Rate this link
- Borland C++ Builder Compiler - This is a fast 32-bit ANSI C++ optimizing compiler for Windows which you can download for free. Rate this link
- GCC - GCC (GNU Compiler Collection) GCC development is a part of the GNU Project, aiming to improve the compiler used in the GNU system including the GNU/Linux variant. Currently GCC contains front ends for C, C++, Objective C, Chill, Fortran, and Java as well as libraries for these languages (libstdc++, libgcj,...). Rate this link
- GCC Development Toolchain for x86-win32 targets Rate this link
- DJGPP - DJGPP is a complete 32-bit C/C++ development system for Intel 80386 (and higher) PCs running DOS. It includes ports of many GNU development utilities. The development tools require a 80386 or newer computer to run, as do the programs they produce. Rate this link
- OpenWatcom - Open Watcom is a joint effort between SciTech Software, Sybase?, and a select team of developers, which brings the Sybase Watcom C/C++ and Fortran compiler products to the Open Source community. Rate this link
- Pacific C MS-DOS Compiler (freeware version) - Pacific C is a freeware C compiler for DOS. Included is the HI-TECH Professional Development environment, an IDE allowing you to edit source code and manage projects with ease. Pacific C's text-based GUI makes it a good teaching package, while ANSI-compliance and tight code generation provide a powerful development tool. Rate this link
- Antique Software: Turbo C version 2.01 - This software is provided to the Borland community free of charge. They may be downloaded and used "as is" for personal use only. Rate this link
- Borland C++ Builder Compiler - This is a fast 32-bit ANSI C++ optimizing compiler for Windows which you can download for free. Rate this link
- Borland Turbo C++ Guide Pics Rate this link
- Borland FTP Rate this link
- Borland Web site Rate this link
- The Free Borland C++Builder Compiler - A fast 32-bit ANSI C++ optimizing compiler for Windows available for free. Rate this link
- Using Projects with Turbo C++ Rate this link
- DJGPP Home Page Rate this link
- DJGPP Files Found on Other Sites Rate this link
- DJGPP - FTP directory Rate this link
- DJGPP QuickStart Guide - under construction Rate this link
- DJGPP User's Guide Rate this link
- Checker - Checker is a tool which finds memory errors at runtime. Its primary function is to emit a warning when the program reads an uninitialized variable or memory area, or when the program accesses an unallocated memory area. The Malloc library of Checker is very robust, though a bit slower than the usual GNU Malloc. Rate this link
- LCLint - LCLint is a tool for statically checking C programs. With minimal effort, LCLint can be used as a better lint. Rate this link
- A Tutorial on creating DLLs with VC++ - Visual basic is very fast and easy tool for developing applications with high degree of user friendliness , but it lacks some important functionalities like direct access to hardware, multythreading(Activex servers allows some type of multythreading !). The easy and effective solution for this problem is to write a DLL. But beginners experiance problems in understanding how to write a dll. .Here is a simple tutorial on writing DLLs with Visual C++. I assume that you know a little bit Visual Basic and C programming. Rate this link
- C++ ANSI Draft Standard - 1997 C++ Public Review Document Rate this link
- comp.lang.c++ FAQ Rate this link
- C++ Annotations - This document is intended for knowledgeable users of C (or any other language using a C-like grammar, like Perl or Java) who would like to know more about, or make the transition to, C++. This document is the main textbook for Frank's C++ programming courses, which are yearly organized at the University of Groningen. The C++ Annotations do not cover all aspects of C++, though. In particular, C++'s basic grammar, which is, for all practical purposes, equal to C's grammar, is not covered. For this part of the C++ language, the reader should consult other texts, like a book covering the C programming language. Rate this link
- C++ FAQ Rate this link
- C++ Reference Rate this link
- Learn C/C++ Today - list of a few C and C++ language tutorials available Rate this link
- Olio-ohjelmointi ja C++ Rate this link
- printf - manual page Rate this link
- Viper's C/C++ Web Page - source on the Internet for C/C++ programming material. Rate this link
- C# Corner - online communitity for .NET developers Rate this link
- C# Help - Place For C# Developers Rate this link
- C# Introduction and Overview Rate this link
- C# Version 2.0 Specification - Microsoft released the design specifications document for C# 2.0 (codenamed 'Whidbey') to be released early 2004. New features of the language include generics similar to those found in Eiffel and Ada, anonymous methods similar to lambda functions in Lisp, iterators, and partial types. Rate this link
- Ada Programmer's Frequently Asked Questions (FAQ) Rate this link
- Introduction to Ada 95 - This introduction is a survey of Ada's key features, with a focus on those most useful to embedded programmers. Rate this link
- The Big Online Book of Linux Ada Programming Rate this link
- Basic archives Rate this link
- Exploring time with your computer - This set of experiments shows you how to measure and use time in your programs. You will need QBASIC in order to run these experiments. Rate this link
- GWBasic Tutor Rate this link
- Information about the QBasic command Rate this link
- Introduction to QuickBASIC (IBM-PC and Mac versions) Rate this link
- Laz's QBasic Swimming Pool - You can find here lots of different Qbasic programming examples. Rate this link
- QBASIC on 32-bit Windows - a howto page Rate this link
- QBasic on Windows 2000 Server documentation Rate this link
- Really really basic BASIC - Even if you don't have the foggiest idea how to write or even run a program, then this section is just for you. In a matter of a few minutes, you will actually be writing a program of your own. Rate this link
- Where is QBasic in Windows 2000? Rate this link
- Visual Assembler - Visual Assembler is an IDE for assembly language program that incorporates Rapid Application Development (RAD) features. Direct support is provided for win32 assembly programming on the Intel x86 processors, using the Masm, Nasm, or Tasm assemblers. Rate this link
- Gavin's Guide to 80x86 Assembly Rate this link
- Assembly Language Lists and Major Resources Rate this link
- Assembly Language Tutorial - introducing you to assembly language programming Rate this link
- Brennan's Guide to DJGPP Inline Assembly Rate this link
- Convert MASM format assembler to the standard "as" (AT&T) format used by UNIXware or SVR4 Rate this link
- Cyberpoint - some assembler sources Rate this link
- Handling noise on IRQ7 - Noise on the IRQ lines or and IRQ signal that falls too soon will generate a spurious IRQ7. This can cause strange lock up problems in your software. Rate this link
- How to optimize for the Pentium? microprocessors - manual describes everything you need to know about optimizing code for the Intel microprocessors, including Pentium, Pentium MMX, Pentium Pro, Pentium II, Pentium III, Celeron and Xeon. Rate this link
- Intel FTP - Intel official site Rate this link
- Intel processsor secrets - Intel documents, undocumented Pentium and protected mode Rate this link
- NASM (Netwide Assembler) - The Netwide Assembler, NASM, is an 80x86 assembler designed for portability and modularity. It supports a range of object file formats, including Linux a.out and ELF, NetBSD/FreeBSD, COFF, Microsoft 16-bit OBJ and Win32. It will also output plain binary files. Its syntax is designed to be simple and easy to understand, similar to Intel's but less complex. It supports Pentium, P6 and MMX opcodes, and has macro capability. Rate this link
- Paul Hsieh's x86 Assembly Language Page Rate this link
- PENTIUM/486 Optimization - article ment to be included to Rate this link
- Pentium Optimization article by Agner Fog Rate this link
- SpAsm, The Specific Assembler - Spasm is an Assembler for ReactOS / Win32 PE files production ( Win95/98/NT/2000). Rate this link
- Turbo Pascal and Assembler sources at garbo.uwasa.fi Rate this link
- Visual Assembler - Visual Assembler is an IDE for assembly language program that incorporates Rapid Application Development (RAD) features. Direct support is provided for win32 assembly programming on the Intel x86 processors, using the Masm, Nasm, or Tasm assemblers. Rate this link
- Win32 + Assembler Source Page - If you are interested in 32-bit programming for Windows 95/98/ME or NT/2000 using assembler, you will find everything you need here including an Editor, Assembler, Resource Compiler, Linker, Symbolic Debugger, Help Compiler, Information, Sample code and demos and Links. Rate this link
- DEBUG/ASSEMBLY TUTORIAL by Fran Golden - This is a debug tutorial to assist the student who needs to know the inner-workings of the Intel based computer. The objective of this material is to instruct the student in observing the contents of the microprocessor and all of the memory locations that the processor can address. After you become familiar with debug and how it looks at addresses, You will be introduced to machine level programming, using debug as an assembler. At the end of this tutorial you should have a good understanding of the IBM system board and low level programming. Debug is a small utility program that uses one letter commands followed by several parameters needed on the command line. Rate this link
- Essential Pascal - "Essential Pascal" is a free online introduction to the Pascal programming language. This book has been written by Marco Cant? and covers the language form the perspective of Borland's Delphi development environment. Rate this link
- Freebyte's Guide to free Pascal programming - Free Pascal compilers, Free Pascal tools and Free Pascal resources Rate this link
- Pascal Programming Resources Rate this link
- Pascal Programming Tutorial Rate this link
- Antique Software: Turbo Pascal v3.02 - Turbo Pascal 3 was the first Turbo Pascal version to support the Intel 8087 math co-processor (16-bit PC version). It also included support for Binary Coded Decimal (BCD) math to eliminate round off errors in business applications. Turbo Pascal 3 also allowed you to build larger programs (> 64k bytes) using overlays. The PC version also supported Turtle Graphics, Color, Sound, Window Routines, and more. This historical version is provided to the Borland community free of charge. They may be downloaded and used "as is" for personal use only. Rate this link
- Antique Software: Turbo Pascal v5.5 - Turbo Pascal 5.5, the world-standard Pascal compiler turbo-charged with object-oriented features. This historical version is provided to the Borland community free of charge. They may be downloaded and used "as is" for personal use only. Rate this link
- Borland FTP Rate this link
- Borland Pascal Mini FAQ Rate this link
- Introduction to Turbo Pascal - This introduction includes link to download Turbo Pasca 5.5 (free). Rate this link
- Turbo Pascal 3.0 compiler / code generation internals Rate this link
- The Pascal + Delphi site - also available at Rate this link
- Turbo Pascal Links Rate this link
- Free Pascal - Free Pascal (aka FPK Pascal) is a 32 bit pascal compiler. It is available for different processors (i386+ and 680x0) and operating systems (Linux, FreeBSD, DOS, Win32, OS/2, AmigaOS). The packages comes under a modified GNU Public License to allow the use of static libraries when creating applications. The sources are available, the complete compiler is written in Pascal Rate this link
- Free Pascal - Free Pascal (aka FPK Pascal) is a 32 bit pascal compiler. It is available for different processors (Intel 80386 and compatibles and Motorola 680x0) and operating systems (Linux, FreeBSD, DOS, Win32, OS/2, BeOS and Classic Amiga. The language syntax is semanticly compatible with TP 7.0, some extensions used by Delphi (classes, rtti, exceptions, ansistrings) are also supported. Furthermore Free Pascal supports function overloading and other such features. Rate this link
- Free Pascal Compilers, Free Delphi Compilers - Listed on this page are free Delphi and Pascal compilers for a number of platforms. Rate this link
- The Pascal Compilers Page - information about many pascal compilers which are also freely downloadable Rate this link
- Turbo Pascal Lex/Yacc - This is a compiler generator toolset that supports all recent flavours of Turbo and Borland Pascal, including Delphi, and the Free Pascal Compiler (fpc). Rate this link
- MOS - graphical interface for Turbo Pascal 7 programmers Rate this link
- SourceWare Archival Group Pascal sources - thousands of useful Pascal routines Rate this link
- Turbo Pascal and Assembler sources at garfo.uwasa.fi Rate this link
- Turbo Pascal Keyboard Routines Rate this link
- Guile: Project GNU's extension language - Guile is an interpreter for the Scheme programming language, packaged as a library which can be incorporated into your programs. Your users have full access to the interpreter, so Guile itself can be extended, based on the needs of the user. The result is a scripting language tailored to your application. Rate this link
- Elisp (aka: The Mother of All Languages) - Elisp (emacs lisp) is the language used to extend emacs, the customizable text editor of choice. The elisp manual pages are available online. Rate this link
- CLiki: the common lisp wiki - links to and resources for free software implemented in Common Lisp and available on Unix-like systems Rate this link
- The Common Lisp Cookbook - This is a collaborative project that aims to provide for Common Lisp something similar to the Perl Cookbook. Rate this link
- Common Lisp the Language, 2nd Edition - full book on-line Rate this link
- LISP TUTOR - a WWW tutorial that helps the student in the process of learning the LISP language Rate this link
- Yahoo Lisp Links Rate this link
- LISP Primer - This text has been written to provide a quick introduction to the basic elements of Common LISP for both experienced and novice programmers. Rate this link
- Programming in Emacs Lisp - Most of the GNU Emacs integrated environment is written in the programming language called Emacs Lisp. Emacs is designed so that you can write new code in Emacs Lisp and easily install it as an extension to the editor. Rate this link
- Common Lisp Hypermedia Server - CL-HTTP is a full-featured server for the Internet Hypertext Transfer Protocol (HTTP 1.1, HTML 2.0, HTML 3.2 & pre-HTML 4.0) that comes complete with source code. The server has been proven in major production systems and applied in a number of Artificial Intelligence systems. Rate this link
- Scheme Introduction - Scheme is a statically scoped and properly tail-recursive dialect of the Lisp programming language. This page provides Scheme resources. Rate this link
- Successful Lisp: How to Understand and Use Common Lisp - This book put on-line provides an overview of Common Lisp for the working programmer. Rate this link
- PostgreSQL - advanced Open Source database software Rate this link
- The Relational Data Model, Normalisation and effective Database Design - It may not seem obvious to a lot of people, but the design of the database is the heart of any system. If the design is wrong then the whole application will be wrong, either in effectiveness or performance, or even both. No amount of clever coding can compensate for a bad database design. You can expect problems when the database design and software development are handled by different teams. This article will provide you with some tips on designing a database in the hope that you may learn something useful. Rate this link
- MySQL - The MySQL database server is the world's most popular open source database. Rate this link
- A Gentle Introduction to SQL - An interactive SQL tutorial. Including online access to SQL engines running MySQL, PostgreSQL, Oracle and Access. This document is also available at Rate this link
- An Introduction to MySQL - This article is the first in an educational series offered by MySQL AB aimed towards providing the reader with valuable insight into the MySQL database server. Rate this link
- An introduction to SQL and relational databases - This article takes a look at Structured Query Language (SQL) and the basics of relational databases, providing the information you need to understand how they might meet your needs. Rate this link
- Database-SQL-RDBMS HOW-TO document for Linux (PostgreSQL Object Relational Database System) Rate this link
- Introductory Database Theory: Systems And Design - Databases are the primary form of storage in both today's online and offline worlds. Databases are used to store millions of different types/combinations of information including product details, employees, personal address books, news, etc. Before you can begin to design a database however, you must understand the underlying concepts and theories of why databases are used and how they are created. This article will explain all of this and more. Rate this link
- Introduction to SQL Rate this link
- Introduction to SQL: Installation of PostgreSQL - This short course consists of three parts, in the first part we explain a few generalities about SQL using a public domain database server called postgreSQL. Rate this link
- Introduction to Structured Query Language Rate this link
- Introduction to Structured Query Language - This page is a tutorial of the Structured Query Language (also known as SQL) and is a pioneering effort on the World Wide Web, as this is the first comprehensive SQL tutorial available on the Internet. This page will describe how to use SQL, and give examples. The SQL used in this document is "ANSI", or standard SQL. There is also a "Nonstandard SQL" section. Rate this link
- Introduction to Structured Query Language - This document is an introductory tutorial to the Structured Query Language (also known as SQL). Rate this link
- SQLcourse.com: Interactive/On-line SQL Tutorial with SQL Interpreter & live practice database Rate this link
- SQL Interpreter & Tutorial - easy-to-understand SQL instructions, but it allows you to practice what you learn using the on-line SQL interpreter. Rate this link
- SQL: The Universal Database Language - An introduction to creating and manipulating relational databases. Rate this link
- SQL Tutorial - This SQL Tutorial site is aimed to teach beginners the building blocks of SQL. Rate this link
- Oracle - enterprise information management software company known of Oracle database software Rate this link
- DB2 - IBM's DB2 database software is full-featured, robust, scalable and easy to use commercial database software Rate this link
- SQLite - SQLite is a small C library that implements a self-contained, embeddable, zero-configuration SQL database engine. Rate this link
Programming information
General
Choice of programming languages can be considered a religious issue.Discussions of programming languages often become religious wars. There are nowadays very many languages to choose for.It is possible to write terrible code in any language. And it ispossible to write perfectly useful, very readable code in any language. The quality of a particular program is less a functionof the quality of the programming language than it is of the qulaityof the programmer. Some "better" languages though can make the writing good code easier for some type of applications.
Useful general skills
Regular expressions
A regular expression is a specially formatted pattern that can be used to find instances of one string in another. Several programming languages including Visual Basic, Perl, JavaScript and PHP support regular expressions, Regular expressions are a very powerful way of matching patterns in text. Regular expressions are generally usually used as find-replace tools. Regular expressions are similar to some find-replace operation in popular text edixtors, only better. Think of a regular expression as an extremely advanced find-replace tool that saves us the pain of having to write custom data validation routines to check e-mail addresses, make sure phone numbers are in the correct format, etc. Regular expressions ("regex's" for short) itself are sets of symbols and syntactic elements used to match patterns of text. Regular expressions figure into all kinds of text-manipulation tasks. Searching and search-and-replace are among the more common uses, but regular expressions can also be used to test for certain conditions in a text file or data stream. Unfortunately regular expressions are quite hard to understand at first.Regular expressions are one of those quirky features that popup in a variety of programming languages, but because they seem to be a difficult concept to grasp, many developers push them away into the corner, forgetting that they even exist.
Script languages
Scripting languages are very useful for making small tool program.
UNIX shell programming
The UNIX shell is most people's main access to the UNIX operating system.Whenever you login to a Unix system you are placed in a program called the shell. he shell acts as a command interpreter; it takes each command and passes it to the operating system kernel to be acted upon. It then displays the results of this operation on your screen. You can make shell scripts by placing a series of shell commands to a file which you then execure with aid of the the shell. Shell programming with scripts is very useful to automate repetitive tasks such as system administration, regression test, and rapid prototyping. The language syntax of conventional Unix shells such as Bourne shell, C shell, and Korn shell are somewhat awkward.Therefore, shell scripts written in Unix shell programming languages are usually hard to read and difficult to change and maintain. There are different versions of shells used in UNIX systems,Bourne, Korn, and C presents the three shells that are typically available on a UNIX system. There are many basic things which work in quite same way in many shells, but there are lots of differences in the more advanced operations in those different shells. In the near beginning there was the Bourne shell /bin/sh (written byS. R. Bourne). It had (and still does) a very strong powerfulsyntactical language built into it, with all the features that arecommonly considered to produce structured programs; it hasparticularly strong provisions for controlling input and output and inits expression matching facilities. Along came the people from UCB and the C-shell /bin/csh was born. Intothis shell they put several concepts which were new, (the majority ofthese being job control and aliasing) and managed to produce a shellthat was much better for interactive use. The new shell input language used in C-shell was to resemble C, the language in which UNIX itself was written. C-shell had problems(like bugs etc.) so new versions were developed.In came command lineediting, TENEX-style completion and several other features. Out wentmost of the bugs, but did the various UNIX operating systemmanufacturers start shipping tcsh instead of csh. Generally people have used Bourne shell for scriptingand the C shell for interactive use. Shell compatition is still going on. The Korn shell, a commercial implementation of "improved Bourne",has long been a part of System V. POSIX specified more orless the System V Bourne shell as shell standard.bash (the Bourne again shell) by GNU was born to be a POSIX compatiblefree shell. Rc is a small, simple and in most peoples opinion a much cleaner shellthan some other counterparts.The tcsh is an enhanced version of the C shell. It allows command line editing and filename completion.The search for the perfect shell still goes on and the latest entryinto this arena is zsh. It is based roughly on the bourne shell (although thereare some minor but important differences) and has so many additionalfeatures.
AWK
Awk is a text-processing programming language designed to search for, match patterns, and perform actions on files. AWK programs are generally quite small, and are interpreted. AWK is a suitable tool for manipulating data which is in text format. Awk makes it easy to select particular records in a file and perform operations upon them.
Rexx
REXX is a programming language designed by Michael Cowlishaw of IBM UK Laboratories. Rexx is an acronym which stands for "Restructured Extended Executor Language". In Mike's own words: "REXX is a procedural language that allows programs and algorithms to be written in a clear and structured way." What makes REXX different from most other languages is that it is also designed to be used as a macro language by arbitrary application programs. The idea is that application developers don't have to design their own macro languages and interpreters. Instead they use REXX as the macro language and support the REXX programming interface. If a REXX macro comes across an expression or function call that it cannot resolve, it can ask the application to handle it instead. The application only has to support the features that are specific to it, freeing the developer from handling the mundane (and time-consuming) task of writing a language interpreter. Rexx language is standarddized.The American National Standard (ANSI Standard) for Rexx is called "Programming Language - REXX", and its number is X3.274-1996 The REXX language itself is independent of a specific operating system. But there always exists functions and services specific for a single operating system. The REXX Product family runs on host systems, such as VM/ESA, VSE/ESA, and MVS/ESA, and workstation environments, such as AIX, OS/2, Linux, and Windows.
NetRexx
NetRexx is a human-oriented programming language which makes writing and using Java classes quicker and easier than writing in Java. NetRexx is a programming and scripting language which has been designed to be a simple, effective, and complete alternative to the Java language. With NetRexx, you can create applications and applets for the Java environment faster and more easily than by programming in Java - and you can compile or interpret them, as appropriate. The new -prompt option allows very fast (usually sub-second) compilation or interpretation of most classes. Inspired by two very different programming languages, Rexx and Java, NetRexx blends the easy-to-learn syntax of Rexx with the robustness and portability of the Java environment. The result is a language which is tuned for both scripting and application development, and is therefore truly general-purpose.
SED
Sed is a stream editor than can be used to perform basic text transformations on an input stream.Sed is a non-interactive editor that works from a command line; it's not a GUI Windows app. Sed changes blocks of text on the fly, without making you open up a screen, push a cursor around, and press DELETE or INSERT or ENTER or function keys.Sed is extremely powerful, and you can do things in sed that you can't do in any standard word processor. THe operating principle of sed is simple: You feed sed a script of editing commands (like, "change every line that begins with a colon to such-and-such") and sed sends your revised text to the screen. Sed has beeb originally written and designed for Unix, sed has been ported to MS-DOS, Windows, OS/2, and other operating systems.
TCL
Tcl (Tool Command Language) is easy to learn and you can create a useful program in minutes! You are free to use it however you wish, even in commercial applications. Tcl (Tool Command Language) is used by over half a million developers worldwide and has become a critical component in thousands of corporations. It has a simple and programmable syntax and can be either used as a standalone application or embedded in application programs. Best of all, Tcl is open source so it's completely free. Tk is a graphical user interface toolkit that makes it possible to create powerful GUIs incredibly quickly. It proved so popular that it now ships with all distributions of Tcl. Tcl and Tk were created and developed by John Ousterhout. Developers all over the world followed his example and built their own Tcl extensions. Today, there are hundreds of Tcl extensions for all manner of applications.
Perl (Practical Extraction and Report Language)
Perl is short for 'Practical Extraction and Report Language'. Perl is an iterpreted high-level programming language designed for processing text. Perl has become the premier scripting language of the Web, as most CGI programs are written in Perl. However, Perl is widely used as a rapid prototyping language and a language that makes it possible for different systems to work well together. Perl is popular with system administrators who use it for an infinite number of automation tasks. Because Perl is an interpreted language, Perl programs are highly portable across systems.
Python
Python is an interpreted, interactive, object-oriented programming language. It is often compared to Tcl, Perl, Scheme or Java. Python combines remarkable power with very clear syntax. It has modules, classes, exceptions, very high level dynamic data types, and dynamic typing. There are interfaces to many system calls and libraries, as well as to various windowing systems. Python is also usable as an extension language for applications that need a programmable interface. The Python implementation is portable: it runs on many brands of UNIX, Windows, DOS, OS/2, Mac, Amiga, etc. Python is copyrighted but freely usable and distributable, even for commercial use, and of course the download is FREE.
PHP
PHP is a server-side, cross-platform, HTML embedded scripting language. PHP is a simple scripting language to implement server side fuctionalityto web servers which support that scripting language.PHP, which stands for PHP Hypertext Preprocessor, is a server-side embedded scripting language. In non-technical terms: a PHP processor is run on the server (Windows, or a flavor of UNIX). When a page is requested that contains PHP, the processor translates and executes all the commands in the page, and then outputs the result to the browser as regular HTML. Because this translation occurs on the server, a page written with PHP is viewable with any browser, on any operation system.PHP can be embedded directly into HTML. PHP code is separated from HTML by Start and End entities. When a document is parsed, the PHP processor only interprets the demarked areas, and outputs the results in the same position. PHP also includes the ability to almost completely separate code from HTML.
PHP is intended for and excels at processing text, a range of math functions, and interaction with databases, with a limited amount of fuss on the part of the coder. It also is a natural for building web pages requiring the coder to do nothing special to get their output to the browser.
JavaScript
JavaScript is the Netscape-developed object scripting language used in millions of web pages and server applications worldwide.JavaScript is Netscape's cross-platform, object-based scripting language for client and server applications. JavaScript is most commonly used to add code to web page which is executed by the web browser in the client computer. In this use Netscape Navigator, Internet Explorer or some other Javascript capable web browser interprets Client-Side JavaScript statements embedded in an HTML page.Netscape's JavaScript is a superset of the ECMA-262 Revision 3 (ECMAScript) standard scripting language, with only mild differences from the published standard. Microsoft's implementation is somewhat different subset of that standard. Both Netscape and MSIE support JavaScript, with newer browsers supporting later versions of JavaScript (support for some other brosers exist or is coming).Client side Javascript can be used to implement menus, clocks, dynamic HTML, interactive web pages, some limited search engines, it is used in web advertising (some banners) etc.JavaScript can also be used to make server side scripts on Netscape web server.Server-Side JavaScript is compiled into platform-independent bytecode and used by Netscape Enterprise Server, enabling you to create server-based applications similar to Common Gateway Interface (CGI) programs.Even though the name is quite similar to to Sun's Java, the JavaScript iscompletely different technology than Java. Contrary to popular misconception, JavaScript is not "Interpretive Java". JavaScript and Java are similar in some ways but fundamentally different in others. In a nutshell, JavaScript is a dynamic scripting language supporting prototype based object construction. The basic syntax is intentionally similar to both Java and C++ to reduce the number of new concepts required to learn the language. JavaScript can function as both a procedural and an object oriented language.
General information
Javascript tutorials
Javascript references
Javascrit books
Example source code resources
Related technologies
ABC
ABC is an interactive programming language and environment for personal computing, originally intended as a good replacement for BASIC. ABC is easy to learn (an hour or so for someone who has already programmed), and yet easy to use. Originally intended as a language for beginners, it has evolved into a powerful tool for beginners and experts alike.
Ruby
Ruby is the interpreted scripting language for quick and easy object-oriented programming. Ruby can be considered as an object oriented scripting language.Ruby is a fairly new language out of Japan that apparently is very popular there. Ruby has full reflection mechanisms and a fairly simple syntax. Ruby combines a lot of smalltalkism and perlisms which makes it very ituitive to use.It has many features to process text files and to do system management tasks (as in Perl).
REBOL
REBOL is an advanced interpreted language that lets you access and control the resources of the Internet with such ease that you might start thinking of the Internet as your own personal operating system. You're already familiar with how web browsers let you surf the Internet. With REBOL you script the Internet.
Java
Java is Sun's cross-platform, object-based programmign languagewhich can be used for wide variety of applications. In web environmentJava is most often used as applets which are included to webpages andthen run by the client web browser Java virtual machine. Java can alsobe used to make server side web server extensions called servlets.
General
Articles and tutorials
Java books on-line
Java resources
Eiffel
Eiffer is a sophisticated object oriented language. Eiffer is available from at least three commercial vendors, as well as under GNU (SmallEiffel).
Postscript
PostScript is a page description programming language. It is perhaps the most versatile and loved language for printers, being used in printers world-wide. It is capable of drawing to computer screens and any kind of drawing device. Postscript langauge most often used as laser printer controlling laguager, but is a complete programming language. PostScript is interpreted, stack based and has latent typing. It somewhat resembles the computer language FORTH. However, PostScript programs are usually documents meant to be printed that have been generated by a program written in some compiled language.
C
The 'C' programming language was originally developed for and implemented on the UNIX operating system, on a DEC PDP-11 by Dennis Ritchie. One of the best features of C is that it is not tied to any particular hardware or system. This makes it easy for a user to write programs that will run without any changes on practically all machines. C is often called a middle-level computer language as it combines the elements of high-level languages with the functionalism of assembly language. C allows the manipulation of bits, bytes and addresses- the basic elements with which the computer functions. Another good point about C is its portability which makes it possible to adapt software written for one type of computer to another. C offers the speed of assembly language (or quite near to it) and the extensibility of FORTH, but few of the restrictions of Pascal and Modula-2. At the time that C appeared many languages were in use (many still are).There was a demand for a truly transportable language that would run on all platforms. C was in may ways "good enough" for this. Originally C was described by itsauthors as "portable assembly language" in that it was small, simple,close to the hardware, and without very much in the way of behind-the-scenes magic. C was originally designed to produce very easy conversion (translation) toPDP-11 machine code which would compete well with hand-writtenassembly. The principal reason for major OSs being written in C nowadays appears to be thatthe software manufacturers already have their own libraries of C routinesthat they want to reuse simply because they don't want to pay out to getthem in a different format. They now hold copyright over what they have,and are not going to relinquish it. Thus there is a demand for Cprogrammers.The reason that they put any time, money and effort at all intoproducing the libraries in the first place was that C was being touted as"the way to go" because of its so-called transportability betweenplatforms. This portability is not such tha tyou can just take any C program and compile it in a new system.Many programs and libraries had turned to be more or less platform specific, unless pecifically written for portability in mind in the first place. The C source is usually"mostly" compatible between compilers at best - and that is when only themost rudimentary routines are being written. Very many C programs in real life have more or less platform specific features in them, so porting takes almost always lots of time. In C programming language world there is one book more known and referenced that anything else. The name of this wondrous tome is "The C Programming Language, Second Edition", and it was written by the twopeople to whom the entire world owes a debt of gratitude for the veryexistence of the language: Brian W. Kernighan, and Dennis M. Ritchie.Practically every C book, tutorial, pamphlet, website, or college course everpublished/taught by anyone with even the slightest amount of competencewill eventually refer you back to "K&R", as this book is commonly known.Short of going to the ANSI/IEEE standard, there is no more definitivework on the language, and no more authoritative information source thanthe very creators of the language you're trying to learn.If you want to learn C well, get a copy of this book C Programming Language, Second edition by by Brian W. Kernighan and Dennis M. Ritchie. The book is published by Prentice Hall of Englewood Cliffs, NJ, it wears an ISBN number of 0-13-110362-8. The C programming language simply cannot be learned even halfway effectively without it. C is like a surgeon's scalpel: just a handle and an edge. It can cutpractically anything and in the right hands it can perform miracles.However, use it carelessly and you'll cut your own hands off.
General
Source code
C compiler links
Borland C compiler information
Borland C compilers used to be very well known and widely used compilers. Inprise has issued free versions of several Borland C and Pascal compilers.Users can download the Borland C++ Compiler 5.5. Users can also download Turbo Pascal 1.0, 3.02, and 5.5 and Turbo C 1.01 and 2.01 from the Borland Community Museum if they first register as Borland Community members.
GCC information
GCC (GNU Compiler Collection) GCC development is a part of the GNU Project, aiming to improve the compiler used in the GNU system including the GNU/Linux variant. Currently GCC contains front ends for C, C++, Objective C, Chill, Fortran, and Java as well as libraries for these languages (libstdc++, libgcj,...).
DJGPP information
GPP is an open source C compiler developed by GNU project for UNIX systems. GPP is an open source C++ compiler developed by GNU project for UNIX systems. DJGPP is a DOS/Windows port fo GCC and GPP tools.
Watcom C compiler information
Watcom C is a C compiler for Intel processors. It was one of the first good 32 bit compilers fpr PC platform.
C checkers
C++
C++ is an enhanced version of the C language. C++ includes everything that is part of C and adds support for object-oriented programming (OOP). In addition, C++ also contains many improvements and features that make it a "better C", independent of object oriented programming. C++ is actually an extendible language since we can define new types in such a way that they act just like the predefined types which are part of the standard language.
C# (C sharp)
C# is a modern, object-oriented language introduced in Microsoft .NET development environment.C# is designed to bring rapid development to the C/C++ programmer, so that the people whi know those languages shoudl be able to easily adapt to C# programming.C# is designed for architecting a wide range of components-from high-level business objects to system-level applications.C# includes built-in support to turn any component into an XML Web service that can be invoked over the Internet-from any application running on any platform.This is what Microsoft proposes as a good Internet programming tool for applications which involve XML and Web Services. C# includes versioning support in the language.
Ada
Ada is an internationally standardized object-oriented language. It was originally designed in the early '80s and updated in the mid '90s.It was designed for programming large, long-lived systems, especially those with stringent reliability requirements. Ada was specifically intended to meet the needs of embedded and real-time applications, which must be reliable as well as efficient. Typical examples are aircraft avionics, command and control, and transportation systems. Ada can be used as a procedural programming language with built-in support for multitasking and hardware control and as an object-oriented programming language.Ada is a strongly typed language with a Pascal-like syntax. Ada offers structured control statements; procedures and functions; data type-definition facilities; pointers to dynamically allocated objects, declared objects, and subprograms; block structure; exception handling; and a set of standard libraries. Ada has a traditional run-time data model comprising static storage, stack space for local variables and formal parameters, and a heap for dynamically allocated objects. Ada does not have garbage collection, but does include several mechanisms by which the programmer can prevent memory leaks. Ada's secure underpinnings (strong typing, and so on) as well as specialized functionality, such as mechanisms to promote traceability between source and object code, make the language applicable to systems that must be certified against safety standards such as DO-178B. The Ada 95 standard contains features for interfacing with native (non-Ada) code and data: An Ada program can import subprograms or global data from other languages.
Basic
BASIC, which stands for Beginner's All-purpose Symbolic Instruction Code, is an easily-learned computer language that was developed in the 1960's. It is still important because of its adoption by the influential industry giant MicroSoft as the basis for their Visual Basic language and of the macro language in version 5 of their Excel spreadsheet (VBA, Visual Basic for Applications).QBasic is a popular variant of the Basic programming language designed by Microsoft. The QBasic interpreter used to come with every version of MS-DOS and Windows 3.1 opearting system. QBasic is not installed by default when installing Windows 95 / Windows 98, however is still on the CD for support with older programs. QBasic is not included with Windows 2000 (if you need to run QBasic in Windows 2000, you can copy it from a Microsoft Windows NT 4.0-based computer).
Assembler (X86)
Assembler is an ASCII presentation of the native microprocessoroptocodes (the codes with which it operates).High-level languages offer great advantages in general by hiding many mundane and repetitive details from programmers, allowing them to concentrate on their goals. However, sometimes programmers must use a lower-level language, such as when writing code that deals directly with hardware or that is extremely performance sensitive. Assembly language is the programming language closest to the hardware, which makes it a natural last resort in such situations.
Pascal
The programming language Pascal was originally designed by Professor Niklaus Wirth, and named after a French 17th mathematician and philosopher Blaise Pascal widely admired for the clear and direct nature of his ideas. Wirth set out two principal aims for the design of Pascal: that it should be systematic and coherent, so far as possible avoiding arbitrary restrictions, and that it should be suitable for efficient implementation on the currently available machines. The Pascal language was originally designed to be a a teaching language that highlights concepts common to all computer languages and standardizes the language in such a way that it makes programs easy to write. Pascal has strict programming rules, because it is thought that strict rules make it difficult for the programmer to write bad code!
Pascal has also been standardized. Closely-related but not identical standards were published in 1983 by ISO (originally a BSI standard) and ANSI. The standards were ISO 7185:1983 & ANSI/IEEE 770X3.97-1983, which were in effect identical in most respects, but did contain some differences. The former was revised in 1990 as ISO 7185:1990, and this version was adopted by ANSI in 1993.
Turbo Pascal is very well known and widely used Pascal compiler for DOS. Turbo Pascal has somewhat less strict rules than original Pascal and added some special additions to the language. Turbo Pascal made the Pascal language a good programming tool for making DOS programs. Turbo Pascal was easy to program and very quick to compile.Inprise has issued free versions of several Borland C and Pascal compilers.You can download Turbo Pascal 1.0, 3.02, and 5.5 and Turbo C 1.01 and 2.01 from the Borland Community Museum if you first register as Borland Community members.
The modern use of Pascal language is the Borland Delphi development environment for Windows.
General information
Turbo Pascal / Borland Pascal Information
Other Pascal compilers
Source code and libraries
Lisp
LISP is understood as the model of a functional programming language today. For many programmers Lisp really is different form what they have been used to. When you consider that the Lisp language has almost no syntax, and only a couple of dozen primitive language elements (called special forms), then Lisp starts to look like a very small language. Lisp has a long, rich history dating back more than forty years. It has survived all of the programming "revolutions" that have rendered lesser langauges obsolete. Despite its being taught as a curiosity, new generations of programmers continue to seek out Lisp as a tool to solve some of the most difficult problems in the world of computing. You will find Lisp in products that must reason about and control complex systems and processes, where the ability to reliably arrive at useful conclusions based upon complex relationships among multiple sources and kinds of data is more important than lightning-fast numerical calculations or spiffy graphics. Lisp gets used for big projects that have to be tackled by one or a few programmers, usually for tasks that are not well defined, or that require some experimentation to find the proper solution. As it turns out, artificial intelligence meets all of these criteria. Lisp is also used as an extension language because of its simple, consistent syntax and the ability for system designers to add new functions to Lisp without writing an entire new language. The Emacs editor and the AutoCAD drafting program are two of the best examples of this use of Lisp.
There are many variations of Lisp in use. The most standardized Lisp version is called "Common Lisp" that is defined by ANSI Standard X3.226: Programming Language Common Lisp standard. Elisp (emacs lisp) is the language used to extend emacs, the customizable text editor of choice.
Scheme is a statically scoped and properly tail-recursive dialect of the Lisp programming language invented by Guy Lewis Steele Jr. and Gerald Jay Sussman. It was designed to have an exceptionally clear and simple semantics and few different ways to form expressions. A wide variety of programming paradigms, including imperative, functional, and message passing styles, find convenient expression in Scheme. Scheme was one of the first programming languages to incorporate first class procedures as in the lambda calculus, thereby proving the usefulness of static scope rules and block structure in a dynamically typed language. Scheme was the first major dialect of Lisp to distinguish procedures from lambda expressions and symbols, to use a single lexical environment for all variables, and to evaluate the operator position of a procedure call in the same way as an operand position.
ML
ML (which stands for Meta-Language) is a family of advanced programming languages with [usually] functional control structures, strict semantics, a strict polymorphic type system, and parametrized modules. It includes Standard ML, Lazy ML, CAML, CAML Light, and various research languages. Implementations are available on many platforms, including PCs, mainframes, most models of workstation, multi-processors and supercomputers. ML has many thousands of users, is taught at many universities (and is the first programming language taught at some).
Structured Query Language (SQL)
SQL is a tool for organizing, managing, and retrieving data from a computer database. The SQL language is essentially a programming language for relational databases. SQL is independent of the underlying database structure and many vendors offer SQL implementations for their database systems. SQL is often cited as being the lingua franca of relational database management systems. Certainly no other database language has found such wide acceptance among such a broad range of products. SQL is also an ANSI standard language (ANSI SQL-92) for accessing databases. According to ANSI (the only legitimate arbiter here), it SQL stands for S-Q-L and nothing more. Structured Query Language (also known as SQL) allows users to access data in relational database management systems, such as Oracle, Sybase, Informix, Microsoft SQL Server, Access, and others, by allowing users to describe the data the user wishes to see. SQL also allows users to define the data in a database, and manipulate that data. SQL is not, however, a complete programming language. First, it lacks conditional tests (IF) and flow control (GOTO, DO, and FOR) statements. Some database vendors may offer extensions to the SQL language to accomplish these functions, but they are not part of the SQL92 standard. SQL can however be integrated into other programming languages. SQL allows users to access data in relational database management systems, such as Oracle, Sybase, Informix, Microsoft SQL Server, Access, and others, by allowing users to describe the data the user wishes to see. SQL also allows users to define the data in a database, and manipulate that data. A relational model is strongly liked to SQL. In the relational model, data is separated from application programs. Relational model deals exclusively with how data was seen from the user's point of view.In the relational model, a relation is represented as a table of information. It has one or more attributes, which correspond to the columns of the table, and zero or more instances of data with those attributes (called n-tuples or simply tuples), which correspond to the rows. Thanks to the World Wide Web, databases of all kinds have found themselves in the spotlight as the technology emerges as quite an effective means for storing and managing data.
- Interfacing the PC : Using Interrupts Rate this link
- Internals - world of low-level programming web site Rate this link
- PC Card programming examples - source code for a simple PC Card Client Driver and utility for MS-DOS Rate this link
- PC Games Programming Encyclopedia - PC hardware information: joysticks, graphics cards etc. also Rate this link
- X2 Support Group Game Development Archives : Rate this link
- HELP PC 2.1 - very large collection of PC hardware programming info in DOS executable hypertext format Rate this link
- Kiarchive video programming documents Rate this link
- Miscellaneous programming material at garbo.uwasa.fi - low level programmin info, DOS SVGA libraties, programming languages, PERL for DOS Rate this link
- Programmer's Reference to Genius Mouse - mouse programming Rate this link
- VGADOC 4.0 - SuperVGA card programming document collection and test program Rate this link
PC low level programming
- Brennan's DJGPP2+GAMES Rate this link
- Coming Soon Magazine - new game previews Rate this link
- Game Programmer - a web site for Game Programming oriented graphics programming techniques Rate this link
- Moonbase Game Programming Resources Rate this link
- PC demo programming info at ftp.engl.ufl.edu Rate this link
- PC programing information at x2ftp.oulu.fi Rate this link
- The PC Game Programmer's Encyclopedia 1.0 - DOS games programming information database, to download it to your computer go to Rate this link
- The Windows 95 Game Programmer's Encyclopedia (Win95GPE) Rate this link
Games programming
- Win32 API Tutorials, Tips, and FAQs - Win API programming is not an entry level task. This page provides links to documents and tutorials on Win32 API programming. Rate this link
- Multimedia Components in Windows Rate this link
- The Windows 95 Game Programmer's Encyclopedia (Win95GPE) Rate this link
- TWAIN Community Web site - Linking Applications and Images Rate this link
- Delphi Complex Math Unit Rate this link
- Delphi Page by Thomas Schimming - links and delphi components Rate this link
- DELPHI quick course - in Finnish Rate this link
- Delphi Super Page - lots of Delphi programming material Rate this link
- The Delphi Users' Web - components, tips & tricks, patches, updates, documents, links Rate this link
- Understanding and Using Visual Basic - This series of articles by Jared Hoylman will walk you through a few of the basic concepts, and then move on to the more advanced areas of communicating with your hardware, and having your hardware communicate back to the PC. Examples for RS-232 serial communication to microcontroller board. Rate this link
- A Tutorial on creating DLLs with VC++ - Visual basic is very fast and easy tool for developing applications with high degree of user friendliness , but it lacks some important functionalities like direct access to hardware, multythreading(Activex servers allows some type of multythreading !). The easy and effective solution for this problem is to write a DLL. But beginners experiance problems in understanding how to write a dll. .Here is a simple tutorial on writing DLLs with Visual C++. I assume that you know a little bit Visual Basic and C programming. Rate this link
- Microsoft Visual C++ Home Page Rate this link
- Visual Studio Magazine Rate this link
- Ashley Laurent, Inc. - Device Driver and Systems Software Development company with some useful info on their web site Rate this link
- Device Driver Development for MS Windows? and Windows? NT Rate this link
- TinyPort - A Universal Windows NT Port Driver, check the Rate this link
- Parallel Port Central - tools for accessing I/O ports directly from your own Windows programs, useful for Visual Basic and Delphi Programmers Rate this link
- WinRT - Hardware Control from Visual Basic? and Delphi? 2.0, commercial product Rate this link
- WDM USB Video Streaming Filter Driver - Whitepaper Rate this link
- comp.os.ms-windows.programmer.drivers Frequently Asked Questions (FAQ) Rate this link
- Device Driver Development for MS Windows? and Windows? NT - page is intended for device driver developers only Rate this link
- Microsoft Windows Driver Development -- printer driver details Rate this link
- Windows Driver Development Kit: Overview - The Microsoft? Windows? Driver Development Kit (DDK) is a consolidated driver development kit that provides a build environment, tools, driver samples, and documentation to support driver development for the Windows family of operating systems. Rate this link
Windows programming
General
Multimedia
Delphi
Delphi is a visual development tool for Windows developed by Borland.Delphi is based on Pascal programming language. Delphi is very similar to Microsoft Visual Basic and is designed to be compatible with the OCX family of controls that support VB. Delphi is that it creates completely stand-alone EXE files which you can run withtout any extra libraries.
Visual Basic
Visual Basic is a Microsoft tool for programming user interfaces and simple applications. Usually as much as 80% of a programmer's time was spent writing code to create the user interface to his applications (the visual interface). To eliminate this huge drain on a programmer's time, Microsoft has provided Visual Basic with the built-in capability to create the user interface using nothing more than a mouse! With Visual Basic you can combine visual creation of user interface using mouse with power of BASIC programming language.Visual Basic is not the nest tool for stand-alone applications.The downside is that distributing VB program requires the distribution of a huge number of supporting files for even the smallest of applications.
Borland C Windows programming
Visual C/C++
Visual C is Microsoft's combination of visual programming and C programming language. The visual part of Visual C is virtually identical with VB in terms of the ease of creating Windows/NT programs. The underlying difficulty of the C coding process in Windows system is what that keeps users away. It's in the details of coding that new users find themselves bogged down with questions that give the most difficulty.
Hardware controlling under Windows
Windows tries to hide the actual hardware away from the application programs. Normal applications which need to control hardware normally use high level Windows API for the controlling or call the hardware drivers. Sometimes there is need to control hardware directly, and there is where some tricks are needed.
Device drivers
Device drivers are the piece of the software between the actual hardware and the operating system / application program.
Winsock programming
Windows Sockets (WinSock) is the networking application programming interface (API).
- Linux Device Drivers, 2nd Edition - full book on-line Rate this link
- Linux Online - the home of Linux operating system Rate this link
Linux programming
Debugging
A debugger is a program that runs other programs, allowing the user to exercise control over these programs, and to examine variables whenproblems arise. The most popular debugger for UNIX systems is GDB, the GNU debugger.
- An Introduction to Socket Programming Rate this link
- Beej's Guide to Network Programming Using Internet Sockets Rate this link
- Client Server - lecture notes Rate this link
- Introduction to Socket Programming Rate this link
- Netlib CRC routines Rate this link
- Socket Programming in C - includes example programs for Linux and Solaris Rate this link
- UNIX Systems Programming - includes Rate this link
- Windows Sockets Programming - Windows Sockets is an open interface for network programming under Microsoft Windows. This HTML version of the Windows Socket 1.1 Specification. Rate this link
Networking
<[email protected]>
Back to ePanorama main page ??