[plt-scheme] behaviour of void?

From: Shriram Krishnamurthi (sk at cs.brown.edu)
Date: Thu Feb 5 14:06:21 EST 2009

The "world" style is purely functional.  See

  http://world.cs.brown.edu/

for some examples (including "videos" of the actual games).

On Thu, Feb 5, 2009 at 2:01 PM, Arthur Nunes-Harwit <anh at cs.rit.edu> wrote:
> Hi,
>
> I see a lot of projects that are video games.  Such projects ultimately rely
> input and output, or side effects (perhaps disguised via monads). The coding
> style for much of HtDP is purely functional.  What is the pedagogical
> impact?  Do the students notice?  (As a student, I didn't notice right away
> that read was different from square.)  Is there any discussion of "special"
> functions or objects?
>
> What is the impact of other languages such as Java where the assumption
> [built into the language libraries] is that everything is done using side
> effects?  To what extent is it still possible to take a mostly functional
> approach?
>
> Thanks.
>
> -Arthur
>
>>>> In any case, can anyone share any specific ideas for a "large" project
>>>
>>> that worked well in your courses?
>>
>> (Wrong mailing list probably, but here we go)
>>
>> Freshman games only:
>> single machine games:
>>  -- 'space war' (neu)
>>  -- 'airplane fire fighting' (wpi)
>>  --  'worm' (neu)
>>  -- 'little tetris' (neu)
>> distributed games:
>>  -- 'hangman' (neu)
>>  -- 'chat noir' (chicago)
>>
>> All of them can be done as described:
>> -- plain recursive functions (lists + structs)
>> -- revise to criticism
>> -- higher-order function revision (looks like applicative class-based
>> programming, if done properly)
>> -- state-based revisions (looks like imperative class-based programming,
>> if done properly)
>>
>> You can, if you so wish, re-assign the same problem in Java in the second
>> semester. It is an eye-popping experience for most of them to see the DR
>> work out perfectly for a Java-based world.
>>
>> -- Matthias
>>
>>
>>
>> _________________________________________________
>> For list-related administrative tasks:
>> http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>
> _________________________________________________
>  For list-related administrative tasks:
>  http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>


Posted on the users mailing list.