plm - Programming exerciser in Java, Python and others

Property Value
Distribution Debian 8 (Jessie)
Repository Debian Main i386
Package name plm
Package version 2.4.11+repack
Package release 2
Package architecture all
Package type deb
Installed size 2.88 KB
Download size 2.42 MB
Official Mirror
The Programmer's Learning Machine (PLM) is a free cross-platform programming
exerciser. It lets you explore various concepts of programming through
over 160 interactive exercises, that you can solve in either Java or
The PLM interface and content is thoughtfully translated to English
and French; we hope that other translations will be contributed 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 and Java. Other programming languages
(such as Ruby or JavaScript) may be added in the future.
The Scala language was cut of the package because the Debian version
of that language is too ancient for the PLM.


Package Version Architecture Repository
plm_2.4.11+repack-2_all.deb 2.4.11+repack all Debian Main
plm - - -


Name Value
java-wrappers -
jython -
libgettext-commons-java -
libhttpclient-java -
libhttpcore-java -
libhttpmime-java -
libjgit-java -
libjson-simple-java -
libmiglayout-java -
librsyntaxtextarea-java -


Type URL
Binary Package plm_2.4.11+repack-2_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




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.
2013-09-12 - Martin Quinson <>
plm (2.2.3+repack-1) unstable; urgency=low
* New upstream release.
Insane amount of bug fixes and polishing after extensive tests
of this year's students and some colleagues. This "report
feedback" feature is a beauty to crowdsource the polishing.
* Refresh our patches.
* Add build-dep on libhttpmime-java, that got added upstream.
2013-09-08 - Martin Quinson <>
plm (2.2.1+repack-1) unstable; urgency=low
* New upstream release.
- add a creative mode that is not checked against the answer
- many bug fixes
* Depend on openjdk7 as openjdk6 will soon be removed (Closes: #722149)
* Correctly specify that we need openjdk7 to the java wappers
(Closes: #722128)
* d/control: Add Vcs-* fields
* d/ manually load commons-logging as some people needs it to
not get a ClassNotFound exception when using httpclient
2013-09-04 - Martin Quinson <>
plm (2.2+repack-1) unstable; urgency=low
* New upstream release: 
- the software was renamed from JLM to PLM.
- Scala can now be used to solve the exercises
- Two new lessons: recreative applications of sorting,
- New lesson: Turtle Art (draw LOGO figures)
* Update our packaging to the new upstream release
- drop d/p/review_french: integrated upstream
- drop d/p/no-xmpp: upstream dropped XMPP too
- d/p/no-scala: We need scala 2.10 that is not in debian yet
- update the other patches

See Also

Package Description
ploop_1.12.1-1_i386.deb tools to work with ploop devices and images
plopfolio.app_0.1.0-6+b4_i386.deb Personal dashboard for GNUstep
plotdrop_0.5.2-3_i386.deb A minimal GNOME frontend to GNUPlot
ploticus_2.42-3+b2_i386.deb script driven business graphics package
plotutils_2.6-3_i386.deb GNU plotutils command line tools based on libplot
plowshare4_1.0.5-1+deb8u1_all.deb Download and upload files from file sharing websites
plplot-doc_5.10.0+dfsg-1_all.deb Documentation for PLplot, a plotting library
plplot-tcl-bin_5.10.0+dfsg-1_i386.deb Tcl/Tk tools for PLplot, a plotting library
plplot-tcl-dev_5.10.0+dfsg-1_i386.deb Tcl/Tk development support for PLplot, a plotting library
plplot-tcl_5.10.0+dfsg-1_i386.deb Tcl/Tk support for PLplot, a plotting library
plplot12-driver-cairo_5.10.0+dfsg-1_i386.deb Scientific plotting library (Cairo driver)
plplot12-driver-qt_5.10.0+dfsg-1_i386.deb Scientific plotting library (qt driver)
plplot12-driver-wxwidgets_5.10.0+dfsg-1_i386.deb Scientific plotting library (wxWidgets driver)
plplot12-driver-xwin_5.10.0+dfsg-1_i386.deb Scientific plotting library (X11 driver)
plptools-dev_1.0.9-2.4_i386.deb plptools (development files)