Hacker Newsnew | past | comments | ask | show | jobs | submit | dcassett's commentslogin

Perhaps because I'm still on Debian 12 (or more likely I did something wrong), I had trouble getting it working by compiling the icl/ocicl sources with sbcl. It complained "Failed to connect to Slynk after 10 seconds". I tried running a Slynk server in sbcl, but icl froze up, and the server said "slynk:close-connection: end of file on #<dynamic-extent STRING-INPUT-STREAM (unavailable) from "#A">. Then I tried running a swank server, and got the icl prompt (good), but then tab completion invoked the debugger: "Package SLYNK does not exist". Finally, I ran the swank server after first running "(asdf:load-system :slynk)" and everything seems to work.

One thing I immediately miss (that rlwrap provides) are the keyboard functions such as reverse-search-history (usually mapped to C-r) and history-search-backward (have this mapped to M-p). History recall only seems possible with the up arrow.

Also, be in for some surprises if you try to paste some lisp code into the REPL, especially if there are long lines. The interaction is apparently meant for a human typing, not pasting.


I fixed the paste issue. Thanks! (edit: And Ctrl-R)

Thanks for troubleshooting my installation issue as well as fixing all of my other issues!

> Espresso PLA minimizer

You can still find the software for Espresso (I ran it a few years ago):

https://en.wikipedia.org/wiki/Espresso_heuristic_logic_minim...


> (Note 4) But to write a value into the latch, the switch is enabled and its output overpowers the weak inverter.

This implementation is sometimes called a "jam latch" (the new value is "jammed" into the inverter loop).


> However, the 386 uses a different approach—CMOS switches—that avoids a large AND/OR gate.

Standard cell libraries often implement multiplexers using transmission gates (CMOS switches) with inverters to buffer the input and restore the signal drive. This implementation has the advantage of eliminating static hazards (glitches) in the output that can occur with conventional gates.


Static hazards are most often dealt with by just adding some redundant logic (consensus terms) to the circuit. This can even be done automatically.


The form gives the option to identify as an individual, an organization, or anonymous, and below the selections gives this note: "Note: If you choose to identify as Anonymous, the option to enter your email address for submission confirmation is not available."


As of now the web page indicates "Comment Period Ends: 12 Days"



Thanks!


Have used VLC for at least 20 years. Recently I upgraded an old Dell 9400 laptop that dates from around 2006 to Debian Bookworm (the end of the line for the 32-bit machines). It has a nice 1600x1200 display, but the Nvidia Graphics (Geforce Go 7900 GS) is poorly supported and mpv now requires --hwdec=no, making 720p videos barely playable. VLC now uses a fraction of the CPU as mpv does for video, which makes even 1080p videos playable. For some reason VLC chokes at the beginning of every video (tries to play before everything is ready), but by pausing the video and backing up to time zero it plays perfectly. All of this to say that VLC has saved the day as it frequently has over the years.


Dillo was included in the historic Damn Small Linux [1], a 50MB distro.

[1] https://damnsmalllinux.org/old-index.html


Business card sized. Im old enough to know what they meant (a business card shaped CD ROM)


I find that I like working with the directory stack and having a shortened version of the directory stack in the title bar, e.g. by modifying the stock Debian .bashrc

  # If this is an xterm set the title to the directory stack
  case "$TERM" in
  xterm*|rxvt*)
      if [ -x ~/bin/shorten-ds.pl ]; then
    PS1="\[\e]0;\$(dirs -v | ~/bin/shorten-ds.pl)\a\]$PS1"
      else
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h:   \w\a\]$PS1"
      fi
      ;;
  \*)
      ;;
  esac
The script shorten_ds.pl takes e.g.

  0  /var/log/apt
  1  ~/Downloads
  2  ~
and shortens it to:

  0:apt 1:Downloads 2:~

  #!/usr/bin/perl -w
  use strict;
  my @lines;
  while (<>) {
    chomp;
    s%^ (\d+)  %$1:%;
    s%:.*/([^/]+)$%:$1%;
    push @lines, $_
  }
  print join ' ', @lines;

That coupled with functions that take 'u 2' as shorthand for 'pushd +2' and 'o 2' for 'popd +2' make for easy manipulation of the directory stack:

  u() {
    if [[ $1 =~ ^[0-9]+$ ]]; then
      pushd "+$1"
    else
      pushd "$@"
    fi
  }

  o() {
    if [[ $1 =~ ^[0-9]+$ ]]; then
      popd "+$1"
    else
      popd "$@" # lazy way to cause an error
    fi
  }


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

Search: