I have been studying the Scala language for the last several months, and I found it very attractive. Not only it can run on JVM and use any Java library available, it can run with speed as close as Java itself! And yet the language is flexible and concise when needed to make a piece of code ease on eye.

If you haven't check out Scala lately, go download it's package from http://www.scala-lang.org/downloads/index.html. It can be unzip/untar into a directory like C:\opt for example and can start using.

Here is a quick run with an interpreter that comes with the package:

C:\opt\scala\bin\scala
Welcome to Scala version 2.7.1.final (Java HotSpot(TM) Client VM, Java 1.6.0_10-beta).
Type in expressions to have them evaluated.
Type :help for more information.

scala> new java.util.Date
res0: java.util.Date = Wed Jul 16 21:19:44 EDT 2008
scala> def now = new java.util.Date
now: java.util.Date
scala> now
res1: java.util.Date = Wed Jul 16 21:33:20 EDT 2008
scala> now
res2: java.util.Date = Wed Jul 16 21:33:22 EDT 2008
scala> now
res3: java.util.Date = Wed Jul 16 21:33:23 EDT 2008

scala> val sum = 1 + 2 + 3
sum: Int = 6
scala> val nums = List(1,2,3)
nums: List[Int] = List(1, 2, 3)
scala> nums.foldLeft(0)((sum, n)=> sum+n)
res4: Int = 6
scala> nums.map(n=>Math.pow(n,2))
res5: List[Double] = List(1.0, 4.0, 9.0)

As you can see it's pretty neat to play with Scala collections along with anonlymous functions/closure.

What do you think of Scala Language?

-Z

Views: 31

Happy 10th year, JCertif!

Notes

Welcome to Codetown!

Codetown is a social network. It's got blogs, forums, groups, personal pages and more! You might think of Codetown as a funky camper van with lots of compartments for your stuff and a great multimedia system, too! Best of all, Codetown has room for all of your friends.

When you create a profile for yourself you get a personal page automatically. That's where you can be creative and do your own thing. People who want to get to know you will click on your name or picture and…
Continue

Created by Michael Levin Dec 18, 2008 at 6:56pm. Last updated by Michael Levin May 4, 2018.

Looking for Jobs or Staff?

Check out the Codetown Jobs group.

 

Enjoy the site? Support Codetown with your donation.



InfoQ Reading List

Nuxt Test Utils v4: Vitest v4 Requirement, Mocking Overhaul and Stricter Environment Setup

Nuxt Test Utils has released version 4.0.0, which primarily integrates Vitest v4. This update changes the test environment setup to beforeAll, resolving issues with module-level mocks. It also improves mockNuxtImport for cleaner partial mocking and enhances state management for registered endpoints. The library remains vital for testing in the Nuxt framework, bridging unit and end-to-end testing.

By Daniel Curtis

Microsoft Launches Azure Copilot Migration Agent to Accelerate Cloud Migration Planning

Microsoft has launched the Azure Copilot Migration Agent, an AI assistant built into the Azure portal that automates migration planning, agentless VMware discovery, and landing zone creation. Despite being billed as generally available, the agent is in public preview and cannot execute migrations. Replication and cutover remain manual tasks in Azure Migrate.

By Steef-Jan Wiggers

ProxySQL Introduces Multi-Tier Release Strategy With Stable, Innovative, and AI Tracks

ProxySQL 3.0.6 was recently released, along with a new multi-tier release strategy. The Stable Tier focuses on reliability and production use, the Innovative Tier introduces newer features earlier, and the AI/MCP Tier explores future capabilities, including AI integrations.

By Renato Losio

Teleport Report Finds Over-Privileged AI Systems Linked to Fourfold Rise in Security Incidents

Enterprises that grant excessive access permissions to AI systems experience 4.5 times as many security incidents as those that do not, according to The 2026 State of AI in Enterprise Infrastructure Security, a report published by infrastructure identity company Teleport. The study found that identity management hasn't kept up with AI adoption in production systems.

By Matt Saunders

Discord Engineers Add Distributed Tracing to Elixir's Actor Model Without Performance Penalty

Discord engineering detailed how they added distributed tracing to Elixir's actor model. Their custom Transport library wraps messages with trace context and uses dynamic sampling to handle million-user fanouts. CPU optimizations included skipping unsampled traces and filtering context before deserialization, recovering 10+ percentage points of overhead.

By Steef-Jan Wiggers