>>6
the first of 4chan is you do not talk about shitty posts outside of 4chan
Name:
Anonymous2007-06-03 20:29 ID:MPddzBxZ
>>1 is Enterprise Scalable Professional Business Curry 2.0. ACM (Advanced Curry Management) enables your enterprise to cut operation costs by discovering business logic earlier in the software management cycle, thus allowing for a higher return of investment in your business.
Java is VIP quality. It has about the worst programming language ever created after MS-DOS batch and Spectrum Basic.
Name:
Anonymous2007-06-03 21:38 ID:xDP6R3xQ
Egads. I know this is Java, but srsly, how could they screw up this badly?
Oh jeez, that's ALL it takes? Damn, I must switch to Java. That one line it takes in Haskell pales in comparison to this ENTERPRISE CODE.
I can just see every ENTERPRISE switching to Haskell for all their needs since it can curry in one line. Ha Ha Ha Ha You chimps are killing me.
Name:
Java_Monkey2007-06-03 22:36 ID:ATgwdXXv
Java can do the same thing in one line too. Here's the program. It's word wrapped, but one line nevertheless:
public class Currier<ARG1, ARG2, RET> { public interface CurriableFunctor<ARG1, ARG2, RET> { RET evaluate(ARG1 arg1, ARG2 arg2); } public interface CurriedFunctor<ARG2, RET> { RET evaluate(ARG2 arg); }final CurriableFunctor<ARG1, ARG2, RET> functor; public Currier(CurriableFunctor<ARG1, ARG2, RET> fn) { functor = fn; } public CurriedFunctor<ARG2, RET> curry(final ARG1 arg1) { return new CurriedFunctor<ARG2, RET>() { public RET evaluate(ARG2 arg2) { return functor.evaluate(arg1, arg2); } }; }public static void main(String[] args) { Currier.CurriableFunctor<Integer, Integer, Integer> add = new Currier.CurriableFunctor<Integer, Integer, Integer>() { public Integer evaluate(Integer arg1, Integer arg2) { return new Integer(arg1.intValue() + arg2.intValue());} };Currier<Integer, Integer, Integer> currier = new Currier<Integer, Integer, Integer>(add); Currier.CurriedFunctor<Integer, Integer> add5 = currier.curry(new Integer(5));System.out.println(add5.evaluate(new Integer(2))); } }
Am I the only one who was confused by the whole 'curry' thing? Lol.
Name:
Anonymous2007-06-04 0:46 ID:mt3ZZjUR
hi!
partial aplication is just a shorcut for a lambda. If you have lambda, you don't really need partial application, of course it's convenient, but there is no need for an overlong definition of it.
KTHXBYE
>>24
I can tell by your eloquence and powerful grasp of the English language that you're a man of formidable intelligence whose ideas and convictions are clearly deeply rooted in logic and fact, and deserve to be heralded as the towering pinnacle of thought in this debate.
No, cause they're convenient and cost little. Having curry or not having it is a design decision that affects many things, like, say, keyword parameters.
>>27
That turns into more of a cultural issue. When using easily currying languages, people (should) design their function families in a way that benefits from currying. When using languages with keyword parameters, it is often natural to design functions with a lot of `tweakability' behind keyword parameters that default to some sane commonly-used values.
>>34
INCORRECT. CURRYING MEANS CONVERTING A FUNCTION TAKING N ARGUMENTS TO A FUNCTION TAKING ONE ARGUMENT AND RETURNING ANOTHER CURRIED FUNCTION. IN OTHER WORDS CURRYING MAKES PARTIAL APPLICATION POSSIBLE.
Name:
Anonymous2007-06-05 6:46 ID:xMBsQtbA
....Much like a pile of curry
Name:
Anonymous2007-06-05 9:31 ID:XrMo7x5G
PROTIP: MOST PEOPLE IN THIS THREAD DON'T KNOW THE DIFFERENCE BETWEEN LAMBDAS AND ANONYMOUS CLOSURES
>>38
INCORRECT. ANONYMOUS CLOSURES ARE FUNCTIONS DEFINED IN IMMEDIATE FORM WITHOUT A SYMBOL NAME FOR USE IN AN EXPRESSION, THEIR SCOPE SHARING OUTER LEXICAL SCOPES VARIABLES. LAMBDAS ARE GREEK LETTERS.
Lisp is LISP in the same sense that tequila is alcohol.
Name:
Anonymous2007-06-07 20:55 ID:mdbEznZ/
How about some good old VB.Net instead of that Java shit?
Dim add As Func(Of Integer, Integer, Integer) = Function(x, y) x + y
Dim add5 As Func(Of Integer, Integer) = Function(y) add(5, y)
Console.WriteLine(add5(2))
Name:
Anonymous2007-06-07 21:33 ID:riUCCjol
THE ONLY THING IN COMPUTER SCIENCE THAT CURRIES IS ALL THE FUCKING INDIANS TAKING OUR JARBS
>>58
It's the same. I just don't need that fucking class for that simple task. And I can easily have this:
Dim f5 As Func(Of Func(Of Integer, Integer, Integer), Integer) = Function(f, y) f(5, y)
Isn't it the same?
Name:
Anonymous2007-06-08 10:03 ID:468A6sJW
>>58
It's the same. I just don't need that fucking class for that simple task. And I can easily have this:
Dim F5 As Func(Of Func(Of Integer, Integer, Integer), Func(Of Integer, Integer)) = Function(f) Function(y) f(5, y)
Dim add5 = F5(add)
Isn't it the same?
Name:
Anonymous2007-06-08 11:02 ID:sUn+91Pw
I agree there is no need for currying, it's just convenient. In fact, that's what I said earlier in the thread.
But what you're doing is not currying.
Name:
Anonymous2007-06-08 11:08 ID:JKsST6n+
>>61
It's the same. I just don't need that fucking class for that simple task. And I can easily have this:
Dim F5 As Func(Of Func(Of Integer, Integer, Integer), Func(Of Integer, Integer)) = Function(f) Function(y) f(5, y)
Dim add5 = F5(add)
Isn't it the same?
Name:
Anonymous2007-06-08 11:12 ID:8Crn92nJ
>>62
It's the same. I just don't need that fucking class for that simple task. And I can easily have this:
Dim F5 As Func(Of Func(Of Integer, Integer, Integer), Func(Of Integer, Integer)) = Function(f) Function(y) f(5, y)
Dim add5 = F5(add)
Isn't it the same?
Name:
Anonymous2007-06-08 11:14 ID:468A6sJW
copypasta lol
But I think that >>60 is currying. We have some f(x,y) which happens to be add(x,y) (takes 2 arguements) and turn it into add5 function which takes 1 arguement via currification function f5.
Meybe I just don't know the definition of curryfication, but I thought it was makent the function take only 1 arguement.
>>54
First class functions? And anonymous functions? In MY Basic?
Wow, suddenly I have a lot more respect for VB.
Previously, my respect for it was like "pure stinking cow shit".
Now it's like "shit".
Name:
Anonymous2007-06-10 15:04 ID:rROFAuJZ
>>66
Name the "awesome" so that we can start a holy war.
Name:
Anonymous2007-06-11 4:48 ID:WNxYW4hD
>>67
Naturally, I was talking about Python. I didn't feel it was necessary to say it's awesome.
Name:
Anonymous2007-06-11 5:31 ID:4xmulQjY
>>68 ONE WORD, FORCED INDENTATION OF THE CODE, THREAD OVER
>>69
I am the creator of the `forced indentation' meme, and it's supposed to go:
``One word, the forced indentation of code. Thread over.''
Lookup the original `Bad things about Python' thread if you don't believe.
Such a failure of epic proportions.
Name:
Anonymous2007-06-14 23:10 ID:MuGJaBXj
>>72
I started the 'Bad things about Python' thread, I think I can claim responsibility for that meme actually.
Name:
Anonymous2007-06-14 23:40 ID:GEsVaSaK
I own the patent of the word "meme", United States Patent number 6530453, and I intent to monetize this intellectual property.
Name:
Anonymous2007-06-15 2:54 ID:RpNDIvkM
I founded this place, this /prog/, I have the rights to everything posted within.
Takes the creativity and imagination that an artist would have is on paper and what the hell You know I AM AN Enterprise Programmer I guarantee you it will be instructional.
anonymous classes are cool in some ways and fucking stupid excuses for real lambdas in other ways. C# is superior, although inner classes would be a nice touch to it.