[Ur] New Ur/Web application live

Chris Double chris.double at double.co.nz
Fri Jun 3 03:29:21 EDT 2011


I've released my first public Ur/Web application today. It's a trading
exchange for two virtual currencies. The currencies are Bitcoin and
Namecoin. The former is a general purpose virtual currency. The latter
is specific for an alternate DNS project and is used for registering
domain names. Trades between the two currencies usually occur on
forums and over IRC so I decided to write an online exchange and use
Ur/Web for the task. The application, The Bitparking Namecoin
Exchange, can be reached at https://exchange.bitparking.com/

It's still in a testing phase but so far is working well. A number of
trades have occurred and people have deposited and withdrawn namecoins
and bitcoins. The application uses the Ur/Web OpenID relying party
library for authentication. There's a bunch of things that still need
to be done. Making it look nicer, using more Ur/Web client side
features like functional reactive programming, etc but it's up and
running. Overall I was very happy with how easy it was to put
together.

The app does at least one very 'non-pure' process. That is withdrawal
of funds. When a user requests a withdrawal a number of database
records are updated and then a request is sent to namecoin or bitcoin
to actually do the transfer. This request is non-reversible. For this
I'm currently using uw_register_transactional and doing the request as
the very last thing (it has a NULL rollback argument). One downside of
this is I can't get the transaction id of the transaction since the
transactional callback doesn't seem to provide a way to return data. I
run a periodic task that checks for the withdraws and looks up the
transaction id on the bitcoin/namecoin network. This seems to work ok.

I'll be releasing the source once I've done a bit of refactoring and
fixing the last few issues. I'll post here when done.

Chris.
-- 
http://www.bluishcoder.co.nz



More information about the Ur mailing list