127 private links
Language Overview:
- As fast to write and edit as it probably gets
- Intuitive and simple - easy to use for non-programmers too
- No indentation, all empty lines and whitespace optional
- No type syntax rules and restrictions on the language level
- Documents map to ubiquitous structural types in all programming languages
- Powerful advanced features - copy, merge, deep merge elements
Usecases:
- Authoring blogs, up to entire websites, from the macro to the micro level
- Generating documentation, invoices, CVs, reports, you name it
- Large scale textfile-based databases and archives
- Configuration files, from the simplest to the most complex
If the code isn’t working the way you think it should, then something about your assumptions is wrong. Look through code to ensure that all the pieces work as you expect them to. Step through the code with a debugger if you can and look for any surprises.
Snap! (formerly BYOB) is a visual, drag-and-drop programming language. It is an extended reimplementation of Scratch (a project of the Lifelong Kindergarten Group at the MIT Media Lab) that allows you to Build Your Own Blocks.
It also features first class lists, first class procedures, and continuations. These added capabilities make it suitable for a serious introduction to computer science for high school or college students.
Purpose of this Collection
This collection is a presentation of fairly small Python programs. They are aimed at intermediate programmers; people who have studied Python and are fairly comfortable with basic recursion and object oriented techniques. Most programs are very short, not more than a couple of pages and all projects are accompanied with a write-up.
I have found Python to be an excellent language to express algorithms clearly. Some of the ideas here originated in other programs in other languages. But in most cases I developed code from scratch from just an outline of an idea. But one, Lisp in Python was almost a translation exercise from John McCarthy's original Evalquote in Lisp.
From many years of programming these are some of my favorite programs. I hope you enjoy them as much as I do. I look forward to hearing from readers, especially those with suggestions for improvements, ideas for new projects, or people who are doing similar things. You can email me at mailme.html
Many thanks to Paul Carduner and Jeff Elkner for their work on this page, especially for Paul's graphic of Psyltherin (apologies to Harry Potter) and to the teams behind reStructured text and Sphinx to which the web pages in this collection have been adapted.
The other day I was searching for Vim editor cheatsheets on the web. A quick google search brought me so many links to download the cheatsheets. While going through the links one by one, a...
Zeal is an offline documentation browser for software developers.
Related articles
The history and use of parentheses in programming languages, from the beginning of programming to the present day.
Early programming languages only had round parentheses, but later keyboards added brackets and braces.
rapidstring - Maybe the fastest string library ever.
In this article, we offer several different projects, resources, and tutorials that you can use to start building things with Python.
Unlock the Power of Web Components. Polymer is a JavaScript library that helps you create custom reusable HTML elements, and use them to build performant, maintainable apps.
I've been programming in C and C++ for over 25 years. I have a PhD in Computer Science from a top-ranked program, and I was a Distinguished ...
Rocket is a web framework for the Rust
programming language that makes it simple to write fast web applications
without sacrificing flexibility or type safety.
Most Python developers have written at least one tool, script, library or framework that others would find useful. My goal in this article is to make the process of open-sourcing existing Python code as clear and painless as possible. And I don't simply mean, "create GitHub repo, git push, post on Reddit, and call it a day." By the end of this article, you'll be able to take an existing code base and transform it into an open source project that encourages both use and contribution.
While every project is different, there are some parts of the process of open-sourcing existing code that are common to all Python projects. In the vein of another popular series I've written, "Starting a Django Project The Right Way," I'll outline the steps I've found to be necessary when open-sourcing a Python project.
This tutorial does not attempt to be comprehensive and cover every single feature, or even every commonly used feature. Instead, it introduces many of Python’s most noteworthy features, and will give you a good idea of the language’s flavor and style. After reading it, you will be able to read and write Python modules and programs, and you will be ready to learn more about the various Python library modules described in The Python Standard Library.
This book contains a collection of relevant data structures, algorithms, and programming tips written for University students who want to be more competitive in the ACM International Collegiate Programming Contest (ICPC), high school students who are aspiring to be competitive in the International Olympiad in Informatics (IOI), coaches for these competitions, those who love problem solving using computer programs, and those who go for interviews in big IT-companies.