plm - Programming exerciser in Java, Python, Scala and others

Property Value
Distribution Ubuntu 19.04 (Disco Dingo)
Repository Ubuntu Universe amd64
Package filename plm_2.6+repack-3_all.deb
Package name plm
Package version 2.6+repack
Package release 3
Package architecture all
Package type deb
Category universe/java
License -
Maintainer Ubuntu Developers <>
Download size 2.83 MB
Installed size 3.30 MB
The Programmer's Learning Machine (PLM) is a free cross-platform programming
exerciser. It lets you explore various concepts of programming through
over 200 interactive exercises, that you can solve in either Java,
Python or Scala.
The PLM interface and content is thoughtfully translated to English,
French and Brazilian; Other translations may be added in the future.
The following concepts are included in this package:
- Welcome: teach basics of programming to absolute beginners
- Maze: classical maze escaping algorithms for intermediate
- Sort: classical sorting algorithms for intermediate. One
introduction lesson presents the basics of the sorting algorithms
while two additional lessons apply them in more recreative settings.
- Recursion: classical logo algorithms for intermediate
- Turtle Art: explore a few classical LOGO figures
- LightBot: little programmer's brain teaser for intermediate and advanced
Other lessons are planned to explore new concepts, such as the
backtracking, dynamic programming, object-oriented programming or the
standard libraries of Python, Scala and Java. Other programming languages
(such as Ruby or JavaScript) may be added in the future.


Package Version Architecture Repository
plm_2.6+repack-3_all.deb 2.6+repack all Ubuntu Universe
plm - - -


Name Value
default-jdk -
java-wrappers -
jruby -
jython -
libgettext-commons-java -
libhttpclient-java -
libhttpcore-java -
libhttpmime-java -
libjgit-java -
libjson-simple-java -
libmiglayout-java -
librsyntaxtextarea-java -
scala -
scala-library -


Type URL
Binary Package plm_2.6+repack-3_all.deb
Source Package plm

Install Howto

  1. Update the package index:
    # sudo apt-get update
  2. Install plm deb package:
    # sudo apt-get install plm




2016-09-18 - Martin Quinson <>
plm (2.6+repack-3) unstable; urgency=medium
* Add run-time dependencies on default-jdk, jython and jruby.
Recommends are not enough for beginners.
* Spellcheck plm(1)
2016-02-21 - Martin Quinson <>
plm (2.6+repack-2) unstable; urgency=medium
* Build-dep on default-jdk instead of specifying the version manually.
(Closes: #814171)
2016-01-01 - Martin Quinson <>
plm (2.6+repack-1) unstable; urgency=medium
* New Upstream Release:
- Missions fully translated to Brazilian
The engine is translated at 65%.
Thanks to Fred Maranhao for the hard work.
- Ask loudly before pushing anything to the remote servers
(Fix #772026 -- thanks to Olivier Berger for reporting)
- New lesson on Hanoi variations, on recursive decomposition
- Various improvements to the pedagogical content and bug fixes
* Enable scala teaching, now that Scala 2.11 is in Debian 
(Fix: #809482) Thanks Rogério Brito for the reminder.
* Use ant instead of jh_build, that doesn't like our scala code.
2014-11-13 - Martin Quinson <>
plm (2.4.11+repack-2) unstable; urgency=medium
* Specify to jh_build that javac will encounter UTF-8 files 
(Closes: #768732) Thanks to L. Nussbaum for the report and fix
* Update Standards-Version to 3.9.6 (no change needed)
* Remove Scala from package description and rules (Closes: #722148)
(we don't use it ATM since Debian version is too ancient)
* Cherry-pick the new upstream logo.png to please Lintian.
* d/p/translate: cherry-pick the translations of 2.5 upstream
2014-10-24 - Martin Quinson <>
plm (2.4.11+repack-1) unstable; urgency=medium
* New upstream release.
- Lots of polishing to the pedagogical content and engine
- Some new exercises, and a lesson about recursive lists
- User data gets saved in a git, which is more robust.
- Translation to French, and partially to Brazilian and Italian.
- Experimental support for the C programming language
* Update our patches
- Twitter support was removed upstream
- Scala still cut of Debian package since we need a recent scala
- Cut github interactions, as the needed library are not packaged
* Suggests jython to make python usable
* d/control: Update VCS field to not use deprecated entries
* d/{rules,plm.manifest}: upstream switched to rtextpane and needs git
2014-05-11 - Martin Quinson <>
plm (2.3+repack-4) unstable; urgency=medium
* Use json-simple.jar and not json_simple.jar (Closes: #747792)
2014-04-18 - Martin Quinson <>
plm (2.3+repack-3) unstable; urgency=medium
* d/control: bump standards-version to 3.9.5 (no change needed)
* d/control: Manually add a missing dependency on libhttpmime-java.
The automagic seems to miss that one, and I don't want to dig into
jh's internals today. Thanks to Nicolas Noury for noticing.
* d/ Update our wrapper to also load the jython-related jars.
2013-11-24 - Martin Quinson <>
plm (2.3+repack-1) unstable; urgency=low
* New upstream release.
* add missing build-deps on libgettext-ant-tasks-java, imagemagick.
Thanks to Andreas Moog for noticing (closes: #730312).
2013-10-06 - Martin Quinson <>
plm (2.2.7+repack-2) unstable; urgency=low
* Change priority to extra since we depend on an extra package.
Cf. policy, section 2.5.
* Add a missing Depends: java-wrappers
2013-10-01 - Martin Quinson <>
plm (2.2.7+repack-1) unstable; urgency=low
* New upstream release.

See Also

Package Description
ploop_1.15-6_amd64.deb tools to work with ploop devices and images
plopfolio.app_0.1.0-7build3_amd64.deb Personal dashboard for GNUstep
plotdrop_0.5.4-1_amd64.deb minimal GNOME frontend to GNUPlot
ploticus_2.42-4_amd64.deb script driven business graphics package
plotnetcfg_0.4.1-3_amd64.deb local networking configuration diagram plotter
plotutils_2.6-10_amd64.deb GNU plotutils command line tools based on libplot
plowshare-modules_0~git20180325.e4bd365-1_all.deb plowshare drivers for various file sharing websites
plowshare4_2.1.7-2_all.deb transitional dummy package
plowshare_2.1.7-2_all.deb download and upload files from file sharing websites
plplot-doc_5.14.0+dfsg-3_all.deb Documentation for PLplot, a plotting library
plplot-driver-cairo_5.14.0+dfsg-3_amd64.deb Scientific plotting library (Cairo driver)
plplot-driver-qt_5.14.0+dfsg-3_amd64.deb Scientific plotting library (Qt driver)
plplot-driver-wxwidgets_5.14.0+dfsg-3_amd64.deb Scientific plotting library (wxWidgets driver)
plplot-driver-xwin_5.14.0+dfsg-3_amd64.deb Scientific plotting library (X11 driver)
plplot-tcl-bin_5.14.0+dfsg-3_amd64.deb Tcl/Tk tools for PLplot, a plotting library