Search a title or topic

Over 20 million podcasts, powered by 

Player FM logo
Artwork

Content provided by David Gardiner and Adelaide .NET User Group / David Gardiner. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by David Gardiner and Adelaide .NET User Group / David Gardiner or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://player.fm/legal.
Player FM - Podcast App
Go offline with the Player FM app!

Down the Oregon Trail with Functional C#, with Simon J. Painter

1:24:52
 
Share
 

Manage episode 400403446 series 1329529
Content provided by David Gardiner and Adelaide .NET User Group / David Gardiner. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by David Gardiner and Adelaide .NET User Group / David Gardiner or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://podcastplayer.com/legal.

In 1971, three students from Minnesota thought they could liven up a history lecture by creating a computer game for the students to play, and after several days of work in HP Time Share BASIC, they came up with what turned out to be a significant milestone in the history of computer games - Oregon Trail.

Oregon Trail is often regarded as one of the first great computer games, as well as being the originator of a franchise that is still running to this day. It was effectively also one of the first instances of both Shareware and a Commercial home release (depending on the version).

My interest though, isn't just in historical computer games, it's also .NET and Functional Programming. I want to use this as a worked example of one of my passions - Functional Programming in C#! The challenge I've set myself is to redevelop Oregon Trail into C# using the following restrictions:

  • Near 100% unit test coverage
  • No variables can change state once set
  • No statements (for, foreach, if, where, etc.) unless there literally is no way of avoiding them

I'll also be demonstrating a few of the tricks Functional Programming can offer, like Higher-order functions, functional flows with simple Monads and Tail Recursion. There should also be a bit of retro computing fun, while we're at it.

Links:

  continue reading

68 episodes

Artwork
iconShare
 
Manage episode 400403446 series 1329529
Content provided by David Gardiner and Adelaide .NET User Group / David Gardiner. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by David Gardiner and Adelaide .NET User Group / David Gardiner or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://podcastplayer.com/legal.

In 1971, three students from Minnesota thought they could liven up a history lecture by creating a computer game for the students to play, and after several days of work in HP Time Share BASIC, they came up with what turned out to be a significant milestone in the history of computer games - Oregon Trail.

Oregon Trail is often regarded as one of the first great computer games, as well as being the originator of a franchise that is still running to this day. It was effectively also one of the first instances of both Shareware and a Commercial home release (depending on the version).

My interest though, isn't just in historical computer games, it's also .NET and Functional Programming. I want to use this as a worked example of one of my passions - Functional Programming in C#! The challenge I've set myself is to redevelop Oregon Trail into C# using the following restrictions:

  • Near 100% unit test coverage
  • No variables can change state once set
  • No statements (for, foreach, if, where, etc.) unless there literally is no way of avoiding them

I'll also be demonstrating a few of the tricks Functional Programming can offer, like Higher-order functions, functional flows with simple Monads and Tail Recursion. There should also be a bit of retro computing fun, while we're at it.

Links:

  continue reading

68 episodes

Semua episod

×
 
Loading …

Welcome to Player FM!

Player FM is scanning the web for high-quality podcasts for you to enjoy right now. It's the best podcast app and works on Android, iPhone, and the web. Signup to sync subscriptions across devices.

 

Copyright 2025 | Privacy Policy | Terms of Service | | Copyright
Listen to this show while you explore
Play