X-Git-Url: http://lambda.jimpryor.net/git/gitweb.cgi?p=lambda.git;a=blobdiff_plain;f=assignment3.mdwn;h=8c22dfa4cead672756b7582b230aa570a92e6858;hp=8ea5777cc8bed5edca2207d18e04cab24e5368fd;hb=0ba095c6cd0331481a1454283ceeb14be690b5b8;hpb=e2b0f58ce66d62a6d8f44c72fcbde57407c569a9 diff --git a/assignment3.mdwn b/assignment3.mdwn index 8ea5777c..8c22dfa4 100644 --- a/assignment3.mdwn +++ b/assignment3.mdwn @@ -51,19 +51,14 @@ Then `length mylist` evaluates to 3. function, write a function that computes factorials. (Recall that n!, the factorial of n, is n times the factorial of n-1.) -Warning: my browser isn't able to compute factorials of numbers -greater than 2 (it does't provide enough resources for the JavaScript -interpreter; web pages are not supposed to be that computationally -intensive). + Warning: it takes a long time for my browser to compute factorials larger than 4! -3. (Easy) Write a function `listLenEq` that returns true just in case -two lists have the -same length. That is, +3. (Easy) Write a function `equal_length` that returns true just in case +two lists have the same length. That is, - listLenEq mylist (make_list junk (make_list junk (make_list junk empty))) - ~~> true + equal_length mylist (make_list junk (make_list junk (make_list junk empty))) ~~> true - listLenEq mylist (make_list junk (make_list junk empty))) ~~> false + equal_length mylist (make_list junk (make_list junk empty))) ~~> false 4. (Still easy) Now write the same function, but don't use the length @@ -113,7 +108,8 @@ whether the length of the list is less than or equal to 1. This will be your base case for your recursive functions that operate on these trees. -1. Write a function that sums the number of leaves in a tree. +
    +
  1. Write a function that sums the number of leaves in a tree. Expected behavior: @@ -136,5 +132,7 @@ Expected behavior: sum-leaves tc ~~> 6 -2. Write a function that counts the number of leaves. +
  2. Write a function that counts the number of leaves. + +