Why doesn't the function taxonomy_term_search exists? I have an autocomplete field in an API Form. The callback function uses the following code to highlight the search query in the list of suggestions.
With a taxonomy vocabulary of 3 levels of hierarchy, about 8,000 terms, it takes a whole eternity of 1 second to offer the suggestions. In a direct SQL query or a EntityFieldQuery it takes just a few tenths of a second. Why doesn't mixed $tid_array = taxonomy_tearm_search(term_name, vid) exists, it would increase the code below in which only taxonomy API is used. 

mymodule_providers_autocomplete($brand, $text){ 
   $selected_providers = array();
   $providers = get_providers_of_type($brand);
   $counter = 0;
   foreach($providers as $nid =&gt; $provider){
      if(strpos(strtoupper("." . $provider["title"]), strtoupper($text)) &gt; 0){
           $selected_providers[$provider["title"] . ' (' . $nid . ')'] = str_ireplace($text, "&lt;strong&gt;" . $text . "&lt;/strong&gt;" , $provider["title"]);
           $counter++;
           if($counter &gt; 10) break; 
       } // if
   }
 drupal_json_output($selected_providers);
} // function

function get_providers_of_type($brand){
   $children_1 = taxonomy_get_children($brand);
   $models_arr = array();
    foreach($children_1 as $key2 =&gt; $value2){
        $children_2 = taxonomy_get_children($value2-&gt;tid);
        foreach($children_2 as $key =&gt; $value){
            $models_arr[] = array("title" =&gt; $value-&gt;name);
        } // foreach
    } // foreach
}   // if
  return $models_arr;
} // function
Long story short, it does not exist because either no one wrote it, or maintainers found it not suited for inclusion in taxonomy.module for whatever reasons. For most purposes, taxonomy_get_term_by_name is enough. When it's not, there are various search solutions in separate, search oriented modules.

If you think you can write it, and make it good, please do so, and then post entry in issue queue with appropriate patch file.