The last assignment almost broke me. Because the provided test coverage was so low and I got lazy and didn't write my own. I spent yonks debugging. Finally I realised that I had mixed around my x and y vals way back in the find Block function. Iirc there was a test for this to find the start Block(1, 1). So that passed. : )
Martin has a great way of delivering the material. I really loved the course and hope for a follow-on.
--
You received this message because you are subscribed to the Google Groups "Melbourne Scala User Group" group.
To post to this group, send an email to scala...@googlegroups.com.
To unsubscribe from this group, send email to scala-melb+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/scala-melb?hl=en-GB.
--
I didn't do how the course. However, I am curious of how you used a monad to solve anagrams.
--
I've been a while since we last swapped opinions and reactions on Martin's Scala FP course. Well, the lectures are done, and the final assignment due next.Who's still following along and doing the homework? How are you finding it?
I didn't do how the course. However, I am curious of how you used a monad to solve anagrams.
If it helps, I totally missed the x/y switch myself, until your email last night! Extremely unusual to put y before x; deliberate trap perhaps? My solution didn't ever refer to the fields explicitly however, so wasn't affected.
And I had the same laziness with unit tests, preferring println debug hackery.
Ben
Oh, I pipelined through the Anagram Monad using the flapMat operator ;)
Seriously though, just used lots of garden-variety list and option flat mapping..
Ben
I had a very pleasant experience. This Wednesday night was so “empty” for me after having seven weeks of fun with Scala/FP.
I believe, it is a very good course. It has been well structured and presented.
Each week lecture materials prompt you to look deeper inside of both Scala and programming as general. Assignments were well created as well. They had an extra “theory” material [link between theory to practical field] as well as a practical exercise. Some of them were harder then others. However each of them has some challenge. I kept assignments without submitting for a few days after getting all my tests passed. I used this time to address a problem again, re-factor and improve both logic and performance. I forced myself to read/view lecture materials first [before attending an assignment] even if I knew the assignment’s domain well before hand. Doing this way was more enjoyable and productive for me.
However it is over. The last assignment was submitted last week.
Having said that I’d like to keep a momentum and do more Scala/FP programming.
Call me if you need a hand. ;-)
Cheers,
-- Gary K
-Ben--
You received this message because you are subscribed to the Google Groups "Melbourne Scala User Group" group.
To post to this group, send an email to scala...@googlegroups.com.
To unsubscribe from this group, send email to scala-melb+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/scala-melb?hl=en-GB.
-Ben--
--
You received this message because you are subscribed to the Google Groups "Melbourne Scala User Group" group.
To post to this group, send an email to scala...@googlegroups.com.
To unsubscribe from this group, send email to scala-melb+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/scala-melb?hl=en-GB.
test("inifinite terrain") {
object InfiniteLevel extends Solver with InfiniteTerrain {
val startPos = Pos(1,3)
val goal = Pos(5,8)
}
val result = InfiniteLevel.solution
assert(false === result.isEmpty)
On Nov 10, 2012 9:16 AM, "Tony Morris" <tmo...@tmorris.net> wrote:
>
> A quick way of doing this is passing a memo table around in the state monad.
>
> e.g. case class MemoState[A](run: Memo => F[(A, Memo)]) {// where F is your existing monad.
> def map, flatMap, etc.
> }
Thanks Tony.
>
> PS: why discuss offline?
In case our discussions reveal too much about potential assignment solutions.
From their email several weeks ago:
---
We are saddened to report that some students have been uploading the solutions of the weekly exercises to public spaces. As you might have guessed, this is a clear violation of Coursera honor code article 3 ( https://www.coursera.org/maestro/auth/normal/tos.php#honorcode).
...
Thus, as a bottom-line: If you have uploaded solutions to any public space, including github, please remove them ASAP or face immediate expulsion.
---
Cheers,
King
It often seemed to me that a person who could complete the assignments without significant problems would learn rather little from the accompanying lectures.
Finally, I found it somewhat frustrating that Coursera chose to run the course within a fixed time period. Personally, it would have been nice to be able to put it on hiatus for three or four weeks to cope with activity spikes elsewhere.
Jonathan Merritt.
From the exercises I have seen (people posting questions mostly), I think there is something to be learned by solving them with he assumption of significantly better library support. The result being a very different means by which to view the problem and subsequent solution.