Programming Books

6 Excellent Free Books to Learn BASIC

Last Updated on December 19, 2024

BASIC (Beginner’s All-purpose Symbolic Instruction Code) is a family of general-purpose, high-level programming languages whose design philosophy emphasizes ease of use. In 1964, John G. Kemeny and Thomas E. Kurtz designed the original BASIC language at Dartmouth College. They wanted to enable students in fields other than science and mathematics to use computers. At the time, nearly all use of computers required writing custom software, which was something only scientists and mathematicians tended to learn.

The advent of the personal computer was crucial to the success of BASIC. The language was designed for hobbyists, and as personal computers became more accessible to this audience, books of BASIC programs and BASIC games surged in popularity.

BASIC is generally not regarded as the easiest way to take the first steps in learning the art of programming. But it does not hinder beginners from learning how to program, or teach them bad habits. And it’s the highest low-level language. Even today, there remains value in learning BASIC.


1. A Beginner’s Guide to GAMBAS by John W. Rittinghouse, Jon Nicholson

A Beginner’s Guide to GAMBASA Beginner’s Guide to Gambas introduces the Linux-based programming language to developers of any skill level.

Gambas is the name of an object-oriented dialect of the BASIC programming language, as well as the integrated development environment that accompanies it. Designed to run on Linux and other Unix-like computer operating systems, its name is a recursive acronym for Gambas Almost Means Basic.

Intended for the Gambas novice, this book quickly introduces all of the major features of Gambas in a step-by-step manner with easy to follow sample programs and clearly written code.

Chapters include:

  • Introducing Gambas.
  • Gambas Language Concepts.
  • Keywords and Program Flow Control.
  • Introducing the Gambas ToolBox.
  • Controls for Gathering Input.
  • Menus, Modules, Dialogs, and Message Boxes.
  • Handling Strings and Converting Data-types.
  • Using Advanced Controls.
  • Working with Files.
  • Math Operations.
  • Object-Oriented Concepts.
  • Learning to Draw.
  • Error Management.
  • Mouse, Keyboard and Bit Operations.
  • Gambas and Databases.
  • Global Gambas.

The book is published under the terms and conditions of the OpenContent License (OPL), Version 1.0.

Read more


2. A Beginner’s Guide to FreeBasic by Richard D. Clark and Ebben Feagan

A Beginner’s Guide to FreeBasicFreeBASIC is a 32-bit BASIC compiler that outputs native code for Microsoft Windows, Linux and DOS via DJGPP.

Chapters include:

  • Numeric Data Types – coverage of the numeric data types that FreeBasic supports.
  • Converting Numeric Data Types – implicit and explicit data conversion.
  • Introduction to the C Runtime Library – covers the #include directive, the declaration statement, runtime conversion functions, and more.
  • Arithmetic Operators – brief coverage of the arithmetic operators in FreeBasic.
  • Bitwise Operators – NOT, AND, OR, XOR, EQV and IMP operators, as well as information on the shortcut bitwise operators, the SHL and SHR operators, and ending with bitwise macros.
  • Mathematical functions- coverage of the supported mathematical functions including trigonometric functions, logarithms, and the C runtime library math constants and functions.
  • Pointer Data Type covers pointers and memory, typed and untyped pointers, pointer operators, memory functions, and more.
  • String Data Types – examines dynamic strings, fixed length strings, zstrings, wstrings, string functions, and more.
  • Composite Data Types – types, type initialization,and unions are given coverage.
  • Symbolic Constants – covers #define as a constant, the const keyword, const verses #define.
  • Arrays – the chapter starts by covering one, two, and multi-dimensional arrays before going on to cover dynamic arrays, array functions, arrays of types, arrays in types, array initialization and more.
  • Date and Time Functions – both intrinsic and extended data and time functions are covered.
  • The Format Function – looks at string format characters, numeric format characters, date format characters, and time format characters.
  • Console Programming – the console screen, the console functions, console colors, positioning text, printing text and more.
  • Control Structures – includes the IF statement block, the IIF function, and the Select Case Statement Block.

The book is published under the GNU Free Documentation License, Version 1.2 or later.

Read more


3. So You Want to Learn to Program? – Programming With BASIC-256 by James M. Reneau

So You Want to Learn to Program? – Programming With BASIC-256BASIC-256 is an easy to use version of BASIC designed to teach anybody (especially middle and high-school students) the basics of computer programming.

It uses traditional control structures like gosub, for/next, and goto, which helps kids easily see how program flow-control works. It has a built-in graphics mode which lets them draw pictures on screen in minutes, and a set of detailed, easy-to-follow tutorials that introduce programming concepts through fun exercises.

Chapters include:

  • Meeting BASIC-256 – Say Hello.
  • Drawing Basic Shapes.
  • Sound and Music.
  • Thinking Like a Programmer.
  • Your Program Asks for Advice.
  • Decisions, Decisions, Decisions.
  • Looping and Counting – Do it Again and Again.
  • Custom Graphics – Creating Your Own Shapes.
  • Subroutines – Reusing Code.
  • Mouse Control – Moving Things Around.
  • Keyboard Control – Using the Keyboard to Do Things.
  • Images, WAVs, and Sprites.
  • Arrays – Collections of Information.
  • Mathematics – More Fun With Numbers.
  • Working with Strings.
  • Files – Storing Information For Later.
  • Stacks, Queues, Lists, and Sorting.
  • Runtime Error Trapping.
  • Database Programming.
  • Connecting with a Network.

This book is released under the Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License.

Read more


Next page: Page 2 – Learning to Program with Visual Basic and .NET Gadgeteer and more books

Pages in this article:
Page 1 – A Beginner’s Guide to GAMBAS and more books
Page 2 – Learning to Program with Visual Basic and .NET Gadgeteer and more books


All books in this series:

Free Programming Books
AdaALGOL-like programming language, extended from Pascal and other languages
AgdaDependently typed functional language based on intuitionistic Type Theory
ArduinoInexpensive, flexible, open source microcontroller platform
AssemblyAs close to writing machine code without writing in pure hexadecimal
AwkVersatile language designed for pattern scanning and processing language
BashShell and command language; popular both as a shell and a scripting language
BASICBeginner’s All-purpose Symbolic Instruction Code
CGeneral-purpose, procedural, portable, high-level language
C++General-purpose, portable, free-form, multi-paradigm language
C#Combines the power and flexibility of C++ with the simplicity of Visual Basic
ClojureDialect of the Lisp programming language
ClojureScriptCompiler for Clojure that targets JavaScript
COBOLCommon Business-Oriented Language
CoffeeScriptTranscompiles into JavaScript inspired by Ruby, Python and Haskell
CoqDependently typed language similar to Agda, Idris, F* and others
CrystalGeneral-purpose, concurrent, multi-paradigm, object-oriented language
CSSCSS (Cascading Style Sheets) specifies a web page’s appearance
DGeneral-purpose systems programming language with a C-like syntax
DartClient-optimized language for fast apps on multiple platforms
DylanMulti-paradigm language supporting functional and object-oriented coding
ECMAScriptBest known as the language embedded in web browsers
EiffelObject-oriented language designed by Bertrand Meyer
ElixirRelatively new functional language running on the Erlang virtual machine
ErlangGeneral-purpose, concurrent, declarative, functional language
F#Uses functional, imperative, and object-oriented programming methods
FactorDynamic stack-based programming language
ForthImperative stack-based programming language
FortranThe first high-level language, using the first compiler
GoCompiled, statically typed programming language
GroovyPowerful, optionally typed and dynamic language
HaskellStandardized, general-purpose, polymorphically, statically typed language
HTMLHyperText Markup Language
IconWide variety of features for processing and presenting symbolic data
JArray programming language based primarily on APL
JavaGeneral-purpose, concurrent, class-based, object-oriented, high-level language
JavaScriptInterpreted, prototype-based, scripting language
JuliaHigh-level, high-performance language for technical computing
KotlinMore modern version of Java
LabVIEWDesigned to enable domain experts to build power systems quickly
LaTeXProfessional document preparation system and document markup language
LispUnique features - excellent to study programming constructs
LogoDialect of Lisp that features interactivity, modularity, extensibility
LuaDesigned as an embeddable scripting language
MarkdownPlain text formatting syntax designed to be easy-to-read and easy-to-write
Objective-CObject-oriented language that adds Smalltalk-style messaging to C
OCamlThe main implementation of the Caml language
PascalImperative and procedural language designed in the late 1960s
PerlHigh-level, general-purpose, interpreted, scripting, dynamic language
PHPPHP has been at the helm of the web for many years
PostScriptInterpreted, stack-based and Turing complete language
PrologA general purpose, declarative, logic programming language
PureScriptSmall strongly, statically typed language compiling to JavaScript
PythonGeneral-purpose, structured, powerful language
QMLHierarchical declarative language for user interface layout - JSON-like syntax
RDe facto standard among statisticians and data analysts
RacketGeneral-purpose, object-oriented, multi-paradigm, functional language
RakuMember of the Perl family of programming languages
RubyGeneral purpose, scripting, structured, flexible, fully object-oriented language
RustIdeal for systems, embedded, and other performance critical code
ScalaModern, object-functional, multi-paradigm, Java-based language
SchemeA general-purpose, functional language descended from Lisp and Algol
ScratchVisual programming language designed for 8-16 year-old children
SQLAccess and manipulate data held in a relational database management system
Standard MLGeneral-purpose functional language characterized as "Lisp with types"
SwiftPowerful and intuitive general-purpose programming language
TclDynamic language based on concepts of Lisp, C, and Unix shells
TeXMarkup and programming language - create professional quality typeset text
TypeScriptStrict syntactical superset of JavaScript adding optional static typing
ValaObject-oriented language, syntactically similar to C#
VHDLHardware description language used in electronic design automation
VimLPowerful scripting language of the Vim editor
XMLRules for defining semantic tags describing structure ad meaning
Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Please read our Comment FAQ before posting a comment.

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments