Auteur archief

When Rome is lost in her ways

25 juli 2011

“Er zijn meer wegen die naar Rome leiden”
VIARome
zegt het bekende spreekwoord, met de implicatie: “Verschillende paden kunnen worden bewandeld om bij hetzelfde doel uit te komen.”
Lees verder >>

“Er zijn meer wegen die naar Rome leiden”
VIARome
zegt het bekende spreekwoord, met de implicatie: “Verschillende paden kunnen worden bewandeld om bij hetzelfde doel uit te komen.”
Lees verder >>

De pub-sub fruitmand op z’n Twitters

11 juni 2011

fruitmand
Lees verder >>

fruitmand
Lees verder >>

Twitter: Publisher-subscriber in volle glorie

01 februari 2011

Twitteren is leuk. Je kunt ten eerste boeiende mensen volgen. En andersom mensen jouw boeiend persoontje laten volgen. Of kijken hoe populair je bent: tel het aantal followers. Kijken hoe meelevend je bent: tel het aantal following. Waarom Twitter mij voornamelijk boeit is dat het één groot PubSub (publish/subscribe)-pattern is. Het is een gigantisch “hello world” als het gaat om dit pattern. En het leuke is, je hoeft niets te bouwen om het te ontdekken. Je kunt direct meedoen.
Lees verder >>

Twitteren is leuk. Je kunt ten eerste boeiende mensen volgen. En andersom mensen jouw boeiend persoontje laten volgen. Of kijken hoe populair je bent: tel het aantal followers. Kijken hoe meelevend je bent: tel het aantal following. Waarom Twitter mij voornamelijk boeit is dat het één groot PubSub (publish/subscribe)-pattern is. Het is een gigantisch “hello world” als het gaat om dit pattern. En het leuke is, je hoeft niets te bouwen om het te ontdekken. Je kunt direct meedoen.
Lees verder >>

Presentatie ICTDelta2010

17 maart 2010

Mijn presentatie over F# binnen de sessie: ‘Het nieuwe programmeren’, gehouden op 18 maart 2010 tijdens het ICTDelta2010 festival.
Lees verder >>

Mijn presentatie over F# binnen de sessie: ‘Het nieuwe programmeren’, gehouden op 18 maart 2010 tijdens het ICTDelta2010 festival.
Lees verder >>

F# op community day Devnology

22 oktober 2009

Samen met Ralf Wolter ga ik op 7 november iets leuks laten zien tijdens de dag voor de community op 7 november. In een Lightning Talk van 20 minuten vertellen we iets over ‘Message passing concurrency met F#’. Kort gezegd, het truckje van Erlang toepassen in F#. Concurrency willen we dus niet bereiken via een shared-memory model (waarbij we met threads gaan stoeien) maar via message passing concurrency (waar we met mailtjes en inboxen gaan werken).
Lees verder >>

Samen met Ralf Wolter ga ik op 7 november iets leuks laten zien tijdens de dag voor de community op 7 november. In een Lightning Talk van 20 minuten vertellen we iets over ‘Message passing concurrency met F#’. Kort gezegd, het truckje van Erlang toepassen in F#. Concurrency willen we dus niet bereiken via een shared-memory model (waarbij we met threads gaan stoeien) maar via message passing concurrency (waar we met mailtjes en inboxen gaan werken).
Lees verder >>

A [mini] poker DSL in F#

25 september 2009

Domain Specific Languages are hot! Some developers think it’s the ultimate way of programming and it won’t be long until we don’t do anything but making and using these things. According to Neal Ford, DSL’s are just an abstraction mechanism, though it is about time to use it with something else then objects. Well, lets start implementing one using F# as ‘host’ language which offers us some nice datastructures to get the job done. We’ll make a [mini] ‘Poker’ DSL which due to its succinctness fits easily into a blog using F#.
Lees verder >>

Domain Specific Languages are hot! Some developers think it’s the ultimate way of programming and it won’t be long until we don’t do anything but making and using these things. According to Neal Ford, DSL’s are just an abstraction mechanism, though it is about time to use it with something else then objects. Well, lets start implementing one using F# as ‘host’ language which offers us some nice datastructures to get the job done. We’ll make a [mini] ‘Poker’ DSL which due to its succinctness fits easily into a blog using F#.
Lees verder >>

F# development process

03 september 2009

Je kunt op verschillende manieren een ingewikkeld stukje software uitwerken. a) In één keer en achteraf de fouten eruit halen. b) Iteratief, met tussentijdse controles. Debuggen achteraf is irritant, vervelend en wat dies meer zij dus is de iteratieve vorm vaak te verkiezen. Met F# kan dit heel eenvoudig omdat we ieder willekeurig stukje code kunnen testen met F#-interactive. Dit geeft ons o.a. de mogelijkheid om verschillende benaderingen te testen en de beste te kiezen. Een ander voordeel is dat we kunnen beginnen met de meest basale / eenvoudige functionele constructie(s) en die verder uit kunnen werken tot een robuust stukje code. Zoals Tomas Petricek (2009: 24) het verwoord: “From simplicity to robustness”. Zo is dat Tomas, niets is heerlijker dan een eenvoudige start. Want, ingewikkeld wordt het vanzelf wel.
Lees verder >>

Je kunt op verschillende manieren een ingewikkeld stukje software uitwerken. a) In één keer en achteraf de fouten eruit halen. b) Iteratief, met tussentijdse controles. Debuggen achteraf is irritant, vervelend en wat dies meer zij dus is de iteratieve vorm vaak te verkiezen. Met F# kan dit heel eenvoudig omdat we ieder willekeurig stukje code kunnen testen met F#-interactive. Dit geeft ons o.a. de mogelijkheid om verschillende benaderingen te testen en de beste te kiezen. Een ander voordeel is dat we kunnen beginnen met de meest basale / eenvoudige functionele constructie(s) en die verder uit kunnen werken tot een robuust stukje code. Zoals Tomas Petricek (2009: 24) het verwoord: “From simplicity to robustness”. Zo is dat Tomas, niets is heerlijker dan een eenvoudige start. Want, ingewikkeld wordt het vanzelf wel.
Lees verder >>

Type inference in F#

21 augustus 2009

Elke Javaan en Dotnetter is 8% (gokje hoor) van zijn tijd bezig om de compiler te vertellen dat de i variabele van het type int is, net zoals die andere tig i variabelen in de rest van de code. En als we een lap tekst tussen haakjes zetten, we een string bedoelen. Wat een [ouderwets] gedoe hé. En dat in deze moderne eeuw. Terwijl er intelligente programma’s bestaan die Kasparov van het bord afschaken is het even te veel gevraagd om te (tijdens compiletime) detecteren wat voor type we nu zouden bedoelen. Terwijl, als de compiler een beetje doordenkt het vaak wel erg voor de handliggend is wat het nu zou moeten zijn. Het gevolg is dat iedere nieuwe typed taal sceptisch wordt ontvangen. Wat de voordelen van static boven dynamic typed ook moge zijn, dit gedoe willen we gewoon niet meer. What about F#?
Lees verder >>

Elke Javaan en Dotnetter is 8% (gokje hoor) van zijn tijd bezig om de compiler te vertellen dat de i variabele van het type int is, net zoals die andere tig i variabelen in de rest van de code. En als we een lap tekst tussen haakjes zetten, we een string bedoelen. Wat een [ouderwets] gedoe hé. En dat in deze moderne eeuw. Terwijl er intelligente programma’s bestaan die Kasparov van het bord afschaken is het even te veel gevraagd om te (tijdens compiletime) detecteren wat voor type we nu zouden bedoelen. Terwijl, als de compiler een beetje doordenkt het vaak wel erg voor de handliggend is wat het nu zou moeten zijn. Het gevolg is dat iedere nieuwe typed taal sceptisch wordt ontvangen. Wat de voordelen van static boven dynamic typed ook moge zijn, dit gedoe willen we gewoon niet meer. What about F#?
Lees verder >>

The Ultimate Power of Currying with Closures

07 augustus 2009

In mijn tweede post over het onder de aandacht brengen van functioneel programmeren gaan we een functionele techniek nader bekijken, de combinatie van currying en closures. Nooit van gehoord? Check it out now! Je kunt er leuke dingen mee doen plus zijn het aardige woorden om uw vocabulaire mee te verrijken. Ik hoop de technieken tussen de regels uit te leggen. Veel leesplezier!
Lees verder >>

Stoeien met functionele technieken.

Forbij

24 juli 2009

Zeer recent (juni 2009) gaan er op internet stemmen op die m.i. de moeite waard zijn om aandacht aan te besteden. En het betreft niet zomaar een programmeerissue. Niet minder dan de for loop wordt naar het leven gestaan. En dat door de programmeurs zelf nog wel. Een element dat sinds jaar en dag deel uitmaakt van veel programma code is niet meer gewenst. Na jaren trouwe dienst wordt het ijskoud de deur gewezen. En daar blijft het niet bij, ook het if statement moet het ontgelden. [1] Wat is hier aan de hand? Hebben we hier te maken met een nieuw programmeertijdperk? Of moet het allemaal weer anders dan dat we gewend zijn? Of is het niet meer dan een storm in een glas water? Laten we eens gaan kijken.
Lees verder >>

Code beschrijft vaak het hoe en niet het wat van een programma. Zo is ook de for loop een voorbeeld van zo’n hoe-implementatie. Dit komt de leesbaarheid niet ten goede. In deze blog kijken we naar enkele alternatieven om de for loop mee te vervangen.