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

Pulumi Adds Full Bun Runtime Support

Pulumi has announced that Bun is now a fully supported runtime for Pulumi, going beyond its previous role as merely a package manager option. With the new release of Pulumi 3.227.0, developers can set runtime: bun in their Pulumi.yaml and have Bun execute their entire infrastructure program, with no Node.js installation required.

By Claudio Masolo

Effect v4 Beta: Rewritten Runtime, Smaller Bundles and Unified Package System

Effect v4 beta, a TypeScript framework for building applications, features a complete rewrite of its core fiber runtime, offering reduced memory usage and smaller bundle sizes. The new release consolidates ecosystem packages under a single version number and introduces unstable modules for rapid feature development. Migration guides are available for users transitioning from v3 to v4.

By Daniel Curtis

C++26: Reflection, Memory Safety, Contracts, and a New Async Model

The C++26 standard draft is now complete, reports Herb Sutter, long-time C++ expert and former chair of the ISO C++ standards committee. The finalized draft introduces reflection, enhances memory safety without requiring code rewrites, adds contracts with preconditions and postconditions alongside a new assertion statement, and establishes a unified framework for concurrency and parallelism.

By Sergio De Simone

Meta Reports 4x Higher Bug Detection with Just-in-Time Testing

Meta introduces Just-in-Time (JiT) testing, a dynamic approach that generates tests during code review instead of relying on static test suites. The system improves bug detection by ~4x in AI-assisted development using LLMs, mutation testing, and intent-aware workflows like Dodgy Diff. It reflects a shift toward change-aware, AI-driven software testing in agentic development environments

By Leela Kumili

CNCF Warns Kubernetes Alone Is Not Enough to Secure LLM Workloads

A new blog from the Cloud Native Computing Foundation highlights a critical gap in how organizations are deploying large language models (LLMs) on Kubernetes: while Kubernetes excels at orchestrating and isolating workloads, it does not inherently understand or control the behavior of AI systems, creating a fundamentally different and more complex threat model.

By Craig Risi