关键词:计算机程序;控制系统;加密;分布;堆垛
摘 要:Complex scientific software is often built on distributions , or stacks , of software. Particulary as scientists and engineers work toward more integrated, and therefore more interdependennt, scientific software, they need the ability to setup scientific stacks in many different user and hardware environments and hardware. Scientific stacks must be reproducible in the sense that regular users should be able to install them and have them work as advertised. These stacks also need to work in challenging environments like cutting edge high performance commputers and handheld devices. Due to the authors separate but similar experiences of the difficulty of buiding and maintaining scientific software stacks to support our own work, we worked together to build Hashdist, which is a a tool for building and managing custom software distributions based on a functional approach. It employs cryptographic hashing methods related to what are used in highly successful software source version control system to bring the same robustness to building and developing complex scientific software stacks.