Content: Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Background: Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Pattern: Blank Waves Notes Sharp Wood Rockface Leather Honey Vertical Triangles
Welcome to Xbox Chaos: Modding Evolved

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

WaeV

Other
Other Programming Languages?

4 posts in this topic

C#, C++, Java, and other popular languages are mentioned here, but what about other, more unconventional languages? Perhaps I'm alone in this, but I really like browsing alternate languages and seeing what they have to offer. Here's my take on them:
 
 
Python: A good language for learning, since it has all the common paradigms built in. I probably have a bias since this is the language my university first taught me, but I found the syntactic whitespace really nice. Its three built-in datatypes (list, dictionary, and tuple) cover just about every usecase you'll need, and Pythonistas rejoice in the simplicty of "there's one way to do it". There is overwhelming support for science and math; scientists are finally able to move on from FORTRAN thanks to Python. While it is certainly supports more functional programming than Java, it just seems a bit too imperative by default for me.

Ruby: Python and Ruby share many of the same strengths. Ruby's fame comes from its most popular application, "Rails", and Ruby on Rails has powered many a website. Ruby takes a bit more inspiration from Perl, and runs best on Mac/Linux/Unix machines, although there is an IronRuby implementation for .Net. Ruby has a very interesting object model - much more compelling than C#'s or Java's, imo. Some jokingly consider it "Smalltalk minus minus" - approaching the extreme object oriented power of Smalltalk, but also offering other benefits. Ruby's community tends to give more importance to testing than most, which is a good thing. "Ruby has magic" is a saying I've heard frequently among developers. It can do a lot more than Java, but tests are a good way to add stability to such a dynamic framework.

Common Lisp: While it has a comparatively ancient heritage, Common Lisp is no slouch. Contrary to popular belief, Lisp has, yes, actually improved since the 70's. Popularized by Paul Graham and his essays such as Beating the Averages, my perception of CL is that it actually occupies somewhat of the same niche as Python and Ruby now fill. CL is great for servers, and actually compiles to near the speed of C and C++, but with oh-so-much-more syntactic power. It is a dynamic language (like Python and Ruby), and some of you may be surprised to learn that Reddit was prototyped in Lisp. Advocates hail CL as "the programmable programming language" for its unparalled extensibility. Whereas Bjarne had to make a whole new language to add objects to C, Lispers simply wrote a library for the feature. Perhaps the two greatest sources of Lisp's power are it's tree-like structure (think how XML allows you to nest things inside other XML tags) and it's macro feature, which makes C macros look puny by comparison. While certainly a departure from "ordinary" languages, Common Lisp offers a broadened experience and power that few other languages boast.

Erlang: It's name comes from ERicsson LANGuage, as it was created for the telcomm company in the late 80s when they decided no other language was suitable for their needs. Erlang is a language that, in my opinion, made all the right engineering choices. Erlang is not an academic language - it is a practical language. If you ever find yourself designing a programming language and find yourself stuck at a decision, ask yourself "What did Erlang choose?" - it's probably the better decision. Erlang is a functional language, but also takes inspiration from the Actors paradigm (which is what Alan Kay actually meant when he invented Object Oriented Programming). Erlang has extreme support for parallel programming and distributed computing. Many companies use Erlang, including Facebook for their chat feature. While perhaps not the best choice for every niche, Erlang always scores a touchdown when it has the home advantage - communications and distributed computing.
 
 
I can write more summaries if you guys are interested. Programming languages are sorta my passion, lol.
Edit: Inb4 Python and Ruby are popular languages - I just decided to write about them first.

Edited by WaeV
AMD and Thunder like this

Share this post


Link to post
Share on other sites

+1 for mentioning Erlang. It's a really cool language for doing network-based stuff and I used it to make a realtime shoutbox system for this site a while ago (it's no longer in effect though because I didn't care enough to maintain it between shoutbox updates).

Thunder likes this

Share this post


Link to post
Share on other sites

I found Clojure to be pretty interesting, along with Go. I've noticed a lot of linux tools have been written in Go lately.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now