(* crypto.cm *) (* Copyright (C) 2008 Alley Stoughton This file is part of crypto, a cryptogram encoder/decoder. See the file COPYING.txt for copying and usage restrictions *) Library source(-) is (* to compile/build the graphical version of crypto, run sml or ml-build with -DGRAPH option, or start SML interactively, and then evaluate the expression #set (CM.symval "GRAPH") (SOME 1) to compile/build the automatic version of crypto, run sml or ml-build with -DAUTO option, or start SML interactively, and then evaluate the expression #set (CM.symval "AUTO") (SOME 1) *) #if defined(GRAPH) (* libraries for graphical version of crypto *) $cml/basis.cm $cml/cml.cm $cml/trace-cml.cm $cml/smlnj-lib.cm $/eXene.cm #elif defined(AUTO) (* libraries for automatic version of crypto *) $/basis.cm $/smlnj-lib.cm #else (* libraries for terminal version of crypto *) $/basis.cm $/smlnj-lib.cm #endif (* auxiliary functions *) aux.sig (* signature AUX *) aux.sml (* structure Aux *) (* random number generation *) random.sig (* signature RANDOM *) random.sml (* structure Random *) (* processing streams/files/strings of lowercase words *) lowercase-word.sig (* signature LOWERCASE_WORD *) lowercase-word.sml (* structure LowercaseWord *) (* linear ordering signature *) lin-ord.sig (* signature LIN_ORD *) (* sets over linear orderings *) set.sig (* signature SET *) set-func.sml (* functor SetFunc (parameterized by LIN_ORD) *) (* lexicons over linear orderings *) lexicon.sig (* signature LEXICON *) lexicon-func.sml (* functor LexiconFunc (parameterized by LIN_ORD) *) (* character linear ordering *) char-lin-ord.sml (* structure CharLinOrd *) (* basic symbol-based data *) data.sig (* signature DATA *) data-func.sml (* functor DataFunc (parameterized by LIN_ORD) *) data.sml (* structure Data (uses CharLinOrd) *) (* view signature *) view.sig (* signature VIEW (includes DATA) *) (* model *) model.sig (* signature MODEL (includes DATA) *) model-func.sml (* functor ModelFunc (parameterized by DATA) *) model.sml (* structure Model (uses Data) *) (* controller *) controller.sig (* signature CONTROLLER (uses MODEL and VIEW) *) controller-func.sml (* functor ControllerFunc (parameterized by MODEL and VIEW *) controller.sml (* structure Controller (uses Model and View) *) #if defined(GRAPH) (****************************** graphical view *****************************) (* extensible strings *) extstr.sml (* signature EXTSTR, structure ExtStr *) (* text renderer, used by text window widget *) text-renderer.sig (* signature TEXT_RENDERER *) text-renderer.sml (* structure TextRenderer *) (* text window widget *) text-window.sig (* signature TEXT_WINDOW *) text-window.sml (* structure TextWindow *) (* selection handling *) select.sig (* signature SELECT *) select.sml (* structure Select *) (* event filtering *) filter-evt.sig (* signature FILTER_EVT *) filter-evt.sml (* structure FilterEvt *) (* button-bar widget *) button-bar.sig (* signature BUTTON_BAR *) button-bar.sml (* structure ButtonBar *) (* graphical view *) graphical-view.sml (* structure View (uses Data) *) #elif defined(AUTO) (****************************** automatic view *****************************) (* string linear ordering *) string-lin-ord.sml (* structure StringLinOrd *) string-set.sml (* structure StringSet *) (* command completion *) completion.sig (* signature COMPLETION *) completion.sml (* structure Completion *) (* automatic view *) auto-view.sml (* structure View (uses Data) *) #else (****************************** terminal view ******************************) (* string linear ordering *) string-lin-ord.sml (* structure StringLinOrd *) string-set.sml (* structure StringSet *) (* command completion *) completion.sig (* signature COMPLETION *) completion.sml (* structure Completion *) (* interrupt handling *) interrupts.sig (* signature INTERRUPTS *) interrupts.sml (* structure Interrupts *) (* terminal view *) terminal-view.sml (* structure View (uses Data) *) #endif