The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
Back in an old file achive at my home computer, I found the answer: "The Fortress Language Specification"
2.8 For Loops Are Parallel by Default
Here is an example of a simple for loop in Fortress:
for i ← 1 : 10
print(i " ")
This for loop iterates over all elements i between 1 and 10 and prints the value of i. Expressions such as 1 : 10 are referred to as range expressions. They can be used in any context where we wish to denote all the integers between a given pair of integers.
A significant difference between Fortress and most other programming languages is that for loops are parallel by
default. Thus, printing in the various iterations of this loop can occur in an arbitrary order, such as:
5 4 6 3 7 2 9 10 1 8
According to Wikipedia: "In July 2012, Steele announced that active development on Fortress would cease after a brief winding-down period".
The Wikipedia articles on Haskell's competitors for DARPA funding, IBM's X10 and Cray's Chapel, are so brief that it takes more searching to learn if they have any similar implicit parallelism of for/foreach and array operations.
The reasons for terminating Haskell development may have been sound. Yet, when flipping through specifications of now-dead languages, I frequently say to myself "Hey, that is a good idea! Why isn't that provided in our modern languages?" I am not sure that parallel for loops falls in that category, but I see e.g.
x += 1
y += 1
- of course we can do similar things in many other languages, but often with a lot more fuzz and syntactic molasses, when all we need is the simplicity of this. Haskell also tried to revive dimension arithmetic, which I haven't seen since Algol68: If you multiply av value of dimension km/h by a value of dimension h, the result is av value of dimension km. Assigning it to a variable of dimension kg would lead to a compile-time error.
Generally speaking: Software guys could learn a whole lot, and broaden their professional scope, from spending some time reading specifications and standards that never made it into the mainstream.
Generally speaking: Software guys could learn a whole lot, and broaden their professional scope, from spending some time reading specifications and standards that never made it into the mainstream applicable to the technologies they work with day to day.
Strongly disagree. Or: The essential thing for broadening your scope and learning something new (or maybe old) is exactly to lift your eyes from what you work with day to day. You can of course learn all the nitty-gritty details of the new interpeter version, or how to use every single option in the compiler, but that certainly isn't broadening your scope. You should spend some time searching for something new and different! That is broadening your scope.
There is nothing wrong by studying the specifications and standards applicable to what you work with today, but that is something different.
Adam was hanging around the garden of Eden feeling very lonely... God asked him, "What's wrong with you?" Adam said he didn't have anyone to talk to. God said that He was going to make Adam a companion and that it would be a woman.
He said, "This pretty lady will gather food for you, she will cook for you, and when you discover clothing, she will wash it for you. She will always agree with every decision you make and she will not nag you, and will always be the first to admit she was wrong when you've had a disagreement. She will praise you! She will bear your children. and never ask you to get up in the middle of the night to take care of them. She will never have a headache and will freely give you love and passion whenever you need it."
Adam asked God, "What will a woman like this cost?"
God replied, "An arm and a leg."
Then Adam asked, "What can I get for a rib?"
I have lived with several Zen masters - all of them were cats.
His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.
So every company in the Netherlands has a VAT-number, which I also have and which identifies me at the tax authorities.
The issue with these VAT-numbers is that it contains people's citizen service number, which is used by the government to uniquely identify a person.
It's also used on passports and banks and doctors must use it too.
Other companies may not ask for, or use, your citizen number (although it used to be on my salary specification, what's up with that?)
Anyway, there's no need to give it to everyone you do business with, which is what you do with your VAT-number because it must be placed on invoices.
So the Dutch tax authorities just send me a new VAT-number which does not include my personal ID.
Which is great, except... I'm supposed to share this new number with my clients, starting next year.
But I still have to use the old number for any correspondence with the tax authorities...
So now I have TWO NUMBERS!
My guess is that my old ID is a primary key in a SQL database, which they can't just change for so many users (and that's why you shouldn't use functional keys as primary keys).
Because their internal software uses the old ID everywhere they can't just change it to look at the new ID (although how hard can it be?).
The new ID is just a new field that's right next to the old ID.
So now everyone just has two IDs because that's certainly more maintainable.
The tax authorities had this slogan, freely translated, "we can't make it more fun, but we can make it easier."
Apparently, they can't make it easier either
I have a "personal ID".
My company has a "VAT ID", which includes the personal ID.
To get rid of the personal ID in the VAT ID I got a new VAT ID for my company.
But I also still have to use the old VAT ID.
So now I have one personal ID and two VAT IDs for my company.
The two VAT IDs have the same purpose, except one is used for communication with tax authorities while the other is used for communication with clients.
can this have to do with form of business you established? In Germany we have a a special form called "Kleingewerbe", which essentially translates to small business. There is cap on the allowed turnover you can make. Anyhow, as the owner of such a small business you are allowed to use your private tax id number or alternatively apply for a "Umsatzsteuer-ID-Nr" which comes with some benefits and also some drawbacks I'd rather not get into now for brevity.
Maybe you have something similar in the Netherlands?
"I had the right to remain silent, but I didn't have the ability!"