/  

Free Programming Languages Books

Advertisement

Free Online Computer Language Books

This section contains free e-books and guides on Programming Languages, some of the resources in this section can be viewed online and some of them can be downloaded.

Recently Added Books

Introduction to Ada by Raphael Amiard

This PDF covers the following topics related to Ada Programming : Introduction, Imperative language, Subprograms, Modular programming, Strongly typed language, Arrays, Access types (pointers), More about records, Fixed-point types, Privacy, Generics, Exceptions, Tasking, Design by contracts, Interfacing with C, Object-oriented programming, Standard library.

s275 Pages

Ada95 Lovelace tutorial

This page covers the following topics related to Ada95 Lovelace : Information on how to program Java programs in Ada, The home page for Small, an Ada 95 demo program, The unbounded Generic_Stack Example, The Lovelace section on efficiency, The Lovelace section on safety and Ada, The Lovelace section on inspections, How to receive automatic notification of Lovelace updates, Information about the author, David A. Wheeler, General Ada-related information, The Lovelace section on Ada on-line resources, The Lovelace bibliography, A list of Ada tutorials, The Ada Language Reference Manual, Information about Lovelace itself, etc.

sNA Pages

The Art of Assembly Language by Unicamp

This PDF book covers the following topics related to Assembly Language : Data Representation, Boolean Algebra, System Organization, Memory Layout and Access, Variables and Data Structures, The 80x86 Instruction Set, The UCR Standard Library, MASM: Directives & Pseudo-Opcodes, Arithmetic and Logical Operations, Control Structures, Procedures and Functions, Procedures: Advanced Topics, MS-DOS, PC-BIOS, and File I/O, Floating Point Arithmetic, Strings and Character Sets, Pattern Matching, Interrupts, Traps, and Exceptions, Resident Programs, Processes, Coroutines, and Concurrency, The PC Keyboard, The PC Parallel Ports, The PC Serial Ports, The PC Video Display, The PC Game Adapter, Optimizing Your Program.

s1426 Pages

MIPS Assembly Language Programming by Robert Britton

This PDF book covers the following topics related to MIPS Assembly Language Programming : The MIPS Architecture, Pseudocode, Number Systems, PCSpim The MIPS Simulator, Algorithm Development, Reentrant Functions, Exception Processing, A Pipelined Implementation, Embedded Processors.

s109 Pages

So You Want to Learn to Program

This PDF covers the following topics related to Basic programming language : Meeting BASIC-256 – Say Hello, Drawing Basic Shapes, Sound and Music, Thinking Like a Programmer, Your Program Asks for Advice, 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.

s380 Pages

BASIC Programming by Wiki

This page covers the following topics related to Basic programming language : Beginning BASIC, Your First Program, Beginning BASIC/PRINT, CLS, and END, Beginning BASIC/Variables and Data Types, Beginning BASIC/User Input, Beginning BASIC/Documentation, Beginning BASIC/Control Structures/IF...THEN...ELSEIF...ELSE, Beginning BASIC/Control Structures/WHILE...WEND, Beginning BASIC/Control Structures/FOR...NEXT, Beginning BASIC/Control Structures/DO...LOOP, Beginning BASIC/Control Structures/GOTO, Random Number Generation, Subroutines and Functions, External Libraries.

sNA Pages

Beej's Guide to C Programming

This page covers the following topics related to C Programming :Hello, World!, Variables and Statements, Functions, Pointers—Cower In Fear!, Arrays, Strings, Structs, File Input/Output, Pointers II: Arithmetic, Manual Memory Allocation, Scope, Way More Types!, Conversions, Qualifiers and Specifiers, Multifile Projects, The Outside Environment, The C Preprocessor, structs, Characters and Strings, Enumerated Types: enum, Pointers, Bitwise Operations, Variadic Functions, Locale and Internationalization, Unicode, Wide Characters, and All That, Exiting a Program, Signal Handling, Variable-Length Arrays (VLAs), goto, Compound Literals and Generic Selections, Arrays, Long Jumps with setjmp, longjmp, Incomplete Types, Complex Numbers, Fixed Width Integer Types, Date and Time Functionality, Multithreading, Atomics, Function Specifiers, Alignment, Specifiers/Operators.

sNA Pages

Build Your Own Lisp by Daniel Holden

This page covers the following topics related to C Programming : Introduction, Installation, Basics, An Interactive Prompt, Languages, Parsing, Evaluation, Error Handling, S-Expressions, Q-Expressions, Variables, Functions, Conditionals, Strings, Standard Library, Bonus Projects.

sNA Pages

Introduction to Fortran by David Apsley

This PDF covers the following topics related to Fortran : Fortran Background, Creating and Compiling Fortran Code, A Simple Program, Basic Elements of Fortran, Repetition: do and do while, Decision-Making: if and select, Arrays, Text Handling, Functions and Subroutines, Input and Output, Modules.

s46 Pages

Fortran Programming by ucl

This PDF covers the following topics related to Fortran : FORTRAN Layout, Basic Data Types, Arithmetic Expressions, Intrinsic Functions, Basic Input and Output, DO loops, General Form for Method 2, IF and IF blocks, Parameter Declaration, Modifying Index Ranges, etc.

s19 Pages

Introduction To Lisp by Dana Nau

his note covers the following topics: LISP’s influence on other languages, LISP applications, Common Lisp, Launching Allegro Common Lisp, Lists, Lisp Functions, Compiling, Editing Lisp files, Macros, Lisp Operators, Loops, Debugging, Allegro debugging commands, Functions of sequences.

s66 Pages

Programming Languages Lisp

This note covers the following topics: Lisp Implementations, Lisp history and dialects, Lists as programs and data, Cons Cells, Plists, Basic data types, Numeric Types, Evaluating lists, Special Operators, Macros, Variables, Control Flow, Defining Functions, REPL Emacs.

s70 Pages

The OCaml system by Xavier Leroy

This PDF covers the following topics related to OCaml : An introduction to OCaml, The OCaml language, The OCaml tools, The OCaml library, Indexes.

s931 Pages

Perceus for Ocaml

This PDF covers the following topics related to OCaml : Introduction, A Tour of OCaml, The OCaml Compiler, Perceus: Garbage Free Reference Counting with Reuse, Implementation, Evaluation, Limitations and Future Work.

s77 Pages

Learning to program with Perl

This PDF covers the following topics related to Perl : Getting Started with Perl, Arrays, Hashes and Loops, File Handling, Regular Expressions, Subroutines, References and Complex Data Structures, Perl Modules, Interacting with external programs.

s76 Pages

Perl A crash course

This PDF covers the following topics related to Perl : Introduction and philosophy, Basics, Variables and data types, Important concepts, Control structures, I/O, Interacting with UNIX.

s28 Pages

Principles of Programming Languages by David Liu

This PDF covers the following topics related to Programming Languages Theory : Prelude: The Study of Programming Languages, Functional Programming: Theory and Practice, Macros, Objects, and Backtracking, Type systems, In Which We Say Goodbye.

s152 Pages

Type Theory and Functional Programming

This PDF covers the following topics related to Programming Languages Theory : Introduction to Logic, Functional Programming and &

s378 Pages

Prolog Step by Step by Graeme Ritchie

This PDF covers the following topics related to Prolog : Introduction, How Do You Learn A Programming Language, Defining your own procedures, Variables, Tests, Returning results by instantiation, “Facts”, Simple tracing, Backtracking in more detail, Summary so far, Circularity and loops.

s28 Pages

Quick Prolog by Dave Robertson

This PDF covers the following topics related to Prolog : Getting Started, Standard Programming Style, Prolog Terms, Unification, Expressing disjunctive subgoals, Evaluating numerical expressions, Negation, Cuts, Using Cuts to Specify Defaults, Just One More Thing About Cuts, Some Common Techniques, Efficiency Considerations, Definite Clause Grammars.

s35 Pages

Python for Everybody by Dr. Charles R. Severance

This PDF Python for Everybody by Dr. Charles R. Severance covers the following topics related to Python : Why should you learn to write programs?, Variables, expressions, and statements, Conditional execution, Functions, Iteration, Strings, Files, Lists, Dictionaries, Tuples, Regular expressions, Networked programs, Using Web Services, Object-oriented programming, Using Databases and SQL, Visualizing data.

s249 Pages

How To Code in Python 3

Extremely versatile and popular among developers, Python is a good general-purpose language that can be used in a variety of applications. If you use the book in the order it is laid out, you’ll begin your exploration in Python by understanding the key differences between Python 3 and the previous versions of the language. The contents include :Python 2 vs Python 3: Practical Considerations, How To Install Python 3 and Set Up a Local Programming, Environment on Ubuntu 16.04, How To Install Python 3 and Set Up a Local Programming, Environment on macOS, How To Install Python 3 and Set Up a Local Programming, Environment on Windows 10, How To Install Python 3 and Set Up a Local Programming, Environment on CentOS 7, How To Install Python 3 and Set Up a Programming Environment on an Ubuntu 16.04 Server, How To Write Your First Python 3 Program, How To Work with the Python Interactive Console, How To Write Comments, Understanding Data Types, An Introduction to Working with Strings, How To Format Text, String Functions, How To Index and Slice Strings, How To Convert Data Types, Variables, String Formatters, How To Do Math with Operators, Built-in Python 3,Functions for Working with Numbers, Understanding Boolean Logic, Understanding Lists, List Methods, Understanding List Comprehensions, Understanding Tuples, Understanding Dictionaries, How To Import Modules, How To Write Modules, How To Write Conditional Statements, How To Construct While Loops, How To Construct For Loops, How To Use Break, Continue, and Pass Statements when Working with Loops, Construct Classes and Define Objects, Understanding Class and Instance Variables, Understanding Inheritance, How To Apply Polymorphism to Classes, How To Use the Python Debugger, How To Debug Python with an Interactive Console, How To Use Logging, Port Python 2 Code to Python 3.

s459 Pages

Essential Ruby

This page covers the following topics related to Ruby : Casting type conversions, Arrays, Classes, Hashes, Blocks and procs and lambdas, Inheritance, Control flow, Strings, Symbols, Exceptions, Thread, Methods, Method missing, Numbers, Iteration, Regular Expressions and regex based operations, Comparable, Gem usage, Design patterns and idioms, Loading source files, Range, Comments, Special constants in Ruby, Modules, Ruby version manager, Gem creation / management, Constants, Variable scope and visibility, rbenv, Environment variables, Singletons, File I/O, Time, Queue, Destructuring, IRB, Enumerators, C extensions, Struct, Metaprogramming, Dynamic evaluation, instance eval, Message passing, Keyword arguments, DateTime, Truthiness, JSON with Ruby, Implicit receives, understanding, Monkey patching, Introspection, Monkey patching, Refinements, Monkey patching in Ruby, Catching exceptions with begin rescue, Command line apps, Debugging, Pure RSpec JSON API testing, Recursion, Installation, ERB, Introspection, Random numbers, Getting started with Hanami, OptionParser, Splat operator, Multidimensional Arrays, Enumerable, Ruby access modifiers, Operating system or shell commands, Contributors.

sNA Pages

The Bastards Book of Ruby

This page covers the following topics related to Ruby : The Fundamentals, Installation, Tweet Fetching, Style, Conventions, and Debugging, Numbers, Strings, Variables, Methods, RubyGems, If and Else, Loops, Collections, Enumerables, File input/output, Reviewing Tweet Fetching, Supplementals, Design and Theory, The Projects.

sNA Pages

Scheme and Functional Programming

This PDF covers the following topics related to Scheme : The HOP Development Kit, A Stepper for Scheme Macros, An Incremental Approach to Compiler Construction, SHard: a Scheme to Hardware Compiler, Automatic construction of parse trees for lexemes, Rapid Case Dispatch in Scheme, Experiences with Scheme in an Electro-Optics Laboratory, Gradual Typing for Functional Languages, Sage: Hybrid Checking for Flexible Specifications, From Variadic Functions to Variadic Relations: A miniKanren Perspective, A Self-Hosting Evaluator using HOAS, Concurrency Oriented Programming in Termite Scheme, Interaction-Safe State for the Web, Scheme for Client-Side Scripting in Mobile Web Browsing, or AJAX-Like Behavior Without Javascript, Component Deployment with PLaneT: You Want it Where.

s165 Pages

Report on the Algorithmic Language Scheme

The report gives a defining description of the programming language Scheme. 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. This PDF covers the following topics related to Scheme : Introduction, Overview of Scheme, Requirement levels, Numbers, Lexical syntax and datum syntax, Semantic concepts, Entry format, Libraries, Top-level programs, Primitive syntax, Expansion process, Base library.

s90 Pages

An Introduction to Programming in Go

This page covers the following topics related to Go Language : Getting Started,Your First Program, Types, Variables, Control Structures, Arrays, Slices and Maps, Functions, Pointers, Structs and Interfaces, Concurrency, Packages, Testing, The Core Packages, Next Steps.

sNA Pages

Essentials of Go Programming

This page covers the following topics related to Go Language : Introduction, Quick Start, Control Structures, Data Structures, Functions, Objects, Concurrency, Packages, Input/Output, Testing, Tooling.

sNA Pages

Real World Haskell

This page covers the following topics related to Haskell : Why functional programming, Why Haskell, Getting started, Types and functions, Defining types, streamlining functions, Functional programming, Writing a library: working with JSON data, Using typeclasses, Input and output, Efficient file processing, regular expressions, and file name matching, I/O case study: a library for searching the filesystem, Code case study: parsing a binary data format, Testing and quality assurance, Barcode recognition, Data structures, Monads, Programming with monads, The Parsec parsing library, The foreign function interface, Monad transformers, Error handling, Systems programming, Working with databases, Web client programming, GUI programming, Basic concurrent and parallel programming, Profiling and tuning for performance, Advanced library design: building a Bloom filter, Network programming, Software transactional memory, Installing GHC and Haskell libraries, Characters, strings, and escaping rules, Web site and comment system usage and policies.

sNA Pages

Yesod Web Framework

This page covers the following topics related to Haskell : Basics, Introduction, Haskell, Basics, Shakespearean Templates, Widgets, Yesod, Typeclass, Routing and Handlers, Forms, Sessions, Persistent, Deploying your Webapp, Advanced, RESTful Content, Yesod’s Monads, Authentication and Authorization, Scaffolding and the Site Template, Internationalizatio, Creating a Subsite, Understanding a Request, SQL Joins, Yesod for Haskellers, Examples, Initializing data in the foundation datatype, Blog: i18n, authentication, authorization, and database, Wiki: markdown, chat subsite, event source, JSON Web Service, Case Study: Sphinx-based Search, Visitor counter, Single process pub-sub, Environment variables for configuration, Route attributes, Appendices, monad-control, Web Application Interface, Settings Types, http-conduit, xml-conduit.

sNA Pages

Essential Kotlin

This page covers the following topics related to Kotlin : Getting started with Kotlin, Extension Methods, Java, Stream Equivalents, Interfaces, Generics, Functions, Null safety, Idioms, Enum, Reflection, Configuring Kotlin build, Conditional Statements, Loops, Logging, Annotations, Class Inheritance, Arrays, Vararg Parameters In Functions, Basic Lambdas, Type-Safe Builders.

sNA Pages

Elements of Kotlin

This page covers the following topics related to Kotlin : Hello World, Basic Types, Variables, Functions, Collections, Branches and Loops, Classes, Properties, Visibility, Scope, Abstract Classes and Interfaces, Object, Nested Objects and Classes, Enums and Sealed Classes, Generics, Exceptions, Nullability, Scope Functions, Functional Programming, Sequence, Extension Functions, Delegates, Coroutine Basics, Flows and Channels, Advanced Syntax.

sNA Pages

An interactive introduction to MATLAB

MATLAB is produced by MathWorks, and is one of a number of commercially available software packages for numerical computing and programming. MATLAB provides an interactive environment for algorithm development, data visualisation, data analysis, and numerical computation. This PDF covers the following topics related to MATLAB :  basic concepts, plotting, scripts and functions, decision making, loops, the switch statement, vectorisation.

s131 Pages

A Beginners Guide to MATLAB

This page covers the following topics related to Matlab : Vectors and matrices, Built-in functions , Plotting, Programming in MATLAB, M-files: Scripts and functions, Loops, If statement, Polynomials in MATLAB, Numerical Methods .

s42 Pages