This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env tclsh | |
proc sum {k m n e} { | |
set r 0 | |
for {set k $m} {$k < $n} {incr k} { | |
set r [expr {$r + [uplevel 1 [list set k $k]; uplevel 1 $e]}] | |
} | |
return $r | |
} | |
set test [sum k 1 5 {expr {pow($k, 2)}}] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{-# LANGUAGE BangPatterns #-} | |
module CollatzConjecture ( collatz | |
, collatz1 | |
, collatz2 | |
, collatz3 | |
, collatz4 | |
, collatz5 | |
) where | |
import Data.List (genericLength, elemIndex) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use nom::bytes::complete::*; | |
use nom::error::ParseError; | |
use nom::sequence::tuple; | |
use nom::InputTakeAtPosition; | |
use nom::{error::VerboseError, IResult}; | |
fn main() { | |
let a: ParseResult<()> = skip_whitespace(" hello"); | |
println!("Parse result: {:?}", a); | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
use num_traits::{Zero, One}; | |
use std::ops::{AddAssign}; | |
fn enumerate_generic<T>() -> impl Iterator<Item = T> | |
where | |
T: Clone + Zero + One + AddAssign, | |
{ | |
let mut curr = T::zero(); | |
std::iter::repeat_with(move || { | |
let next = curr.clone(); |
OlderNewer