[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y ] [Home]
4chanarchives logo
The most powerful programming language is Lisp. If you don't
Images are sometimes not shown due to bandwidth/network limitations. Refreshing the page usually helps.

You are currently reading a thread in /g/ - Technology

Thread replies: 49
Thread images: 3
File: pp_asdk_trekera.jpg (498 KB, 2952x2384) Image search: [Google]
pp_asdk_trekera.jpg
498 KB, 2952x2384
The most powerful programming language is Lisp. If you don't know Lisp (or its variant, Scheme), you don't know what it means for a programming language to be powerful and elegant. Once you learn Lisp, you will see what is lacking in most other languages.

Unlike most languages today, which are focused on defining specialized data types, Lisp provides a few data types which are general. Instead of defining specific types, you build structures from these types. Thus, rather than offering a way to define a list-of-this type and a list-of-that type, Lisp has one type of lists which can hold any sort of data.

Where other languages allow you to define a function to search a list-of-this, and sometimes a way to define a generic list-search function that you can instantiate for list-of-this, Lisp makes it easy to write a function that will search any list — and provides a range of such functions.

In addition, functions and expressions in Lisp are represented as data in a way that makes it easy to operate on them.

When you start a Lisp system, it enters a read-eval-print loop. Most other languages have nothing comparable to `read', nothing comparable to `eval', and nothing comparable to `print'. What gaping deficiencies!

Lisp is no harder to understand than other languages. So if you have never learned to program, and you want to start, start with Lisp. If you learn to edit with Emacs, you can learn Lisp by writing editing commands for Emacs. You can use the Introduction to Programming in Emacs Lisp to learn with: it is free as in freedom, and you can order printed copies from the FSF.

You can learn Scheme (and a lot of deep ideas about programming) from Structure and Interpretation of Computer Programs by Abelson and Sussman. That book is now free/libre although the printed copies do not say so.
>>
People keep saying javascript is a lisp.
It it because I can do stupid shit like
var n =(function(a) { return a+1; })(1);
>>
>*chirp chirp chirp...*

Well fuck, OP. Sure, I'll start reading that fucking PDF I picked up months ago. Thanks.
>>
tl;dr

lisp deserves a bump tho
>>
File: meme.png (182 KB, 400x597) Image search: [Google]
meme.png
182 KB, 400x597
>>55164043
Fuck off Richard, write in C
>>
>>55164263
He did
>>
>>55164043
Copy pasted from stallman.org

You neglected to mention the part where he proves that he is uneducated:

>My favorite programming languages are Lisp and C. However, since around 1992 I have worked mainly on free software activism, which means I am too busy to do much programming. Around 2008 I stopped doing programming projects. As a result, I have not had time or occasion to learn newer languages such as Perl, Python, PHP or Ruby.

>I read a book about Java, and found it an elegant further development from C. But I have never used it. I did write some code in Java once, but the code was in C and Lisp (I simply happened to be in Java at the time).
>>
>>55166059
>I did write some code in Java once, but the code was in C and Lisp (I simply happened to be in Java at the time).

wut
>>
>>55167687
he was probably using the openJDK.
>>
>>55167687
>>55167715
He was on an island called Java in Indonesia. It was a joke.
>>
>>55166059

loving every laugh at u
>>
For someone just starting out and looking to learn about computer science, I'd recommend giving The Little Schemer/The Seasoned Schemer a read and then SICP. TLS is all about teaching you to think recursively and it does a damn good job of it. Even if you're already fairly knowledgeable it's a fun read. I'm just starting reading The Reasoned Schemer which is really neat since the only logic programming experience I have is a little bit of Prolog.

>>55166059
I fucking love stallman.
>>
>>55167819
>the best programming language is lisp
>haven't written code since 1992

Who needs python, scala, dart, go, haskell, d, nim, rust, ruby, javascript, or swift anyway? If the language isn't built around REPLing, it must automatically be bad.
>>
>>55168044
>If the language isn't built around REPLing, it must automatically be bad.
Well in general yeah.
>>
>>55164043
>The most powerful programming language is Lisp.
As someone who used both CL and R7RS Scheme for a while, this is generally true but also kind of pointless. All Turing complete general programming languages can do everything any other Turing complete general programming language can.

What's left is that some languages can do certain things with less code than other languages. It's true that generally speaking, a language with homoiconicity and macros can do all things with less code than languages without homoiconicity and macros. For example, if you were to write any given program from scratch (no third party libraries), a good CL/Scheme version will be an order of magnitude smaller than one in a different language. However, if you take into account the existing ecosystem of libraries and general language support, you will end up saving an order of magnitude more time using a "crappy" language like C or Python instead of Lisp.

It's true that Lisp is powerful, but you can do things much faster in other languages.

>You can learn Scheme (and a lot of deep ideas about programming) from Structure and Interpretation of Computer Programs by Abelson and Sussman. That book is now free/libre although the printed copies do not say so.
I think it's telling that this course has been adapted to Python.

>The ultimate cause of our failure was a simple one: despite all statements to the contrary, it was not due to lack of bravery on the part of our men, or to any fault of the Fleet's. We were defeated by one thing only - by the inferior science of our enemies. I repeat - by the inferior science of our enemies.

http://www.mayofamily.com/RLM/txt_Clarke_Superiority.html
>>
>>55168044
>the best programming language is lisp
where did I say or imply that?
there is no best language. different languages make expressing different ideas simpler than others and thus encourage different styles of algorithm. language wars are stupid and counterproductive.
>>
File: BIT4TTM.gif (959 KB, 448x352) Image search: [Google]
BIT4TTM.gif
959 KB, 448x352
>>55167687
>>55167715
>>
>>55168140
Stallman said it, not you.
>>
>>55168245
I want my (you) back
>>
>((((((((((LISP))))))))))
>used in the real world
Pick one
>>
>>55168492
__Python__

*(*(*C(void)))

};
};
};
};
};
};
};
};
};
};
};
Javascript};

H . a $ s . k >>= e . l =<< l

public static class AbstractJavaBeanFactoryBuilderFactory

++++++++[>+>++>+++>++++>+++++>++++++>+++++++>++++++++>+++++++++>++++++++++>+++++++++++>++++++++++++>+++++++++++++>++++++++++++++>+++++++++++++++>++++++++++++++++<<<<<<<<<<<<<<<<-]>>>>>>>>>>>>++.--<<<<<<<<<<<<>>>>>>>>>>>>>>++.--<<<<<<<<<<<<<<>>>>>>>>>>>>+.-<<<<<<<<<<<<>>>>>>>>>>>>>+.-<<<<<<<<<<<<<>>>>>>>>>>>>>>--.++<<<<<<<<<<<<<<>>>>>>>>>>>>>--.++<<<<<<<<<<<<<>>>>>>>>>>>>>>>---.+++<<<<<<<<<<<<<<<>>>>>>>>>>>>+++.---<<<<<<<<<<<<>>>>>>>>>>>>>+++.---<<<<<<<<<<<<<.
>>
>>55164043
so where is that awesome OS all written in lisp?
>>
>>55168576
nice brainfuck that actually works. have some scheme
(define ncurry (λ (n f) (if (zero? n) f (ncurry (sub1 n) (curry f)))))
(define LISP (ncurry 10 (lambda () (display "LISP"))))

((((((((((LISP))))))))))
>>
>>55168757
oops swap a λ for a lambda or the other way around in there.
>>
>>55164043
LISP is a niche language created by academics so that they can have something to jerk to. It is entirely useless in the real world as people need to do more than just re-invent list sorting algorithms.

SICP is a useless old tome that has no actual use in modern programming; the only thing it does well is teach deprecated methods in an overly obtuse language.

While most NEETs will refuse to acknowledge that LISP is fundamentally useless, literally everyone else will land a job in a language that actually has uses outside of academia circlejerks.
>>
>>55169686
you clearly never saw a real project using lisp, there was/is even a tox gui written with it

maybe its not used widely in the industry, which i can understand for many reasons but its not like you couldnt do it with it
people are just to lazy and write bad java code instead
>>
>>55169754
>tox gui
Literally who cares. It's like xmonad, wow well done nobody gives a shit you fucktard.
>>
What language you use doesn't matter tbqh. As long as you can do whatever you want using it. Speed, optimisation ... don't really matter anymore, huge companies just buy more powerful machines to run their badly written programs at an acceptable speed, they except us to do the same, at a smaller scale that is.
>>
>>55169754
Wow, one GUI project using LISP is supposed to change my mind towards it?

People aren't lazy by using different languages, they just have an actual job to do rather than try and implement some le ebin algorithm.
>>
I think the problem with functional languages is, that you cannot easily implement arrays in them, or hash tables. (but maybe I'm wrong)
List isn't really useful container for anything else than recursion - I know recursion is the point, but well it's not good idea implement everything recursively.
>>
>>55164043
lisp is fucking disgusting and has no practical value at all

>>55172864
this
it really doesn't help that lists have a lot bigger memory/cpu overhead than something like an std::vector
you can have similar containers in haskell inside the IO / ST monads though
>>
Lisp is a jewish language you cuckold.
>>
>>55164043

(I ( (( kinda ))(((( like (( LISP, ) it's ) )) just... ) ))
>>
Let's say I want to contribute to free and open software, what languages are primarily used there?
I bet C is one of them. What else?
>>
>>55173711
Python
C++
Javascript
>>
>>55168757

Lisp is one of the langauges that inspired Ruby the most (among Smalltalk, Perl and Python)..

def xy( x, y )
x * y
end

ruby = method(:xy).curry["Ruby! "]

p ruby[10]
>>
>>55164043
Just use real C++ faggot.
>>
>>55167731
>>55168165
Jokes are supposed to be funny though
>>
>>55173834

Or even nicer:

puts method(:puts).curry["Did you ever curry stdout ?"]
>>
>>55168056
>"crappy" language like C
(You)
>>
>>55173989

I just realized I didn't curry strout, but only the "puts" function..

$stdout.method(:write).curry["ruby curried"]
puts
>>
>>55174068
Nice reading comprehension you've got there.
>>
>>55164043
What's the best way to start learning LISP that has nothing to do with Emacs?

I'm looking for an experience similar to Python/CPython and Haskell/ghci. That is, it should have an interactive prompt to quickly experiment, ability to make scripts and (ideally) ability to use other libraries similar to pip.

Oh, and it should also be available on (don't laugh) Windows because I can't switch to Linux fulltime.

Could you help a fellow anon? Thanks!
>>
>>55174229
Probably lighttable with clojurescript
>>
>>55164043
Elixir and Erlang are miles better. Get off your fucking horse and do real programming.
>>
Brainfuck is just as powerful and it's a lot simpler and easier to learn.
>>
>>55169852
I use xmonad, though
>>
>>55176548
I would argue on that. COBOL is obviously the superior choice
>>
>>55168658
Genera. Look it up.
Thread replies: 49
Thread images: 3

banner
banner
[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y] [Home]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
If a post contains personal/copyrighted/illegal content you can contact me at [email protected] with that post and thread number and it will be removed as soon as possible.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com, send takedown notices to them.
This is a 4chan archive - all of the content originated from them. If you need IP information for a Poster - you need to contact them. This website shows only archived content.