User loginNavigation |
Multi-Artifact LanguagesLately I've been wondering about a trend in software development: We seem to be grappling not so much with algorithm specification, but rather with the organization of large systems developed by large teams. As such, documentation and testing become almost as relevant as the source code itself. I was wondering whether there were any good languages for writing (1) source code, (2) documentation, and (3) unit tests all in the same location, and in an elegant way? I'm thinking something like this: (define (factorial n) (returns "the mathematical factorial of n.") (if (> n 0) (* n (factorial (- n 1))) 1) (such-that (and (= (factorial 0) 1) (= (factorial 5) 120)))) And it would translate into (1) a function that computed the factorial, (2) a unit test for that function, and (3) this documentation (or something similar): Factorial (n): Returns the mathematical factorial of n. Examples: Factorial (0) = 1 (passed), Factorial (5) = 120 (passed). My initial thought is that it would have to be some sort of Lisp-type macro system, but that's just a guess. Any thoughts would be appreciated. By Spencer Tipping at 2008-07-18 05:17 | LtU Forum | previous forum topic | next forum topic | other blogs | 5838 reads
|
Browse archives
Active forum topics |
Recent comments
27 weeks 1 day ago
27 weeks 2 days ago
27 weeks 2 days ago
49 weeks 3 days ago
1 year 1 week ago
1 year 3 weeks ago
1 year 3 weeks ago
1 year 5 weeks ago
1 year 10 weeks ago
1 year 10 weeks ago