Metaprogramming: Difference between revisions

Line 912:
; instead of
(setq sum (lambda (a b) (+ a b)))
</lang>
 
=={{header|OxygenBasic}}==
 
OxygenBasic supports metalanguage useable with various macro formats.
 
Unlike the C preprocessor, OxygenBasic metalanguage is resolved inline.
 
<lang>
 
'EQUATES
 
% half 0.5
$ title "My Metaprogram"
 
'CONDITIONAL BLOCKS
 
#ifdef
#elseif
#else
#endif
 
'MACROS
 
'msdos-like
def sum
%1 + %2
end def
 
'C-like
#define sum(a,b) a + b
 
'native
macro sum(a,b)
a + b
end macro
 
'native macro functions
macro sum int(r,a,b)
r=a+b
end macro
 
</lang>
 
54

edits