Tutorial by Examples: u

Patterns can be matched based on values independent to the value being matched using if guards: // Let's imagine a simplistic web app with the following pages: enum Page { Login, Logout, About, Admin } // We are authenticated let is_authenticated = true; // But we aren't admins...
By default the Python random module use the Mersenne Twister PRNG to generate random numbers, which, although suitable in domains like simulations, fails to meet security requirements in more demanding environments. In order to create a cryptographically secure pseudorandom number, one can use Syst...
This thread-safe version of a singleton was necessary in the early versions of .NET where static initialization was not guaranteed to be thread-safe. In more modern versions of the framework a statically initialized singleton is usually preferred because it is very easy to make implementation mistak...
git shortlog summarizes git log and groups by author If no parameters are given, a list of all commits made per committer will be shown in chronological order. $ git shortlog Committer 1 (<number_of_commits>): Commit Message 1 Commit Message 2 ... Committer 2 (<number_of_...
When assigning named methods to delegates, they will refer to the same underlying object if: They are the same instance method, on the same instance of a class They are the same static method on a class public class Greeter { public void WriteInstance() { Console.Write...
The System namespace contains Func<..., TResult> delegate types with between 0 and 15 generic parameters, returning type TResult. private void UseFunc(Func<string> func) { string output = func(); // Func with a single generic type parameter returns that type Console.WriteLine...
Calling .Equals() on a delegate compares by reference equality: Action action1 = () => Console.WriteLine("Hello delegates"); Action action2 = () => Console.WriteLine("Hello delegates"); Action action1Again = action1; Console.WriteLine(action1.Equals(action1)) // True ...
One feature provided for free by case classes is an auto-generated equals method that checks the value equality of all individual member fields instead of just checking the reference equality of the objects. With ordinary classes: class Foo(val i: Int) val a = new Foo(3) val b = new Foo(3) prin...
In Python 2, exec is a statement, with special syntax: exec code [in globals[, locals]]. In Python 3 exec is now a function: exec(code, [, globals[, locals]]), and the Python 2 syntax will raise a SyntaxError. As print was changed from statement into a function, a __future__ import was also added. ...
Closures in Python are created by function calls. Here, the call to makeInc creates a binding for x that is referenced inside the function inc. Each call to makeInc creates a new instance of this function, but each instance has a link to a different binding of x. def makeInc(x): def inc(y): ...
On either Linux/UNIX or Windows, a script can be passed as an argument to the PHP executable, with that script's options and arguments following: php ~/example.php foo bar c:\php\php.exe c:\example.php foo bar This passes foo and bar as arguments to example.php. On Linux/UNIX, the preferred me...
In Python 2, when a property raise a error, hasattr will ignore this property, returning False. class A(object): @property def get(self): raise IOError class B(object): @property def get(self): return 'get in b' a = A() b = B() print 'a hasattr get:...
The dynamics of the Geometric Brownian Motion (GBM) are described by the following stochastic differential equation (SDE): I can use the exact solution to the SDE to generate paths that follow a GBM. Given daily parameters for a year-long simulation mu = 0.08/250; sigma = 0.25/sqrt(...
int getListOfFriends(size_t size, int friend_indexes[]) { size_t i = 0; for (; i < size; i++) { friend_indexes[i] = i; } } C99C11 /* Type "void" and VLAs ("int friend_indexes[static size]") require C99 at least. In C11 VLAs are optional. */ void getLis...
Leiningen Note: If you're going to use Leiningen, you first need to download and install JDK 6 or newer. The easiest way to get started with Clojure is to download and install Leiningen, the de facto standard tool to manage Clojure projects. Linux: curl https://raw.githubusercontent.com/technoma...
One of the things that can really boost your productivity while writing the code is effectively navigating the workspace. This also means making it comfortable for the moment. It's possible to achieve this by adjusting which areas of workspaces you see. The buttons on the top of the navigation and ...
/** * Enables output buffer streaming. Calling this function * immediately flushes the buffer to the client, and any * subsequent output will be sent directly to the client. */ function _stream() { ob_implicit_flush(true); ob_end_flush(); }
When in a loop, the loop variable (val) in the following example is a single variable that changes value as it goes over the loop. Therefore one must do the following to actually pass each val of values to the goroutine: for val := range values { go func(val interface{}) { fmt.Println...
Template may accept both lvalue and rvalue references using forwarding reference: template <typename T> void f(T &&t); In this case, the real type of t will be deduced depending on the context: struct X { }; X x; f(x); // calls f<X&>(x) f(X()); // calls f<X>(...
Sometimes, migrations generated by Django are not sufficient. This is especially true when you want to make data migrations. For instance, let's you have such model: class Article(models.Model): title = models.CharField(max_length=70) This model already have existing data and now you want ...

Page 74 of 701