• Welcome!
Total books

Computer & Internet

AI and Robotics

Communicaion and Telecommunication
Graphics & Design

Information Technology
Mobile Computing
Network Security

Operating System
Software Engineering

Web Design & Development
Web Development
Sort by
Programming with Robots
Programming with Robots Sented by Sarah Gerdes

Why learn the basics of programming using robots instead of more traditional method? For the last 50 years mainstream computer science has centered on the manipulation of abstract digital information. Programming for devices that interact with the physical world has always been an area of specialization for individuals that have already run the gauntlet of abstract information-based computer science.

Java, Java, Java Object-Oriented Problem Solving

Welcome to Java, Java, Java, a book that introduces you to object-oriented programming using the Java language. When considering the purpose of this text, three important questions might come to mind: Why study programming? Why study Java? What is object-oriented programming?

Communicating Sequential Processes
Communicating Sequential Processes Sented by Steve Bark

This is a book for the aspiring programmer, the programmer who aspires to greater understanding and skill in the practice of an intellectually demanding profession. It is designed to appeal first to a natural sense of curiosity, which is aroused by a new approach to a familiar topic. The approach is illustrated by a host of examples drawn from a wide range of applications, from vending machines through fairy stories and games to computer operating systems. The treatment is based on a mathematical theory, which is described by a systematic collection of algebraic laws.

Python for Informatics
Python for Informatics Sented by Steve Bark

It is quite natural for academics who are continuously told to "publish or perish" to want to always create something from scratch that is their own fresh creation. This book is an experiment in not starting from scratch, but instead "re-mixing" the book titled Think Python: How to Think Like a Computer Scientist written by Allen B. Downey, Jeff Elkner and others.

Computer Science Design Patterns

In software engineering, a design pattern is a general reusable solution to a commonly occurring problem within a given context in software design. A design pattern is not a finished design that can be transformed directly into source or machine code.

Learning to Program Using Python

I originally wanted to learn Python because I wanted to make a computer game. I had taken several programming classes in college (C,C++, and Java) but nothing really serious. I’m not a Computer Science major and I don’t program on a professional level.

Development and Implementation of Bayesian Computer Model Emulators

Our interest is the risk assessment of rare natural hazards, such as large volcanic pyroclastic flows. Since catastrophic consequences of volcanic flows are rare events, our analysis benefits from the use of a computer model to provide information about these events under natural conditions that may not have been observed in reality.

Metamath: A Computer Language for Pure Mathematics

Metamath is a computer language and an associated computer program for archiving, verifying, and studying mathematical proofs at a very detailed level. The Metamath language incorporates no mathematics per se but treats all mathematical statements as mere sequences of symbols.

A Programming Model and Language for Concurrent and Distributed Object-Oriented Systems

The wide availability of multi-core processors and the ubiquitous presence of the Internet lead to new challenges in software design and implementation. Software has to be written in a parallelizable way to profit from multiple cores. Interaction with distributed Internet services requires coping with message delays and network failures.

Monads need not be endofunctors

We introduce a generalisation of monads, called relative monads, allowing for underlying functors between difeerent categories.

Application Patterns in Functional Languages

Most contemporary pure functional languages provide support for patterns in function definitions. Examples of common patterns are the identifier, constant, tuple, list algebraic, n+k and as-pattern.

Practical shortcut fusion for coinductive sequence types

In functional programming it is common practice to build modular programs by composing functions where the intermediate values are data structures such as lists or arrays. A desirable optimisation for programs written in this style is to fuse the composed functions and thereby eliminate the intermediate data structures and their associated runtime costs.

The Promise and Peril of Big Data

According to a recent report, the amount of digital content on the internet is now close to five hundred billion gigabytes.

The FUNARG Problem Explained

In computer science, the funarg problem refers to the difficulty in implementing first-class functions (functions as first-class objects) in programming language implementations so as to use stack-based memory allocation of the functions.

The Evolution of Lisp
The Evolution of Lisp Sented by Sarah Gerdes

Lisp is the world's greatest programming language—or so its proponents think. The structure of Lisp makes it easy to extend the language or even to implement entirely new dialects without starting from scratch.

Ada for the C++ or Java Developer

Nowadays it seems like talking about programming languages is a bit passé. The technical wars of the past decade have subsided and today we see a variety of high-level and well-established languages offering functionality that can meet the needs of any programmer.

C / C++ programming language notes

Today, if one wants to write as fast program as possible; or as compact as possible for embedded systems or low-cost microcontrollers, the choice is very limited: C, C++ or assembly language. And as it seems in the near future, there are no alternative to these old but popular programming languages.

No Code: Null Programs
No Code: Null Programs Sented by Sarah Gerdes

To continue the productive discussion of uninscribed artworks in Craig Dworkin’s No Medium,this report discusses, in detail, those computer programs that have no code, and are thus empty or null. Several specific examples that have been offered in different contexts (the demoscene, obfuscated coding, a programming challenge, etc. ) are analyzed. The concept of a null program is discussed with reference to null strings and files.

Structural Separation Logic

This thesis presents structural separation logic, a novel program reasoning approach for software that manipulates both standard heaps and structured data such as lists and trees. Structural separation logic builds upon existing work in both separation logic and context logic. It considers data abstractly, much as it is exposed by library interfaces, ignoring implementation details.

Coding Freedom: The ethics and aesthetics of Hacking

Who are computer hackers? What is free software? And what does the emergence of a community dedicated to the production of free and open source software--and to hacking as a technical, aesthetic, and moral project--reveal about the fraught contemporary politics of intellectual law? Coding Freedom, an ethnographic account of free software development, examines how these hackers are at the forefront of fomenting a vibrant political culture of civil liberties online.

Sort by