Skip to main content

Home/ Java World/ Group items tagged jvm

Rss Feed Group items tagged

Hendy Irawan

Mike Nash's Two Cents Worth » Blog Archive » RAD with Scala and Vaadin - 0 views

  •  
    "I've had an opportunity recently to work on a product that needed an RIA web interface, and I chose my recent favorite tool for this, Vaadin. The services for this project needed to be highly scalable, and lent themselves well to functional techniques, so I selected Scala as my language of choice. I build my projects with Maven, for reasons I won't go into right now, and I do much of my JVM-language work in Intellij's excellent IDEA IDE. Given these tools, I found a way to facilitate very rapid development of web UI's, and I thought I'd pass it along. Another technique I use, which I'll expound on later, is creating "dummy" implementations of all of my backing services for my application. The "real" implementations are written as OSGi services, in separate modules from my UI. The UI is packaged as a war, but is also OSGi aware, with a bundle activator. This activator only gets called if the war is deployed into an OSGi container, and not otherwise. This allows the app to select which implementation of the services it uses - the "dummy" ones when it's deployed outside of OSGi, and the "real" ones when they're available. This means I can use the handy Maven jetty plugin to quickly spin up my application and test it on my local workstation, without needing all of the dependencies (like a data store and such) of my real services. That's good, in that I can get my "cycle time" down to a few seconds, where "cycle time" is the time between making a change and actually being able to test it in my browser. We can do better, though. I'm using Scala as my language of choice for building the UI as well, as it works just fine with Vaadin (and with everything else in the JVM ecosystem, for that matter, which is why I didn't choose a non-JVM language - but that's yet another rant). I compile my Scala with the Maven scala plugin - here's where the next handy bit comes into play. Turns out the Scala plugin has a goal cal
Hendy Irawan

Clojure - dynamic programming language that targets the Java Virtual Machine (and the CLR) - 1 views

  •  
    "Clojure is a dynamic programming language that targets the Java Virtual Machine (and the CLR ). It is designed to be a general-purpose language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure is a compiled language - it compiles directly to JVM bytecode, yet remains completely dynamic. Every feature supported by Clojure is supported at runtime. Clojure provides easy access to the Java frameworks, with optional type hints and type inference, to ensure that calls to Java can avoid reflection. Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a powerful macro system. Clojure is predominantly a functional programming language, and features a rich set of immutable, persistent data structures. When mutable state is needed, Clojure offers a software transactional memory system and reactive Agent system that ensure clean, correct, multithreaded designs. I hope you find Clojure's combination of facilities elegant, powerful, practical and fun to use."
Hendy Irawan

Akka Project - 0 views

  •  
    Akka is the platform for the next generation event-driven, scalable and fault-tolerant architectures on the JVM We believe that writing correct concurrent, fault-tolerant and scalable applications is too hard. Most of the time it's because we are using the wrong tools and the wrong level of abstraction. Akka is here to change that. Using the Actor Model together with Software Transactional Memory we raise the abstraction level and provide a better platform to build correct concurrent and scalable applications. For fault-tolerance we adopt the "Let it crash" / "Embrace failure" model which have been used with great success in the telecom industry to build applications that self-heal, systems that never stop. Actors also provides the abstraction for transparent distribution and the basis for truly scalable and fault-tolerant applications. Akka is Open Source and available under the Apache 2 License.
Hendy Irawan

Functional Modeling with EMF, Xtext, Groovy and Scala: eval-ing in Clojure: Executing D... - 0 views

  •  
    "Clojure functional programming language for JVM has powerful mind-bending features. The feature that interests me the first time is its ability to "execute data as code". As demonstrated here, were I define a function process that basically executes the symbol processor with whatever params : => (defn process [& params] (eval (cons processor params))) #'user/process "
Merit Campus

Easy lesson plans available for beginners and 2-2 students. Register today. - 0 views

  •  
    Merit campus provides the best online java training. Learn Java programming if you are a beginner, Intermediate or an expert. Practice tests on creation of java, servlets, JDK, JRE, JVM, JIT, Java Compiler and Evolution of Java etc.
stephen1212

Garbage Collection Log Analyser - 0 views

  •  
    Free universal java GC log viewer for parsing JVM garbage collection logs. Generates WOW graphs & AHA metrics. Memory tunning, long GC pause, memory leak, OutOfMemoryError debugging, verbose java gc analysis all made easy.
mahesh 1234

Java Collection Interview Questions - javatpoint - 0 views

  •  
    Garbage Collection Interview Questions 117) What is Garbage Collection? Garbage collection is a process of reclaiming the runtime unused objects.It is performed for memory management. more details... 118) What is gc()? gc() is a daemon thread.gc() method is defined in System class that is used to send request to JVM to perform garbage collection.
Hendy Irawan

Quercus - PHP Runtime for Java JVM - Caucho Resin : Reliable, Open-Source Application S... - 0 views

shared by Hendy Irawan on 11 Jul 11 - Cached
  •  
    "Quercus is Caucho Technology's 100% Java implementation of PHP 5 released under the Open Source GPL license. Quercus comes with many PHP modules and extensions like PDF, PDO, MySQL, and JSON. Quercus allows for tight integration of Java services with PHP scripts, so using PHP with JMS or Grails is a quick and painless endeavor. With Quercus, PHP applications automatically take advantage of Java application server features just as connection pooling and clustered sessions. Quercus implements PHP 5 and a growing list of PHP extensions including APC, iconv, GD, gettext, JSON, MySQL, Oracle, PDF, and Postgres. Many popular PHP application will run as well as, if not better, than the standard PHP interpreter straight out of the box. The growing list of PHP software certified running on Quercus includes DokuWiki, Drupal, Gallery2, Joomla, Mambo, Mantis, MediaWiki, Phorum, phpBB, phpMyAdmin, PHP-Nuke, Wordpress and XOOPS. Quercus presents a new mixed Java/PHP approach to web applications and services where Java and PHP tightly integrate with each other. PHP applications can choose to use Java libraries and technologies like JMS, EJB, SOA frameworks, Hibernate, and Spring. This revolutionary capability is made possible because 1) PHP code is interpreted/compiled into Java and 2) Quercus and its libraries are written entirely in Java. This architecture allows PHP applications and Java libraries to talk directly with one another at the program level. To facilitate this new Java/PHP architecture, Quercus provides and API and interface to expose Java libraries to PHP. The Quercus .war file can be run on Java application servers such as Glassfish, i.e. it can be run outside of Resin. This .war file includes the Quercus interpreter and the PHP libraries."
Hendy Irawan

The Scala Programming Language - 2 views

  •  
    Scala is a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages. It is also fully interoperable with Java
1 - 9 of 9
Showing 20 items per page