Приложения канала
[Разметка Markdown] 

GDMWiki: StatementStructureCode1

Statment Structure View

Racket Slideshow's with-steps let me work through an attempt to use on-line class time to see the common structure in statements

  • https://tiksi.net/cloud/bsmall2/001-LPclasses/010-GeneralPrints/Statement-Structure-View.ps

After #lang slideshow


(require racket/draw slideshow/step rsvg); slideshow/text) (enable-click-advance! #f) (set-spotlight-style! ;; from scripts/TH-slides-from-text... #:size 70 #:color (make-object color% 255 0 0 .5)) ;;(define font-size-start (* 7 (current-font-size))) (current-font-size 38) (current-main-font "Manjari") ;; end of settings above (define actor-long-text "The woman ") (define actdo-long-text "is putting ") (define thing-long-text "the letters ") (define dirct-long-text "Direction ") (define place-long-text "the table.") ; add punctuation later? (define actor-text-pict (t actor-long-text)) (define actor-slot (ghost actor-text-pict)) (define (actor-t txt) (actor-jstfy (t txt) actor-slot)) ;; (actor-t "He"); ok! ;; (vl-append (actor-t "The woman ") (actor-t "She ")) ; ok! ;; ; The unit of meaning is the sentence. ; Iar PoR qut Aristotle (define (make-unit-part-slot lng-txt) (ghost (t lng-txt))) (define-values (actor-jstfy actdo-jstfy thing-jstfy dirct-jstfy place-jstfy) (values lc-superimpose cc-superimpose cc-superimpose cc-superimpose rc-superimpose)) (define actdo-slot ;; act verb operation 動詞 (make-unit-part-slot actdo-long-text)) (define thing-slot (make-unit-part-slot thing-long-text)) (define dirct-slot (make-unit-part-slot dirct-long-text)) (define place-slot (make-unit-part-slot place-long-text)) (define (dirct-t txt) (dirct-jstfy (t txt) dirct-slot)) (define (place-t txt) (place-jstfy (t txt) place-slot)) (define (actdo-t txt) (actdo-jstfy (t txt) actdo-slot)) (define (thing-t txt) (thing-jstfy (t txt) thing-slot)) (define (sntnc-t actor actdo thing dirct place) (ht-append (actor-t actor) (actdo-t actdo) (thing-t thing) (dirct-t dirct) (place-t place))) (define thewomanwp (sntnc-t "The woman " "will put " "the bag" "on " "the table.")) (define shewp (sntnc-t "She " "will put " "the bag" "on " "the table.")) (define (size-act-pict-3rd svg) (scale-to-fit (svg-file->pict svg) (- (/ client-w 3) 50) (/ client-h 3))) #;(void (with-steps (sheputwll sheputing sheputdid) (slide (hc-append 50 ;; times 2 and use to scale-down width of fitted pict in Fun:size-act-pict-3rd ((vafter sheputwll) (size-act-pict-3rd "svgs/sheputbagtable020.svg")) ((vafter sheputing) (size-act-pict-3rd "svgs/sheputbagtable030.svg")) ((vafter sheputdid) (size-act-pict-3rd "svgs/sheputbagtable040.svg")) ); hc-append ))) ; slide, with-steps, void (void (with-steps (intro structja thewoman1 she1 sheblnk1 shepting sheblnk2 sheput mantake hetake1 heblnk1 hetking heblnk2 hetook wmngve shegveman shegvehim shegvn shegav shllgo shgoin shewnt ;; shesees shesaid shesaidtohim ;; sheseesontable ;; sheputbird ) (slide ((vonly intro) (colorize (para #:width client-w "These statements are from our class in the form: ") "gray")) (vl-append 20 (sntnc-t "Person " "Act " "Thing " "Directive " "Place ") ((vafter structja) (sntnc-t "人 " "動作 " "物 " "方向詞 " "場所 ")) (lt-superimpose ((vonly thewoman1) thewomanwp) ((vonly she1) shewp) ((vonly sheblnk1) (sntnc-t "She " " " "the bag " "on " "the table.")) ((vonly shepting) (sntnc-t "She " "is putting " "the bag " "on " "the table.")) ((vonly sheblnk2) (sntnc-t "She " " " "the bag" "on " "the table.")) ((vafter sheput) (sntnc-t "She " "put " "the bag " "on " "the table.")) );lt-superimpose (lt-superimpose (hc-append 50 ;; times 2 and use to scale-down width of fitted pict in Fun:size-act-pict-3rd ((vbetween thewoman1 sheput) (size-act-pict-3rd "svgs/sheputbagtable020.svg")) ((vbetween sheblnk1 sheput) (size-act-pict-3rd "svgs/sheputbagtable030.svg")) ((vbetween sheblnk2 sheput) (size-act-pict-3rd "svgs/sheputbagtable040.svg")) );; hcappend (vl-append (lt-superimpose ((vonly mantake) (sntnc-t "The man " "will take " "the book " "off " "the table.")) ((vonly hetake1) (sntnc-t "He " "will take " "the book " "off " "the table.")) ((vonly heblnk1) (sntnc-t "He " " " "the book" "off " "the table.")) ((vonly hetking) (sntnc-t "He " "is taking " "the book " "off " "the table.")) ((vonly heblnk2) (sntnc-t "He " " " "the book " "off " "the table.")) ((vafter hetook) (sntnc-t "He " "took " "the book " "off " "the table.")) ); lt-superimpose (lt-superimpose (hc-append 50 ;; times 2 and use to scale-down width of fitted pict in Fun:size-act-pict-3rd ((vbetween mantake hetook) (size-act-pict-3rd "svgs/hetakebooktable020.svg")) ((vbetween heblnk1 hetook) (size-act-pict-3rd "svgs/hetakebooktable030.svg")) ((vbetween heblnk2 hetook) (size-act-pict-3rd "svgs/hetakebooktable040.svg")) );; hcappend (vl-append (lt-superimpose ((vonly wmngve) (sntnc-t "The woman " "will give " "the bag " "to " "the man.")) ((vonly shegveman) (sntnc-t "She " "will give " "the bag " "to " "the man.")) ((vonly shegvehim) (sntnc-t "She " "will give " "the bag " "to " "him.")) ((vonly shegvn) (sntnc-t "She " "is giving " "the bag " "to " "him.")) ((vafter shegav) (sntnc-t "She " "gave " "the bag " "to " "him.")) ); lt-superimpose (lt-superimpose ((vonly shllgo) (sntnc-t "She " "will go " " " "to " "the door.")) ((vonly shgoin) (sntnc-t "She " "is going " " " "to " "the door.")) ((vafter shewnt) (sntnc-t "She " "went " " " "to " "the door.")) ); lt-superimpose ((vafter shesaid) (sntnc-t "She " "said " "the words." " " " ")) ((vafter shesaidtohim) (sntnc-t "She " "said " "the words " "to " "him.")) ); vl-append, after take sentence for take images ); lt-superimpose, for replacing take images with remaining sentences );vl-append, after put sentence, for put images ); lt-superimpose for replacing first sentences images with rest of sentences #| ((vafter shesees) (sntnc-t "She " "saw " "the bird." " " " ")) ((vafter sheseesontable) (sntnc-t "She " "saw " "the bird " "on " "the table.")) ((vafter sheputbird) (sntnc-t "She " "put " "the bird " "on " "the table.")) |# );;vl-append ))) ;; slide, with-steps, void #;(slide (vl-append (sntnc-t "The woman " "is putting " "the book" "on " "the table.") (sntnc-t "She ""put " "the book " "on ""the table.") (sntnc-t "He " "is taking " "the book " "off " "the table.") (sntnc-t "He " "put " "the book " "in " "the box.") (sntnc-t "She " "is taking " "the book " "from " "the box.") (sntnc-t "She " "will give " "the book " "to " "the man.") ))