Do you want BuboFlash to help you learning these things? Or do you want to add or correct something? Click here to log in or create user.



Tags
#odersky-programming-in-scala-2ed #scala
Question
In this code you pass in a zero-arg function to delay evaluation; how would you rewrite it to use by-name parameters?

def myAssert(predicate: () => Boolean) =
  if (!predicate())
    throw new AssertionError
    
myAssert(() => 5 > 3)
Answer
change type () => Boolean to => Boolean:
def myAssert(predicate: => Boolean) =
  if (!predicate())
    throw new AssertionError

myAssert(5 > 3)

Tags
#odersky-programming-in-scala-2ed #scala
Question
In this code you pass in a zero-arg function to delay evaluation; how would you rewrite it to use by-name parameters?

def myAssert(predicate: () => Boolean) =
  if (!predicate())
    throw new AssertionError
    
myAssert(() => 5 > 3)
Answer
?

Tags
#odersky-programming-in-scala-2ed #scala
Question
In this code you pass in a zero-arg function to delay evaluation; how would you rewrite it to use by-name parameters?

def myAssert(predicate: () => Boolean) =
  if (!predicate())
    throw new AssertionError
    
myAssert(() => 5 > 3)
Answer
change type () => Boolean to => Boolean:
def myAssert(predicate: => Boolean) =
  if (!predicate())
    throw new AssertionError

myAssert(5 > 3)
If you want to change selection, open document below and click on "Move attachment"

pdf

cannot see any pdfs

Summary

statusnot learnedmeasured difficulty37% [default]last interval [days]               
repetition number in this series0memorised on               scheduled repetition               
scheduled repetition interval               last repetition or drill

Details

No repetitions


Discussion

Do you want to join discussion? Click here to log in or create user.