Emacsy. Shane Celis. GNU Hackers Meeting Paris, France August 24th, 2013
|
|
- Drusilla Hood
- 5 years ago
- Views:
Transcription
1 Emacsy Shane Celis GNU Hackers Meeting Paris, France August 24th, 2013
2 Agenda Intended Audience What is Emacsy? What is Emacs? Demos What s next? Where to get it
3 Audience
4 Audience Interactive application developers
5 Audience Interactive application developers Emacs users
6 Audience Interactive application developers Emacs users Why base it off Emacs?
7 Emacsy: Google Summer of Code Officially started this Summer Working with Ludovic Courtès from GNU Project Received lots of help from #guile on freenode.net Special thanks to Andy Wingo and Mark Weaver
8 What is Emacsy?
9 What is Emacsy? It s an embeddable Emacs-like library.
10 What is Emacsy? It s an embeddable Emacs-like library. How Emacs-like exactly?
11 A Joke That Explains Emacs is a great operating system lacking only a decent editor. Emacs Extensions Mail Reader Emacs
12 A Joke That Explains Emacs is a great operating system lacking only a decent editor. Emacs Extensions Mail Reader Emacs
13 A Joke That Explains Emacs is a great operating system lacking only a decent editor. Emacs Extensions Mail Reader Emacs Extensions Mail Reader Text Editor Emacs "Emacs OS"
14 Emacsy Features
15 Emacsy Features lisp interpreter
16 Emacsy Features lisp interpreter keymaps
17 Emacsy Features lisp interpreter keymaps minibuffer history completion
18 Emacsy Features lisp interpreter keymaps minibuffer history completion
19 Emacsy Features lisp interpreter keymaps recordable macros minibuffer history completion
20 Emacsy Features lisp interpreter keymaps minibuffer history recordable macros comprehensive online help completion
21 Emacsy Features lisp interpreter keymaps minibuffer history completion recordable macros comprehensive online help major and minor modes
22 Emacsy Anti-goals
23 Emacsy Anti-goals Emacsy is not an Emacs replacement
24 Emacsy Anti-goals Emacsy is not an Emacs replacement not a text editor
25 Emacsy Anti-goals Emacsy is not an Emacs replacement not a text editor not elisp compatible
26 Different Integration Strategy
27 What is Emacs?
28 What is Emacs?
29 What is Emacs? It s a text editor,
30 What is Emacs? It s a text editor, a mail reader,
31 What is Emacs? It s a text editor, a mail reader, a shell,
32 What is Emacs? It s a text editor, a mail reader, a shell, a lisp interpreter,
33 What is Emacs? It s a text editor, a mail reader, a shell, a lisp interpreter, a web browser.
34 What is Emacs? Beautiful Architecture. Ch. 11. GNU Emacs: Creeping Featurism is a Strength by Jim Blandy
35 Model View Controller
36 Model View Controller The buffer is a model.
37 Model View Controller The buffer is a model. The window is a view.
38 Model View Controller The buffer is a model. The window is a view. The controller is all the elisp code.
39 Praising the Model A buffer is plaintext. Emacs is not a word processor; no bold, italics, nor attributes are embedded into the model. It s simple. It s all just text.
40 Other Simple Models It s all just blocks.
41 Simple Model Users can make very complicated things out of simple building blocks.
42 Emacs is Extensible It s a text editor, a mail reader, a shell, a lisp interpreter, a web browser.
43 The Fix is In The view is fixed. The model is fixed. Only the controller is extensible with elisp.
44 Emacsy
45 Emacsy The view is not fixed.
46 Emacsy The view is not fixed. The model is not fixed.
47 Emacsy The view is not fixed. The model is not fixed. The controller is extensible with GNU Guile Scheme.
48 Vision Cameron, D., Rosenblatt, B., & Raymond, E. S. (1996). Learning GNU Emacs. O'Reilly Media.
49 Cameron, D., Rosenblatt, B., & Raymond, E. S. (1996). Learning GNU Emacs. O'Reilly Media. Vision
50 Vision Cameron, D., Rosenblatt, B., & Raymond, E. S. (1996). Learning GNU Emacs. O'Reilly Media. Emacsy
51 Vision Cameron, D., Rosenblatt, B., & Raymond, E. S. (1996). Learning GNU Emacs. O'Reilly Media. Emacsy
52 Vision Cameron, D., Rosenblatt, B., & Raymond, E. S. (1996). Learning GNU Emacs. O'Reilly Media. Emacsy
53 Vision Cameron, D., Rosenblatt, B., & Raymond, E. S. (1996). Learning GNU Emacs. O'Reilly Media. Emacsy
54 Vision Cameron, D., Rosenblatt, B., & Raymond, E. S. (1996). Learning GNU Emacs. O'Reilly Media. Emacsy
55 Emacs(y) Architecture Emacs Extensions Emacs Core Elisp Interpreter C Core
56 Emacs(y) Architecture Emacs Extensions Emacsy Extensions Emacs Core Emacsy Core Elisp Interpreter Lisp Interpreter C Core C/C++ App
57 Emacs(y) Architecture Emacs Extensions Emacsy Extensions Emacs Core Elisp Interpreter Emacsy Core Lisp Interpreter } Emacsy C Core C/C++ App
58 Emacs(y) Architecture Emacs Extensions Emacsy Extensions Emacs Core Elisp Interpreter Emacsy Core Lisp Interpreter } Emacsy C Core C/C++ App } Your App
59 Demo!
60 Levels of Integration 1. No buffer support 2. Multiple buffers 3. Multiple windows
61 What Guile Provides that Elisp Doesn t
62 What Guile Provides that Elisp Doesn t Continuations
63 What Guile Provides that Elisp Doesn t Continuations Modules
64 What Guile Provides that Elisp Doesn t Continuations Modules Foreign Function Interface (FFI)
65 What Guile Provides that Elisp Doesn t Continuations Modules Foreign Function Interface (FFI) Threads
66 Taking Advantage of Guile Continuations can be used to build system-calls but in userland Blocking in Scheme without blocking in C Non-blocking events
67 Modules In my Emacs environment, I have 6,029 commands available at all times. Many aren t useful in my current context. Can we be more careful in what commands we expose?
68 Context Sensitive Commands Idea: Export commands to a module Each buffer could have a MODULE_PATH that works like PATH in bash M-x only looks up commands in the MODULE_PATH C-u M-x looks up all commands
69 Comprehensive Help Emacs has a great help system! What will Emacsy do? Options: 1. Do it all in minibuffer. 2. Use a text buffer like Emacs. 3. Use a local web server.
70 Beyond Emacs Job control Continuations Coroutines Cooperative Multitasking Major modes Are major modes worth it?
71 Available Now Alpha quality Recommend release v Available under the GNU GPLv3
72 Thanks for watching! contact: repo:
73 Acknowledgments GNU Emacs project (Thank you, RMS!) GNU Guile project The guys at Nykia Hunter for the elephant and narwhal graphics
74 Questions?
The User in the Loop Extensibility, Guile, and GNU GNU Hackers Meeting 2011 Andy Wingo
The User in the Loop Extensibility, Guile, and GNU GNU Hackers Meeting 2011 Andy Wingo Greetings! Andy Wingo Guile co-maintainer, along with Ludovic Courtès Goal Understand the problem Guile is part of
More informationGNU Hackers Meeting 2013
GNU Hackers Meeting 2013 http://www.gnu.org/ghm/2013/paris Luca Saiu IRILL, Paris, August 2013 1/12. Introduction A software is free software if you can: 0: run it, for any purpose 1:
More informationLearning Gnu Emacs A Guide To Unix Text Processing
We have made it easy for you to find a PDF Ebooks without any digging. And by having access to our ebooks online or by storing it on your computer, you have convenient answers with learning gnu emacs a
More informationWorkflow management for data analysis with GNU Guix
Workflow management for data analysis with GNU Guix Roel Janssen June 9, 2016 Abstract Combining programs to perform more powerful actions using scripting languages seems a good idea, until portability
More informationA beginner s guide to (GNU) Emacs 24
A beginner s guide to (GNU) Emacs 24 Matthew Chan, themattchan.com, last updated November 2014 Part 0: Getting started Why Emacs? Emacs is the One True Editor. Emacs can do anything you can possibly think
More informationag.el Documentation Release 0.45 Wilfred Hughes
ag.el Documentation Release 0.45 Wilfred Hughes Feb 25, 2018 Contents 1 Installation 3 1.1 Operating System............................................ 3 1.2 Emacs..................................................
More informationPhil Sung. Special thanks to Piaw Na and Arthur Gleckler
Being Productive With Emacs Part 1 Phil Sung sipb iap emacs@mit.edu http://stuff.mit.edu/iap/emacs Special thanks to Piaw Na and Arthur Gleckler Emacs is the extensible, customizable, self documenting
More informationLearning The Bash Shell: Unix Shell Programming (In A Nutshell (O'Reilly)) PDF
Learning The Bash Shell: Unix Shell Programming (In A Nutshell (O'Reilly)) PDF O'Reilly's bestselling book on Linux's bash shell is at it again. Now that Linux is an established player both as a server
More informationNavigating the Guix Subsystems
Navigating the Guix Subsystems Ludovic Courtès GNU Hackers Meeting, Rennes, August 2016 The Emacs of distros When large numbers of nontechnical workers are using a programmable editor, they will be tempted
More informationA Brief Introduction to Scheme (I)
A Brief Introduction to Scheme (I) Philip W. L. Fong pwlfong@cs.uregina.ca Department of Computer Science University of Regina Regina, Saskatchewan, Canada Scheme Scheme I p.1/44 Scheme: Feature Set A
More informationIntegrated Software Environment. Part 2
Integrated Software Environment Part 2 Operating Systems An operating system is the most important software that runs on a computer. It manages the computer's memory, processes, and all of its software
More informationCALIFORNIA STATE UNIVERSITY CHANNEL ISLANDS COURSE MODIFICATION PROPOSAL
CALIFORNIA STATE UNIVERSITY CHANNEL ISLANDS COURSE MODIFICATION PROPOSAL Courses must be submitted by October 15, 2013, and finalized by the end of the fall semester to make the next catalog (2014-15)
More informationHow Emacs Evolves to Suit Your Needs p. 1 How Emacs Differs from Other Software p. 3 Software and the User p. 4 Emacs Vocabulary and Conventions p.
Introduction p. xxix How Emacs Evolves to Suit Your Needs p. 1 How Emacs Differs from Other Software p. 3 Software and the User p. 4 Emacs Vocabulary and Conventions p. 7 Key Conventions p. 9 Emacs and
More informationPrefix COMP Course# 421 Title Unix for Programmers Units (3) 3 hours lecture per week 3 hours lecture per week
CALIFORNIA STATE UNIVERSITY CHANNEL ISLANDS COURSE MODIFICATION PROPOSAL Courses must be submitted by October 15, 2010, to make the next catalog (2011-12) production DATE (CHANGE DATE EACH TIME REVISED):
More informationCloud-Based Certification. Gary Fluitt - Google
Cloud-Based Certification Gary Fluitt - Google Google Admin in natural habitat Goal OS independent Learns online Google s for answers Free No IT certifications Mobile Google s Goals Internet Scale Google
More informationOverview. Rationale Division of labour between script and C++ Choice of language(s) Interfacing to C++
Scripting 1 Overview Rationale Division of labour between script and C++ Choice of language(s) Interfacing to C++ Rationale C++ isn't the best choice for all problems Complicated feature set, syntax Low-level,
More informationOverview. Rationale Division of labour between script and C++ Choice of language(s) Interfacing to C++ Performance, memory
SCRIPTING Overview Rationale Division of labour between script and C++ Choice of language(s) Interfacing to C++ Reflection Bindings Serialization Performance, memory Rationale C++ isn't the best choice
More informationCSS: The Missing Manual PDF
CSS: The Missing Manual PDF CSS lets you create professional-looking websites, but learning its finer points can be trickyâ even for seasoned web developers. This fully updated edition provides the most
More informationUniversity of Maine School of Computing and Information Science COS 470/570
University of Maine School of Computing and Information Science COS 470/570 Assignment 1: Lisp and Robot Familiarization Assigned 8/28 Due 9/13 This assignment is meant to familiarize you with the tools
More informationMagit-Popup User Manual
Magit-Popup User Manual for version 2.12.2 (v2.12.2-6-gbd04ebd+1) Jonas Bernoulli Copyright (C) 2015-2018 Jonas Bernoulli You can redistribute this document and/or modify it under the
More informationCPS221 Lecture: Operating System Functions
CPS221 Lecture: Operating System Functions Objectives 1. To overview key hardware concepts 2. To introduce the process concept 3. To discuss the various kinds of functionality of the OS last revised 8/25/11
More informationIntroduction to Linux Overview and Some History
Introduction to Linux Overview and Some History Computational Science and Engineering North Carolina A&T State University Instructor: Dr. K. M. Flurchick Email: kmflurch@ncat.edu Operating Systems and
More informationThe Xemacs Editor. Overview
The Xemacs Editor Editors are used to create and modify simple text files. The public domain editor emacs has achieved great popularity because of its many features and its wide availability. Emacs was
More informationGIT FOR SYSTEM ADMINS JUSTIN ELLIOTT PENN STATE UNIVERSITY
GIT FOR SYSTEM ADMINS JUSTIN ELLIOTT PENN STATE UNIVERSITY 1 WHAT IS VERSION CONTROL? Management of changes to documents like source code, scripts, text files Provides the ability to check documents in
More information25. DECUS Symposium THE Application Development Environment for OpenVMS
NetBeans THE Application Development Environment for OpenVMS Sunil Kumaran, Thomas Siebold Agenda What is NetBeans some history Major Features / Demonstrations NetBeans on OpenVMS Questions 5/2/2002 DECUS
More informationKnit, Chisel, Hack: Crafting with Guile Scheme. Andy Wingo ~ wingolog.org
Knit, Chisel, Hack: Crafting with Guile Scheme Andy Wingo ~ wingo@igalia.com wingolog.org ~ @andywingo I love craft! Woodworking Gardening Grow-your-own Brew-your-own Knit-your-own Sew-your-own Roast-your-own
More informationentity tomove over backward forward character C-b C-f word M-b M-f line C-p C-n go to line beginning (or end) C-a C-e sentence M-a M-e paragraph M- M-
Starting Emacs To enter GNU Emacs 21, just type its name: emacs To read in a file to edit, see Files, below. Leaving Emacs suspend Emacs (or iconify it under X) exit Emacs permanently Files read afileinto
More informationLab 1: Using Oz/Mozart IDE
Lab 1: Using Oz/Mozart IDE February 5, 2009 Using Oz/Mozart can be done in 2 ways: 1. interactive programming with OPI (Oz Programming Interface) (oz) 2. compiling Oz programs with Oz compiler (ozc) and
More informationGNU Guix: Scheme as a uniform OS admin and deployment interface
GNU Guix: Scheme as a uniform OS admin and deployment interface Ludovic Courtès Commercial Users of Functional Programming 24 September 2016, Nara, Japan $ guix package -i gcc-toolchain coreutils sed
More informationMake Your Own Webquest!!!
Make Your Own Webquest!!! 1. Do the following steps in MS Word first! 2. Save your Word.doc and all pictures in a folder on your flashdrive. 3. After completing all 6 steps below, copy and paste your webquest
More informationidris-mode: Idris interaction with emacs
idris-mode: Idris interaction with emacs Hannes Mehnert hannes@mehnert.org November 22, 2013 Abstract This document describes the interaction of the Idris compiler with the editor emacs, to facilitate
More informationLab 3, Part 1: Using Oz/Mozart IDE
Lab 3, Part 1: Using Oz/Mozart IDE February 22, 2012 Using Oz/Mozart can be done in 2 ways: 1. interactive programming with OPI (Oz Programming Interface) (oz) 2. compiling Oz programs with Oz compiler
More informationHandout: Handy Computer Tools
Handout: Handy Computer Tools T. Satogata: June 2011 USPAS Accelerator Physics June 13, 2011 This is a description of a few computational tools that I ve found to be very useful as a working physicist.
More information1B1a Programming I Getting Started
1B1a Programming I Getting Started Agenda Definitions. What is programming? What is Java? Writing your first program. Classes and Objects. 1 2 Reading You should be reading chapters 1 & 2 of the text book.
More informationLinux at the Command Line Don Johnson of BU IS&T
Linux at the Command Line Don Johnson of BU IS&T We ll start with a sign in sheet. We ll end with a class evaluation. We ll cover as much as we can in the time allowed; if we don t cover everything, you
More informationAn introduction to compiler construction and functional programming through the implementation of GNU epsilon
An introduction to compiler construction and functional programming through the implementation of GNU epsilon An LCR seminar LIPN - Universite Paris 13 Who I am and what I do here Introducing myself I
More informationA Byte of Python. Swaroop C H
A Byte of Python Swaroop C H A Byte of Python Swaroop C H Copyright 2003-2005 Swaroop C H Abstract This book will help you to learn the Python programming language, whether you are new to computers or
More informationIgniting QuantLib on a Zeppelin
Igniting QuantLib on a Zeppelin Andreas Pfadler, d-fine GmbH QuantLib UserMeeting, Düsseldorf, 7.12.2016 d-fine d-fine All rights All rights reserved reserved 0 Welcome Back!» An early stage of this work
More informationIntroduc+on. General Information. General Information. General Information. General Information. General Information
Introduc+on IT244 - Introduc+on to Linux / Unix Instructor: Bo Sheng Location and Time S-3-143, Mon & Wed, 4:00 ~ 5:15pm Door code: 261359* Office Hours Science Center, S-3-167, Mon & Wed, 2 ~ 4pm TA office
More informationText Editors for Programmers. Dr. Prasad Kulkarni Michael Jantz Jamie Robinson
Text Editors for Programmers Dr. Prasad Kulkarni Michael Jantz Jamie Robinson 1 Real Programmers 2 vim Based on vi vi written in 1976 and has become standard on Unix machines Basic design principles: Retains
More informationA Quick Introduction to Emacs. Jim Diamond CAR 409 Jodrey School of Computer Science Acadia University
A Quick Introduction to Emacs Jim Diamond CAR 409 Jodrey School of Computer Science Acadia University 1 Overview 2 Availability History Basic Concepts Psychoanalysis Built-In Help My Video Tutorial Keyboard
More informationEmacs manual:
Emacs manual: http://www.gnu.org/manual/emacs-20.3/html_mono/emacs.html GNU Emacs Reference Card (for version 19) Starting Emacs To enter GNU Emacs 19, just type its name: emacs or emacs filename Leaving
More informationCOMP1007 Principles of Programming
Agenda COMP1007 Principles of Programming Definitions. What is programming? What is Java? Writing your first program. Classes and Objects. 3 Reading Program You should be reading chapters 1 & 2 of the
More informationCS4023 Week04 Lab Exercise
CS4023 Week04 Lab Exercise Lab Objective: We will use this lab to log in to our Linux accounts and to look at some simple programs that perform a few elementary system calls. By the end of the lab we will
More informationCS350 : Operating Systems. General Assignment Information
CS350 : Operating Systems General Assignment Information 1 Introduction Assignments in CS350 are based on NachOS. NachOS is a workstation simulation, along with a simple operating system for the simulated
More informationPublic Meeting Agenda Formatting Best Practices
DEFINITIVE GUIDE Public Meeting Agenda Formatting Best Practices In this guide, we will first walk you through some best practices with text and images. Then, we will show you how to execute the best practices
More informationMastering Linux by Paul S. Wang Appendix: The emacs Editor
Mastering Linux by Paul S. Wang Appendix: The emacs Editor The emacs editor originally was developed at the MIT Laboratory for Computer Science. As emacs gained popularity, it was ported to UNIX and Linux
More informationVoluntary Product Access Template (VPAT) Kronos webta 4.x
Voluntary Product Access Template (VPAT) Kronos webta 4.x CHANGE RECORD DOCUMENT HISTORY Version Author (s) Revision Notes 05/03/2011 Ann Marie Kamensky Convert to Word template with Kronos branding and
More informationIntroduction to Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University
Introduction to Operating Systems Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics What is OS? History of OS 2 What is OS? (1) Application
More informationzembly An open platform for iphone/social applications Prakash Narayan Sun Microsystems, Inc.
zembly An open platform for iphone/social applications Prakash Narayan Sun Microsystems, Inc. http://blogs.sun.com/pnarayan Prakash.Narayan@sun.com zembly embracing change A new world: Software development
More informationCS 326: Operating Systems. Lecture 1
CS 326: Operating Systems Lecture 1 Welcome to CS 326! Glad to have you all in class! Lecture Information: Time: T, Th 9:55 11:40am Lab: M 4:45 6:20pm Room: LS G12 Course website: http://www.cs.usfca.edu/~mmalensek/cs326
More informationLinux shell scripting intro/review
Linux shell scripting intro/review David Morgan You should already know how to log in run programs at the command line use pipelines and redirection ( < > ) put jobs in the background ( & ) create and
More informationChapter-3. Introduction to Unix: Fundamental Commands
Chapter-3 Introduction to Unix: Fundamental Commands What You Will Learn The fundamental commands of the Unix operating system. Everything told for Unix here is applicable to the Linux operating system
More informationGPU Offline Shader Compiler. Mali. User Guide. Version: 2.2. Copyright 2009 ARM. All rights reserved. ARM DUI 0513A (ID101409)
Mali GPU Offline Shader Compiler Version: 2.2 User Guide Copyright 2009 ARM. All rights reserved. ARM DUI 0513A () Mali GPU Offline Shader Compiler User Guide Copyright 2009 ARM. All rights reserved. Release
More informationThere Will Be Code or EMACS, VHDL & Templates,
There Will Be Code or EMACS, VHDL & Templates, Nigel Gunton; September 2008, 2014 Depar tment of Engineering Design & Mathematics Grouping Prerequisites Courses Requirements Summar y Duration Individual
More informationComputer Networks Vim and Emacs. Seongjin Lee
2019-01 Computer Networks 407-202 Vim and Emacs Seongjin Lee Vim 2 Contents What is vi Modes of Vi Moving Around and Dele7ng in vi Replacing, Searching, and Subs7tu7ng in vi Undo and Redo in vi Simple
More informationRead & Download (PDF Kindle) The Art Of UNIX Programming
Read & Download (PDF Kindle) The Art Of UNIX Programming The Art of UNIX Programming poses the belief that understanding the unwritten UNIX engineering tradition and mastering its design patterns will
More informationThe goal of this book is to teach you how to use Adobe Integrated
Clearing the AIR The goal of this book is to teach you how to use Adobe Integrated Runtime (AIR) to create desktop applications. You can use JavaScript or ActionScript to develop AIR applications, and
More informationLinux Desktop Pocket Guide Download Free (EPUB, PDF)
Linux Desktop Pocket Guide Download Free (EPUB, PDF) While Mac OS X garners all the praise from pundits, and Windows XP attracts all the viruses, Linux is quietly being installed on millions of desktops
More informationIntroduction to writing GNU Emacs native modules Extending Emacs in C or other languages. Aurélien Aptel SUSE Labs / Samba team
Introduction to writing GNU Emacs native modules Extending Emacs in C or other languages Aurélien Aptel SUSE Labs / Samba team GNU Emacs Editor of the Emacs family Written in 1976 by
More informationPower Editing: Hoxie Ackerman. April 1, Building a Productive Editing Environment for Yourself
: Building a Productive Editing Environment for Yourself Hoxie Ackerman UC Berkeley Department of Statistics Student Productivity Seminar April 1, 2011 Goals of This Talk Goals of This Talk 1 Spark interest
More informationShell Script Programming 2
Shell Script Programming 2 David Morgan Useful capabilities parameter processing validation usage checking user input custom functions filenames decomposition, tempnames, random names action hinged on
More informationAjax On Rails: Build Dynamic Web Applications With Ruby By Scott Raymond READ ONLINE
Ajax On Rails: Build Dynamic Web Applications With Ruby By Scott Raymond READ ONLINE Let's take a look at how we can accomplish this with AJAX in Rails. Overall, I was quite surprised at how easy it is
More informationChapter 3: Processes
Chapter 3: Processes Silberschatz, Galvin and Gagne 2013 Chapter 3: Processes Process Concept Process Scheduling Operations on Processes Interprocess Communication Examples of IPC Systems Communication
More informationIntroduction to Operating Systems. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University
Introduction to Operating Systems Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Why OS? 2 What is an OS? Software that converts hardware into
More informationIntroduction to Unix The Windows User perspective. Wes Frisby Kyle Horne Todd Johansen
Introduction to Unix The Windows User perspective Wes Frisby Kyle Horne Todd Johansen What is Unix? Portable, multi-tasking, and multi-user operating system Software development environment Hardware independent
More informationGetting Started with Python
Getting Started with Python Python is a general purpose, high level programming language that is used in a variety of application domains. The Python language has a very clear and expressive syntax as
More informationbigguyinabowtie.com Presentation can be found at bigguyinabowtie.com/google Things to Check Out
Presentation can be found at /google Things to Check Out Websites ksuiteach.org seeedudifferently. com corecs.tech http://bit.ly/ bigguybowtievideo @bigguyinabowtie @bigguyinabowtie @bigguyinabowtie Idea
More informationMAKING OPEN SOURCE ROBOTICS APPROACHABLE -- THE FUTURE IS NOW! James Ketrenos Embedded Linux Conference, Dublin, 2015
MAKING OPEN SOURCE ROBOTICS APPROACHABLE -- THE FUTURE IS NOW! James Ketrenos I, ROBOT: A Pseudo History A little bit about me... Intel Open Source Technology Center Portland, Oregon Where are all the
More informationOPERATING SYSTEMS. Goals of the Course. This lecture will cover: This Lecture will also cover:
OPERATING SYSTEMS This lecture will cover: Goals of the course Definitions of operating systems Operating system goals What is not an operating system Computer architecture O/S services This Lecture will
More informationSenthil Kumaran S
Senthil Kumaran S http://www.stylesen.org/ Agenda History Basics Control Flow Functions Modules History What is Python? Python is a general purpose, object-oriented, high level, interpreted language Created
More informationSync Points in the Intel Gfx Driver. Jesse Barnes Intel Open Source Technology Center
Sync Points in the Intel Gfx Driver Jesse Barnes Intel Open Source Technology Center 1 Agenda History and other implementations Other I/O layers - block device ordering NV_fence, ARB_sync EGL_native_fence_sync,
More informationCOSC243 Part 2: Operating Systems
COSC243 Part 2: Operating Systems Lecture 14: Introduction, and history of operating systems Zhiyi Huang Dept. of Computer Science, University of Otago Zhiyi Huang (Otago) COSC243 Lecture 14 1 / 27 General
More informationLab 4: Interrupts and Realtime
Lab 4: Interrupts and Realtime Overview At this point, we have learned the basics of how to write kernel driver module, and we wrote a driver kernel module for the LCD+shift register. Writing kernel driver
More informationCPS221 Lecture: Operating System Functions
CPS221 Lecture: Operating System Functions Objectives last revised 6/23/10 1. To overview key hardware concepts 2. To iintroduce the process concept 3. To discuss the various kinds of functionality of
More informationToday. Operating System Evolution. CSCI 4061 Introduction to Operating Systems. Gen 1: Mono-programming ( ) OS Evolution Unix Overview
Today CSCI 4061 Introduction to s Instructor: Abhishek Chandra OS Evolution Unix Overview Unix Structure Shells and Utilities Calls and APIs 2 Evolution How did the OS evolve? Dependent on hardware and
More informationCptS 360 (System Programming) Unit 3: Development Tools
CptS 360 (System Programming) Unit 3: Development Tools Bob Lewis School of Engineering and Applied Sciences Washington State University Spring, 2018 Motivation Using UNIX-style development tools lets
More informationVersion Control with Git
Version Control with Git Methods & Tools for Software Engineering (MTSE) Fall 2017 Prof. Arie Gurfinkel based on https://git-scm.com/book What is Version (Revision) Control A system for managing changes
More informationFree & Open Source Software: The Academic Future
Free & Open Source Software: The Academic Future Paul E. Johnson University of Kansas http://lark.cc.ku.edu/~pauljohn Presentation at Ukrainian National University of L'viv May 27, 2005
More informationInstalling CEA on an Intel Mac
Installing CEA on an Intel Mac Jonah Zimmerman April 20, 2012 1 Introduction Chemical Equilibrium with Applications (CEA) is a computer program published by NASA Glenn with the purpose of calculating chemical
More informationSOFTWARE UNIT 1 PART B C O M P U T E R T E C H N O L O G Y ( S 1 O B J A N D O B J 3-2)
SOFTWARE UNIT 1 PART B C O M P U T E R T E C H N O L O G Y ( S 1 O B J 2 2-3 A N D O B J 3-2) DIGITAL LITERACY STANDARD 1 OBJECTIVE 3 Explore and demonstrate understanding of managing operating systems
More informationIntroduction to Linux
Introduction to Linux University of Bristol - Advance Computing Research Centre 1 / 47 Operating Systems Program running all the time Interfaces between other programs and hardware Provides abstractions
More informationIntermediate Programming, Spring Misha Kazhdan
600.120 Intermediate Programming, Spring 2017 Misha Kazhdan Outline Unix/Linux command line Basics of the Emacs editor Compiling and running a simple C program Cloning a repository Connecting to ugrad
More informationCopyright 2007, GemStone Systems Inc. All Rights Reserved.
1 But first, a Word from our Sponsors Some highlights since last year TimeZone patch for 6.x GemStone/S 64 Bit releases 1.1.7 to 1.1.14 2.0.4, 2.0.5 2.1.0 to 2.1.5 2.2.0 to 2.2.2 (August 2007) 2 GemStone
More informationHow to Stay Safe on Public Wi-Fi Networks
How to Stay Safe on Public Wi-Fi Networks Starbucks is now offering free Wi-Fi to all customers at every location. Whether you re clicking connect on Starbucks Wi-Fi or some other unsecured, public Wi-Fi
More informationTechnical Brief Exporting a List of Device MAC Addresses from Xcalibur Global Document Version 1.0
Technical Brief Exporting a List of Device MAC Addresses from Xcalibur Global Document Version 1.0 August 2006 2006 Chip PC (UK) Ltd., Chip PC (Israel) Ltd. All rights reserved. The information contained
More informationhttp://xkcd.com/208/ 1. Review of pipes 2. Regular expressions 3. sed 4. Editing Files 5. Shell loops 6. Shell scripts cat seqs.fa >0! TGCAGGTATATCTATTAGCAGGTTTAATTTTGCCTGCACTTGGTTGGGTACATTATTTTAAGTGTATTTGACAAG!
More informationMendeley quick start guide
Mendeley quick start guide UCL Library Services, Gower St., London WC1E 6BT 020 7679 7793 E-mail: library@ucl.ac.uk Web www.ucl.ac.uk/library/ Mendeley allows you to collect, manage, share and use references
More informationSaint Louis University. Intro to Linux and C. CSCI 2400/ ECE 3217: Computer Architecture. Instructors: David Ferry
Intro to Linux and C CSCI 2400/ ECE 3217: Computer Architecture Instructors: David Ferry 1 Overview Linux C Hello program in C Compiling 2 History of Linux Way back in the day: Bell Labs Unix Widely available
More informationRetroBSD and LiteBSD: Meet the Smallest BSDs. Brian Callahan New York City *BSD User Group July 2016 meeting
RetroBSD and LiteBSD: Meet the Smallest BSDs Brian Callahan New York City *BSD User Group July 2016 meeting First thing s first Interrupt me if you have questions. About me George continues
More informationSimplified CICD with Jenkins and Git on the ZeroStack Platform
DATA SHEET Simplified CICD with Jenkins and Git on the ZeroStack Platform In the technical article we will walk through an end to end workflow of starting from virtually nothing and establishing a CICD
More informationSTEAM Clown & Productions Copyright 2017 STEAM Clown. Page 1
What to add next time you are updating these slides Update slides to have more animation in the bullet lists Verify that each slide has stand alone speaker notes Page 1 Python 3 Introduction A Python class
More informationWhy Discuss JavaScript? CS312: Programming Languages. Lecture 21: JavaScript. JavaScript Target. What s a Scripting Language?
Why Discuss JavaScript? CS312: Programming Languages Lecture 21: JavaScript Thomas Dillig JavaScript is very widely used and growing Any AJAX application heavily relies on JavaScript JavaScript also has
More informationHandout: Handy Computer Tools
Handout: Handy Computer Tools T. Satogata: January 2017 USPAS Accelerator Physics January 2017 This is a description of a few computational tools that I ve found to be useful as a working physicist. This
More informationCS350 : Operating Systems. General Assignment Information
CS350 : Operating Systems General Assignment Information 1 Introduction Assignments in CS350 are based on OS/161 (os161) running on System/161 (sys161). System/161 is a workstation simulation, and OS/161
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2016 Lecture 5 Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 User Operating System Interface - CLI CLI
More informationGOOGLE TIES MOBILE USABILITY ISSUES WITH YOUR WEBSITE RANKINGS GOOGLE NOW SHOWS SOCIAL PROFILES IN THE KNOWLEDGE PANEL
Your Your Company Logo Logo GOOGLE TIES MOBILE USABILITY ISSUES WITH YOUR WEBSITE RANKINGS GOOGLE NOW SHOWS SOCIAL PROFILES IN THE KNOWLEDGE PANEL GOOGLE RECONSIDERATION REQUESTS DOCUMENTATION ADDS STEP-BY-STEP
More informationFunctional Programming in Haskell for A level teachers
Functional Programming in Haskell for A level teachers About this document Functional Programming is now part of the A level curriculum. This document is intended to get those who already have some programming
More informationTechnology, E-Textbooks and BYOD Initiative at The Webb School
Technology, E-Textbooks and BYOD Initiative at The Webb School Does a student need his/her own email account? Yes, each student needs his/her own email account. Many digital text books are delivered to
More informationLecture 1 Introduction to Android. App Development for Mobile Devices. App Development for Mobile Devices. Announcement.
CSCE 315: Android Lectures (1/2) Dr. Jaerock Kwon App Development for Mobile Devices Jaerock Kwon, Ph.D. Assistant Professor in Computer Engineering App Development for Mobile Devices Jaerock Kwon, Ph.D.
More information