HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
PDP-10
its
Assembly2017–2026
PDP-10 / its

its

Incompatible Timesharing System

23Distinct people
76Mentions
0Explicit recommenders
963GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Incompatible Timesharing System

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 11:19:25 AM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year76 dated mentions

Observed mentions: 2017-01-24 01:14:25 UTC to 2026-09-12 02:00:03 UTC.

051015202017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments20172018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 6 mentions; 0 submissions, 6 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 6 mentions; 1 submissions, 5 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 9 mentions; 0 submissions, 9 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 8 mentions; 1 submissions, 7 comments20212022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 7 mentions; 1 submissions, 6 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 19 mentions; 2 submissions, 17 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 11 mentions; 2 submissions, 9 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 5 mentions; 1 submissions, 4 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC211
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC606
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC615
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC909
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC817
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC716
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC19217
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC1129
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC514
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC303

From the project README

An excerpt from the repository, fetched Nov 13, 2026.

Read the project’s introduction
Incompatible Timesharing System About ITS ITS, the Incompatible Timesharing System, is an operating system for the PDP-10 computer family. It was created by hackers at MIT in the 1960s. The MIT site was shut down in 1990, but enthusiasts continue to operate ITS systems to this day. Some notable ITS features: Hosted the first versions of Emacs, Zork, Macsyma, Maclisp, Scheme, and multi-player Maze War Virtual memory User-space device drivers Networking: TCP/IP, ARPAnet, Chaosnet Transparent network file system Terminal-independent text output Graphical workstations There is a mailing list for discussion about ITS. Go to http://its.victor.se/mailman/listinfo/its-hackers_its.victor.se for more information. About this project This repository contains source code, tools, and scripts to build an ITS system from scratch. The goals are: To provide an automated build from start to end. No user intervention is necessary. To check which programs have source code, and which programs are missing source code. To ensure that we know how to build all programs. To update programs with the latest bug fixes and enhancements. To be able to set configurable options across the whole system, such as host name, IP address, hardware devices. The build currently runs on the SIMH and KLH10 emulators. Of course, we'd be delighted to test this on a real KS10. Building To build ITS with this repository, you need some tools installed; see the table below. Ensure all submodules are checked out, and then type make EMULATOR=simh, make EMULATOR=pdp10-ka, make EMULATOR=pdp10-kl, make EMULATOR=pdp10-ks, or make EMULATOR=klh10. This will leave built files in the out directory, some of which are disk images with ITS installed. Emulator Dependencies klh10 git, c compiler, make, expect, curses, autoconf simh git, c compiler, make, expect, curses, autoconf, sdl2 pdp10-ka git, c compiler, make, expect, curses, autoconf, sdl2, sdl2-image, sdl2-net, gtk3 pdp10-kl git, c compiler, make, expect, curses, autoconf, sdl2, sdl2-image, gtk3 pdp10-ks git, c compiler, make, expect, curses, autoconf, sdl2 Usage To start ITS, type ./start. If you see KLH10#, type go and Enter. If you see the DSKDMP prompt, type its, press Enter, and then ESCG. If you use the pdp10-kl emulator there is no prompt and you need to type ESCL ITS, press Enter, and then ESCG. Eventually, you will see SYSTEM JOB USING THIS CONSOLE. You are now ready to log in, so type CTRLZ. See doc/DDT.md for a list of useful commands. Alternatively to logging in directly in the system console window, which will always be displaying daemon messages, you may prefer to use a separate terminal session for logging in. To do this just run telnet localhost <port> from another shell window and press CTRLZ to log in there. The port should be determined as per this list: Port Type Emulator 10000 TK10 pdp10-ka 10002 Datapoint kludge pdp10-ka 10003 Morton box pdp10-ka 10004 DZ11 simh, pdp10-ks 10007 DTE2 pdp10-kl 10008 DL10 (pdp10-kl in the future?) To shut down ITS, type :lock and then 5down. Log yourself out to avoid the 5 minute grace period: type :logout. When ITS writes SHUTDOWN COMPLETE, it's safe to stop the emulator. Press CTRL\ to escape to the simulator command prompt and quit to close it. If you had a separate telnet user session running you can similarly press CTRL[ and then exit telnet. ITS can optionally use some additional peripheral devices. To attach a simulated GT40 graphics terminal, type ./start gt40. If you run the KA10 emulator, you can use the Knight TV raster display by typing ./start tv11 tvcon. On a TV, type F1 instead of CTRLZ. Here is an overview of the repository: bin - PDP-10 binary files necessary to bootstrap the system. build - build scripts. conf - configuration for building ITS. doc - documentation, most of which appear in the INFO system. src - source code for ITS and all programs. tools - build tools. out - build output. user - optional user files installed in ITS. Terminal Emulators Several emulators for terminals and peripheral processors are built along with ITS. They can be started conveniently with the start script, or separately. Not all terminal emulators are set up to work with all PDP-10 emulators by default. Name Description Type klh10 pdp10-ka pdp10-kl pdp10-ks simh type340 Type 340 vector no yes no no no gt40 GT40 PDP-11 vector no yes no yes yes imlac Imlac PDS-1 vector no yes no no no simh_imlac Imlac PDS-1 vector no yes no no no tv11 Knight TV PDP-11 cpu no yes no no no tvcon Knight TV console raster no yes no no no datapoint Datapoint 3300 text no yes no no no vt52 VT52 text no yes yes yes yes tek Tektronix 4010 vector no yes yes no no Documentation See the doc subdirectory for documentation. There are some short introductions for beginners: How to create a new user DDT cheat sheet for Unix users Basic editing with EMACS TECO survival guide DDT debugging newbie guide Hello MIDAS Hello Maclisp Introduction to Muddle DUMP and itstar Games Printing Assembling ITS Com link mode Logo PDP-6 Networking A list of known ITS machines. How ITS is built. Applications Some major applications: Adventure, game C10, C compiler CLU, programming language. DDT, debugger Emacs, editor Logo, interpreter Mac Hack VI and Tech II, chess programs Maclisp, interpreter and compiler Muddle, interpreter Macsyma, symbolic math Maze War, game Midas, assembler Muscom and musrun, for playing music PDP-11 simulator Scheme, interpreter Spacewar!, game Stanford University Drawing System TECO, editor TOPS-10 and WAITS emulator There is a detailed list of all installed programs.
Read the full README on GitHub

What Hacker News says

6 sources
I am grateful to the MIT AI Lab, whose Tourist Policy enabled me and other lucky people to use MIT's computers for free, and to be inspired by Zork, Logo, Lisp, and all the great people at the MIT-AI Lab and the community they attracted. https://medium.com/@donhopkins/mit-ai-lab-tourist-policy-f73... With commands like :WHOIS, :WHOJ, :LUSER, :SEND, :OS, :PEEK and :UNTALK, ITS was the original social network. In the HN "The Enduring Legacy of Zork" discussion, another tourist ZEMON told me he used the same NBS TIP as I did, to dial into the ARPANET without a password, connect to MIT-DM, :OS spy on other people playing Zork until it was your turn, then finally play Zork while the other people waiting watched. MIT-DM was like a 300 BAUD ASCII version of Twitch! Then he got seduced by networking and Lisp -- and he still uses Emacs too! https:
Read the rest
//news.ycombinator.com/item?id=15081626 >MIT's friendly, unparanoid attitude towards people using their systems and basically just digging their technology was very formative in my career. Zork was the hook. I came to play adventure games, I stayed to learn Emacs and a bit about networking and LISP. I don't use PDP-10s anymore, but I work in the games industry, use Emacs every hour of my working day, and wish I could write more production LISP (though if you squint at Javascript just right...) At the lab, the Knight TV displays let you watch anyone else's screen, and there was global "free display" screen saver showing all logged in users, what they were doing, where they were, free Lisp Machines, and other useful information, like the time and birthday announcements. They could also buzz open the door from the elevator lobby, and summon the elevator to your floor! http://dspace.mit.edu/bitstream/handle/1721.1/41180/AI_WP_23... (page 22) https://github.com/PDP-10/its/issues/279 ROBG was interviewed in the "Get Lamp" documentary on Zork, and eloquently described the experience. https://archive.org/details/getlamp-rgriffiths >Rob is a perfect example of the benefits of not going just for "names" in a documentary about a wide-ranging subject - nothing on his resume says he was a big text adventure game player or person who was at the beginning of Zork. But there he was, a kid who had gotten into the MIT lab and seen early Zork being played and the effect it was having on the students and computer lab users. He was articulate and provided a wonderful dash of emotion into the descriptions which I used liberally in GET LAMP. He had a number of printouts which I also filmed (but didn't use). Many documentaries wouldn't count "just a player" as worth interviewing - Rob is proof that approach is short-sighted indeed. http://www.getlamp.com/
In Logo Adventure for C64 Terrapin Logo
Thank you so much for porting it, and also for sharing your port and the code! I actually had an Apple ][ myself, but I never got around to porting it back to Apple Logo. Alexey-Slyusar has ported my old Logo Adventure to LLOGO on ITS running on a PDP-10 emulator! https://github.com/PDP-10/its/issues/1268#issuecomment-42793... https://github.com/PDP-10/its/pull/884 For what's worth, running Logo Adventure in Apple Logo on an Apple ][ emulator is much more efficient and uses a whole lot less memory (8 bits instead of 36 bits) than running Logo Adventure in MacLisp LLOGO on ITS in a PDP-10 emulator! But both are awesome in their own way! Thanks to all that extra memory, your friends can log into ITS on the PDP-10 emulator as RMS (password RMS), and run :OS (Output Spy) to watch you play Logo Adventure, and EMACS the source code. :OS'ing on
Read the rest
other players was how I learned to play Zork on MIT-DM. ITS was the original social network.
In Logo Adventure for C64 Terrapin Logo
https://github.com/PDP-10/its/issues/1268 Alexey-Slyusar commented on 9 Oct I know that the Adventure game code is not fully functional. But it has interesting functional programming elements. Logo world has purely functional code examples such Albert Cuoco's Investigations in Algebra (I read the book in short parts that available from Google Books, but I believe that it is true for all book's code. I've tried to get the whole book in hard copy but unsuccessful - international book delivery in Amazon is just terrible). And some examples in Brian Harvey's wonderful CSLS trilogy. (Which I am continuing to learn). And am I right that the LISP LOGO implementation written in not fully functional way? SimHacker commented 29 days ago There are several meaning of "functional", and the Adventure game might be a good way to help explain that. One s
Read the rest
ense is simply that something works, and is not broken. Another sense is that something manipulates functions, which it does. A deeper sense is that it manipulates functions and data in a particularly constrained way, without side effects, using read-only data, which it doesn't. It uses a mutable model of the world. The rooms and connections between them don't change, but you could add mud-like authoring and editing commands like "dig Room", "link Room Direction" to edit the room model. You edit the item model when you drop or pick up an item, by mutating its room number. Another aspect of the model is the player's room number, which you change by moving from room to room. And yet another aspect of the model is the value of the pronoun "it", which gets set to the last item you said by name, because that name is actually bound to a function that sets "it" to the item name and returns the same item name. Nouns remember themselves in the global pronoun "it". Side effects like changing global variables is not good functional oriented programming style, but it gets the job done. And the way it does it is by dynamically manipulating and defining and naming functions for each item. But it's actually just a trick that lets us use the Logo top level interpreter conveniently without writing our own parser! Logo lets you program in a mix of procedural and functional styles, and has its own parser that we can build on top of to define "Dungeon Domain Specific Languages". Off the top of my head I can't think of a way to implement a purely functional adventure game! But it might be like heaven, which is a place where nothing ever happens.
In Logo Adventure for C64 Terrapin Logo
Author here! Alexey-Slyusar has ported my old Logo Adventure to LLOGO on ITS running on a PDP-10 emulator! https://github.com/PDP-10/its/issues/1268#issuecomment-42793... https://user-images.githubusercontent.com/42380964/46626903-... Now that it’s running on a vastly more powerful computer than the C64 (like a PDP-10), it’s finally possible to add additional rooms and items, more magic, and maybe even a maze! ;) Maybe even a Wumpus-like turtle that wanders from room to room and attacks you with its pen, which is mightier than your sword! ;) Another thing that REALLY inspires me, which goes a hell of a lot further than NeWS ever did, and is one of the best uses of JavaScript I've ever seen, is the Snap! visual programming language! https://snap.berkeley.edu Snap! is a visual "blocks" programming language like Scratch, but with the full po
Read the rest
wer of Scheme: First class functions. Visual lexical closures. User defined blocks including control structures. Macros and special forms. Call with current continuation! Written in JavaScript and easy to integrate with JavaScript libraries. It's the culmination of years of work by Brian Harvey and Jens Mönig and other Smalltalk and education experts. It benefits from their experience and expert understanding about constructionist education, Smalltalk, Scratch, E-Toys, Lisp, Logo, Star Logo, and many other excellent systems. Snap! takes the best ideas, then freshly and coherently synthesizes them into a visual programming language that kids can use, but is also satisfying to professional programmers, with all the power of Scheme (lexical closures, special forms, macros, continuations, user defined functions and control structures), but deeply integrating and leveraging the web browser and the internet (JavaScript primitives, everything is a first class object, dynamically loaded extensions, etc). Here's an excellent mind-blowing example by Ken Kahn of what's possible: teaching kids AI programming by integrating Snap! with existing JavaScript libraries and cloud services like AI, machine learning, speech synthesis and recognition, Arduino programming, etc: AI extensions of Snap! for the eCraft2Learn project https://ecraft2learn.github.io/ai/ >The eCraft2Learn project is developing a set of extensions to the Snap! programming language to enable children (and non-expert programmers) to build AI programs. You can use all the AI blocks after importing this file into Snap! or Snap4Arduino. Or you can see examples of using these blocks inside this Snap! project. https://github.com/ecraft2learn/ai http://lntrg.education.ox.ac.uk/presentation-of-ai-cloud-ser...
In Logo Adventure for C64 Terrapin Logo
It also mentions BIBOP LISP: BIg Bag Of Pages (OR (BOUNDP 'BIBOP) (SETQ BIBOP ITS)) ;;THE TURTLE PACKAGE IS GOING TO EAT LOTS OF FLONUM SPACE, SO IN BIBOP LISP, ASSURE ;;THAT ENOUGH WILL BE AVAILABLE. (AND (MEMQ 'BIBOP (STATUS FEATURES)) (ALLOC '(FLONUM (2000. 4000. NIL) FLPDL 2000.))) https://www.saildart.org/BIBOP.RPG[UP,DOC]4 BIBOP is the dynamically expandable version of MACLISP, the SAIL standard MACLISP. Essentially, the main advantage of BIBOP is that whenever one of the expandable spaces runs out of space, BIBOP requests a larger core allocation from the monitor and the delinquent space grows in the allocated memory. December 1973; updated March 1974 The (in)famous "Bibop" (pronounced "bee-bop") LISP scheme has been available for some time now and seems to be more or less reliable. Bibop means "BIg Ba
Read the rest
g Of Pages", a reference to the method of memory management used to take advantage of the memory paging features of ITS. The average LISP user should not be greatly affected in converting to this new LISP (which very eventually will become the standard LISP, say in a few months). https://ml.cddddr.org/lispnews/lispnews-19740213.html WEDNESDAY FEB 13,1974 FM+7D.3H.28M.38S. LISP 746 - GLS - AS OF VERSION 746, LISP SYSTEMS OF THE SAME VERSION WILL SHARE PAGES AMONG THEMSELVES; I.E. A LISP, MACSYMA, AND CONNIVER CAN ALL SHARE PAGES COMMON TO THE LISP SYSTEM. BIBOP LISP HAS BEEN GREATLY RESTRUCTURED; I WILL RE-EDIT THE BIBOP DOCUMENT AS SOON AS I CAN (SAY WITHIN THE NEXT WEEK). -- GLS https://github.com/PDP-10/its/search?q=BIBOP&unscoped_q=BIBO... There's nothing easier on the eyes than some good old fashioned PDP-10 Midas assembler MacLisp source code!
In The Apple II Source Code for the LOGO Language Found

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.