Kelet
Joined 13 years ago
Joined 13 years ago
Edit: Just tried it, doesn't seem to work yet. Hope this is coming down the pipeline soon.
e.g.:
Ruby
[1, 2, 3].map { |x| 2 * x }
Gosu
{1, 2, 3}.map (\x -> 2 * x)
Unlike Ruby, Gosu provides a static type system which includes type inference and structural typing (similar to Go's interfaces). It also includes an open type system (http://devblog.guidewire.com/2010/11/18/gosus-secret-sauce-t...), which allows first-class representations of user created types at compile time – no code generation is needed. F# programmers would find many similarities between Gosu's open type system and F#'s type providers.
Like most JVM languages, you can leverage Java compatibility to use all of the third-party libraries you want. Compared to Scala, Gosu tends to eschew complexity for simplicity and pragmatism. Their implementation of generics is a good example of this.
And of course, Gosu just has a lot of features that make it enjoyable to work with. Such as the null-safe invocation operator (?.), elvis operator (?:), type variable reification, terse syntax, etc.
Atomic Quake: Using Transactional Memory in an Interactive Multiplayer Game Server
(pdf warning) http://www.bscmsrc.eu/sites/default/files/atomicquake-ppopp0...
editing?
While it does not have all of the features of more heavy torrent clients, it does have a plugin system - although not many plugins exist yet. It's cross-platform, open source, and pretty light. The author has good priorities and is conscious about issues such as privacy, and having good installers that aren't bundled with questionable content.
I now have a trail of being under my Lavabit account. Commits, patches, websites, services, friends all thinking I'm still under that account. Now I've got to do it once again, only a few weeks later.
Sigh. I can't blame Lavabit really. Just a situation I'd hope to avoid.