• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
      • Io
      • Defttag
      • Sys-call
      • Save-exec
      • Quicklisp
      • Std/io
      • Oslib
      • Bridge
      • Clex
      • Tshell
      • Unsound-eval
      • Hacker
      • ACL2s-interface
      • Startup-banner
      • Command-line
        • Save-exec
        • Argv
        • Getopt
          • Demo-p
            • Parse-demo
            • Demo
              • Make-demo
              • Change-demo
              • Honsed-demo
              • Make-honsed-demo
              • *demo-usage*
              • Demo->version
              • Demo->verbose
              • Demo->username
              • Demo->port
              • Demo->help
              • Demo->extra-stuff2
              • Demo->extra-stuff
              • Demo->dirs
            • Defoptions
            • Demo2
            • Parsers
            • Sanity-check-formals
            • Formal->parser
            • Formal->argname
            • Formal->longname
            • Formal->alias
            • Formal->usage
            • Formal->merge
            • Formal->hiddenp
      • Hardware-verification
      • Software-verification
      • Math
      • Testing-utilities
    • Demo-p

    Demo

    Raw constructor for demo-p structures.

    Syntax:

    (demo help verbose version username
          port dirs extra-stuff extra-stuff2)

    This is the lowest-level constructor for demo-p structures. It simply conses together a structure with the specified fields.

    Note: It's generally better to use macros like make-demo or change-demo instead. These macros lead to more readable and robust code, because you don't have to remember the order of the fields.

    The demo-p structures we create here are just constructed with ordinary cons. If you want to create honsed structures, see honsed-demo instead.

    Definition

    This is an ordinary constructor function introduced by std::defaggregate.

    Function: demo

    (defun demo (help verbose version username
                      port dirs extra-stuff extra-stuff2)
     (declare (xargs :guard (and (booleanp help)
                                 (booleanp verbose)
                                 (booleanp version)
                                 (stringp username)
                                 (natp port)
                                 (string-listp dirs)
                                 (stringp extra-stuff2))))
     (cons
      :demo
      (cons
       (cons 'help help)
       (cons
        (cons 'verbose verbose)
        (cons
         (cons 'version version)
         (cons (cons 'username username)
               (cons (cons 'port port)
                     (cons (cons 'dirs dirs)
                           (cons (cons 'extra-stuff extra-stuff)
                                 (cons (cons 'extra-stuff2 extra-stuff2)
                                       nil))))))))))