Whoever tries to learn Scala immediately encounters talk about Functional Programming. The first step is having functions as first-class citizens. This opens up new ways of programming, and the Scala collection library if far superior to Java's because of it. Functional Programming (in #scala) for the rest of us | Open Source Solutions for Software Development
Apocalisp | The end of programming as you know it In the previous post, we looked at the ST monad and how we can use it to encapsulate in-place mutation as first-class referentially transparent expressions. ST gives us mutable references and arrays, with the following guarantees: Mutations of an object are guaranteed to run in sequence.The holder of a mutable object is guaranteed to hold the only reference to it.Once a sequence of mutations of an object terminates, that object is never mutated again. These invariants are enforced by the type system. I think that’s pretty cool, and sort of stands as a testament to the power of Scala’s type system.
For once no Clojure, nor Scala in this post.There is no whining in saying that as a java developer by day, I too rarely have the opportunity to learn or teach something, because of the attitude of diletante people more concerned by "making a career" than committing into their developer's job. But last friday a nice thing happened. I went lucky playing with Junit rules. Let us settle the environment. I am working on the worst project I have ever been working on. Ruling my expectations with Junit
"Categories for the Working mathematician" by Saunders Mac Lane is one of the oldest and best known reference works. It is quite comprehensive, and pretty readable, considering its scope. OTOH you want to be careful not to try to digest it all at once, it may take a while :) ... One important thing about category theory is to realize that the concept of a category does not carry much weight by itself, it is all kinds of constructs (e.g. adjoints) built on top of where the action is. It is kind of like XML, knowing definition of XML by itself will not tell you much, it is forms of usage where the beef is. I would recommend to focus on specific concepts on interest, I do not know what your interests are, but some examples of well known uses in programming are cartesian closed categories, Curry-Howard isomorphism and its categorical interpretations, adjoints and many others, this short list is not comprehensive by any means. Debasish Ghosh's answer to How can a programmer (who is not a professional mathematician) get a good intuitive understanding of category theory concepts
Lean Machine Square » Le lean est une bulle ? Accueil > Deploiment lean > Le lean est une bulle ? Aujourd’hui le lean est partout, dans les usines où les choses on commencé, mais également dans le management, dans la santé, dans le management de projets, dans l’engineering, dans l’immobilier, dans la banque, dans la finance, dans l’informatique… Et j’en passe. Cela a toutes les caractéristiques d’une bulle. L’histoire nous apprend que toutes les bulles finissent par exploser… L’histoire nous apprend aussi que l’on a vu pareil comportement concernant le fordisme avec des échecs cuisants sans un domaine comme celui de la construction des maisons.
Blog : From Pi to Puzzles September 15, 2011 — Elizabeth Shack, Technical Communication and Strategy Neil Bickford calculated the first 458 million terms for the continued fraction of pi, breaking the previous record of 180 million. He used Mathematica to develop his code and verify his results—which he posted shortly after he turned 13. Neil Bickford meets Stephen Wolfram at Gathering 4 Gardner 9. Bickford, who broke the record last fall, said creating the early version of the pi continued-fraction generator was “the best thing I’ve ever used Mathematica for.” On his blog Random (Blog), he wrote about the history of calculations of pi and described his computation.
Hey yo! This is Learn You a Haskell, the funkiest way to learn Haskell, which is the best functional programming language around. You may have heard of it. This guide is meant for people who have programmed already, but have yet to try functional programming. The whole thing is completely free to read online, but it's also available in print and I encourage you to buy as many copies as you can afford! To contact me, shoot me an email to: bonus at learnyouahaskell dot com!
CSS tools can save a lot of a time and frustration when working on a layout, as they can automatically generate some of the tedious code for you, and help you improve your productivity. With the advent of CSS3, there are also now some CSS3 tools and also some CSS3 generators that can create gradients for you, as well as provide WYSIWYG visuals. Most of us are visual learners, and even though hand coding is preferred for work, it helps to be able to see and learn what various CSS properties do. In this post, you’ll find 10 productivity enhancing CSS tools and generators, as well as some CSS3 tools as well. If you’re new to this field, you might like to see these web development resources: Enjoy! 10 Productivity Enhancing CSS and CSS3 Tools and Generators
One Day, We Will All Be Programmers I probably spend more time than I should thinking about the economy. When I do, I often think about what it is most residents of the West do for a living, which I like to call the “economic profile” of the West. (Others call this employment by sector.) I think about how that profile has changed in the last hundred or so years, and about how it might change in my lifetime. The first revolution of automation, the industrial revolution, had a significant impact on the West’s economic profile. Societies of agricultural workers transformed into societies of manufacturing laborers.
Revealing the Scala magician’s code: method vs function « Kent Tong's personal thoughts on information technology
This post was extracted from a small talk I gave at Simplificator, where I work, titled “Why I love Smalltalk and Lisp”. There’s another post titled “Why I love Smalltalk” published before this one. Desert by Guilherme Jófili Lisp is an old language. Why I love Lisp | Pablo's blog
Jenkins-Le-guide-complet/jenkins-the-definitive-guide-book at master - GitHub
-= Perlis Languages =- Perlis Languages this is another entry in a series on programmer enrichment A language that doesn’t affect the way you think about programming is not worth knowing. — Alan Perlis inspired by a LtU thread and the great post Programming Achievements: How to Level Up as a Developer by Jason Rudolph1. most code samples from Rosetta Code. The philosopher Friedrich Nietzsche believed that all interactions and interpretations of the external world occurred through the lens of individual perspective.
Dear Junior First time I tried out actors in Scala I though: "OK, there is a fair amount of magic going on here". I have later realised that there is actually no magic at all involved, but I would like to share with you my misconception and how it cleared out. I am talking about syntax like vlad ! Scala Actors are Just Code - No Magic
I’ve been studying the collaboration processes of the Apache Software Foundation (ASF) for a while , by observing and practicing the successful collaboration model that we use in ASF projects. Taking the opposite angle, I’ve been reflecting lately on how to fix a broken collaboration model. How do you help teams move from an “I have no idea what my colleagues are doing, and I get way too much email” model to the efficient self-service information flow that we see in ASF and other open source projects? As I see it, the success of the Apache collaboration model is based on six guiding principles: If it didn’t happen on the dev list, it didn’t happen.Code speaks louder than words.Whatever you’re working on, it must be backed by an issue in the tracker.If your file is not in subversion it doesn’t exist.Every important piece of information has a permanent URL.Email is where information goes to die. How to fix your project collaboration model? « bertrand’s brain grep
salat-core:master:0.0.8-SNAPSHOT> test:console [info] Starting scala interpreter... [info] Welcome to Scala version 2.8.1.final (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_26). Type in expressions to have them evaluated. Type :help for more information. Binary "when necessary" type hinting with Salat
Open Source: the Meritocracy vs the Circle of Trust