# HG changeset patch # User Steve Losh # Date 1482947227 18000 # Node ID 0f57fe590e907b65512ea6fc39dae0ce9949dffd # Parent ce11a64d569c874cdbf3a95cb7288b4e49636265 Add project page diff -r ce11a64d569c -r 0f57fe590e90 content/about/index.markdown --- a/content/about/index.markdown Mon Dec 26 14:15:14 2016 -0500 +++ b/content/about/index.markdown Wed Dec 28 12:47:07 2016 -0500 @@ -15,69 +15,3 @@ [Twitter]: http://twitter.com/stevelosh/ [BitBucket]: http://bitbucket.org/sjl/ [GitHub]: http://github.com/sjl/ - -Programming ------------ - -I went to [Rochester Institute of Technology](http://rit.edu/) for a degree in -Computer Science. - -I've done a lot of different things in the field so far. Right now the things -that are captivating me are artificial intelligence and clean, simple, -*useful* web applications. - -I find programming beautiful. That might sound strange, but there are aspects -of programming and math that I can't describe any other way. - -You can take a look at my [projects][] to see some of the major stuff I've -worked on, or cut to the chase and look at [my BitBucket account][BitBucket]. - -[projects]: /projects/ - -Photography ----------- - -I like photographing people. Other things as well, but especially people. -I tend to gravitate toward the "art" aspects of photography more than the -"journalism" aspects, but I can appreciate both. - -I shoot digital and film (35mm and medium format) depending on my time limits -and mood. I develop film in my bathroom and print it in a rented darkroom. -When I print digital I use a lab nearby; I don't have the money for a -professional printer just yet. - -Dancing -------- - -I teach blues dancing here in Rochester as part of [Lady Luck Blues][]. -I started blues dancing a few years ago and haven't stopped since. My favorite -aspect of dancing is connection and blues seems to bring that out more than any -other dance. - -I've also been swing dancing for about seven years. My first love is Lindy Hop; I -go to classes, workshops and exchanges as often as my schedule and budget will -allow. - -Lately I've begun getting my feet wet in tango. Whether it'll ever become as -important to me as blues or Lindy remains to be seen. - -[Lady Luck Blues]: http://ladyluckblues.com/ - -Music ------ - -I play electric and upright bass. I've played in a metal band in the past, but -right now my focus is on jazz and blues. - -I DJ at swing and blues dances fairly often. My taste is pretty broad, and -I'll cater to whatever the floor wants, but I tend to personally enjoy -slightly down-tempo, small-group music. Let me know if you need a DJ for a -dance. - -About the Site ------------ - -If you want to know more about my site you should check out the [blog -post][hyderewrite] about how I rewrote it. - -[hyderewrite]: /blog/2010/01/moving-from-django-to-hyde/ diff -r ce11a64d569c -r 0f57fe590e90 content/blog/2016/12/chip8-debugging-infrastructure.markdown --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/content/blog/2016/12/chip8-debugging-infrastructure.markdown Wed Dec 28 12:47:07 2016 -0500 @@ -0,0 +1,47 @@ ++++ +title = "CHIP-8 in Common Lisp: Debugging Infrastructure" +snip = "What's happening inside this computer?" +date = 2016-12-31T18:50:00Z +draft = true + ++++ + +Our [CHIP-8][] emulator in Common Lisp is coming along nicely. It can play +games, and in the last post we added a disassembler so we can dump the code of +ROMs. + +In this post we'll add some low-level debugging infrastructure so we can set +breakpoints and step through code. + +The full series of posts so far: + +1. [CHIP-8 in Common Lisp: The CPU](http://stevelosh.com/blog/2016/12/chip8-cpu/) +2. [CHIP-8 in Common Lisp: Graphics](http://stevelosh.com/blog/2016/12/chip8-graphics/) +3. [CHIP-8 in Common Lisp: Input](http://stevelosh.com/blog/2016/12/chip8-input/) +4. [CHIP-8 in Common Lisp: Sound](http://stevelosh.com/blog/2016/12/chip8-sound/) + +The full emulator source is on [BitBucket][] and [GitHub][]. + +[CHIP-8]: https://en.wikipedia.org/wiki/CHIP-8 +[BitBucket]: https://bitbucket.org/sjl/cl-chip8 +[GitHub]: https://github.com/sjl/cl-chip8 + +
+ +## Architecture + +## The Debugger Data Structure + +## Pausing + +## Stepping + +## Printing + +## Breakpoints + +## UI + +## Result + +## Future diff -r ce11a64d569c -r 0f57fe590e90 content/blog/2016/12/chip8-sound.markdown --- a/content/blog/2016/12/chip8-sound.markdown Mon Dec 26 14:15:14 2016 -0500 +++ b/content/blog/2016/12/chip8-sound.markdown Wed Dec 28 12:47:07 2016 -0500 @@ -155,18 +155,6 @@ We could have used a lock from bordeaux threads to manage this portably (though more slowly), but I wanted to play around with SBCL's concurrency stuff. -Finally we just need to start up the timer thread: - -```lisp -(defun run (rom-filename) - (let ((chip (make-chip))) - (setf *c* chip) - (load-rom chip rom-filename) - (bt:make-thread (curry #'run-cpu chip)) - (bt:make-thread (curry #'run-timers chip)) ; NEW - (chip8.gui.screen::run-gui chip))) -``` - [SBCL manual]: http://www.sbcl.org/manual/#Atomic-Operations ## Sound From Scratch diff -r ce11a64d569c -r 0f57fe590e90 content/projects/index.markdown --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/content/projects/index.markdown Wed Dec 28 12:47:07 2016 -0500 @@ -0,0 +1,98 @@ ++++ +date = "2016-12-27T12:00:11Z" +draft = true +title = "Projects" + ++++ + +The following is a list of projects I've created. They're grouped by +maintenance status: + +* [Actively Maintained](#actively-maintained) +* [Looking for Maintainers](#looking-for-maintainers) +* [Transferred Ownership](#transferred-ownership) +* [Finished](#finished) +* [Deprecated/Abandoned](#deprecated-abandoned) + +## Actively Maintained + +These are projects that I'm actively maintaining (for now). I'll accept patches +for them when I have the time. + +* [badwolf](https://github.com/sjl/badwolf/) is a Vim color scheme. +* [beast](https://sjl.bitbucket.org/beast/) is a Basic Entity/Aspect/System Toolkit for Common Lisp. +* [bookmarkdown](https://sjl.bitbucket.org/) is an experimental tool for writing books in Markdown. +* [cl-digraph](https://sjl.bitbucket.org/cl-digraph/) is a simple directed graph implementation for Common Lisp. +* [cl-ggp](http://sjl.bitbucket.org/cl-ggp/) is a tiny framework for writing GGP players in Common Lisp. +* [cl-losh](https://github.com/sjl/cl-losh/) is my utility belt library for Common Lisp. +* [cl-nrepl](https://github.com/sjl/cl-nrepl) is a bare-bones NREPL server for Common Lisp. +* [clam.vim](https://github.com/sjl/clam.vim) is a lightweight Vim plugin for working with shell commands. +* [d](http://sjl.bitbucket.org/d/) is a tool for writing documentation in Markdown. +* [friendly-find](https://github.com/sjl/friendly-find) is a friendlier `find(1)`. +* [gdl.vim](https://github.com/sjl/gdl.vim) is a Vim plugin for writing GDL files. +* [gundo.vim](http://sjl.bitbucket.org/gundo.vim/) is a Vim plugin to visualize your undo tree. +* [hg-prompt](https://bitbucket.org/sjl/hg-prompt/) is a Mercurial plugin to view repository information, designed to be used in a shell prompt. +* [Learn Vimscript the Hard Way](http://learnvimscriptthehardway.stevelosh.com) is a book about Vimscript. [peat](https://github.com/sjl/peat) repeats shell commands. +* [sand](https://github.com/sjl/sand) is my personal Common Lisp sandbox. +* [strftimedammit.vim](https://github.com/sjl/strftimedammit.vim) is a single Vim documentation file that lists strftime-like formatting characters for a variety of languages. +* [temperance](http://sjl.bitbucket.org/temperance/) is a logic programming library for Common Lisp. +* [t](https://github.com/sjl/t) is a command-line todo list manager for people that want to finish tasks, not organize them. +* [vim-bencode](https://bitbucket.org/sjl/vim-bencode) is a Vim plugin to handle encoding/decoding Bencoded data. + +## Looking for Maintainers + +These projects are ones that I started but no longer have the time or motivation +to maintain. + +I think they could still be useful to people, so if you're interested in taking +over ownership of them please let me know. My only requirement is that you keep +the license the same. + +* [clojure-lanterna](http://sjl.bitbucket.org/clojure-lanterna/) is a thin wrapper around the Lanterna Java library to make it more Clojure-friendly. +* [clojure-postmark](http://sjl.bitbucket.org/clojure-postmark/) lets you talk to Postmark from Clojure. +* [clojurecraft](https://github.com/sjl/clojurecraft) is a framework for writing Minecraft bots in Clojure. +* [flask-csrf](http://sjl.bitbucket.org/flask-csrf/) is a Flask plugin to protect against CSRF attacks. +* [flask-lesscss](http://sjl.bitbucket.org/flask-lesscss/) is a Flask plugin to render LessCSS files when they change. +* [hg-review](http://sjl.bitbucket.org/hg-review/) is a Mercurial plugin for performing distributed code review. This is a **really goddamned cool** idea that I just don't have the time to follow up on. +* [python-dribbble](https://github.com/sjl/python-dribbble) is Python bindings for the Dribbble API. +* [red-tape](http://sjl.bitbucket.org/red-tape/) is a Clojure library for processing user-submitted data. It's heavily inspired by Django's forms (the good parts). +* [rerun](https://github.com/sjl/rerun) is a tiny utility to make it easy to run a bunch of commands over and over again. +* [roul](http://sjl.bitbucket.org/roul/) is a tiny Clojure library for working with random numbers. +* [splice.vim](https://github.com/sjl/splice.vim) is a Vim plugin for managing three-way merges. +* [tis100.vim](https://github.com/sjl/tis100.vim) contains Vim syntax highlighting and folding support for TIS-100 save files. +* [vitality.vim](https://github.com/sjl/vitality.vim) makes Vim play nicely with iTerm 2 and tmux. + +## Transferred Ownership + +These are projects that I started but have since passed ownership to someone +else. Please contact them if you have any questions about the current state of +things. + +* [django-goodfields](https://github.com/dwaiter/django-goodfields/) is a Django plugin I created when I was at Dumbwaiter Design to make Django form fields less painful to render. +* [hgtip](http://hgtip.com/) is a website with tips about using Mercurial that I started and eventually sold a long time ago. +* [metrics-clojure](https://github.com/sjl/metrics-clojure) is a thin façade around Coda Hale's metrics library. It's now maintained by [Michael Klishin](https://github.com/michaelklishin). + +## Finished + +These are projects that are finished. I have no plans to update them — they're +a snapshot of a moment in time. + +* [cl-chip8](https://github.com/sjl/cl-chip8) is a CHIP-8 emulator written in Common Lisp. I wrote a series of blog posts about it. +* [mazes](https://github.com/sjl/mazes) is some Common Lisp code written while I worked through the book Mazes for Programmers. +* [silt2](http://stevelosh.com/blog/2016/08/lisp-jam-postmortem/) was my entry in the August 2016 Lisp Game Jam. +* [silt](https://stevelosh.com/blog/2015/12/ludum-dare-34/) was my entry in Ludum Dare 34. +* [ymir](http://ymir.stevelosh.com/) is a Wisp/Javascript terrain generation demo. +* [zen](https://github.com/sjl/zen) was a throwaway roguelike non-game in Clojure. + +## Deprecated/Abandoned + +These are projects I started but no longer feel are useful to the world at +large. I won't delete them from the internet, but please don't use them. + +* [Caves of Clojure](https://github.com/sjl/caves) was the code for a series of blog posts I did about writing a roguelike in Clojure. +* [cherryflavoredbugseverywhere](https://bitbucket.org/sjl/cherryflavoredbugseverywhere/) was a Bugs Everywhere web UI written with CherryPy. +* [django-hoptoad](https://github.com/sjl/django-hoptoad) was a Django plugin for sending exceptions to Hoptoad. +* [grabtweets](https://bitbucket.org/sjl/grabtweets/src) was a brute-force utility for backing up your tweets. +* [newseasons](https://github.com/sjl/newseasons) was a simple Clojure webapp for notifying users when new seasons of their favorite TV shows hit iTunes. +* [stoat](https://stoat.readthedocs.io/en/latest/) was an attempt at making a less painful Django CMS. +* [typkov](https://github.com/sjl/typkov) was a small Clojure/Noir webapp that generates gtypist lessons from users' own text. diff -r ce11a64d569c -r 0f57fe590e90 layouts/shortcodes/toc.html --- a/layouts/shortcodes/toc.html Mon Dec 26 14:15:14 2016 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,4 +0,0 @@ -hi -{{ .Page.TableOfContents }} -bye -{{ .TableOfContents }}