R E B   L Programming Is  Fun  Again
Who invented it? Carl Sassenrath,  The REBOL Creator He worked for: And created Amiga:
Disadvantages On the rigid head, this language a bit awkward Totally different, and new. The core code is not open source ...
Advantages
Do not need a bunch of files and  configuration:  just one file!
Rebol: 0,8 MB Super small size ...
Can do it
Simple and complex functions, audio and graphic ready to use
Dialogue Scripting Language DSL is currently the strongest language
Very suitable for development of disposable process
Or  create  quickly a prototype system
Across several major platforms
Incredible short code examples
View Layout [ Title "Hello" Btn "OK" [ Quit ] ] Windows programs areactually so short
print read http://www.rebol.com Download and print the contents  of a web page
view layout [ u: field "user@rebol.com"  h: field "http://"  btn "Send" [ send to-email u/te...
foreach file load %./ [ if not dir? file [ write/binary join  ftp://user:pass@example.com/  file  read/binary file ] ] Upl...
repeat n 100 [ if not error? try [ close open probe  join tcp://localhost: n ] [ print [n "is open"] ] ]  TCP po...
page: remove-each tag  load/markup http://www.rebol.com  [ tag? Tag ]  write %page.txt page  Transform a web page in a  si...
view layout [ origin 0  t: h1 red black (to string! now/time)  rate 1  feel [ engage: [ t/text: now/time  show t ] ] ]  Di...
view l: layout [ origin 0x0  b: box "Load" [ error? try [  b/image: i:  load first request-file  b/text: "&...
REBOL change things simple! <ul><li>Download, update, simple!
To install, simple!
Do not rely on a bunch of files, simple!
Write code, simple!
Ported to other platforms, simple!
Maintain, simple! </li></ul>Keep IT Simple
When It Comes to Programming, Are You A REBEL ? [`rebl] Stand up for  Simplicity  and  Flexibility , Against  Software  Co...
R E B O L E L A T I V E X P R E S S I O N A S E D B J E C T A N G U A G E S T A N D S F O R E
As A Java Programmer,  You Know Objects Already.
But Relative Expression?
CAN , could be <ul><li>Auxiliary / can
Noun / tank
Verb / canned </li></ul>Rebol understands the meaning from the context, for example: Relative-Expression  =>  Context-Sens...
3 Ways to Run REBOL  Scripts Encapsulated Encapsulated Operating System REBOL Interpreter REBOL Script REBOL Interpreter R...
<ul><li>Windowing
Drawing
Networking
Database Accessing
Upcoming SlideShare
Loading in …5
×

Glance rebol

3,486 views

Published on

Rebol, programming is fun again!

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,486
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
14
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Glance rebol

  1. 1. R E B L Programming Is Fun Again
  2. 2. Who invented it? Carl Sassenrath, The REBOL Creator He worked for: And created Amiga:
  3. 3. Disadvantages On the rigid head, this language a bit awkward Totally different, and new. The core code is not open source Lack of good documentation Few users
  4. 4. Advantages
  5. 5. Do not need a bunch of files and configuration: just one file!
  6. 6. Rebol: 0,8 MB Super small size ...
  7. 7. Can do it
  8. 8. Simple and complex functions, audio and graphic ready to use
  9. 9. Dialogue Scripting Language DSL is currently the strongest language
  10. 10. Very suitable for development of disposable process
  11. 11. Or create quickly a prototype system
  12. 12. Across several major platforms
  13. 13. Incredible short code examples
  14. 14. View Layout [ Title &quot;Hello&quot; Btn &quot;OK&quot; [ Quit ] ] Windows programs areactually so short
  15. 15. print read http://www.rebol.com Download and print the contents of a web page
  16. 16. view layout [ u: field &quot;user@rebol.com&quot; h: field &quot;http://&quot; btn &quot;Send&quot; [ send to-email u/text read to-url h/text alert &quot;Sent&quot; ] ] Open window, read the web page and send it by email
  17. 17. foreach file load %./ [ if not dir? file [ write/binary join ftp://user:pass@example.com/ file read/binary file ] ] Upload all files via FTP
  18. 18. repeat n 100 [ if not error? try [ close open probe join tcp://localhost: n ] [ print [n &quot;is open&quot;] ] ] TCP port scan
  19. 19. page: remove-each tag load/markup http://www.rebol.com [ tag? Tag ] write %page.txt page Transform a web page in a simple text file (without tags!)
  20. 20. view layout [ origin 0 t: h1 red black (to string! now/time) rate 1 feel [ engage: [ t/text: now/time show t ] ] ] Digital clock
  21. 21. view l: layout [ origin 0x0 b: box &quot;Load&quot; [ error? try [ b/image: i: load first request-file b/text: &quot;&quot; l/size: b/size: i/size show l ] ] ] Picture viewer
  22. 22. REBOL change things simple! <ul><li>Download, update, simple!
  23. 23. To install, simple!
  24. 24. Do not rely on a bunch of files, simple!
  25. 25. Write code, simple!
  26. 26. Ported to other platforms, simple!
  27. 27. Maintain, simple! </li></ul>Keep IT Simple
  28. 28. When It Comes to Programming, Are You A REBEL ? [`rebl] Stand up for Simplicity and Flexibility , Against Software Complexity and Software Obesity , and Want to Program with Fun . Hay! You Got to Try Java !!!
  29. 29. R E B O L E L A T I V E X P R E S S I O N A S E D B J E C T A N G U A G E S T A N D S F O R E
  30. 30. As A Java Programmer, You Know Objects Already.
  31. 31. But Relative Expression?
  32. 32. CAN , could be <ul><li>Auxiliary / can
  33. 33. Noun / tank
  34. 34. Verb / canned </li></ul>Rebol understands the meaning from the context, for example: Relative-Expression => Context-Sensitive Code
  35. 35. 3 Ways to Run REBOL Scripts Encapsulated Encapsulated Operating System REBOL Interpreter REBOL Script REBOL Interpreter REBOL Script REBOL interactive Interpreter REBOL Script
  36. 36. <ul><li>Windowing
  37. 37. Drawing
  38. 38. Networking
  39. 39. Database Accessing
  40. 40. Web Browser Plug-In
  41. 41. External Lib Interface </li></ul>Small Yet Powerful All In One, One For All REBOL
  42. 42. Rebol Has Every Data Types You Can Imagine... datatype value Int! 1 Decimal! 3.1416 Char! #&quot;A&quot; Logic! True String! &quot;ABC&quot; >> ? 1 1 is an integer >> ? 3.1416 3.1416 is a decimal >> ? #&quot;A&quot; #&quot;A&quot; is a char >> ? True TRUE is a logic of value: true >> Type? &quot;ABC&quot; == string!
  43. 43. ...And Data Types You Can't Imagine datatypeURL value Email! [email_address] Percent! 32% Tag! <IMG> Date! 2009-7-21 Time! 18:00 File! %gdi32.dll Tuple! 127.0.0.1 URL! http://www.abc.com/ . . . More . . .
  44. 44. Java // Pseudo-Code // Include This and That // Declare This and That // ... Class MyApp { MyApp () { // … } void action() { System.quit(); } void layout() { Label title = new Label(&quot;Hello&quot;) Button btn = new Button(&quot;OK&quot;); btn.Click = action; Window win = new Window(); win.add(btn); win.add(btn); win.show(); } } Vs Rebol do the same of Java with only 5 lines of codes instead of hundreds!!! REBOL REBOL[] View Layout [ Title &quot;Hello&quot; Btn &quot;OK&quot; [ Quit ] ] The Magic Of Dialects
  45. 45. REBOL View is Easy and Fun!
  46. 46. REBOL in Web Server <ul><li>CGI (Common Gateway Interface) </li></ul><ul><li>Fast-CGI </li></ul><ul><li>Cheyenne Web Server (300 KB Only) </li></ul><ul><li>REBOL Server Pages (RSP) </li></ul>
  47. 47. REBOL 3.0 Supports Unicode <ul><li>String is in Unicode. </li></ul><ul><li>Both In Core and In View </li></ul><ul><li>Will Support Multi CharSets </li></ul>
  48. 48. REBOL/Services (SOA Lite) XML? Nah! Dialects are Better.
  49. 49. REBOL/Code <ul><li>Talk to REBOL VM Directly </li></ul><ul><li>With Great Performance </li></ul><ul><li>REBOL Dialecting Technology </li></ul>
  50. 50. When to Use REBOL Spider Mobile Agent Instance Messenger Dialect Artificial Intelligence Text Processing

×