Bluish Coder

Programming Languages, Martials Arts and Computers. The Weblog of Chris Double.


2005-12-06

Obfuscated Erlang

The results of an Obfuscated Erlang competition have been made available. From the announcement on the Erlang mailing list:

The first prize is a splendid contribution by Martin. The program demonstrates that Erlang has indeed an error in its design. The second prize was for an artistic Sudoku solver by Urban. And finally, the judges were forced to add a third prize, the Judge's prize, as they were unexpectedly confronted with a breathtaking submission that had been used in a live system.

Tags: erlang 

2005-12-06

Solution Watch reviews DabbleDB

Solution Watch has a review of DabbleDB. It goes into good detail, showing an example 'todo' application being built. The review is very positive. DabbleDB is written using Seaside, a continuation based web framework in Smalltalk.

Tags: smalltalk 

2005-11-04

Erlang and Yaws on the Blackdog

Further to my post about the Blackdog, here are the binaries and setup instructions to get Erlang and Yaws running on it.

Copy these files to the blackdog then, assuming you don't have stow already installed, perform the following to install Erlang and Stow from within a blackdog xterm:

mkdir /usr/local/stow
cd /usr/local/stow
tar jxvf /root/otp_R10B-8.tar.bz2
tar jxvf /root/stow.tar.bz2
stow-1.3.3/bin/stow stow-1.3.3
stow otp_R10B-8

I compiled Yaws to be installed locally so the steps for that are slightly different:

cd /root
tar jxvf yaws.tar.bz2

Edit the 'yaws.conf' file to reflect what you want or you can leave it at the default to test the installation. To run:

export PATH=/usr/local/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/lib:$PATH
ldconfig
cd /root
bin/yaws -i -c yaws.conf

This runs Yaws in 'interactive' mode. Visiting http://localhost:8000 should confirm things worked by showing the yaws standard install. To exit interactive mode and shut down Yaws press CTRL+G and press 'q' and enter.

Erlang can be run as usual with 'erl'.

Tags: erlang  yaws  blackdog 

2005-11-04

Blackdog

I recently got a Blackdog device to try some ideas out. The Blackdog is a very small Linux server with no screen or keyboard.

You plug it into a PC via USB and it emulates a USB CD device. The host machine then autorun's this CD. If the host is a Windows machine it starts an X client. If it's a linux machine it does nothing.

Once that is done the Blackdog then stops pretending to be a CD and pretends to be a USB ethernet device and sets a private network between the host and the Blackdog. The running X client on the host machine then connects over that network to the X server on the Blackdog. Through this you can run programs like xterm and have them display on the host. The Blackdog also does fingerprint authentication during this process to ensure the user is authenticated.

It's a pretty neat little device and has some interesting possibilities. It works flawlessly connecting to Windows XP machines. For Linux machines there are a few issues as newer kernels need a patch applied to it. But with a little tweaking I've got it working on a number of machines.

The blackdog has a PPC based processor. To develop for it you use the Blackdog SDK. This includes a QEMU based system which emulates the Blackdog. You compile the software from in that and then scp it to the Blackdog. Alternatively you could apt-get the development tools on the Blackdog itself.

I've successfully got a number of programs running on it including Factor, Erlang and Yaws. These run very nicely in fact. Hopefully I can develop some of my ideas so it becomes more than an interesting gadget and something actually useful to me.

Tags: blackdog 

2005-11-04

Trap Exit

Trap Exit is a great Erlang resource that I came across recently. It mirrors the Erlang mailing list as a forum, and has a number of great HOWTO's on using Erlang.

Tags: erlang 


This site is accessable over tor as hidden service 6vp5u25g4izec5c37wv52skvecikld6kysvsivnl6sdg6q7wy25lixad.onion, or Freenet using key:
USK@1ORdIvjL2H1bZblJcP8hu2LjjKtVB-rVzp8mLty~5N4,8hL85otZBbq0geDsSKkBK4sKESL2SrNVecFZz9NxGVQ,AQACAAE/bluishcoder/-61/


Tags

Archives
Links