Sounds great Hyperz, awesome job again on the tool!Well yes the download links are still those of version 1.0.0. When I said I finished adding IPB3 support I meant that it's done in the version I'm currently working on.
Not sure when the next version will drop as it depends on how much I work on it daily. I hate giving dates. I THINK somewhere next week. Could be sooner or later though. There's quite a few changes being made for the next version. Not all will be visible for the end user but the next version will have the 1st big changes to the source since it was written a year back. You gotta remember this app was written in a hurry back then and was in no way meant to be something that would be maintained like it is now. The next version will be 1.1.0 instead of 1.0.1 to reflect the changes.
About the source code the answer is no - for now that is. I don't see the need for it, the source that was released is pretty complete and more than enough to get some1 started (saving them weeks of work).
godamn i was begging for a little feature censored word option for almost 1 year, thinking he is nice by releasing the tool, well happy new year mate![]()
It works on the .com. The .org uses SEO and so isn't supported at this time.
I doubt there will be smf support any time soon, if ever. Not enough boards use it.
Which is quite odd, being it's very secure and, in my opinion, much more aesthetically pleasing than phpbb.
[LEFT] [FONT=monospace] let rec factorial n =
match n with
| 0I -> 1I
| _ -> n * factorial (n - 1I)
[/FONT]
[/LEFT]
[LEFT] [FONT=monospace] open List
(* print a list of numbers recursively *)
let rec printlist lst =
if lst <> [] then
printf "%d\n" (nth lst 0)
printlist (tl lst)
(* Same thing, using matching against list elements *)
let rec printlist2 l =
match l with
| [] -> ()
| h :: t -> printfn "%A" h
printlist2 t
(* Using shorthand for match *)
let rec printlist3 = function
| [] -> ()
| h :: t -> printfn "%A" h
printlist3 t
(* Or, using a higher-order function *)
let printlist4 lst = List.iter (printfn "%A") lst
[/FONT]
[/LEFT]
[LEFT] [FONT=monospace] (* Fibonacci Number formula *)
let rec fib n =
match n with
| 0 | 1 -> n
| _ -> fib (n - 1) + fib (n - 2)
(* An alternative approach - a lazy recursive sequence of Fibonacci numbers *)
let rec fibs = seq {
yield! [1; 1];
for (x, y) in Seq.zip fibs (Seq.skip 1 fibs) -> x + y }
(* Print even fibs *)
[1 .. 10]
|> List.map fib
|> List.filter (fun n -> (n % 2) = 0)
|> printlist
(* Same thing, using Comprehension syntax *)
[ for i in 1..10 do
let r = fib i
if r % 2 = 0 then yield r ]
|> printlist
[/FONT]
[/LEFT]
[LEFT] [FONT=monospace] (* Sample Windows Forms Program *)
(* We need to open the Windows Forms library *)
open System.Windows.Forms
(* Create a window and set a few properties *)
let form = new Form(Visible=true, TopMost=true, Text="Welcome to F#")
(* Create a label to show some text in the form *)
let label =
let temp = new Label()
let x = 3 + (4 * 5)
(* Set the value of the Text*)
temp.Text <- sprintf "x = %d" x
(* Remember to return a value! *)
temp
(* Add the label to the form *)
do form.Controls.Add(label)
(* Finally, run the form *)
[<STAThread>]
do Application.Run(form)
[/FONT]
[/LEFT]
[LEFT] [FONT=monospace] (* async workflows sample (parallel tasks) *)
(* very naive prime number detector *)
let is_prime (n:int) =
let bound = int (System.Math.Sqrt(float n)) in
{2 .. bound} |> Seq.exists (fun x -> n % x = 0) |> not
(* we are using async workflows *)
let primeAsync n =
async { return (n, is_prime n) }
(* return primes between m and n using multiple threads *)
let primes m n =
{m .. n}
|> Seq.map primeAsync
|> Async.Parallel
|> Async.RunSynchronously
|> Array.filter snd
|> Array.map fst
(* run a test *)
primes 1000000 1002000
|> Array.iter (printfn "%d")
[/FONT]
[/LEFT]
yeah good luck with that hyperz. Im going to learn another language, but most likely php or something like that.
Reach 1000's of webmasters, hosts & affiliates. Banner & sponsored-thread slots available.
Contact us