Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-

ENTERPRISE METAPROGRAMMING

Name: Anonymous 2007-10-10 8:24

Name: Anonymous 2007-10-10 8:28

``bullshite''

Name: Anonymous 2007-10-10 9:24

ENTERPRISE METAPROGRAMMING LOLOL

Name: Anonymous 2007-10-10 9:28

>>1
>>3
same faggot

>>2
>>4
same faggot

Name: John the Autist 2011-01-09 6:56

Oh, no! Not another "theoretical" discussion!
Says the UML-infected corporate suit.

Name: Anonymous 2011-01-09 8:34

>>2
PROGRAMMING IS ALL ABOUT ENTERPRISE-GRADE SCALABLE CONCRETE ``BULLSHITE''

Name: Anonymous 2011-01-09 8:43

>>1
ENTERPRISE
Chicken Scheme

Wait, what?

Name: Anonymous 2011-01-09 8:47

>>7
full of display instead of returning a string
no abstractions whatsoever
the code is one giant mess

Ok, we've got ENTERPRISE Scheme.

Name: Anonymous 2011-01-09 10:31

>>8
your mom's anus is one giant mess after I've finished with it

Name: Anonymous 2011-01-09 12:00

IBM are among the world's most productive creators of abstract bullshite.

Name: Anonymous 2011-01-09 12:48

``ABSTRACT BULLSHITE''
;; range macro that builds a list of numbers at compile-time when possible
;; otherwise, it will be generated at run-time.
(define-syntax (range stx)
  (define gen
    (λ (x y s)
      (let-values (((compare +/-)
                    (if (< x y) (values > +)
                        (values < -))))
        (let loop ((x x)
                   (r '()))
          (if (compare x y) (reverse r)
              (loop (+/- x s)
                    (cons x r)))))))
  (syntax-case stx ()
    ((~ n m s) (let ((n1 (syntax->datum #'n))
                     (m1 (syntax->datum #'m))
                     (s1 (syntax->datum #'s)))
                 (cond ((and (number? n1)
                             (number? m1)
                             (number? s1)) #`'#,(gen n1 m1 s1))
                       (else #`(#,gen n m s)))))
    ((~ n m) #'(~ n m 1))
    ((~ m) (let ((m1 (syntax->datum #'m)))
             (if (number? m1) #`'#,(gen 0 (sub1 m1) 1)
                 #`(#,gen 0 (sub1 m) 1))))))

(range 0 10) ; => '(0 1 2 3 4 5 6 7 8 9 10), builds the list at compile-time.

(define x 10)
(range 0 x) ; => '(0 1 2 3 4 5 6 7 8 9 10), evaluated at run-time.

(range 10 0) ; => '(10 9 8 7 6 5 4 3 2 1 0), compile-time.
(range x 0) ; same, run-time.

(range 0 5 0.5) ; => '(0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5)

(range 10) ; => '(0 1 2 3 4 5 6 7 8 9), builds a list of 10 elements at compile-time.
(range x) ; same, but at run-time.

Name: Anonymous 2011-01-09 14:39

I thought the article was about Sepples, and now Im disappointed.

Name: Anonymous 2011-01-10 4:11

>>11
EVEN MORE ``ABSTRACT BULLSHITE''

(define-syntax (eval-when-compile stx)
  (syntax-case stx (compile)
    ((ewc b r ...)
     (let ((r (eval-syntax #'b)))
       (cond ((and (list? r)
                   (identifier? (car r))) #`#,r)
             (else #`'#,r))))))

Name: Anonymous 2011-01-10 4:11

>>13
Without r ...

Name: Anonymous 2011-02-04 11:38

Don't change these.
Name: Email:
Entire Thread Thread List