Presentation is loading. Please wait.

Presentation is loading. Please wait.

Executable XML Present by 吳昆澤. Outline  Introduction  Simkin  Jelly  o:XML  Conclusion.

Similar presentations


Presentation on theme: "Executable XML Present by 吳昆澤. Outline  Introduction  Simkin  Jelly  o:XML  Conclusion."— Presentation transcript:

1 Executable XML Present by 吳昆澤

2 Outline  Introduction  Simkin  Jelly  o:XML  Conclusion

3 Outline  Introduction  Simkin  Jelly  o:XML  Conclusion

4 Introduction  XML vs. functional language (eg LISP, Scheme)  XML simplifies the problems when develop a compiler: Parsing source with a give syntax. Generating program output in a target executable format.  So, why not turning XML into executable code?

5 Outline  Introduction  Simkin  Jelly  o:XML  Conclusion

6 Simkin  Simkin is a high-level lightweight embeddable scripting language which works with Java ™ or C++ and XML.  It could revolutionize the way your system gets developed you provide the mechanism, others can decide the policy.

7 Example  Simkin script frame.xml  Simkin comes with a simple API to embed scripts in Java application. TextManipulation.java

8 Features of Simkin  Available for Java ™ or C++ and XML  Easy to embed by overriding base classes or implementing interfaces  Easy to script the syntax is simpler than JavaScript  Low runtime overhead you control the memory, no garbage collection

9 Features of Simkin (cont.)  Low memory footprint 50k 200k Simkin for Java is a 50k Jar file, Simkin for C++ is a 200k lib file for Visual C++  Flexible script files they can contain data as well as code  Cross platform written in standard code for Windows, Unix, Mac and more  Source code provided customization and support available customization and support

10 Outline  Introduction  Simkin  Jelly  o:XML  Conclusion

11 Jelly  Jelly is a tool for turning XML into executable code.  Jelly is a Java and XML based scripting and processing engine.  A Jelly script is an XML document which gets parsed into a script. The script can then be ran to produce dynamic XML events which can be turn into text, XML, HTML, etc.

12 Jelly (cont.)  The basic idea is that XML elements can be bound to a Jelly Tag which is a Java bean that performs some function.  Jelly has quite a few built-in Tag libraries and Core Tags.Tag librariesCore Tags

13 Example <j:jelly xmlns:j="jelly:core “ xmlns:l="jelly:log “ xmlns:i="jelly:interaction"> <i:ask question="Enter your name:" answer="name “ default="anonymous" /> Hello ${name}, welcome to Jelly!

14 Jelly extensibility  One distinguishing Jelly feature is its extensibility, you can create your own Jelly Tag: Create one or more tags, by deriving from TagSupport. Create one or more tags, by deriving from TagSupport. Then create a TagLibrary class for your tags. Then create a TagLibrary class for your tags. Finally, you can use your new tag library by specifying the classname in a namespace URI. Finally, you can use your new tag library by specifying the classname in a namespace URI.

15 Outline  Introduction  Simkin  Jelly  o:XML  Conclusion

16 o:XML  o:XML is a markup language and a fully object-oriented programming language.  o:XML vs. JSP/ASP Using a language without inherent XML support. Scripting languages used generally give little by means of object-oriented language support.  Examples Examples

17 Features of o:XML  Procedures, types and functions defined in plain XML  Dynamic runtime typing  Function overloading  Function polymorphism  Multiple inheritance  Intuitive language constructs  Extensible expression language

18 Outline  Introduction  Simkin  Jelly  o:XML  Conclusion

19 Conclusion  Simkin has been designed to be easy enough for non-programmers to use, and easy for you to supply a simple API for them to write to.  Jelly is completely extendable via custom tags in a similar way to JSP custom tags.  o:XML is a complete object oriented programming language.

20 Reference  Simkin http://www.simkin.co.uk/  Jelly http://jakarta.apache.org/commons/sand box/jelly/  o:XML http://www.o-xml.org/


Download ppt "Executable XML Present by 吳昆澤. Outline  Introduction  Simkin  Jelly  o:XML  Conclusion."

Similar presentations


Ads by Google