background preloader

Learn to program

Facebook Twitter

Advanced Programming Languages. Introduction Research Syntax Semantics Static Semantics ( Type Theory ) Dynamic Semantics Semantic Related Developments Abstract Interpretation Program Transformation Decompilation Partial Evaluation.

Advanced Programming Languages

The Art of Assembly Language Programming. 50 Places You Can Learn to Code (for Free) Online. If you’re curious about learning a programming language then you’re in luck: there’s no shortage of resources for learning how to code online.

50 Places You Can Learn to Code (for Free) Online

University-level courses, tutorials, cheat sheets, and coding communities all offer excellent ways to pick up a new language, and maybe even a new job, too. Read on, and you’ll discover 50 great places to learn how to code, for free, online. University Many big names in education including MIT and Stanford offer programming courses, absolutely free.

General If you’re just dipping your toes into programming, or you want to find a variety of resources, these sites offer several different ways to learn how to code. Community Learn how to code on these sites with a heavy community influence ready to offer help to newbs. Language Specific Drill down to the language you really want on these sites, offering expansive learning in one or two specific languages. CIS Department > Tutorials > Software Design Using C++ The C++ Standard Library: Index. Everything you need to know about pointers in C. Style used in this document This is regular text.

Everything you need to know about pointers in C

This is a , some code, and some sample output. This is a line of code. This is output you'd see on your screen. Definition of a pointer A pointer is a memory address. (Mmm, short paragraphs.) Starting off Say you declare a variable named . int foo; This variable occupies some memory. Now let's declare another variable. int *foo_ptr = &foo; is declared as a pointer to int. As I said, occupies some memory. Think of every variable as a box. is a box that is sizeof(int) bytes in size.

This is true of all variables, regardless of type. The point of that is that the pointer is not the variable! Network Theory Ltd. NetworkingProgramming.com. Getting Started. C++ Style Languages: C++, Objective-C, Java, C# - Hyperpolyglot. A side-by-side reference sheet grammar and invocation | variables and expressions | arithmetic and logic | strings | regexes | dates and time | fixed-length arrays | resizable arrays | tuples | dictionaries | functions | execution control | exceptions | concurrency | file handles | files | file formats | directories | processes and environment | libraries and namespaces | user-defined types | generic types | objects | polymorphism | reflection | net and web | unit tests | debugging and profiling General version used The compiler version used for this sheet. show version How to get the compiler version. implicit prologue Code which examples in the sheet assume to have already been executed. hello world How to write, compile, and run a "Hello, World!

C++ Style Languages: C++, Objective-C, Java, C# - Hyperpolyglot

" file suffixes For source files, header files, and compiled object files. The gcc compiler will treat a file with any of the following suffixes as C++ source: January 2006. One more set of features that we need to learn, and then we get to go play.

January 2006

This is an important lesson -- we have reached the point where you can start doing some interesting stuff. So, just to get it under your fingers, there will be more than one assignment this time. Arrays In any sort of non-trivial application you are going to need to track collections of things. In the last program, you input one value and calculated one value.

This is where the notion of collections comes in. The first, the simplest, and BY FAR the most common sort of collection is called an array. Suppose we wanted to declare an array of 10 integers. Int[] myArray; Now, in Java, an array is an object in its own right. MyArray = new int[10]; The number of elements in the array is called its dimension. Introduction to Java Programming. 10 places where anyone can learn to code. Teens, tweens and kids are often referred to as “digital natives.”

10 places where anyone can learn to code

Having grown up with the Internet, smartphones and tablets, they’re often extraordinarily adept at interacting with digital technology. But Mitch Resnick, who spoke at TEDxBeaconStreet, is skeptical of this descriptor. Sure, young people can text and chat and play games, he says, “but that doesn’t really make you fluent.” Mitch Resnick: Let's teach kids to code Fluency, Resnick proposes in this TED Talk, comes not through interacting with new technologies, but through creating them. The former is like reading, while the latter is like writing. The point isn’t to create a generation of programmers, Resnick argues. In his talk, Resnick describes Scratch, the programming software that he and a research group at MIT Media Lab developed to allow people to easily create and share their own interactive games and animations.

While we’re at it: bonus! Perl. By Sam Hughes Perl is a dynamic, dynamically-typed, high-level, scripting (interpreted) language most comparable with PHP and Python.

Perl

Perl's syntax owes a lot to ancient shell scripting tools, and it is famed for its overuse of confusing symbols, the majority of which are impossible to Google for. Perl's shell scripting heritage makes it great for writing glue code: scripts which link together other scripts and programs. Perl is ideally suited for processing text data and producing more text data.