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 | 5808 reads
|
Browse archives
Active forum topics |
Recent comments
22 weeks 6 days ago
22 weeks 6 days ago
22 weeks 6 days ago
45 weeks 16 hours ago
49 weeks 2 days ago
50 weeks 6 days ago
50 weeks 6 days ago
1 year 1 week ago
1 year 6 weeks ago
1 year 6 weeks ago