diff options
author | antirez <antirez> | 2005-04-02 10:08:33 +0000 |
---|---|---|
committer | antirez <antirez> | 2005-04-02 10:08:33 +0000 |
commit | 49e34e447b54aad20aac86b17c38b35ca7b1203a (patch) | |
tree | 61046b422b849bac9e49a13da7e165ae13005340 /jim-stdlib-1.0.tcl | |
parent | 69fdf299c3480aac7f22bbe8ec45b0fe5168a9cc (diff) | |
download | jimtcl-49e34e447b54aad20aac86b17c38b35ca7b1203a.zip jimtcl-49e34e447b54aad20aac86b17c38b35ca7b1203a.tar.gz jimtcl-49e34e447b54aad20aac86b17c38b35ca7b1203a.tar.bz2 |
Added a very immature start of a Jim standard library.
Diffstat (limited to 'jim-stdlib-1.0.tcl')
-rw-r--r-- | jim-stdlib-1.0.tcl | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/jim-stdlib-1.0.tcl b/jim-stdlib-1.0.tcl new file mode 100644 index 0000000..a2c555f --- /dev/null +++ b/jim-stdlib-1.0.tcl @@ -0,0 +1,41 @@ +# Jim stdlib - a pure-Jim extension library for Jim +# +# Copyright 2005 Salvatore Sanfilippo <antirez@invece.org> +# +# $Id: jim-stdlib-1.0.tcl,v 1.1 2005/04/02 10:08:33 antirez Exp $ +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# A copy of the license is also included in the source distribution +# of Jim, as a TXT file name called LICENSE. +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# To use this library just do [package require stdlib] +# Make sure this file is in one directory specified in $jim_libpath + +package provide stdlib 1.0 + +### Functional programming ### + +proc curry {cmd args} { + lambda args [list cmd [list pref $args]] { + uplevel 1 [list $cmd {expand}$pref {expand}$args] + } +} + +### Control structures ### + +proc repeat {n body} { + for {set i 0} {$i < $n} {incr i} { + uplevel 1 $body + } +} |