Professional Documents
Culture Documents
Languages On The JVM Groovy Ruby Scala Clojure
Languages On The JVM Groovy Ruby Scala Clojure
!
"
#
$$
%
!
+
+
.
4
+
54
%+
+
%6!4
!"
#$ % !& '
! ( )* !%'
"
% +'
"% $%'( '
% '
% '
,
% '
! ( )* !%'
%-. /' %-0 '
%-1/' %-0/'
% '
( ) %'
!$
2("
#$ % &3'
%$
2'
,
,
%6/
+4
!"
#$ % !& '
! ( )* !%'
"
% +'
"% $%'( '
% '
% '
,
% '
! ( )* !%'
%-. /' %-0 '
%-1/' %-0/'
% '
( ) %'
!$
2("
#$ % &3'
%$
2'
,
,
/
+ +
!
"$
2( " *
8%'(9
,
"
#
(%/
+
%
:
"
(4+7
&
)
(;3
'
(
"
%'-< ,&<,&< ,-,
=% '
4 7,
% &='
4 7(,
,
*
:
" ( ):
% +>. >
&+>" ?
@
>'
" (>>
*
B%'
.
" (47
"%:
'
A(
,
"%."'
A("
,
,
:
" (C
:
)(C
."
(C
"
A(" A)
:
(C
:
(C
. (C
A( A
+
%
+
,
B
"% "&
'
%"
D %'
A
D %''
%'
,$%2 .
"'
%"
'
,
,
,
-;9/A-;9/E-;9;9/
,
-
.
% B
'
-A
.(
-;9/A-;9/E-FG/
,
/!
-0 . *
(1
%
%
+
8
0
,.
,
3(
"
-
" "
% &B
(,'
"
%(HAA'
%'
,
"
%9'
! -$
+<,/,
2
"
+
"
D "
(
&
!
%D2.=&',
)$
@%
@
&
D "
%
%5
5'' %5K
5''
4
+
54
4
+
/
+
9
.
.
54
'
:
8
;
<L
=MB
MB
,
-
B
(
(
B
% '
)D %% )N%''
%''
,
) %'E-2
O/
(
MB
++
;
MB
"
( )
MB%:
'
*(!(F,
"%
*%''
+++
. 5
':
+
7
9%'
(%-+
"
.
class Song
def to_s
"song = #{@name}, artist = #{@artist}, duration =
#{@duration}, plays = #{@@plays}"
end
end
puts s
song = Cavatina, artist = John Williams, duration = 200,
plays = 1
5
+
-+
.
,,
(
)
+
5
?
U
V
5
,
-
9
(
+
) -&
X
@
3
U8-
!
"
U
A-4Y? ,7/
B2
(
)%' %B2'
%
+
*%4
7
.
.
,
.>+.7
7
MB/
++
MB
"$
U % & '
" 4H7UV%:
'
" U
" U$
%
U$
%5(5'& 4H7'
.
MB
"(.
)
" ([[5K
Y,P5,
" 5. 5
class Module
def java_bean(*syms)
syms.each do |s|
pn = s.to_s.split("_").collect!{|x| x.capitalize}.join
class_eval %{
def get#{pn}
N
@#{pn}
end
U +U
}
C
class_eval %{
def set#{pn}(v)
@#{pn} = v
(N
)
end
}
M2%-" /'
end
M2
end
end
%
"
#
"%!H'
-!H/
-H/
?
.
8
..
,,
*
-+
?
(
(
[<
U
[,
,.
(
.6
.(
A(
<
U
"%(H'
,
6
-
(
)
"
5:D2L5
U U %< U
& '
5:D2LO5
U U %< U
&<
U
'
5:D2L95
U U %< U
&<
U
'
"
5:=2L5
U U %<
U
&< U
'
5:=2LO5
U U %<
U
&< U
'
5:=2L95
U U %<
U
&< U
'
/!
-;"+"
"
$
:D2L
:=2L
:D2LO
:=2LO
:D2L9
:=2L9
(
1
"
-
+++
5
*
+
+
5
.
.
.
,.
.
+
5
+.
%
"=".
% +D '+D (
(H
"
%
'
"%%T'((H'
A(
,
) -
-
!
:
% + '
%
+
&+ ' :
% '
+N
(U
"$% + &+ &U +N
'
$% &'
(U
#
,
" %'(
,
"
%'+ ( A-%-AA-'/
,
" ( )
%-6/&-HH\/'
%" '
J
"
*
-
*
?+*
"
-
"% + &+ '
( )
% &'
"% + &+ & +N
'
% "+% & &N
'(!=
4
7'
+=
4
7(
&
"% "% && ''
% )
% && ''
"
:
2
,
#
+
,
.
$$5'
,
(
,
;
*
L
"K
% + '(-K
-A
,
*5
+
0+
$
" %+N
'(
%A%HH3''
,
#$ M
$ :
" %+N
'(
%A'
,
;+
%
.
+
7...... .
.
.
?+
.
U
%
+ *"
"A%U +N
'($ AU
"
+%U +N
'($
U
" U!!P%'+
(
" UP%'+
(
+
&
++
+
*.
.
.
.
,.
.
;
+
%
P
(
+
3(11
31(H1
H3(G1
G3(I1
I3(EG
*
U
("
"$.
D I % +D & +D &+D '+0
(
%%
'" (!%% T'((H',8P(H'
,
2
$@
": % +D '+0
(
(
9
(% OH'A%"%% TOH'!H'H'
$.
("
"
%
H
'
(9A%OH'
"
("%% A^'! '
%
'% A^'
P$.
D I % & &'
,
,
/!
-
,
(
$.
("
'-
-
%H
'"
$(!
+0
(!
$.
($.
[[
U(!
,
%
,
P$.
,
=6
5
!
>+
/
.
6-J;95
'
K+>+
@+
+
+
B.
2
C
$
>%''E%'
,
%
"
E%'
%""
%
"
+
>(
&(%'
6
(47
*(Y,
5(+&+&+8,
(
+(
,
(
+
&
!
-
-
)@M
"%" "'
(
"
% ("AA
(
%
'
>
-
,
%" "4"7
%"%8
V"'
%"%"%"'''''
3(
-
!
9
!
%
>%) *
'
%
%"_ '
%_" '
%N"0
%I
: "''
E%"I
: N"0
'
3
%
4*
747
%
: "
4YR*
7%C'''
%"
%
%60
5: 5'
%*
'''
B
-+
%"
%
%6: '
%
'''
B "
%
%6. '
%#5K
5'
%N"B
=
6. ND:=U=2UB='
% '
%1
) )
'
%@'
.
%
I#
'
%_ ''
+
*
H
+
%(
%
(,
-(,
6(
*
5-
3
3 C
3
3 C
D-
*
-
.
%
?
*
+
'
+
+
+
*
%""
% H''
?"
EH
% ?"
'E
?"
EH
?"
.
% "
'
"
?"
E
-*;5
- "
,
*
+
%
+
%
J
+
$
? "
%" ++ '
%""
+ >'
E+O9+ -. /+ ,
?"
%
% "
+ >''
E+O9+ -. /+ ,
%
%
"
+ >''
E+O9+ -. /+ ,
?"
''
%
'
%
'
"
%
/
+
"
$?"
6
(
%
"
,
2)
K
"
9
.
@
''
%
'
%
'
"
.
B
"(%
&--/
(5
D
9
%">%''
%"% ''
%"8%
>%'''