Welcome, I'm happy to see you here! Feel free to pick a function and add a happy example, the more the merrier!
(/ 2 )
# => 0.5
(merge {:a 1 :b 2 })
#=> @{:a 1 :b 2}
# good way to convert struct to table (in "yo" 0 )
# => 121
(math/ceil 1.1 ) # => 2
(map math/ceil [1.1 1.2 1.3 ]) # => @[2 2 2] (defn greet-me [] (print "hey programmer!" ))
(defn greet-stranger [] (print "hey stranger!" ))
(varfn greet [] (greet-me ))
(greet ) # prints "hey programmer!"
(varfn greet [] (greet-stranger ))
(greet ) # prints "hey stranger!"
# kind of analogous to (def greet (fn [] (some-thunk))), but with built-in
# sugar to automatically update 'greet' if varfn is called with a name
# already bound
(fiber/root ) # => <fiber 0x562FF22F10A0> your hex number will differ (any? [false false nil ]) => nil
(any? [false false nil 1 ]) => 1
(any? [false false nil true ]) => true
# sh/$'s contents are quasiquoted, allowing direct or string arguments
# so you need to unquote , variables:
(def out (file/open "trust-db.txt" :w ))
(sh/$ "gpg" "--export-ownertrust" > ,out ) # > requires an opened file object
(file/close out )
# note how > requires an opened file object
(with [out (file/open "trust-db.txt" :w )]
(sh/$ gpg --export-ownertrust > ,out ))(map bytes? [ 'ab :ab "ab" @"ab" [97 98 ] @[97 98 ] {0 97 1 98 } @{0 97 1 98 } ])
# => @[ true true true true false false false false ]
(map symbol? [ 'ab :ab "ab" @"ab" [97 98 ] @[97 98 ] {0 97 1 98 } @{0 97 1 98 } ])
# => @[ true false false false false false false false ]
(map keyword? [ 'ab :ab "ab" @"ab" [97 98 ] @[97 98 ] {0 97 1 98 } @{0 97 1 98 } ])
# => @[ false true false false false false false false ]
(map string? [ 'ab :ab "ab" @"ab" [97 98 ] @[97 98 ] {0 97 1 98 } @{0 97 1 98 } ])
# => @[ false false true false false false false false ]
(map buffer? [ 'ab :ab "ab" @"ab" [97 98 ] @[97 98 ] {0 97 1 98 } @{0 97 1 98 } ])
# => @[ false false false true false false false false ] (map truthy? [ nil false true 0 1 'a :a "a" [] {} (fn []) ])
# => @[ false false true true true true true true true true true ]
# note that 'not' works as an implementation of 'falsey?'
(map not [ nil false true 0 1 'a :a "a" [] {} (fn []) ])
# => @[ true true false false false false false false false false false ]
(defn read-from-file [file-path ]
(let [f (file/open file-path :r )
content (file/read f :all )]
(file/close f )
content ))
### USAGE
(read-from-file "/path/to/file-read-example.janet" )
# => @"(defn read-from-file [file-path]\n (let [f (file/open file-path :r)\n content (file/read f :all)]\n (file/close f)\n content))\n" (bor 1 2 4 ) # => 7
(bor 7 12 ) # => 15
# 0111 (7)
# or 1100 (12)
# -------
# 1111 (15)
(map math/abs [-2.9 -2.1 2.1 2.9 ]) # => @[ 2.9 2.1 2.1 2.9 ]
(map math/floor [-2.9 -2.1 2.1 2.9 ]) # => @[ -3 -3 2 2 ]
(map math/ceil [-2.9 -2.1 2.1 2.9 ]) # => @[ -2 -2 3 3 ]
(map math/round [-2.9 -2.1 2.1 2.9 ]) # => @[ -3 -2 2 3 ]
(map math/trunc [-2.9 -2.1 2.1 2.9 ]) # => @[ -2 -2 2 2 ]
(def a @[11 12 ]) # => @[11 12]
(array/insert a 0 10 ) # => @[10 11 12]
(array/insert a 3 13 ) # => @[10 11 12 13]
(array/insert a -1 14 ) # => @[10 11 12 13 14]
(array/insert a -1 15 16 17 ) # => @[10 11 12 13 14 15 16 17]
# From: https://codeberg.org/veqq/janetdocs/src/commit/54a964d1a35920af2655c4932a9b51379e8b9380/helpers.janet#L52
(defn current-account [request ]
(def login (get-in request [:session :login ] "" ))
(joy/db/find-by :account :where {:login login }))