Re: GNU License warning:

2017-01-13 Thread Ignacious via Digitalmars-d

On Saturday, 14 January 2017 at 01:40:58 UTC, Chris M. wrote:

On Friday, 13 January 2017 at 21:53:29 UTC, Ignacious wrote:

On Friday, 13 January 2017 at 19:30:40 UTC, Chris Wright wrote:

On Fri, 13 Jan 2017 15:19:57 +, Ignacious wrote:

[...]


LGPL is much more common, and LGPL isn't a problem when you 
distribute by source. It *is* a problem with static linking 
with binary distributions (which is the default for D).


This is not a new issue. Software licensing is a well 
understood, well publicized concern. It doesn't merit 
alarmism.


Sure it does! Stop being a Nazi war criminal wanna be! Do you 
work for the FOSSF? Otherwise known as the F-OSS-F = Future - 
Office of Strategic Services - Foundation.


What is this thread accomplishing other than ranting about GPL 
and calling others Nazis?


Quite a bit! I has solved the mysteries of the universe and shown 
that you are a Hitler sympathizer and progressteron.


Re: [your code here]

2017-01-13 Thread Ignacious via Digitalmars-d

On Friday, 13 January 2017 at 20:40:32 UTC, mustafa wrote:

dfdsfsd


afdsaaf?


Re: Error deducing function

2017-01-13 Thread Ignacious via Digitalmars-d

On Friday, 13 January 2017 at 22:57:09 UTC, Adam D. Ruppe wrote:

On Friday, 13 January 2017 at 22:22:12 UTC, Ignacious wrote:

Like, which arguments actually pass and which ones fail, etc.


Yes, I agree entirely. This would be a HUGE usability bonus, 
far better than most the other things people work on...


And it should be very simple to do. as the compiler checks the 
arguments it reaches the argument that it finds invalid and it 
simply has to calculate the length in to the string to put 
something like a >> in front of the argument in the error string. 
Or simply give the index in to the argument or template list.


Probably take a good programmer less than an hour to do.



Error deducing function

2017-01-13 Thread Ignacious via Digitalmars-d
It would be EXTREMELY helpful if dmd would give a better result 
than


main.d(30): Error: template main.Do cannot deduce function from 
argument types !(1, string, int)(2, "adf"), candidates are:
main.d(6):main.Do(int x, string y, alias Q)(int z, string 
q)


Like, which arguments actually pass and which ones fail, etc.

I know we are all suppose to be geniuses here but I flunked out 
of that class. Seems like the compiler knows where the error is 
so why can't it inform me a bit better than basically telling me 
there is an error and which lines it occurred on(cause that is 
all it really does in practice).





Re: GNU License warning:

2017-01-13 Thread Ignacious via Digitalmars-d

On Friday, 13 January 2017 at 19:30:40 UTC, Chris Wright wrote:

On Fri, 13 Jan 2017 15:19:57 +, Ignacious wrote:
Yes, but D uses mostly bindings and if any of those bindings 
use it then It effects the D program that uses it. Since many 
of the bindings are written in C/C++ one can expect that many 
of them use the GPL license.


LGPL is much more common, and LGPL isn't a problem when you 
distribute by source. It *is* a problem with static linking 
with binary distributions (which is the default for D).


This is not a new issue. Software licensing is a well 
understood, well publicized concern. It doesn't merit alarmism.


Sure it does! Stop being a Nazi war criminal wanna be! Do you 
work for the FOSSF? Otherwise known as the F-OSS-F = Future - 
Office of Strategic Services - Foundation.







Re: GNU License warning:

2017-01-13 Thread Ignacious via Digitalmars-d

On Friday, 13 January 2017 at 15:56:40 UTC, Claude wrote:

On Friday, 13 January 2017 at 15:15:14 UTC, Ignacious wrote:

On Friday, 13 January 2017 at 12:01:22 UTC, bachmeier wrote:
This is not the proper place to blog about software license 
preferences or to make unsubstantiated accusations against an 
organization you don't like. There are other sites for that.


So, what is up with all the wanna be Nazi's running around 
today? Did Hitler come out of retirement??


Retirement?? I thought he commited suicide...


Of course that is what *they* want you to believe. He was simply 
biding his time while his little Nazi army infiltrated every 
aspect of human life. The goal is obfuscation and negativity. 
They realized they couldn't win on firepower so they moved on to 
more powerful psychological warfare tactics.






Re: GNU License warning:

2017-01-13 Thread Ignacious via Digitalmars-d

On Friday, 13 January 2017 at 06:37:42 UTC, Joakim wrote:

On Friday, 13 January 2017 at 02:25:03 UTC, Ignacious wrote:

On Friday, 13 January 2017 at 01:27:02 UTC, Chris Wright wrote:

[...]


That makes no sense(it's obvious by the definition of 
derivative so you are not saying anything meaningful/useful). 
Obviously if you build an independent work you are free to 
chose a license and no one building any work off of yours or 
not can cause you problems.


[...]


I agree with you that the GPL is badly written, but we mostly 
don't use it, basically only for the gdc compiler itself, so 
not a big deal here.


Yes, but D uses mostly bindings and if any of those bindings use 
it then It effects the D program that uses it. Since many of the 
bindings are written in C/C++ one can expect that many of them 
use the GPL license.


The boost license seems acceptable but who knows? Look how many 
were "swindled" by GPL.




Re: GNU License warning:

2017-01-13 Thread Ignacious via Digitalmars-d

On Friday, 13 January 2017 at 12:01:22 UTC, bachmeier wrote:

On Friday, 13 January 2017 at 02:25:03 UTC, Ignacious wrote:

[...]


This is not the proper place to blog about software license 
preferences or to make unsubstantiated accusations against an 
organization you don't like. There are other sites for that.


So, what is up with all the wanna be Nazi's running around today? 
Did Hitler come out of retirement??


Re: GNU License warning:

2017-01-12 Thread Ignacious via Digitalmars-d

On Friday, 13 January 2017 at 01:27:02 UTC, Chris Wright wrote:
You offer an API and someone decides to build on it using the 
GPL -- no trouble there; your work is not a derivative of 
theirs, so their copyright cannot place restrictions on your 
work.


That makes no sense(it's obvious by the definition of derivative 
so you are not saying anything meaningful/useful). Obviously if 
you build an independent work you are free to chose a license and 
no one building any work off of yours or not can cause you 
problems.


You build against an open standard and the only implementation 
is GPL -- your work is a derivative of the standard, not 
necessarily the GPL'd work.


That depends. The standard could be GPL's too. Anything can be 
copyrighted and licensed how the creator wants as long as it is 
legal. In any case, that says nothing about a single work.


You build against an open standard with an MIT licensed 
implementation and someone else builds a GPL implementation -- 
no trouble there; your work is not a derivative of theirs, so 
their copyright cannot place restrictions on your work.


You haven't really said anything relevant to the post.

The issue is with how the GPL defines proper use of pre-existing 
works. The ultimately point is that they arbitrarily decide how a 
work uses another based on "fork and exec" and "library". My 
point is that those are ultimately artificial because whether we 
call a function/app through a library or through a command line, 
they are effectively the same(the difference being 
performance/convenience, which is the whole point of loading a 
library vs using the command line).


They admit this in the gpl FAQ(if you read it you will see) but 
the fact that they still create arbitrary division suggests the 
license is somewhat meaningless/incompetent.


Licenses should be more specific in their terminology and their 
behaviors and effects rather than using arbitrary divisions.


Also, while not proof, the fact that the majority of donations to 
the foundation go to the lawyers(if true) also suggest that it is 
somewhat of a scam(at the very least, something is fishy).









GNU License warning:

2017-01-12 Thread Ignacious via Digitalmars-d


https://www.gnu.org/licenses/gpl-3.0.en.html
https://www.gnu.org/licenses/gpl-faq.html


http://z505.com/cgi-bin/qkcont/qkcont.cgi?p=Please%20Stop%20Using%20GNU%20Licenses
http://gng.z505.com/cult.htm


And, I should point out:


"If I write a plug-in to use with a GPL-covered program, what 
requirements does that impose on the licenses I can use for 
distributing my plug-in? (#GPLAndPlugins)


It depends on how the program invokes its plug-ins. If the 
program uses fork and exec to invoke plug-ins, then the plug-ins 
are separate programs, so the license for the main program makes 
no requirements for them.


If the program dynamically links plug-ins, and they make 
function calls to each other and share data structures, we 
believe they form a single program, which must be treated as an 
extension of both the main program and the plug-ins. This means 
you must license the plug-in under the GPL or a GPL-compatible 
free software license and distribute it with source code in a 
GPL-compliant way.


If the program dynamically links plug-ins, but the 
communication between them is limited to invoking the ‘main’ 
function of the plug-in with some options and waiting for it to 
return, that is a borderline case.
Can I apply the GPL when writing a plug-in for a non-free 
program? (#GPLPluginsInNF)


If the program uses fork and exec to invoke plug-ins, then 
the plug-ins are separate programs, so the license for the main 
program makes no requirements for them. So you can use the GPL 
for a plug-in, and there are no special requirements.


If the program dynamically links plug-ins, and they make 
function calls to each other and share data structures, we 
believe they form a single program, which must be treated as an 
extension of both the main program and the plug-ins. This means 
that combination of the GPL-covered plug-in with the non-free 
main program would violate the GPL. However, you can resolve that 
legal problem by adding an exception to your plug-in's license, 
giving permission to link it with the non-free main program.


See also the question I am writing free software that uses a 
non-free library.
Can I release a non-free program that's designed to load a 
GPL-covered plug-in? (#NFUseGPLPlugins)


It depends on how the program invokes its plug-ins. For 
instance, if the program uses only simple fork and exec to invoke 
and communicate with plug-ins, then the plug-ins are separate 
programs, so the license of the plug-in makes no requirements 
about the main program.


If the program dynamically links plug-ins, and they make 
function calls to each other and share data structures, we 
believe they form a single program, which must be treated as an 
extension of both the main program and the plug-ins. In order to 
use the GPL-covered plug-ins, the main program must be released 
under the GPL or a GPL-compatible free software license, and that 
the terms of the GPL must be followed when the main program is 
distributed for use with these plug-ins.


If the program dynamically links plug-ins, but the 
communication between them is limited to invoking the ‘main’ 
function of the plug-in with some options and waiting for it to 
return, that is a borderline case.


Using shared memory to communicate with complex data 
structures is pretty much equivalent to dynamic linking.


See also the question I am writing free software that uses a 
non-free library."


Essentially they draw an imaginary line between using "fork and 
exec" vs linking.



"If the program dynamically links plug-ins, and they make 
function calls to each other and share data structures, we 
believe they form a single program, which must be treated as an 
extension of both the main program and the plug-ins"


And so we are in the realm of belief.

As we all know here that every computer program ran on a computer 
is connected by nested "data structures"... so fork and exec are 
just dereferencing linking

by an extra step.

What happens, when in the future, OS's use some other mechanism 
for execution? Is there really any difference between 
exec("app.exe") and LoadLibrary("app.dll")? (I don't mean an 
imginary difference created in the mind by obfuscated data 
structures. I'm talking about a fundamental difference(besides 
performance))



There is a lot of arbitrary language in the GNU license and the 
fact that it was created by lawyers for lawyers(see 
http://gng.z505.com/cult.htm. I realize the link looks a bit 
crackpotish but it has a lot of relevant points and if the 
numbers are right, shows more than enough proof).



As usual, it comes down to who has the biggest bank roll and 
smartest lawyers to obfuscate the issues. The push for free 
software is becoming a nonsensical pursuit like most other human 
behaviors.


I think a license should exist that EXPLICITLY states what one 
can do with the source code and binary and what they are.













Re: D Spam filter ridiculous/broke

2017-01-09 Thread Ignacious via Digitalmars-d
It would be nice, also, if when we click on a link in the forum 
that it takes us to the last page/message(Scrolls down to it) 
rather than forcing us to do this. Most of the time we don't want 
to have to either read through all the messages or click on the 
last page in the first place. If we are following a thread most 
likely we have already read the front of the it. If not, which 
generally only happens once(the first time), it won't be a big 
deal to click on the first page.





Re: D Spam filter ridiculous/broke

2017-01-09 Thread Ignacious via Digitalmars-d

On Tuesday, 10 January 2017 at 02:05:34 UTC, Adam D. Ruppe wrote:

On Monday, 9 January 2017 at 23:08:49 UTC, Ignacious wrote:
I try to post something, thinks it's spam, asks me to solve 
the captcha, then when I do, says I have to wait to post... 
which I do, then asks me to solve the captcha, then wait to 
post, then asks me to solve the captcha, etc... ad infinitum.


Yeah, no kidding. The captchas are so trivial that I can 
usually solve them in about three seconds... then get stuck in 
this same loop. Drives me nuts.


Don't say that! Next thing you know we'll have to solve a 
hyperbolic PDE or Schrodinger's wave equation for the carbon atom 
just to post!


Re: D Spam filter ridiculous/broke

2017-01-09 Thread Ignacious via Digitalmars-d

On Monday, 9 January 2017 at 23:08:49 UTC, Ignacious wrote:
I try to post something, thinks it's spam, asks me to solve the 
captcha, then when I do, says I have to wait to post... which I 
do, then asks me to solve the captcha, then wait to post, then 
asks me to solve the captcha, etc... ad infinitum.


The issue seems that one has to wait to solve the captcha. If you 
solve it within 15 seconds or so then the web site think's you 
are flooding. The time measuring should start after we solve the 
captcha successfully not before as it results in preventing quick 
solves from actually sending any messages. It will still prevent 
flooding because it will be in play for the next message, but it 
shouldn't be in play for the first message one sends since it 
prevents real users from posting normally.





D Spam filter ridiculous/broke

2017-01-09 Thread Ignacious via Digitalmars-d
I try to post something, thinks it's spam, asks me to solve the 
captcha, then when I do, says I have to wait to post... which I 
do, then asks me to solve the captcha, then wait to post, then 
asks me to solve the captcha, etc... ad infinitum.







Re: D in MPLAB FOR PIC32

2017-01-06 Thread Ignacious via Digitalmars-d

On Friday, 6 January 2017 at 15:47:21 UTC, Igor Myronov wrote:

Hi there comunity !!!
Im an beginner in programming MCU ,but i'm already programming 
in D and also here im an absolute beginner.

So ,my question is :
Is possible to program in D micro*-controllers like the PIC32 ?
Thanks to all.


It would be nice, but I seriously doubt it. There used to be a 
c++ compiler for the PIC16/24 that worked well but was 
discontinued. There are, of course, C compilers so maybe there is 
a way to hijack the toolset to do it(IIRC they convert the c (to 
obj) to assembly then run the assembler on that to create the 
binary http://www.microchip.com/forums/m793665.aspx)


If that is the case, then maybe D could used somehow. I doubt it 
though, probably require adding the pic instruction set to the D 
compiler.





Re: It's a Christmas miracle: main no longer runs after unittests

2016-12-25 Thread Ignacious via Digitalmars-d

On Sunday, 25 December 2016 at 09:44:07 UTC, Doug wrote:

On Sunday, 25 December 2016 at 07:30:39 UTC, Ignacious wrote:
Given that Christmas is one of the hugest fabrications in 
human history, I find this very difficult to believe! (or 
simply to cover all bases, quite easy to believe)


xmas is an old tradition related to the winter solstice.


But we all know those druids were insane... worshiping false gods 
and drinking the blood of virgins!


Re: It's a Christmas miracle: main no longer runs after unittests

2016-12-24 Thread Ignacious via Digitalmars-d
On Saturday, 24 December 2016 at 22:14:08 UTC, Andrei 
Alexandrescu wrote:

https://github.com/dlang/druntime/pull/1724

Ho-ho-ho!


Andrei


Given that Christmas is one of the hugest fabrications in human 
history, I find this very difficult to believe! (or simply to 
cover all bases, quite easy to believe)




Compiler concept

2016-12-12 Thread Ignacious via Digitalmars-d
Would it be difficult to implement the following, or something 
with similar capabilities, as a patch to dmd?


Create a compiler that lets one use actual code as templates. 
e.g., a text block of a function can be referenced by in the code 
using a "dom" to modify that code similar to how we can modify 
html.


int foo(x)
   if x > 1
  return 3;
   return 4;

int :foo(x) bar(x)
[
	_dom[return][0] = 8;	/* _dom is a keyword representing the code 
block, in a dom format, of the function foo. The rh expression is 
checked for validity just as if it were used in the function. 
Here we set the first return to the express 8. This gives the 
same function but returns 8 instead of 3 at this point.
	!_dom[return][1]; 		/* The bang kills the 2nd return statement 
removing it from the body as if it were never typed, at this 
point, bar would be invalid

]
{

static if _dom.Lines == 3 && _dom.#x <= 6
return 1;

	/* We have added back a valid return statement, Now bar returns 
1 when x <=1 else 3. Not a very useful function, but it 
demonstrates how a dom like typesafe syntax might be used

}


The main problem such a model is consistency as changing foo 
would generally break any dependencies quite easily. An IDE can 
remedy this quite well by simply checking if any of the 
corresponding _dom based functions of a function that has been 
modified are still consistent. Unfortunately there is no real way 
to keep consistency in behavior in general is this is even a 
problem with function overloading.