<commit_before>package hello

import (
    "fmt"
    "net/http"
    "html/template"
)

func init() {
    http.HandleFunc("/", handler)
    http.HandleFunc("/html-template", handlerHtmlTemplate)
}

func handler(w http.ResponseWriter, r *http.Request) {
    fmt.Fprint(w, "Hello, world!")
}

type Model struct {
	Titolo1, Titolo2 string
}
func handlerHtmlTemplate(w http.ResponseWriter, r *http.Request) {
    tmpl, err := template.ParseFiles("templates/basic.html")
    
    err = tmpl.Execute(w, Model{"Titolo 1", "Titolo 2"})
  
    if err != nil {
      http.Error(w, err.Error(), http.StatusInternalServerError)
    }
}
<commit_msg>demo su template base html con commenti<commit_after>package hello

import (
    "fmt"
    "net/http"
    "html/template"
    "math/rand"
	  "strconv"
)

func init() {
    http.HandleFunc("/", handler)
    http.HandleFunc("/html-template", handlerHtmlTemplate)
}

func handler(w http.ResponseWriter, r *http.Request) {
    fmt.Fprint(w, "Hello, world!")
}

type BasicModel struct {
	Titolo1, Titolo2 string
}
func handlerHtmlTemplate(w http.ResponseWriter, r *http.Request) {
  
    // recupero il template
    tmpl, err := template.ParseFiles("templates/basic.html")
    if err != nil {
      // se avvengono errori nel recupero del template mi fermo
      http.Error(w, err.Error(), http.StatusInternalServerError)
      return
    }
    
    // creo la struttura dati composta da un titolo fisso ed un valore casuale
    valoreCasuale := rand.Intn(3000);
    data := BasicModel{"Sotto un valore casuale da 0 a 3000", strconv.Itoa(valoreCasuale)}
  
    // unisco struttura dati e template html
    err = tmpl.Execute(w, data)
    if err != nil {
      // se avvengono errori nella creazione della pagina dinamica mi fermo
      http.Error(w, err.Error(), http.StatusInternalServerError)
      return
    }
}
{'fraction_non_alphanumeric': 0.12195121951219512, 'fraction_numerical': 0.008130081300813009, 'mean_word_length': 3.2146118721461185, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '840019', 'n_tokens_mistral': 629, 'n_tokens_neox': 618, 'n_words': 158}