426 karma · joined March 11, 2009
Ubuntu, on the other hand, seem to like to do many things their way. Like aggressive patching. I recall fontconfig being heavily patched from upstream. Then we have Mir (now almost abandoned), Unity (abandoned), snap (flatpak, done differently, not yet abandoned :).
Regarding the HiDPI - Chrome is the only thing that doesn't play, but since I'm a Firefox user, that's not a problem. Gnome 3 handles it quite well. Yes, some apps (i.e. Skype) get their font rendering a bit wrong, but otherwise it's fine. But the crisp fonts are something I'm not giving up.
Edit: just grabbed the community edition and the answer is... no. Even with -Dis.hidpi=true - no luck.
All it does is convert a Seq (sequence) to a lazy stream that will infinitely cycle through the values.
Seq(1, 2, 3).cycle.take(8).toList
res3: List[Int] = List(1, 2, 3, 1, 2, 3, 1, 2)
It will work for any seq-like structure (including List. Vector, Queue, etc.)If you try to use it with anything else, like a Map, it won't compile.
Also, note from my example that it's generic and the resulting List is of the correct type.
Just like novice JavaScript developers struggle with "Why 'this' changes here?", it requires some experience with the language.
Regarding Scala's complexity - some more advanced features are presented in those slides. Imagine watching a talk about Python where they talk about decorators and meta-classes.
[1] https://www.youtube.com/watch?feature=player_embedded&v=grvv...
I've been excited for a high density display since Apple announced the retina display, but I have a gut feeling that it will take a lot of time for the Linux desktop to support it properly, if ever.
However, Go seems to be very good at what Python/Ruby/Node.js/Perl are good at. It provides a simple, clean language with more guarantees and better runtime (mainly the cheap goroutines). I see Go taking some of their role for web development, simple tools (Go programs produce a single binary - very easy to distribute).
Note that I don't compare it to a PC - a real computer is a lot more productive when it's around.
Some of the highlights are:
* Optimized handling of processes in the VM
* New internal process table allowing for parallel reads and writes
- optimized run queue management
- optimized process state changes
* "Non-blocking" code loading
* New internal port table, and rewrite of scheduling of port tasks.
* Dynamic allocation of port structures, allowing the default for maximum ports to be raised to 65536 (from 1024) Support for UTF-8 encoded Unicode characters in source files.
* Inets application: The http client now support HTTPS through a proxy
* Asn1 application: Major cleanup of back ends and optimizations of mainly decode for PER and UPER.
* The experimental features parameterized modules and packages are removed. An alternative compatible solution for parameterized modules is provided here https://github.com/erlang/pmod_transform.
* All built in functions BIF's (even if they are implemented in C as part of the VM) are now visible in the source code of the module they belong to, including their type specs.
* The Wx application now compiles and is usable with the unstable development branch of wxWidgets-2.9. This means that wx can now be built on 64 bit MacOsX as well.
You can find the README file with more detailed info at http://www.erlang.org/download/otp_src_R16A_RELEASE_CANDIDAT...
Android, on the other hand, will take much longer. It's sad as there are so many goodies in this for ARM, especially the multi-platform support. This will make updating Android version a lot easier (for manufacturers, hackers). Right now the one of the bigger issues is updating the kernels (and the closed drivers, to be honest).
Update: I bit the bullet and installed the Infinality patchset. The result is astonishing...
Also, bpython is a bit buggy when it comes to pasting about a page worth of code/string. In the nice case the syntax highlight gets confused. In the not so nice - it becomes completely unusable, so that I have to kill it.
Maybe a tool like meld[1] (which already supports diff-ing between your working copy and HEAD) gaining this capability to step through commits would be quite useful.
Still good idea, though!
"{:10.2f}".format(x)