Groovy is a very powerful and successful language, a dynamic language for Java Virtual Machine that provides complete integration with Java and has its roots firmly rooted in Java itself, in terms of syntax and APIs.
It also borrows from other programming languages such as Smalltalk, Python or Ruby for its dynamic properties.
Groovy is used in many Open Source projects such as Grails, Spring, JBoss Seam and others, as well as integrated in commercial products and applications “Fortune 500 mission-critical” due to its scripting facilities that offer these applications a very nice expansion mechanism, or because of its ability to allow experts and programmers to express important topics that matter, encapsulated in domain-specific languages to express concepts in an easy-to-read and maintainable way.
But beyond these important issues, Groovy is not just a programming language; it is an entire ecosystem.
Improvements to the information generated by Groovy in machine code help to use powerful tools like Coverage or smooth the way of new utilities like CodeNarc for static code analysis in Groovy.
The malleability of the language syntax and its meta programming facilities have given rise to advanced testing tools such as Easyb a ‘Behavior-Driven-Development’ project, the GMock library, or Spock a testing and specification platform.
Again, Groovy’s flexibility and expressiveness, as well as scripting possibilities, open the door to building advanced scripts and infrastructures for systems of continuous integration of practices and built projects, such as Gant and Gradle.
At the tool level, Groovy also advances, for example with its groovydoc an Ant task that allows the generation of JavaDoc documentation, documentation, and interconnection of both file types, Groovy, and Java for your Groovy/Java mixed projects.
And at the same time, IDE is making improvements to Groovy’s support by providing users with powerful weapons such as inter-language code refactoring, deep understanding of dynamic language terms, code completion, and more to make developers more productive when using Groovy in their projects.
Zebra Programming Language (ZPL and ZPL II) is a page description language from Zebra Technologies.
It is mainly used for labeling applications. The original ZPL was upgraded to the ZPL II, but full compatibility with the older version is not offered. Meanwhile, ZPL II is emulated by multiple label printers from different manufacturers.
Subsequently, Zebra Basic Interpreter (ZBI) was integrated into the printer software, which is seen as an advance to ZPL II by the manufacturer and is ANSI BASIC oriented.
First, it is intended to avoid code refactoring when changing the printer, if the old printer software was written by a competitor’s label printer. Possible use of ZBI could be when the Zebra printer receives a foreign label format, which it will then convert to ZPL II in flight, in order to be printed.
Some printers also support the old Eltron programming language (EPL) for printers.
Language commands always start with a quotation mark (‘^’) or the tick mark (‘~’). Currently, in ZPL II, there are more than 170 commands. Each format must start with the command ^ XA and end with ^ XZ. For example, the font size is sent to the printer with ^ DNA, n, m command, where n and m are integers indicating the font size and spacing characteristics; ^ DNA, 18.10 is the smallest size and ^ DNA, 180.100 is the largest.