Skip to content

Run through over 30 tests for 23 languages to verify that all languages and methods of execution are working properly

Notifications You must be signed in to change notification settings

DavidLiedle/polyglot-test

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Polyglot (many languages) Test

A script I use on my server to test ALL the things.

Languages

  • C (using both clang and gcc)
  • Clojure
  • CoffeeScript
  • D
  • Dart
  • Erlang
  • Go
  • Hack
  • Haskell
  • Haxe
  • Icon
  • Io
  • Java
  • JavaScript
  • Lua
  • OCaml
  • Perl
  • PHP
  • Python
  • Ruby
  • Rust
  • Scala

By virtue of the fact that the test script is in BASH, that's being automatically tested as well.

Usage

Well... I use the script by executing /root/sandbox/lang/test-all.sh, but that only works because that BASH script is specifically written for my specific environment.

Environment

I'm running all of this on a $10/month DigitalOcean Droplet with Ubuntu 15.04. A lot of these are either languages that I installed with apt-get or they existed on the droplet already. Some were custom installed, and a couple (Haxe, Scala) were simply tar xvf'd right into the directory in which I'm running the test.

Future

I'm planning to change the paths to be variables, making it a bit more portable. I may do something with Chef to spread the love, and a Docker image would make a lot of sense. If you're interested in getting all of these languages working together on your system as I have on mine, feel free to reach out to me at DavidCanHelp.me

I also plan to flesh out the tests from bare-bones hello-worlds to idiomatic stubs that actually flex the muscles of each language just a wee bit more.

Why?

Because it's there.

Really, why?

I was tired of testing each environment with spot checks. Heck, I was tired of trying to remember where everything was. By putting a simple hello-world test into play for each language, I not only see whether everything is still working, but also have a quick reminder of how to jump back into that language/environment and get things going quickly when I need to use one. Mostly it's just a lot of fun, and relieves stress. If you've ever seen crap-tons of stuff flying past on my second monitor, that's probably been me monitoring the compilation of one of these languages while I get my work done. It's a good feeling to have them all working in a single box, and it builds confidence to know that I can reach for any one of these platforms and instantly get results without having to go through any configuration or remembering of first steps. Also, it demonstrates that I actually can get each one working smoothly and consistently over time on my own, so each language I've listed on my résumé (no, I don't have all of these listed -- just the ones I actually do know how to use in real-world situations for work) is backed up by proof you can touch with your own two hands. :D

About

Run through over 30 tests for 23 languages to verify that all languages and methods of execution are working properly

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published