Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The workflow for slime/sly and swank/slynk described at the end of the article is standard if you are in the Emacs world.

Sometimes I work in an Org file, sometimes in a lisp file directly. In both cases I will C-x C-e (eval-last-sexp) or run blocks, or the whole file (depending on Org vs lisp file). It is copy and paste on steroids (same for slime-eval-defun were you can be working deep inside some large function and update the whole without changing your view).

There are some examples of developing in the debugger in [0] around 55 minutes (linked). This video also has great examples of other crazy interactive development workflows and is worth watching in its entirety if you are interested in this kind of thing.

0. https://youtu.be/bl8jQ2wRh6k?t=3299



Hmm. The article doesn't really describe what it's like but I skimmed the SLIME manual. So you basically point at the code you want to run, and this isn't necessarily how you would run it in production. It looks like SLIME mode requires you to install an interpreter hook in the startup code for the process that you want to debug, so you can run commands that way?

This seems like it would make the most sense for event-driven code. Evaluating a script is another kind of event. Many systems have a way to execute commands.

I'd guess this style of development encourages people to structure their systems as essentially command interpreters, even if the commands normally come from a UI.

The interesting bit will be deciding how the data structures that persist between commands are implemented. For example in server-side web apps, the shared state is often a database, so state is external to the process being debugged. The architecture limits what you can do directly, but you can try out SQL queries.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: