<%@ Page Language="VB" Trace="True" %>
<script runat="server" language="vb" Option="Strict">
Function Factorial (base as Integer) as Integer
If base <=0 Then
Trace.Warn("Factorial", "Invalid base value: " & base)
Exit Function
ElseIf base = 1 Then
Trace.Write ("Factorial", "Exit condition met, returning.")
Return base
Else
Trace.Write("Factorial","Recursing, new value: " & base-1)
Return base * Factorial(base-1)
End If
End Function
</script>
<html>
<head>
</head>
<body>
<%
Response.Write(Factorial(-1) & "<br>")
Response.Write(Factorial(5) & "<br>")
%>
</body>
</html>