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 std::boxed::Box; | |
| #[derive(Clone, Debug)] | |
| enum Expr { | |
| VAR(String), | |
| APP { func: Box<Expr>, arg: Box<Expr> }, | |
| LAM { arg: String, body: Box<Expr> }, | |
| } | |
| type Env = Vec<(String, Val)>; |
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
| benchmarked sexp/fpbasic | |
| time 3.193 ms (3.073 ms .. 3.357 ms) | |
| 0.989 R² (0.978 R² .. 0.998 R²) | |
| mean 2.960 ms (2.928 ms .. 3.023 ms) | |
| std dev 145.1 μs (89.51 μs .. 250.5 μs) | |
| variance introduced by outliers: 28% (moderately inflated) | |
| benchmarked sexp/fpstateful | |
| time 3.417 ms (3.346 ms .. 3.471 ms) | |
| 0.997 R² (0.995 R² .. 0.999 R²) |
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
| module Main where | |
| import Data.ByteString qualified as BS | |
| import Data.ByteString.Char8 qualified as BSC | |
| import Data.Char (isDigit) | |
| main :: IO () | |
| main = do | |
| content <- BS.readFile "input.txt" | |
| let lines_sep = BSC.lines content | |
| let x = fmap (take_first_and_last . filter isDigit) (BSC.unpack <$> lines_sep) |
OlderNewer