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

"And as a final note, solely for the seriously nerdy techies, there's been some talk about the failure being due to F# error."

http://ftalphaville.ft.com/marketslive/



I've no idea where they got this from, although I mentioned it on Twitter as a joke: https://twitter.com/tim_g_robinson/status/41086872876892160


I still don't understand how they choose languages with garbage collection for systems that should be real time or similar.


Erlang is not "real time" in the hard, embedded systems sense, but it does pretty well and has GC.

Here's a bit more information: http://www.erlang.org/faq/academic.html#id55755

I don't know what sorts of 'real time' properties trading systems are required to have - can anyone talk about it with a bit more in-depth knowledge?


I don't know much, but for high-frequency trading, fast is never fast enough. response times are measured in microseconds.

http://richg74.wordpress.com/2010/10/25/speedy-new-lse-tradi...

http://www.h-online.com/open/news/item/Linux-boosts-Stock-Ex...


Speed isn't all. The system should be based in algorithms with manageable worst case time.


I don't buy Erlang camp's reports.

A GC will always trash the cache, and that's the worst issue right now in hardware. (If you take out HDD I/O.)


GC isn't a problem for realtime systems, if configured correctly. For example, have the GC running incrementally in a separate thread.


Close, you do need to stop the world every once in a while to GC some of the harder stuff.

But it's true, there's flavors of Java that are certified for hard realtime. If you stop the GC for 100ms every 2s regardless if you need it or not, that's pretty nice and predictable behavior for a realtime system.


100ms is an eternity. You can do GC with 1ms pauses.

http://www.infoq.com/articles/azul_gc_in_detail, for one example.


It's not F# or Java, it's C++. http://news.ycombinator.com/item?id=2261896


It could be some left over system from the previous .Net platform causing a knock-on effect.


It could be anything. Why do you want it to be that?


I don't want it to be that. I'm saying the rumour sounds plausible.


Not so plausible to me, considering that the old system was in C#.


I'm pretty sure I've read somewhere that they where using F# for some parts.


Can we have a link please?


That seems unlikely. F# only recently moved from being an experimental language from Microsoft Research to a supported .NET language. The previous system is old enough to predate that.


Agreed. and Anderson consulting using an experimental, non-obvious language? I don't see it.


You may be interested in the Metronome project, which aims to provide a GC suitable for realtime use: http://domino.research.ibm.com/comm/research_projects.nsf/pa...

An academic paper about the project, Design and Implemention of a Comprehensive Real-Time Java Virtual Machine: http://domino.research.ibm.com/comm/research_people.nsf/page...


that link doesn't contain the text 'F#' any where on the page.



Thanks:)


F# on linux?



I doubt they'd be using Mono - if it really is an F# issue it maybe indicates it's a failure in some of the legacy system they are replacing.


As far as I know, the previous system didn't use F#.

"written in C#" http://www.computerworlduk.com/news/open-source/3260727/lond...


Via mono. If that's true... that would be an interesting news for the project (not because of the bug itself of course...).


If the LSE were using F# we'd have heard a lot more about it already. For instance, from Microsoft.


Maybe not if they were using F# on mono. Their PR would have to work very hard to put this in a way that doesn't say "LSE is using our language on a foreign platform using a completely alternative implementation, which has nothing to do with us apart some ECMA specs - and they're still successful without MS involvement. Yes, we just confirmed that you can trust your highly critical .NET environment to the alternative versions of runtime."


They have publicly stated that the system is written in C++ on Suse Linux.

http://www.computerworlduk.com/news/open-source/3260727/lond...


I wouldn't believe 100% in those statements.


True enough. If the statement turns out to be not entirely correct, that would be news.

I suspect that if there is any F# code, it's in a 3rd party system that talks to the stock exchange. There are lots of those due to the nature of an exchange, though they should all talk over the standard FIX protocol.


> I wouldn't believe 100% in those statements.

Why not? What makes you think this is a lie?


They systematically cover the problems and have zero transparency. Never a post-mortem. Like back in January.


OK, I wouldn't expect an official press release like this from Microsoft head office.

But the team in Microsoft Research are (a) keen to promote their language (people like Don and Brian often help early adopters personally) and (b) supportive of Mono (they've always released a .zip file for Mono at the same time as their Windows installers).


using a immature language (f#) over unproved software stack for an international multi billion dollar low latency transactions when there are dozens of proven highly stable functional alternatives that run well on a linux platform? I can hardly believe it


I don't believe it at all. Mainly because of the public statements that the new LSE trading system was written in C++.

On the other hand, it has to integrate with lots of enternal trading systems, one of which could easily be written in F#.


That's modern enterprise computing for you.




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

Search: