</Coding in Python>

Total Page:16

File Type:pdf, Size:1020Kb

</Coding in Python> </Coding_In_Python> Lex Smirnow Table of Contents Introduction ……………………………………………………………………….. 3 ​ Chapter 1: The Recent History of Coding…………………………………….…....4 ​ ​ Chapter 2: The Creation of Python …………………………………………….…..6 ​ ​ Chapter 3: The Appeal of Python.………………………………………………….8 ​ ​ Chapter 4: Who is Guido Van Rossum?…………………………………………. 10 ​ Chapter 5: Python in the World of Coding………………………………………. 11 ​ ​ ​ Conclusion……………………………………………………………………….. 12 ​ ​ Works and Images Cited ………………………………………………………… 13 ​ 2 Introduction Python is a topic that has recently interested me, and that I found fascinating. My father had been using Python for most of his career and had a chance to work with Guido Van Rossum, creator of Python. What had started out as an interest quickly grew into a passion. Soon after I began my expert project my father started teaching me how to code in Python. From here my interest grew to a desire to participate in the annual Python convention known as PyCon. I also made a poster proposal for PyCon and to my surprise the proposal was accepted. All of this has snowballed into me having invested hundreds of hours into Python and learning to code. I am glad that I decided to research Python for my expert topic. It is something that I feel indescribably passionate about. 3 Chapter 1: The Recent History of Coding Mary Allen Wilkes wanted to be something completely unrelated from a coder. Mary wanted to be a trial lawyer and ended up becoming one after she finished being a software engineer. Her teacher suggested to Mary that she should get into the software development field. Once Mary was a software engineer she, and a few others, were tasked with building the world's first personal computer called the Laboratory INstrument Computer (LINC). Like most computers at that time it would use paper punch cards to input code. After Mary finished LINC she pursued her career in law. Like Mary Allen Wilkes, Ruchi Sanghvi wanted to be something completely different from a coder. She wanted to be a worker at her father's car factory. But instead she became one of the most influential coders of our time. She single-handedly developed Facebook's newsfeed feature. Ruchi made the newsfeed and proposed the idea to Mark Zuckerberg. He loved the idea. Once the newsfeed feature was launched, it was immediately hated with groups forming on Facebook with names such as “Ruchi is The Devil”. Within twenty-four 4 hours of the newsfeed being launched, some of the groups had gained ten thousand followers. Ironically these groups had expanded by using the newsfeed feature. In a couple days the offensively named groups left and people were pretty happy. Most new things that have been very influential to our world were initially hated, such as mobile phones. The next generation of coders was the “Hackers”. The Hackers originated at MIT. They would experiment in the MIT computer lab after hours, and play and make video games. Playing video games was considered absurd due to the immense cost of computers which used to be about $120,000. Richard Stallman, one of the lead Hackers, nearly kicked someone out of the group after they refused to share code with others. The following wave of coders was the commercial use coders. A great example of this time in coding is Mike Krieger. Mike Krieger became so obsessed with coding that he would commonly hand in book reports as custom websites. Krieger made a statement that he thought coding was like a video game, there are mini bosses (small challenges ) and big bosses (big challenges). Coding has been through many waves and certainly has many more to go through. One of the most influential programmers was Bram Cohen. When he was twelve he entered a coding contest and nearly won. Bram would lecture coders about why improvement upon old code is necessary. Bram was and is one of the most influential coders of our time because he now commonly lectures students to accept failure as an essential part of coding. 5 Chapter 2: The Creation of Python Python was conceived in the Netherlands by Guido Van Rossum. Guido was on a tech deployment to help create the coding language ABC for Amoeba. Although ABC turned out to be not as successful as hoped, while working on ABC Guido started to play around with the idea of creating his own coding language called Python. Python started out as Guido’s pet project but soon evolved into much more than that. Most big things start out small, like Python (or Apple which was invented in Steve Jobs’ garage in Palo Alto.) Python was inspired by many different sources. One of the main coding languages that inspired Python was JavaScript. The humans' need to adapt to new things and challenges was very important to Guido’s vision of Python. Python is supposed to be like any other coding language which means it is easier for people to learn it if they already know a different coding language. The open source programming community also influenced the creation of Python. Many things like human nature and simplicity have found their way into python through the constant need for adaptation to making coding easy and fun. The intention of making it open source was to give coding to people who did not want to pay for professional classes. Python wanted to help people who could not afford a professional coding class. Developers did this by making it excessively easy to learn and by trying to make it like all of the other coding languages. Python to this day is still helping people and charities while becoming more complex and 6 yet easier to learn at the same time. Experts like Brian Kernighan agree that Python is a complete success The impact of Python on the coding landscape was indescribable. What had started out as Guido’s pet project had snowballed to become one of the top three most used coding languages in the world. Soon developers were questioning whether to move to Python instead of their current coding language. As previously mentioned it was extremely easy to learn for those who already knew how to code. Python has begun to thrive in the coding world and has simplified the jobs of many many software developers working in data analytics artificial intelligence and machine learning. 7 Chapter 3: The Appeal of Python Python is approachable because of its easiness to learn and its simplicity to use for data analytics. When a person starts out coding with Python probably the first thing that they will be instructed to do by nearly any guide is type “print(“Hello World!”)” which will make “Hello World!” appear on the screen. ​ ​ Since Python is very adaptable an experienced coder who was great with JavaScript could just as easily code Python due to their similarities. An example of their similarities are that they are both object oriented languages. Python also has plenty of guide books and instructional videos. The main reasons why python is the third most used coding language in the world is due to it appealing in its accessibility and user friendliness. Many guides and tutorials make it easier for everyone to use and learn Python. One of the most useful guides is “Introduction To Pygame” by Sloan Kelly or the entire Pygame website because it contains all of the documentation for the Pygame insert (commonly called a plugin). Another great source for learning about Python is the YouTube channel Coding Train. It has tutorials on how to make points randomly appear on the screen and physics simulations. A great source for learning how to connect Python to a microcontroller is Adafruit which has plenty of tutorials such as how to set up a device to work with Python and how to enable and use motors through Python. Python is 8 approachable because users do not need excessive experience, as well as the availability of many guides to help newer software developers. There is an ecosystem spanning the internet of available code libraries for Python. One of these libraries is the Pygame website. Code libraries make it easier to code so newer programmers don't have to stress about having to make functions and variables. They are then easily able to register a mouse click or a key press. These libraries are usually composed in such a way that shows the function which is a collection of code wrapped up into one or two words so the programmer does not have to type it in each time, gives an explanation of what it does, and then says how to use it. With near infinite amounts of information in the libraries it is easier for newer developers to design games without spending hours getting the mouse movement to register. 9 Chapter 4: Who is Guido Van Rossum? Guido Van Rossum was born on January 31st 1956. He was born and raised in the Netherlands. He graduated from the University of Amsterdam with a masters degree in math and computer sciences. His first job after college was at Centrum Wiskunde & Informatica (CWI) where he helped start ABC. Guido wanted to be a programmer or software developer for most of his life and ended up being one. After ABC flopped he started to make Python, but then was interrupted by moving to Virginia. Once he got to Virginia he began to work at a non-profit tech organization. Once he finished working there he jumped around and ended up in California which is where he still lives today. While he was still in Virginia he married a Texan. In 2005 he was hired by Google where he became a senior staff engineer.
Recommended publications
  • SETL for Internet Data Processing
    SETL for Internet Data Processing by David Bacon A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy Computer Science New York University January, 2000 Jacob T. Schwartz (Dissertation Advisor) c David Bacon, 1999 Permission to reproduce this work in whole or in part for non-commercial purposes is hereby granted, provided that this notice and the reference http://www.cs.nyu.edu/bacon/phd-thesis/ remain prominently attached to the copied text. Excerpts less than one PostScript page long may be quoted without the requirement to include this notice, but must attach a bibliographic citation that mentions the author’s name, the title and year of this disser- tation, and New York University. For my children ii Acknowledgments First of all, I would like to thank my advisor, Jack Schwartz, for his support and encour- agement. I am also grateful to Ed Schonberg and Robert Dewar for many interesting and helpful discussions, particularly during my early days at NYU. Terry Boult (of Lehigh University) and Richard Wallace have contributed materially to my later work on SETL through grants from the NSF and from ARPA. Finally, I am indebted to my parents, who gave me the strength and will to bring this labor of love to what I hope will be a propitious beginning. iii Preface Colin Broughton, a colleague in Edmonton, Canada, first made me aware of SETL in 1980, when he saw the heavy use I was making of associative tables in SPITBOL for data processing in a protein X-ray crystallography laboratory.
    [Show full text]
  • 1. with Examples of Different Programming Languages Show How Programming Languages Are Organized Along the Given Rubrics: I
    AGBOOLA ABIOLA CSC302 17/SCI01/007 COMPUTER SCIENCE ASSIGNMENT ​ 1. With examples of different programming languages show how programming languages are organized along the given rubrics: i. Unstructured, structured, modular, object oriented, aspect oriented, activity oriented and event oriented programming requirement. ii. Based on domain requirements. iii. Based on requirements i and ii above. 2. Give brief preview of the evolution of programming languages in a chronological order. 3. Vividly distinguish between modular programming paradigm and object oriented programming paradigm. Answer 1i). UNSTRUCTURED LANGUAGE DEVELOPER DATE Assembly Language 1949 FORTRAN John Backus 1957 COBOL CODASYL, ANSI, ISO 1959 JOSS Cliff Shaw, RAND 1963 BASIC John G. Kemeny, Thomas E. Kurtz 1964 TELCOMP BBN 1965 MUMPS Neil Pappalardo 1966 FOCAL Richard Merrill, DEC 1968 STRUCTURED LANGUAGE DEVELOPER DATE ALGOL 58 Friedrich L. Bauer, and co. 1958 ALGOL 60 Backus, Bauer and co. 1960 ABC CWI 1980 Ada United States Department of Defence 1980 Accent R NIS 1980 Action! Optimized Systems Software 1983 Alef Phil Winterbottom 1992 DASL Sun Micro-systems Laboratories 1999-2003 MODULAR LANGUAGE DEVELOPER DATE ALGOL W Niklaus Wirth, Tony Hoare 1966 APL Larry Breed, Dick Lathwell and co. 1966 ALGOL 68 A. Van Wijngaarden and co. 1968 AMOS BASIC FranÇois Lionet anConstantin Stiropoulos 1990 Alice ML Saarland University 2000 Agda Ulf Norell;Catarina coquand(1.0) 2007 Arc Paul Graham, Robert Morris and co. 2008 Bosque Mark Marron 2019 OBJECT-ORIENTED LANGUAGE DEVELOPER DATE C* Thinking Machine 1987 Actor Charles Duff 1988 Aldor Thomas J. Watson Research Center 1990 Amiga E Wouter van Oortmerssen 1993 Action Script Macromedia 1998 BeanShell JCP 1999 AngelScript Andreas Jönsson 2003 Boo Rodrigo B.
    [Show full text]
  • Computer Engineer Ruchi Sanghvi
    STEM TRAILBLAZER BIOS COMPUTER ENGINEER RUCHI SANGHVI THIS PAGE LEFT BLANK INTENTIONALLY STEM TRAILBLAZER BIOS COMPUTER ENGINEER RUCHI SANGHVI LAURA HAMILTON WAXMAN Lerner Publications Minneapolis For Caleb, my computer wizard Copyright © 2015 by Lerner Publishing Group, Inc. All rights reserved. International copyright secured. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means—electronic, mechanical, photocopying, recording, or otherwise—without the prior written permission of Lerner Publishing Group, Inc., except for the inclusion of brief quotations in an acknowledged review. Lerner Publications Company A division of Lerner Publishing Group, Inc. 241 First Avenue North Minneapolis, MN 55401 USA For reading levels and more information, look up this title at www.lernerbooks.com. Content Consultant: Robert D. Nowak, PhD, McFarland-Bascom Professor in Engineering, Electrical and Computer Engineering, University of Wisconsin–Madison Library of Congress Cataloging-in-Publication Data Waxman, Laura Hamilton. Computer engineer Ruchi Sanghvi / Laura Hamilton Waxman. pages cm. — (STEM trailblazer bios) Includes index. ISBN 978–1–4677–5794–2 (lib. bdg. : alk. paper) ISBN 978–1–4677–6283–0 (eBook) 1. Sanghvi, Ruchi, 1982–—Juvenile literature. 2. Computer engineers—United States— Biography—Juvenile literature. 3. Women computer engineers—United States—Biography— Juvenile literature. I. Title. QA76.2.S27W39 2015 621.39092—dc23 [B] 2014015878 Manufactured in the United States of America 1 – PC – 12/31/14 The images in this book are used with the permission of: picture alliance/Jan Haas/Newscom, p. 4; © Dinodia Photos/Alamy, p. 5; © Tadek Kurpaski/flickr.com (CC BY 2.0), p.
    [Show full text]
  • Python in Education Teach, Learn, Program
    ANALYZING THE ANALYZERS THE ANALYZING Python in Education Teach, Learn, Program Nicholas H. Tollervey ISBN: 978-1-491-92462-4 Python in Education Teach, Learn, Program Nicholas H.Tollervey Python in Education by Nicholas H. Tollervey Copyright © 2015 O’Reilly Media, Inc. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://safaribooksonline.com). For more information, contact our corporate/institutional sales department: 800-998-9938 or [email protected]. Editor: Meghan Blanchette Interior Designer: David Futato Production Editor: Kristen Brown Cover Designer: Karen Montgomery Copyeditor: Gillian McGarvey Illustrator: Rebecca Demarest April 2015: First Edition Revision History for the First Edition 2015-03-11: First Release See http://oreilly.com/catalog/errata.csp?isbn=9781491924624 for release details. The O’Reilly logo is a registered trademark of O’Reilly Media, Inc. Python in Educa‐ tion, the cover image, and related trade dress are trademarks of O’Reilly Media, Inc. While the publisher and the author have used good faith efforts to ensure that the information and instructions contained in this work are accurate, the publisher and the author disclaim all responsibility for errors or omissions, including without limi‐ tation responsibility for damages resulting from the use of or reliance on this work. Use of the information and instructions contained in this work is at your own risk. If any code samples or other technology this work contains or describes is subject to open source licenses or the intellectual property rights of others, it is your responsi‐ bility to ensure that your use thereof complies with such licenses and/or rights.
    [Show full text]
  • Study of Twitter Sentiment Analysis Using Machine Learning Algorithms on Python
    International Journal of Computer Applications (0975 – 8887) Volume 165 – No.9, May 2017 Study of Twitter Sentiment Analysis using Machine Learning Algorithms on Python Bhumika Gupta, PhD Monika Negi, Kanika Vishwakarma, Goldi Assistant Professor, C.S.E.D Rawat, Priyanka Badhani G.B.P.E.C, Pauri, Uttarakhand, India B.Tech, C.S.E.D G.B.P.E.C Uttarakhand, India ABSTRACT 2. ABOUT SENTIMENT ANALYSIS Twitter is a platform widely used by people to express their Sentiment analysis is a process of deriving sentiment of a opinions and display sentiments on different occasions. particular statement or sentence. It’s a classification technique Sentiment analysis is an approach to analyze data and retrieve which derives opinion from the tweets and formulates a sentiment that it embodies. Twitter sentiment analysis is an sentiment and on the basis of which, sentiment classification application of sentiment analysis on data from Twitter is performed. (tweets), in order to extract sentiments conveyed by the user. In the past decades, the research in this field has consistently Sentiments are subjective to the topic of interest. We are grown. The reason behind this is the challenging format of the required to formulate that what kind of features will decide for tweets which makes the processing difficult. The tweet format the sentiment it embodies. is very small which generates a whole new dimension of In the programming model, sentiment we refer to, is class of problems like use of slang, abbreviations etc. In this paper, we entities that the person performing sentiment analysis wants to aim to review some papers regarding research in sentiment find in the tweets.
    [Show full text]
  • An Introduction to Python (PDF)
    Introduction to Python Heavily based on presentations by Matt Huenerfauth (Penn State) Guido van Rossum (Google) Richard P. Muller (Caltech) ... Monday, October 19, 2009 Python • Open source general-purpose language. • Object Oriented, Procedural, Functional • Easy to interface with C/ObjC/Java/Fortran • Easy-ish to interface with C++ (via SWIG) • Great interactive environment • Downloads: http://www.python.org • Documentation: http://www.python.org/doc/ • Free book: http://www.diveintopython.org Monday, October 19, 2009 2.5.x / 2.6.x / 3.x ??? • “Current” version is 2.6.x • “Mainstream” version is 2.5.x • The new kid on the block is 3.x You probably want 2.5.x unless you are starting from scratch. Then maybe 3.x Monday, October 19, 2009 Technical Issues Installing & Running Python Monday, October 19, 2009 Binaries • Python comes pre-installed with Mac OS X and Linux. • Windows binaries from http://python.org/ • You might not have to do anything! Monday, October 19, 2009 The Python Interpreter • Interactive interface to Python % python Python 2.5 (r25:51908, May 25 2007, 16:14:04) [GCC 4.1.2 20061115 (prerelease) (SUSE Linux)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> • Python interpreter evaluates inputs: >>> 3*(7+2) 27 • Python prompts with ‘>>>’. • To exit Python: • CTRL-D Monday, October 19, 2009 Running Programs on UNIX % python filename.py You could make the *.py file executable and add the following #!/usr/bin/env python to the top to make it runnable. Monday, October 19, 2009 Batteries Included • Large collection of proven modules included in the standard distribution.
    [Show full text]
  • An Introduction to Python Release 2.2.2
    An Introduction to Python Release 2.2.2 Guido van Rossum Fred L. Drake, Jr., editor PythonLabs Email: [email protected] A catalogue record for this book is available from the British Library. First printing, April 2003 (14/4/2003). Published by Network Theory Limited. 15 Royal Park Clifton Bristol BS8 3AL United Kingdom Email: [email protected] ISBN 0-9541617-6-9 Further information about this book is available from http://www.network-theory.co.uk/python/manual/ Additional section authors: Using Lists as Stacks by Ka-Ping Yee Floating Point Arithmetic — Issues and Limitations by Tim Peters Unicode Strings by Marc-Andre Lemburg Summary of changes made for this edition by Network Theory Ltd: Minor editing of text and examples for formatting as a book. Added Publisher’s preface. Moved Abstract to Introduction. Additional entries and modifications to index. Some paragraphs, sentences and footnotes removed/edited for con- ciseness. A complete set of differences can be found at http://www.network- theory.co.uk/python/manual/src/ Copyright c 2001Python Software Foundation. All rights reserved. Copyright c 2000 BeOpen.com. All rights reserved. Copyright c 1995-2000 Corporation for National Research Initiatives. All rights reserved. Copyright c 1991-1995 Stichting Mathematisch Centrum. All rights re- served. See the end of this document for complete license and permissions infor- mation. Contents Publisher’s Preface 1 Introduction 3 1 Whetting Your Appetite 5 1.1 WhereFromHere...................... 6 2 Using the Python Interpreter 7 2.1InvokingtheInterpreter................... 7 2.2 TheInterpreterandItsEnvironment........... 9 3 An Informal Introduction to Python 11 3.1Using Python as a Calculator ...............
    [Show full text]
  • Python Is Eating the World: How One Developer’S Side Project Became the Hottest Programming Language on the Planet
    Python is eating the world: How one developer’s side project became the hottest programming language on the planet By Nick Heath Image: Dan Stroud under the Creative Commons licence Guido van Rossum at Dropbox headquarters in 2014. Frustrated by programming language shortcomings, Guido van Rossum created Python. With the language now used by millions, Nick Heath talks to van Rossum about Python’s past and explores what’s next. In late 1994, a select group of programmers from across the US met to discuss their new secret weapon. Barry Warsaw was one of the 20 or so developers present at that first-ever workshop for the newly- created Python programming language and recalls the palpable excitement among those early users. “I can remember one person in particular who said, ‘You cannot tell anybody that I’m here because our use of Python is a competitive advantage.’ It was their secret weapon, right?” Even at that early meeting, at the then US National Standards Bureau in Maryland, Warsaw says it was evident that Python offered something new in how easy it was to write code and simply get things done. “When I first was introduced to Python, I knew there was something special. It was some combination of readability, and there was a joy to writing Python code,” he remembers. Today enthusiasm for Python has spread far beyond that initial circle of developers, and some are predicting it will soon become the most popular programming language in the world, as it continues to add new users faster than any other language.
    [Show full text]
  • (Pdf) of the School of Squiggol: a History of the Bird−Meertens
    The School of Squiggol A History of the Bird{Meertens Formalism Jeremy Gibbons University of Oxford Abstract. The Bird{Meertens Formalism, colloquially known as \Squig- gol", is a calculus for program transformation by equational reasoning in a function style, developed by Richard Bird and Lambert Meertens and other members of IFIP Working Group 2.1 for about two decades from the mid 1970s. One particular characteristic of the development of the Formalism is fluctuating emphasis on novel `squiggly' notation: sometimes favouring notational exploration in the quest for conciseness and precision, and sometimes reverting to simpler and more rigid nota- tional conventions in the interests of accessibility. This paper explores that historical ebb and flow. 1 Introduction In 1962, IFIP formed Working Group 2.1 to design a successor to the seminal algorithmic language Algol 60 [4]. WG2.1 eventually produced the specification for Algol 68 [63, 64]|a sophisticated language, presented using an elaborate two- level description notation, which received a mixed reception. WG2.1 continues to this day; technically, it retains responsibility for the Algol languages, but practi- cally it takes on a broader remit under the current name Algorithmic Languages and Calculi. Over the years, the Group has been through periods of focus and periods of diversity. But after the Algol 68 project, the period of sharpest focus covered the two decades from the mid 1970s to the early 1990s, when what later became known as the Bird{Meertens Formalism (BMF) drew the whole group together again. It is the story of those years that is the subject of this paper.
    [Show full text]
  • Coders-Noten.Indd 1 16-05-19 09:20 1
    Noten coders-noten.indd 1 16-05-19 09:20 1. DE SOFTWARE-UPDATE DIE DE WERKELIJKHEID HEEFT VERANDERD 1 Adam Fisher, Valley of Genius: The Uncensored History of Silicon Valley (As Told by the Hackers, Founders, and Freaks Who Made It Boom, (New York: Twelve, 2017), 357. 2 Fisher, Valley of Genius, 361. 3 Dit segment is gebaseerd op een interview van mij met Sanghvi, en op verscheidene boeken, artikelen en video’s over de begindagen van Facebook, waaronder: Daniela Hernandez, ‘Facebook’s First Female Engineer Speaks Out on Tech’s Gender Gap’, Wired, 12 december 2014, https://www.wired.com/2014/12/ruchi-qa/; Mark Zucker berg, ‘Live with the Original News Feed Team’, Facebookvideo, 25:36, 6 september 2016, https://www.facebook.com/zuck/ videos/10103087013971051; David Kirkpatrick, The Facebook Effect: The Inside Story of the Company That Is Connecting the World (New York: Simon & Schuster, 2011); INKtalksDirector, ‘Ruchi Sanghvi: From Facebook to Facing the Unknown’, YouTube, 11:50, 20 maart 2012, https://www.youtube.com/watch?v=64AaXC00bkQ; TechCrunch, ‘TechFellow Awards: Ruchi Sanghvi’, TechCrunch-video, 4:40, 4 maart 2012, https://techcrunch.com/video/techfellow-awards-ruchi- coders-noten.indd 2 16-05-19 09:20 sanghvi/517287387/; FWDus2, ‘Ruchi’s Story’, YouTube, 1:24, 10 mei 2013, https://www.youtube.com/watch?v=i86ibVt1OMM; alle video’s geraadpleegd op 16 augustus 2018. 4 Clare O’Connor, ‘Video: Mark Zucker berg in 2005, Talking Facebook (While Dustin Moskovitz Does a Keg Stand)’, Forbes, 15 augustus 2011, geraadpleegd op 7 oktober 2018, https://www.forbes.com/sites/ clareoconnor/2011/08/15/video-mark-Zucker berg-in-2005-talking- facebook-while-dustin-moskovitz-does-a-keg-stand/#629cb86571a5.
    [Show full text]
  • Introduction to Computational & Quantitative Biology (G4120)
    ICQB Introduction to Computational & Quantitative Biology (G4120) Fall 2019 Oliver Jovanovic, Ph.D. Columbia University Department of Microbiology & Immunology Lecture 5: Introduction to Programming October 15, 2019 History of Programming 1831 Lady Ada Lovelace writes the first computer program for Charles Babbage’s Analytical Engine. 1936 Alan Turing develops the theoretical concept of the Turing Machine, forming the basis of modern computer programming. 1943 Plankalkül, the first formal computer language, is developed by Konrad Zuse, a German engineer, which he later applies to, among other things, chess. 1945 John von Neumann develops the theoretical concepts of shared program technique and conditional control transfer. 1949 Short Code, the first computer language actually used on an electronic computer, appears. 1951 A-O, the first widely used complier, is designed by Grace Hopper at Remington Rand. 1954 FORTRAN (FORmula TRANslating system) language is developed by John Backus at IBM for scientific computing. 1958 ALGOL, the first programming language with a formal grammar, is developed by John Backus for scientific applications 1958 LISP (LISt Processing) language is created by John McCarthy of MIT for Artificial Intelligence (AI) research. 1959 COBOL is created by the Conference on Data Systems and Languages (CODASYL) for business programming, and becomes widely used with the support of Admiral Grace Hopper. 1964 BASIC (Beginner’s All-purpose Symbolic Instruction Code) is created by John Kemeny and Thomas Kurtz as an introductory programming
    [Show full text]
  • “It All Started with ABC, a Wonderful Teaching Language That I Had Helped Create in the Early Eighties
    ABC language the mother of Python “It all started with ABC, a wonderful teaching language that I had helped create in the early eighties. It was an incredibly elegant and powerful language, aimed at non-professional programmers.” Guido van Rossum, ABC team member and creator of Python1 ABC 1.05 Python 3.2 SIEVE TO procedure definition >>> HOW TO SIEVE TO n: >>> def sieve(n): HOW TO SIEVE TO n: ... numbers = set(range(2, n+1)) PUT {2..n} IN numbers ... while numbers: condition must be a test WHILE numbers <> {}: ... p = min(numbers) PUT min numbers IN p ... print(p, end=' ') WRITE p ... for m in range(1, int(n/p)+1): FOR m IN {1..floor(n/p)}: ... if m*p in numbers: IF m*p in numbers: ... numbers.remove(m*p) REMOVE m*p FROM numbers 21 years later, Python still has a lot of ABC in it ... >>> sieve(50) >>> SIEVE TO 50 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 1. Foreword for "Programming Python" (1st ed.) http://www.python.org/doc/essays/foreword/ Basic Types Numbers Text ▪ Numbers are either exact or inexact. ▪ Mutable ASCII strings of arbitrary length. ▪ Exact numbers are stored as ratios of ▪ First character position is @ 1. integers of arbitrary length. ▪ Slicing is done with operators @ and | (pipe), ▪ Basic arithmetic (+, -, *, /) with exact see examples below. numbers always produce exact results. ABC 1.05 ▪ Some functions, such as root, sin, log etc.
    [Show full text]