2010/03/17

set!はdefineに似ている

Is (set!...) just like (define...)
The Seasoned Schemer 曰く set! は「set bang」と読むらしい。私は BJC を思い出します。
セットバン!セッ バン!

gosh> (apropos '!)
%alist-delete!                 (gauche)
%char-set-add!                 (gauche)
%char-set-add-chars!           (gauche)
%char-set-add-range!           (gauche)
%char-set-complement!          (gauche)
%delete!                       (gauche)
%delete-duplicates!            (gauche)
%sort!                         (gauche)
%string-replace-body!          (gauche)
%vm-parameter-set!             (gauche)
add-method!                    (gauche)
append!                        (gauche)
class-slot-set!                (gauche)
dec!                           (gauche)
delete-keyword!                (gauche)
delete-method!                 (gauche)
hash-table-clear!              (gauche)
hash-table-delete!             (gauche)
hash-table-pop!                (gauche)
hash-table-push!               (gauche)
hash-table-put!                (gauche)
hash-table-update!             (gauche)
inc!                           (gauche)
merge!                         (gauche)
pop!                           (gauche)
port-case-fold-set!            (gauche)
port-fd-dup!                   (gauche)
push!                          (gauche)
redefine-class!                (gauche)
reverse!                       (gauche)
set!                           (null)
set!-values                    (gauche)
set-car!                       (scheme)
set-cdr!                       (scheme)
set-signal-handler!            (gauche)
slot-initialize-using-accessor! (gauche)
slot-push!                     (gauche)
slot-set!                      (gauche)
slot-set-using-accessor!       (gauche)
slot-set-using-class!          (gauche)
sort!                          (gauche)
sort-by!                       (gauche)
stable-sort!                   (gauche)
stable-sort-by!                (gauche)
string-byte-set!               (gauche)
string-fill!                   (gauche)
string-incomplete->complete!   (gauche)
string-pointer-next!           (gauche)
string-pointer-prev!           (gauche)
string-pointer-set!            (gauche)
string-set!                    (scheme)
sys-sigset-add!                (gauche)
sys-sigset-delete!             (gauche)
sys-sigset-empty!              (gauche)
sys-sigset-fill!               (gauche)
touch-instance!                (gauche)
tree-map-clear!                (gauche)
tree-map-delete!               (gauche)
tree-map-pop!                  (gauche)
tree-map-pop-max!              (gauche)
tree-map-pop-min!              (gauche)
tree-map-push!                 (gauche)
tree-map-put!                  (gauche)
tree-map-update!               (gauche)
update!                        (gauche)
update-direct-method!          (gauche)
update-direct-subclass!        (gauche)
vector-fill!                   (scheme)
vector-set!                    (scheme)
weak-vector-set!               (gauche)
gosh> 

追記


(define a ) では を評価した値に a というラベルをつけて 後からaで参照できるようにする
(set! a ) ではラベルaをの結果の値へと貼り替える


0 件のコメント:

コメントを投稿