Your SlideShare is downloading. ×
0
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Alloy20110909
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Alloy20110909

413

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
413
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09
4.4 N. Shimizu (chikoski@gmail.com / @chikoski)
  • 2. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09•  #•  #   #   #•  #   #   #   #
  • 3. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09Alloy•  #• 
  • 4. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/094.4.1:
  • 5. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09 #•  #•  #•  #
  • 6. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09 overlap)• A1 A A1 A #•  A1 A #
  • 7. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Tea {}#sig IndiaTea, ChinaTea extends Tea{}#sig Assam, Darjeeling extends IndiaTea{}#sig Keemun, Lapsang extends ChinaTea{}
  • 8. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09
  • 9. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/094.4.2:
  • 10. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09•  #•  #• 
  • 11. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/091.  #2.  #3. 
  • 12. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/091.
  • 13. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09•  #•  #
  • 14. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/092.sig Directory extends Object{# #contents: set Object#}##Directory -> Object #
  • 15. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/093.all d: Directory - Root | some d.~contents##d Directory #d.~contents Directory #
  • 16. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09• p P1 -> … -> Pn #• q Q1 -> … -> Qm #•  Pn Q1 #• p.q P1 -> … -> Pn-1 -> Q2 -> … -> Qm
  • 17. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09s.r• s r #• s #• r #
  • 18. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/094.4.3:
  • 19. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09•  #•  #   #   #• 
  • 20. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Tea { origin: Country }#sig Country {}##• origin + Country #  origin 2#  Country 1#
  • 21. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Object {}#sig Directory extends Object {contents: set Object }#sig File extends Object {}#sig Alias extends File { to: Object}##•  Directory & Alias#   Directory Alias #   Directory & Alias #
  • 22. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09 2sig Object {}#sig Directory extends Object {contents: set Object }#sig File extends Object {}#sig Alias extends File { to: Object}##•  Alias.contents#   Alias #   contents Directory -> Object Alias Directory #
  • 23. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09• Alias - Object#•  #• A Alias O Object 
 A-O
  • 24. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Object {}#sig Directory extends Object{contents : setFile + Directory}#sig File extends Object{}#sig Alias { to :File + Directory }
  • 25. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09• (Directory + Alias).contents#  Alias contents #  Alias #• Directory – Alias#  Alias Directory #  Alias #
  • 26. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09•  #
  • 27. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09•  #• 
  • 28. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09
  • 29. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09•  #•  #•  #
  • 30. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09•  #•  
 
 #
  • 31. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Object, Block {}#sig Directory extends Object {# contents: set Object}#sig File extends Object { contends: set Block}##all f: File | some f.contents# •  contents Directory f.contents # •  contents File
  • 32. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Object, Block {}#sig Directory extends Object {# contents: set Object}#sig File extends Object { contends: set Block}##all o Object | some o.contents# •  contents Directory File # •  #
  • 33. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Singer { band: Band}#sig RadioStation { band: Freq}#sig Band, Freq {}#no disj s, s’ : RadioStation | some s.band &s’.band# •  band RadioStation band# •  #
  • 34. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Singer { band: Band}#sig RadioStation { band: Freq}#sig Band, Freq {}#all b: Band | some b.~band# •  band Singer band# •  #
  • 35. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09band• all b: Band | some b.~band#• all b: Band | some band.b#• all b: Band | some s: Singer | s -> b in band
  • 36. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Object, Block {}#sig Directory extends Object { # contents: set Object}#sig File extends Objecct {# contents : set Block}#no o: Object | o in o.contents# •  contents Directory # •  File o.contents Block 
 Block Object 
 o in o.contents
  • 37. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Node { next: Node, value: Value one ->Time}#sig Time { next: Time}#sig Value {}#fact { all n: Node | Node in n.^next}# •  next Node # •  n #
  • 38. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Node { next: Node, value: Value one ->Time}#sig Time { next: Time}#sig Value {}#fact { no ^next | iden}# •  # •  Time Node #
  • 39. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Node { next: Node, value: Value one ->Time}#sig Time { next: Time}#sig Value {}#fact { no ^(Time <: next) | iden}# •  <: next Time # •  next Time #
  • 40. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09 

  • 41. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09# #
  • 42. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Object {}#sig Directory in Object {# #contains: some Object#}
  • 43. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09sig Object, Block {}#sig Directory in Object {# #contains: some Object#}#sig File extends Object{# #contains: some Block#}#
  • 44. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09#
  • 45. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09
  • 46. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09Alloy #Java
  • 47. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09Alloy ##x. f, f.~x, x(f + g) # Java
  • 48. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09
  • 49. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09 # # #•  S <: f #•  (S -> univ) & f
  • 50. N. Shimizu (chikoski@gmail.com / @chikoski) 2011/09/09•  #•  #   #   #•  #   #   #   #

×