Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 817573
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 15, 20262026-05-15T02:00:53+00:00 2026-05-15T02:00:53+00:00

I am trying to figure out how exactly does treesort from here work (I

  • 0

I am trying to figure out how exactly does treesort from here work (I understand flatten, insert and foldr).

I suppose what’s being done in treesort is applying insert for each element on the list thus generating a tree and then flattening it. The only problem I can’t overcome here is where the list (that is the argument of the function) is hiding (because it is not written anywhere as an argument except for the function type declaration).

One more thing: since dot operator is function composition, why is it an error when I change: treesort = flatten . foldr insert Leaf to treesort = flatten( foldr insert Leaf )?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-15T02:00:53+00:00Added an answer on May 15, 2026 at 2:00 am

    what’s being done in treesort is applying insert for each element on the list thus generating a tree and then flattening it.

    Exactly right.

    [Where is the list hiding?]

    In a functional language, you don’t have to give the arguments of a value of function type. For example if I write

    f = concat . map (map toUpper) 
    

    I get a function of type [[Char]] -> [Char]. This
    function expects an argument even though there’s no argument in the defining equation.
    It’s exactly the same as if I had written

    f strings = (concat . map (map toUpper)) strings
    

    Since the dot operator is function composition, why is it wrong to change f . g to f (g)?

    They don’t mean the same thing. What happens when each is applied to x?

    (f . g) x  = f (g x)
    
    (f (g)) x  = (f g) x
    

    You can see the applications associate differently, and f. g is different from f g.

    It’s a type error because foldr insert Leaf is a function from lists to trees, and flatten is meant to be applied to a single tree, not to a function.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

This isn't my code; I am trying to figure out what exactly this does.
I'm trying to figure out what the following line does exactly - specifically the
I am trying to figure out how exactly arithmetic bit-shift operators work in C,
I'm basically trying to figure out the simplest way to perform your basic insert
I'm trying to figure out why the control does not honor ZIndex. Example 1
Specifically, I'm trying to figure out if it's possible to generate SQL that does
I'm trying to figure out how exactly to use stat() to capture information about
Trying to figure out an equation to get the current group a page would
In trying to figure out this problem (which is still unsolved and I still
I'm trying to figure out how big a certain database would be (it hasn't

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.