LWN.net Logo

Recently posted comments

An "enum" for Python 3

Posted May 23, 2013 5:14 UTC (Thu) by gdt (subscriber, #6284)
In reply to: An "enum" for Python 3 by marcH
Parent article: An "enum" for Python 3

Enums are numbered, but are not integers. Numbers need not support the complete set of arithmetic operations.

As a everyday example of this, counting numbers (1, 2, 3, ...) are incomplete for the subtraction operator. Try to represent 1 - 2 as a counting number.

Some of the questions in the mailing list were around what arithmetic properties a enum has: for example, are they ordered (ie, red < green). Since maths doesn't care for enums much (and so doesn't define them with rigor), the real question was what properties should a enum have to be useful for programming. For example, it was widely felt that (red + green) should not evaluate as it indicates a programming error.

Enums might be implemented using integers. But one can say the same for sets. The whole point of a programming language is to develop useful abstractions to simplify the programming task, otherwise it may as well be assembler.


Google Code to deprecate downloads

Posted May 23, 2013 5:13 UTC (Thu) by arekm (subscriber, #4846)
Parent article: Google Code to deprecate downloads

Crazy. Was using download page to automaticly monitor for new releases for particular projects and then autodownload latest tarball for local binary rebuild.

tarball was always the same, md5 didn't change (some tools like gitweb regenerate tarballs on the fly, so each time different tarball is provided with md5) which was important since tools here store md5 to be able to verify things.

tarballs (that don't change) from tags would be actually be enough for my needs but that's not provided by google code.


An unexpected perf feature

Posted May 23, 2013 4:39 UTC (Thu) by Cyberax (✭ supporter ✭, #52523)
In reply to: An unexpected perf feature by ebiederm
Parent article: An unexpected perf feature

Dependent types can be feasibly added and fat pointers are already supported in hardware (on a couple of exotic architectures, but still).

I don't see much problems with multithreading, though memory model formalization should be quite interesting.

Garbage collector of some sort seems inevitable in any case. Perhaps with some kind of region inference to help with short-lived allocations. In some limited cases it may be possible to use static proofs of correctness.


An unexpected perf feature

Posted May 23, 2013 4:34 UTC (Thu) by ebiederm (subscriber, #35028)
In reply to: An unexpected perf feature by Cyberax
Parent article: An unexpected perf feature

Talx86 can not accurately type programs encoded in assembly.

There are no dependent types for allowing the removal of bounds checks in array updates. Instead magic array macros must be used. (Not supporting general memory accesses is a signification failure in adding types to assembly language).

There is no support for multiprocessing.

There is no support for support for manual memory management. Talx86 requires a garbage collector.

Which means a large number of common kernel constructs can not be encoded in this assembler. We are unfortunately quite a ways from safe languages that can be used for kernel programming.


Google releases a draft VP8 patent cross-license

Posted May 23, 2013 2:32 UTC (Thu) by Cyberax (✭ supporter ✭, #52523)
Parent article: Google releases a draft VP8 patent cross-license

This license is retroactive, which effectively pulls the teeth of anyone trying to sue VP8 users using MPEG LA patents. After all, VP8 users would just have to send a signed copy of agreement to Google in case they receive a lawsuit.


Go and Rust — objects without class

Posted May 23, 2013 2:25 UTC (Thu) by Cyberax (✭ supporter ✭, #52523)
In reply to: Go and Rust — objects without class by neilbrown
Parent article: Go and Rust — objects without class

>The C++ way requires a single vtable. I don't know how multiple interfaces work with that.
Reserve the first slot in the vtable for interface lookup function, kinda like QueryInterface in COM.


Timely!

Posted May 23, 2013 2:24 UTC (Thu) by jmorris42 (subscriber, #2203)
Parent article: DeadDrop and Strongbox

Wondering how you guys could post this and fail to note how timely it is. Had it went live on schedule nobody would have noticed, but the delay just happened to cause it to hit the news at exactly the time when multiple assaults on media outfits trying to catch whistleblowers also hit the papers.

We probably always needed something like this, but few would have actually used it. Especially back in the days of Bush, the Patriot Act and whining about the evil government coming after your library records... lots of talk but nobody actually believed it would happen. Well now it happened and lookie who it was that went and done invoked the Espionage more in four years than in the decades it was on the books before.


How Google plans to rule the computing world through Chrome (GigaOM)

Posted May 23, 2013 2:18 UTC (Thu) by rfunk (subscriber, #4054)
In reply to: How Google plans to rule the computing world through Chrome (GigaOM) by smokeing
Parent article: How Google plans to rule the computing world through Chrome (GigaOM)

Seems like a waste to get so pissed off about a programming language. I'd suggest either getting over it or learning enough about it to see why others like it. (I suggest "JavaScript: The Good Parts" by Douglas Crockford.)


Google Code to deprecate downloads

Posted May 23, 2013 2:13 UTC (Thu) by rfunk (subscriber, #4054)
In reply to: Google Code to deprecate downloads by rfunk
Parent article: Google Code to deprecate downloads

Ah, bgilbert addressed the Github feature I was missing in another comment.

https://github.com/blog/1302-goodbye-uploads


Google Code to deprecate downloads

Posted May 23, 2013 2:11 UTC (Thu) by rfunk (subscriber, #4054)
In reply to: Google Code to deprecate downloads by b7j0c
Parent article: Google Code to deprecate downloads

You should be able to. Click to a file, then in the URL change "blob" to "raw".

I thought they used to allow downloading tarballs too, but I can't find that now.


NetBSD 6.1

Posted May 22, 2013 23:41 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
In reply to: NetBSD 6.1 by wahern
Parent article: NetBSD 6.1

Nope. Windows has always been about as exploitable as Linux (i.e. totally and almost continuously), if we don't consider fundamentally insecure Win9x family.

>Windows is much better now because, as a Microsoft employee admitted, "We [Microsoft] started caring about security because pre-SP3 Windows XP was an existential threat to the business."
This is not about the security from kernel exploits, it's more about protecting users from themselves, which is much more important in reality.

Microsoft also fixed lots of insecure defaults (like allowing ActiveX) in applications but it has nothing to do with OS itself.


Google Code to deprecate downloads

Posted May 22, 2013 23:40 UTC (Wed) by eMBee (guest, #70889)
In reply to: Google Code to deprecate downloads by kju
Parent article: Google Code to deprecate downloads

yes, not only archives, but binary releases that you would make for your application, dep, rpm, apk files etc.

there are lots of other legitimate uses for this. it effectively means google code by itself can't be used for making your releases.

greetings, eMBee.


An "enum" for Python 3

Posted May 22, 2013 23:35 UTC (Wed) by marcH (subscriber, #57642)
Parent article: An "enum" for Python 3

> In addition, there is a way to avoid having to assign values for each enum member (auto-numbering, essentially), but its syntax is clunky.

Wait... so enums are not integers, yet it's difficult not to give them each a number!? I must have missed something.


NetBSD 6.1

Posted May 22, 2013 23:31 UTC (Wed) by wahern (subscriber, #37304)
In reply to: NetBSD 6.1 by Cyberax
Parent article: NetBSD 6.1

Your timeline is much too short.

Until Microsoft management made security a priority, Windows was a cesspool of exploitable bugs. And much of the IPC was broken by design. Linux was objectively better designed and implemented.

Windows is much better now because, as a Microsoft employee admitted, "We [Microsoft] started caring about security because pre-SP3 Windows XP was an existential threat to the business."

Unfortunately, the tables have turned. And non sequitur excuses just don't cut it, even when illustrated. Local exploits matter because breaking into web applications is absolutely routine. And that's why I never run generic web applications on Linux (unless the box is throw-away and doesn't contain sensitive data), because I can pretty much guarantee you that any particular Linux instance has a known local root exploit.


EFF: Vermont Is Mad as Hell at Patent Trolls

Posted May 22, 2013 23:26 UTC (Wed) by gerdesj (subscriber, #5446)
In reply to: EFF: Vermont Is Mad as Hell at Patent Trolls by robert_s
Parent article: EFF: Vermont Is Mad as Hell at Patent Trolls

You _have_ read the article?

From the first para:

"With trolls filing thousands of lawsuits every year and blanketing the country in threat letters, states are looking for ways to protect victims—especially small entities that lack the resources to defend against a patent suit."

So it seems to be a move in the direction to protect everyone.

However I have now tried to read the PDF of the Bill and found myself in pretty hot water - IANAL, let alone a US one (I'm from GB/en)

As a bemused bystander I can only wonder what on earth the redacted (?) bits relating to propane actually mean and why they are all rolled up in there in the first place. I suppose that is the Executive in action doing their stuff providing clear direction to the Legislature.

Anyway, read the linked PDF from the bottom of page 20 onwards - it looks to me like a pretty good direction to the local legislature to try and destroy litigation attempts from orgs. that exist purely to generate revenue from purchased patents (trolls).

I presume that as it is on the local books then it is applicable to all - big and small. It would seem to provide an appropriate defense to any firm on the wrong end of troll's aim and to limit damages and also make trolling somewhat expensive ($250K bond).

Read it.

If there are any lawyers hanging around here - is it any good?

Cheers
Jon


Go and Rust — objects without class

Posted May 22, 2013 23:04 UTC (Wed) by neilbrown (subscriber, #359)
In reply to: Go and Rust — objects without class by mmaroti
Parent article: Go and Rust — objects without class

  • Yes, the vtable (referred to in the page I linked as an 'itable') is computed dynamically at runtime in Go. However it is only computed once for a given interface/type pair - it isn't recomputed at each cast.
  • No, casts from an interface to a particular type (I call them downcasts, but you seem to call them upcasts) are not possible in Rust. The article mentions this in that Rust has no equivalent of Go's type assertion. You need to use an 'enum' type in Rust if you want that sort of functionality.
  • I see a couple of possibly-important differences between what you call the "C++ way" and the "Go way".
    • The C++ way doesn't scale well for tiny objects. The stored vtable pointer might be bigger than the rest of the object.
    • The C++ way requires a single vtable. I don't know how multiple interfaces work with that. The Go ways uses a different itable for each different interface, so multiple interfaces are trivial.
  • I don't think that Go supports polymorphic arrays as you describe.


How Google plans to rule the computing world through Chrome (GigaOM)

Posted May 22, 2013 22:17 UTC (Wed) by khim (subscriber, #9252)
In reply to: How Google plans to rule the computing world through Chrome (GigaOM) by smokeing
Parent article: How Google plans to rule the computing world through Chrome (GigaOM)

I'm not quite fine with code being delivered from elsewhere every time on actions 'start' or 'open'; but strongest of all I, a software engineer myself, hate the language it is written in, JavaScript.

The choice is yours, actually. aforementioned ssh client, e.g., is written in C/C++ and JavaScript, but you can move everything to python or C# (mono). The choice is yours. Java is not ported to ChromeOS, but it's doable if someone really needs it.


Google Code to deprecate downloads

Posted May 22, 2013 22:11 UTC (Wed) by b7j0c (subscriber, #27559)
In reply to: Google Code to deprecate downloads by juliank
Parent article: Google Code to deprecate downloads

github also limits download functionality. i can't download individual files...


Google Code to deprecate downloads

Posted May 22, 2013 22:04 UTC (Wed) by kju (subscriber, #61936)
In reply to: Google Code to deprecate downloads by jonabbey
Parent article: Google Code to deprecate downloads

I'm confused. I have never seen a function to download the current tree as a archive on Google Code anyway. So are you talking about archives created and uploaded by the project maintainer?

Or am I missing something?


NetBSD 6.1

Posted May 22, 2013 21:54 UTC (Wed) by Cyberax (✭ supporter ✭, #52523)
In reply to: NetBSD 6.1 by wahern
Parent article: NetBSD 6.1

Actually, no. Windows has for very long time been about as secure as Linux.

The perceived insecurity was caused by users running untrusted software, and the classic 'desktop' Linux is not any better in this regard.

This XKCD explains it perfectly: https://xkcd.com/1200/


Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds