User:Duesentrieb/FOSDEM

Capetown declaration franklin streeet statement

2009: year of the mobile

translatewiki

 * funding / dev -> verein?
 * toolserver integration
 * build/distri-system


 * on the betawiki site:
 * import of individual project repositories
 * export to TSV
 * on the toolserver
 * libraries
 * import script

XMPP

 * Jeremie Miller: Jabber -> wikia -> wikipedia opensearch
 * IETF RFCs
 * JID: name@domain/Resource - pick your resource!
 * 1 TCP connection -> 1(!) XML document.
 * 1 message -> one tag (Stanzas)


 * type=chat/groupchat/headline/error...
 * subject
 * body
 * ...extensible!...
 * online/offline
 * status (busy, afk, ...)
 * presense *subscriptions*
 * status (busy, afk, ...)
 * presense *subscriptions*


 *  (request/response)
 * like GET; expect response. (get/set/result/error)
 * query status...
 * query types defined by XMLNS


 * Add anything anywhere using XMLNS


 * stpeter@...

PubSub
Nathan "Fritzy" Fritz


 * Subscriptions can have config - filters
 * presence-based delivery
 * no queueing
 * all resources (bare jid)
 * subscription expiration (evtl by status/presence)
 * OAuth: permissions across domains
 * gmail push to linkedin...
 * BOSH: XMPP via HTTP

Scala
Martin Odersky


 * allows implementation of domain specific languages easily
 * can be seen as scripting language
 * interactive
 * type inference
 * closures (!)
 * patternmatching, "traits"
 * compiles to .class -> JVM
 * as fast as java
 * pythonesque
 * functional feel: if (args exists (_.toLowerCase == "-help"))
 * "traits": mixable classes
 * dependency injection (spring-ish)
 * "deep" features: abstract and compose
 * everything is an object (no statics, no packages, no modules)
 * operator overloading
 * existential types, abstract types
 * no enums
 * operator syntax: obj meth arg = obj.meth(arg)
 * record initializer: class Sample(x: Int, val p: Int)
 * singlton: object Sample { .... }
 * mixin: x inhertis y with a, b, c;
 * literals for lists and maps
 * implicit conversions (int - bigint...)
 * using... for closing stuff automatically. Not native, but can be written as a *method*
 * abstract method, taking a type parameter;
 * "everything that has a close method" -> "virtual" interfaces
 * no break/continue, but can be implemented as above, using a "breakable" block
 * "asynchronous"? "synchronized" using Locks...?
 * trick: trowing a *constant* exception is FAST!
 * functions as first order objects
 * arrays are objects: forall, exists, ...
 * arrays are *functions*: a(i)
 * PartialFunctions: isDefinedAt
 * message passing concurrency, like Erlang
 * actor ! message (queues message)
 * receive... (switch like with patterns, implemented as partail function)
 * Web framework: Lift
 * testing Framework (behavioral): Specs, ScalaCheck
 * Info:
 * Blog: Scala for Java Refugees
 * First Steps in Scalas

TODO

 * Wikiword blog entry
 * FOSDEM blog entry
 * Dev Meeting Blog Entry