Real World OCaml


Book Description

This fast-moving tutorial introduces you to OCaml, an industrial-strength programming language designed for expressiveness, safety, and speed. Through the book’s many examples, you’ll quickly learn how OCaml stands out as a tool for writing fast, succinct, and readable systems code. Real World OCaml takes you through the concepts of the language at a brisk pace, and then helps you explore the tools and techniques that make OCaml an effective and practical tool. In the book’s third section, you’ll delve deep into the details of the compiler toolchain and OCaml’s simple and efficient runtime system. Learn the foundations of the language, such as higher-order functions, algebraic data types, and modules Explore advanced features such as functors, first-class modules, and objects Leverage Core, a comprehensive general-purpose standard library for OCaml Design effective and reusable libraries, making the most of OCaml’s approach to abstraction and modularity Tackle practical programming problems from command-line parsing to asynchronous network programming Examine profiling and interactive debugging techniques with tools such as GNU gdb




Module Theory


Book Description

This book presents topics in module theory and ring theory: some, such as Goldie dimension and semiperfect rings are now considered classical and others more specialized, such as dual Goldie dimension, semilocal endomorphism rings, serial rings and modules.







VBA Developer's Handbook


Book Description

WRITE BULLETPROOF VBA CODE FOR ANY SITUATION This book is the essential resource for developers working withany of the more than 300 products that employ the Visual Basic forApplications programming language. Written by recognized VBAexperts, it provides detailed coverage of a wide range of specificVBA programming challenges. Its careful, step-by-step instructionsand thousands of lines of code offer answers, while teaching you todevise new and creative solutions. The instruction applies equallyto all VBA environments, whether you are building standaloneapplications or customizing commercial products using theirbuilt-in VBA programmability. Coverage Includes Manipulating text, numbers, and dates Using automation to control other applications Creating objects using VBA class modules Using standard search and sort algorithms from within VBA Creating standard dynamic data structures, including linkedlists, binary trees, stacks, and queues Working with Windows system information, including memorystatus, screen info, mouse, keyboard, and power status Working with Windows Registry data Retrieving and setting Windows networking information Working with the Windows file system, iterating throughfolders, creating and deleting files Adding sound and movies to VBA apps using Windows multimediaextensions Tapping the system capabilities provided by the WindowsScripting Runtime library Writing add-ins for the Visual Basic environment Note: CD-ROM/DVD and other supplementary materials arenot included as part of eBook file.




Linux Device Drivers


Book Description

This practical guide is for anyone who wants to support computer peripherals under the Linux operating system or who wants to develop new hardware and run it under Linux. It shows step-by-step how to write a driver for character devices, m block devices, and network interfaces, illustrated with examples you can compile and run.




Ruby Cookbook


Book Description

Why spend time on coding problems that others have already solved when you could be making real progress on your Ruby project? This updated cookbook provides more than 350 recipes for solving common problems, on topics ranging from basic data structures, classes, and objects, to web development, distributed programming, and multithreading. Revised for Ruby 2.1, each recipe includes a discussion on why and how the solution works. You’ll find recipes suitable for all skill levels, from Ruby newbies to experts who need an occasional reference. With Ruby Cookbook, you’ll not only save time, but keep your brain percolating with new ideas as well. Recipes cover: Data structures including strings, numbers, date and time, arrays, hashes, files and directories Using Ruby’s code blocks, also known as closures OOP features such as classes, methods, objects, and modules XML and HTML, databases and persistence, and graphics and other formats Web development with Rails and Sinatra Internet services, web services, and distributed programming Software testing, debugging, packaging, and distributing Multitasking, multithreading, and extending Ruby with other languages




The Java Module System


Book Description

Summary Java's much-awaited "Project Jigsaw" is finally here! Java 11 includes a built-in modularity framework, and The Java Module System is your guide to discovering it. In this new book, you'll learn how the module system improves reliability and maintainability, and how it can be used to reduce tight coupling of system components. Foreword by Kevlin Henney. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. You'll find registration instructions inside the print book. About the Technology Packaging code into neat, well-defined units makes it easier to deliver safe and reliable applications. The Java Platform Module System is a language standard for creating these units. With modules, you can closely control how JARs interact and easily identify any missing dependencies at startup. This shift in design is so fundamental that starting with Java 9, all core Java APIs are distributed as modules, and libraries, frameworks, and applications will benefit from doing the same. About the Book The Java Module System is your in-depth guide to creating and using Java modules. With detailed examples and easy-to-understand diagrams, you'll learn the anatomy of a modular Java application. Along the way, you'll master best practices for designing with modules, debugging your modular app, and deploying to production. What's inside The anatomy of a modular Java app Building modules from source to JAR Migrating to modular Java Decoupling dependencies and refining APIs Handling reflection and versioning Customizing runtime images Updated for Java 11 About the Reader Perfect for developers with some Java experience. About the Author Nicolai Parlog is a developer, author, speaker, and trainer. His home is codefx.org. Table of Contents PART 1 - Hello, modules First piece of the puzzle Anatomy of a modular application Defining modules and their properties Building modules from source to JAR Running and debugging modular applications PART 2 - Adapting real-world projects Compatibility challenges when moving to Java 9 or later Recurring challenges when running on Java 9 or later Incremental modularization of existing projects Migration and modularization strategies PART 3 - Advanced module system features Using services to decouple modules Refining dependencies and APIs Reflection in a modular world Module versions: What's possible and what's not Customizing runtime images with jlink Putting the pieces together




A Course in Homological Algebra


Book Description

In this chapter we are largely influenced in our choice of material by the demands of the rest of the book. However, we take the view that this is an opportunity for the student to grasp basic categorical notions which permeate so much of mathematics today, including, of course, algebraic topology, so that we do not allow ourselves to be rigidly restricted by our immediate objectives. A reader totally unfamiliar with category theory may find it easiest to restrict his first reading of Chapter II to Sections 1 to 6; large parts of the book are understandable with the material presented in these sections. Another reader, who had already met many examples of categorical formulations and concepts might, in fact, prefer to look at Chapter II before reading Chapter I. Of course the reader thoroughly familiar with category theory could, in principal, omit Chapter II, except perhaps to familiarize himself with the notations employed. In Chapter III we begin the proper study of homological algebra by looking in particular at the group ExtA(A, B), where A and Bare A-modules. It is shown how this group can be calculated by means of a projective presentation of A, or an injective presentation of B; and how it may also be identified with the group of equivalence classes of extensions of the quotient module A by the submodule B.




Jython Essentials


Book Description

Jython is an implementation of the Python programming language written in 100% pure Java, so it runs under any compliant Java Virtual Machine. The secret to Jython's popularity lies in the combination of Java's librariesand tools with Python's rapid development capabilities. With Jython, you can write Python programs that integrate seamlessly with any Java code. And like Python, Jython can be used interactively, so you can get immediate results as you are programming.Jython Essentials provides a solid introduction to the Python language, offering a brief but thorough tour of the Python concepts you'll need to understand to use Jython effectively. The book makes frequent comparisonsbetween Python and Java, with special emphasis on the different object-oriented semantics of the two languages, so Java programmers can quickly get up to speed with Jython.Jython Essentials also covers the various ways in which Jython and Java can interact. For example, Jython code can create instances of pre-existing Java classes and call methods in those instances. You can write Jython classes that are direct subclasses of existing Java classesand use introspection to discern the capabilities of JavaBeans components. This book provides examples of using Jython with existing Java libraries, including the Swing GUI toolkit, the JDBC database API, the Servlet API, and various XML tools. And finally, the book shows howJython can be used as a scripting language within a Java program.With Jython Essentials, you have everything you need to start creating applications that mix the best of Python's interactivity and Java's robust libraries.




Linux Device Drivers


Book Description

Provides "hands-on" information on writing device drivers for the Linux system, with particular focus on the features of the 2.4 kernel and its implementation