Ada and Lisp

>Ada attracted much attention from the programming community as a whole during its early days. Its backers and others predicted that it might become a dominant language for general purpose programming and not just defense-related work.[16] Ichbiah publicly stated that within ten years, only two programming languages would remain, Ada and Lisp.[17]

What went wrong Jow Forums?
Imagine if performance-critical software was written in Ada instead of C, and Silicon Valley faggotry stuff in Lisp instead of Python/JS or some other flavor-of-the-month bullshit.

Attached: 300px-Ada_Mascot_with_slogan[1].png (300x325, 46K)

Other urls found in this thread:

benchmarksgame-team.pages.debian.net/benchmarksgame/performance/regexredux.html
en.wikipedia.org/wiki/Ariane_5#Notable_launches
github.com/flyx/OpenGLAda/.
en.wikipedia.org/wiki/Lisp_(programming_language)
www-03.ibm.com/ibm/history/exhibits/701/701_1415bx40.html
science.raphael.poss.name/rust-for-functional-programmers.html
twitter.com/SFWRedditGifs

Ada very expensive compiler, C fags and school teach only C.

Lisp people hate ((()))

>Ada very expensive compiler
What do you mean? Is it not open source?

In the early days (before Java) it was not. All Ada compilers at the time cost thousands of dollars per seat.

Would you say that Ada is a good language today? Performance is worse than C but it's easy to write, and way faster than Go in some cases, extreme example: benchmarksgame-team.pages.debian.net/benchmarksgame/performance/regexredux.html

>Silicon Valley faggotry stuff in Lisp instead of Python/JS or some other flavor-of-the-month bullshit.
Oh God please never let that happen.

As a language designed to be actually good and not fucking stupid, it's superior to C and C++. It's also a poor competitor to C in the roles where there's some merit to replacing C (or just having any alternative to C). I think Rust will kill it in a few more years.

Explain

The ONLY free IDE for Ada is the AdaCore GNAT-GPS which has a nasty license on their version of the GNAT compiler which forces any app you program with it to be open source. That can be a very dangerous landmine laying around if code like that got into a commercial project.

The problem with the Ada compiler community now is the same as its always been, they don't release any free/community version of their compilers/IDEs for students to learn on. Every major company that makes IDEs like Microsoft, Borland, JetBrains always releases a free version for people to learn on. Since there is no good free IDE's except that nasty AdaCore IDE then people just skip over Ada.

>It's also a poor competitor to C in the roles where there's some merit to replacing C (or just having any alternative to C). I think Rust will kill it in a few more years.
guess how many airline jets have their flight systems programmed in C/C++? none, the reason you never hear about airline jets crashing from system errors is because they are ALL programmed in Ada

I'll avoid calling you an idiot because this is Jow Forums and I just expect kids living in moms basement to make statements like this

>nasty license on their version of the GNAT compiler which forces any app you program with it to be open source
(and this is a good thing)

en.wikipedia.org/wiki/Ariane_5#Notable_launches
>Ariane 5's first test flight (Ariane 5 Flight 501) on 4 June 1996 failed, with the rocket self-destructing 37 seconds after launch because of a malfunction in the control software.[30] A data conversion from 64-bit floating point value to 16-bit signed integer value to be stored in a variable representing horizontal bias caused a processor trap (operand error)[31] because the floating point value was too large to be represented by a 16-bit signed integer. The software was originally written for the Ariane 4 where efficiency considerations (the computer running the software had an 80% maximum workload requirement[31]) led to four variables being protected with a handler while three others, including the horizontal bias variable, were left unprotected because it was thought that they were "physically limited or that there was a large margin of safety".[31] The software, written in Ada, was included in the Ariane 5 through the reuse of an entire Ariane 4 subsystem despite the fact that the particular software containing the bug, which was just a part of the subsystem, was not required by the Ariane 5 because it has a different preparation sequence[31] than the Ariane 4.

ada SPARK is used by real programmers for real projects.

Written in COBOL*
ftfy
COBOL is the future btw guys

>What went wrong Jow Forums?
The notion that selling compilers won't fly is new to the Ada compiler writers, since they never really got used to it due to contracts in mission critical areas.
Lisp on the other hand is too fragmented and the same would happen to any serious code base or library, as the language was designed to be used by basement-dwelling sperglords that can't interact.
Ichbiah managed to ignore both of these obvious facts and therefore time proved him wrong.
>Imagine if performance-critical software was written in Ada instead of C
That would be great. In particular with a dedicated FOSS compiler that isn't gcc based.
> and Silicon Valley faggotry stuff in Lisp instead of Python/JS or some other flavor-of-the-month bullshit.
That wouldn't change a thing. Instead of bullshit JS frameworks you would have bullshit Lisp DSL frameworks.

Attached: d.jpg (400x400, 92K)

>Lisp
There.

Yes, LISP is a better language and filters out faggot.

>Lisp people hate ((()))
Lisp was literally created by a Jew and then promoted by Jews.

Would you say it's a (((coincidence))) or an actual coincidence? Seems like the language itself is fascinating nonetheless

> Misunderstanding GNU public license on purpose.

That has more to do with ancient code bases and having no power budget on an airliner. If you look at new projects like L4, they just write the whole thing in a proving system and transcribe it to whatever language makes sense. Ada's runtime overhead can't be justified in that workflow.

>not purposely trying to understand a license that is nothing more than bullet points of slogans written by a self-absorbed jew to lure weak minded goys
which makes me a sane person

>functional programming
>better than OOP in any way
You seem to have an acute case of delusion.

>performance worse than C
No. For the same algorithm and same amount of autistic microop effort they are just as fast as each other.

Lisp is multiparadigm you retard.

Please don't let it happen, my tiny brain would melt and I can't write my spaghetti. I might have to go back to McDonalds while lisper's send rockets to space and shit, wahhhhhh

Attached: 1541657765277.png (300x291, 145K)

>write the whole thing in a proving system
You mean like SPARK? :^)

I find Ada very comfy, at first glance its verbose, but reading other peoples code is instantly understandable, with none of the what-the-fuckisms I encounter in other languages

Doesn't under PL theory or the notion that lisp machines was a thing. Doesn't understand that NASA had shit written in lisp. Never read SICP nor understood anything in CS but can write pure tripe. Lisp influenced every given programming language. It was and still is superior. Regardless of the fact that very few brainlets 'get it'.

I think you got this one wrong desu and in fact lisp wasn't even intended to be a programming language. It just happened to be...

>multiparadigm
another brainlet buzzword thread

>in fact lisp wasn't even intended to be a programming language

Attached: s.png (225x225, 6K)

Ok, if you don't like that word: you can do functional, object-oriented, imperative, logic, etc. programming in Lisp.

There's an open-source compiler now, but back in the old days it was stuck in development hell and was monstrously expensive when it came out. I'm pretty sure GNAT (the GNU Ada Toolchain) also doesn't implement the entire standard, so if you want to be a 'real' Ada programmer, you gotta shell out the big bucks.

>doesn't implement entire standard
Wrong. The differences between GNAT GPL, GNAT FSF, and GNAT Pro are in the licensing, age of codebase, and provided support. That's it.

I see. Are you an Ada evangelist by any change?

chance*

>someone in this thread makes a factual statement instead of talk out of his ass
>he must be an evangelist

Meh. Honestly anyone who sees past the epic levels of FUD thrown at Ada over the years probably qualifies as an evangelist.

It's been done. The Muen kernel, formally proven to have no runtime errors.

I want to work in aerospace and defense, should I learn c++ or ada first?

Ada, grab GPS community edition from adacore.com

If you actually want to write Ada programs and not get worried you'll get fucked over by their open source license then install the FSF version of GNAT and use ada-mode in emacs. ada-mode is simple to use, it auto formats and auto capitalizes everything and will compile everything automatically.

None of this really matters, because all of that can be said about COBOL and nothing about any of this shit says something about Lisp not being designed for basement dwelling neets.
>It was and still is superior.
For making DSLs. But that hardly matters. You can reeee all you want.

Cobol clearly has none of the superior PL features. Just because something is popular doesn't make it good. Worse is better is precisely why software is fucking shit-tier nowadays.

Neither has Lisp. The only new thing it offered was macros which on its own isn't good enough. Everything else of value has been invented before. Just because something is popular with spergs doesn't make it good. Worse is better is precisely why language minimalism is a thing.

>The only new thing it offered was macros which on its own isn't good enough.
False (if/else conditionals, closures, no expression/statement dichotomy, garbage collection are Lisp firsts among other things) and macros are super important--unrestricted compile time metaprogramming allows you to do basically anything you want.

The original eval() was purely theoretical. Lisp was just a paper showing how you can build a complex turing-complete language with simple primitives.
Steve Russell realized that eval() was possible to implement in assembly language, which McCarthy hadn't though possible, and so lisp moved from a theoretical showcase into an actual programming language.

It's funny to think that this is how out of arguments you are.

The Common Lisp Object System is superior to the OOP facilities in C++ or Java.
And funcional programming is a style rather than a paradigm like imperative or OOP.
And lisp is also multiparadigm. Common Lisp even has an equivalent to GOTO.

Speaking of airlines, I hear that they favor lisp in their systems as well.
And rockerty. Nasa's JPL is still trying to develop spacecraft AI, not realizing that it existed and was written in lisp and was canned because some higher-up wanted to write everything in Java because Java programmers are cheaper.

>the language was designed to be used by basement-dwelling sperglords that can't interact
Though, some of lisp's features are specifically made for human interaction.
Starting from the source code being case-sensitive when specified but case-correcting otherwise, and permitting dashes and other unicode symbols. There was a time when lisp programmers spoke about programming over the phone, and fighting about camel or snake case there just won't fly. same goes with surrounding things with multiple underscores and having whitespace denote code blocks.

>Performance is worse than C
According to Debian microbenchmarks game it is about the speed of C.

>What went wrong Jow Forums?
The hippies hated Ada for its proximity to the military.

Can you write performance-oriented video game engines which will have C-level performance (i.e. as fast as possible) while keeping the security features of Ada? inb4 >vidya

Probably*, but good luck doing it. Ada lacks free public libraries and you'll have to write nearly everything yourself. (*Whatever people are doing in Rust, it can be done in Ada.)

>Ichbiah publicly stated that within ten years, only two programming languages would remain, Ada and Lisp.
Is he retarded?

Let's say you want to write the whole logic/physics from scratch and use inline C/C++ to call OpenGL functions, does that make sense?

>inline C/C++
Not sure, but making Ada bindings for C/C++ headers seems better a option. For example see github.com/flyx/OpenGLAda/.

It's not silicon valley but reddit was originally done in lisp

>lisp
>functional
I'm not even haskell fag but this makes me mad

Rust is doomed unless it distances itself from identity politics. The pendulum is swinging the other way and will discredit everything even slightly related to it. Rust made a huge mistake junping on the virtue signaling bandwagon and now they're having trouble scrubbing that taint off of them.

Attached: not on earth.jpg (640x640, 76K)

GRASP AND jGRASP are free.

They should have gone all in and named it after Rear Admiral Grace Hopper.

This was one of the design goals. They assumed code that lives long (decades) and is maintained by multiple, changing teams.

>The original eval() was purely theoretical. Lisp was just a paper showing how you can build a complex turing-complete language with simple primitives.
all you would have to do is check wikipedia Lisp page and you could see how wrong you are, this whole thread is just flunkers and codeacademy babies trying to pretend they work in the industry, its not even worth trying to educate anyone here, they'll keep talking out their ass

>t.ctard
Using c or c++ in a satellite or airplane should be a crime. I'm not joking,it should actual be illegal.

>I'm not joking,it should actual be illegal

Isn't the f35 avionics written in C++? That would explain a lot.

But most of aeronautics and astronautics systems are written in ASM, C, C++. Ada only is a niche now. Unfortunately.
Ada or SPARK are better, but the mindshare is way lower.

>But most of aeronautics and astronautics systems are written in ASM, C, C++.
Yes and that's wrong. They're going to get people killed. Hence why I said it should be illegal. No one cares about safety anymore. I can't wait until a self driving car bug kills hundreds of people because some arrogant C-tard didn't want to he told how to program properly by a compiler.

There are plenty of standards those systems have to comply with. So far those systems are pretty safe. Just developed/maintained with higher effort than with Ada.
I fear more for the upcoming IoT wave.

>I fear more for the upcoming IoT wave.
The thing is most of the defense industry stuff is safe because they're still required to use advanced tools to make up for the extreme short comings of c. A lot of industries lack these regulations and are incorporating software written in c that needs to go through all of it's ass backward analysis tools. Do you know how many security bugs are caused by C only software bugs? The sick thing is you can't escape it anymore. All the graphics libraries, UIs and system call stuff is written with C. Even if you don't use C or C++ you're going to have to use a bunch of insecure c or c++ libraries if you want your software to work on a modern operating system. The only free Ada compiler is connected to GCC which is of course written in C. You have to use Gtk for GUIs. You can't escape this trash.

>Do you know how many security bugs are caused by C only software bugs?

Basically all of them?

Pretty much. Yet everything important is written in this crap. All of our operating systems , our web browsers, our virtual machines. C is the dominate game in software and it's disgusting. What I don't get is why did boomers hate Ada so much anyway?

Yes, it's nearly everywhere.
From an optimistic POV I'd say that once an industry becomes significant enough and threatens peoples' lives and properties, they get more regulated. Not that I love regulations as such, but in those cases it makes sense.
Though realistically we'll see many systems thrown into the market and never receive updates (like with many IoT systems already) and new (and similarly unsafe) systems thrown on top of them.
Pragmatically speaking most systems run okay so far, even with their C/C++ basis. It makes little sense to judge them from a purity-minded perspective. We shouldn't underestimate that many widely used C/C++ libs have known warts (and thus get the necessary attention) or got their kinks removed. We can call them from safer languages then.

>What I don't get is why did boomers hate Ada so much anyway?
Some aspects were mentioned in this thread. Expensive compilers at that time, the tooling and feel was like living in an enterprise Java shop in a dark cubicle, hackers found it wasn't fun, academic programmers were skeptical of the DoD or (more general) USG ties (Ada was mandatory).

Holy hell.
>Lisp was invented by John McCarthy in 1958 while he was at the Massachusetts Institute of Technology (MIT). McCarthy published its design in a paper in Communications of the ACM in 1960, entitled "Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I". He showed that with a few simple operators and a notation for functions, one can build a Turing-complete language for algorithms.
>Lisp was first implemented by Steve Russell on an IBM 704 computer. Russell had read McCarthy's paper and realized (to McCarthy's surprise) that the Lisp eval function could be implemented in machine code. The result was a working Lisp interpreter which could be used to run Lisp programs, or more properly, 'evaluate Lisp expressions.'

en.wikipedia.org/wiki/Lisp_(programming_language)

I don't know. Look at heartbleed it wasn't even an advance bug and nobody noticed for years. There are probably bugs like that in thousands of widely used c libraries that nobody has noticed yet. I'd think there would be a lot less zero days if libraries we're written in something like Ada. In ideal word I think that Ada for low level stuff and an ML language like Ocaml for high level stuff would be for the best.

you conveniently left out the sentences in the middle of what you quoted in wikipedia where it describes how s-expressions were the AST specification that was to be implemented inside the compiler that the m-expression syntax would get parsed into. Steve Russell took that implementation and turned into an interpreter that could run in the terminal. Lisp was a programming language specification, cant believe you are going this far to hide how stupid you are when anyone can simply find these facts on wikipedia

>Information Processing Language was the first AI language, from 1955 or 1956, and already included many of the concepts, such as list-processing and recursion, which came to be used in Lisp.
>McCarthy's original notation used bracketed "M-expressions" that would be translated into S-expressions. As an example, the M-expression car[cons[A,B]] is equivalent to the S-expression (car (cons A B)). Once Lisp was implemented, programmers rapidly chose to use S-expressions, and M-expressions were abandoned. M-expressions surfaced again with short-lived attempts of MLisp[10] by Horace Enea and CGOL by Vaughan Pratt.

What I never got is how people that got to use lisp machines love c and Unix so much. Unix is completely crippled in comparison to the lisp operating systems.

>heartbleed
Didn't kill too many people. Didn't crash too many nations. I agree that most things would be better in Ada.

Because C and Lisp are so basic. Little syntax and rules. Hackers love that.

>Because C and Lisp are so basic. Little syntax and rules. Hackers love that.
But lisp is so much more expressive than C. Lisp machines had excellent debuggers and interputers built right into the code. C was easy to implement and easy to learn but so was forth and it never gained any traction outside of telescopes.

>Because C and Lisp are so basic. Little syntax and rules. Hackers love that.
syntax has nothing to do with undefined behavior. C is the only language specification that allows almost everything to be undefined behavior. something as simple as accessing an array value beyond the declared array size is allowed in C but not in any other language including Lisp

How is Lisp in terms of performance? I guess you can't write cutting edge levels of fast in Lisp, can you?

The point is that C and Lips are minimal language. user asked why they're both loved by the same people. That's the answer I repeatedly got from them.

Yep, the ditched their codebase because they believed using C++ programers would be cheaper

No you won't get c levels of speeds with most lisp dialectics available right now. It's just very good for solving problems. Naughty Dog had a high performance lisp dialectic that compiled to PlayStation assembly but Sony forced them to switch to c++ after they bought them. So in theory,you could get high performance out of a lisp. Common lisp is probably as fast as Java or haskell. Last I checked Ocaml is probably the fastest garbage collected language but it's multiprocessor support is shit.

But IPL is not lisp. IPL was an assembly language that happened to process lists and do recursion.
I cut up the quote like that because the paragraphs you've posted have very little relevancy to the story, and have no relevancy to each other. The bit about m- and s-expressions is about McCarthy's notation used in his paper, not about IPL.
Also, the thing about eval is that it's both a function in the language, and the language's implementation. It's a self-hosted interpreter. IPL probably didn't include a lisp interpreter, or an IPL interpreter, even if lisp was implemented in IPL, which it wasn't.

Also, by "terminal", I can only assume you mean this:
www-03.ibm.com/ibm/history/exhibits/701/701_1415bx40.html

youre just making up stuff I didnt say, I never said IPL was Lisp, it was a language that influenced Lisp, everything you say in your post is goalpost moving, youre an idiot, you said something stupid, your original statement that Lisp was never originally from a programming language is wrong, babbling nonsense I never said wont change that

Unironically based and redpilled.

>. I agree that most things would be better in Ada.
What do you think about the rise of rust? I don't think it's any where near as good as Ada but it's better than c or c++. If it gains enough traction eventually the compiler will be bootstrapped without using c++. Which is exciting. I'd rather have libraries written in that than c++.

I'm watching it since 2013 or so. Played around with it (minor stuff) and I'm fond of its functional programming elements [1]. It's hip and has community adoption. We have to see into which areas it can expand. Not giving up on Ada though.

[1] older but gives a good intro, for me it felt sometimes like Haskell
science.raphael.poss.name/rust-for-functional-programmers.html

laggiages? they all the same
i can programm any and dont even remember theur names

Attached: et_on_eng_008.png (831x464, 64K)

Rust is so long to compile though. We're talking literally many hours to compile for something that should take no more than 30 minutes

Since my toy programs didn't trigger long compilations I cannot speak from first hand experience here. Heard that from others though. Not sure but I think this should be optimized away one day, no? Or are there show stoppers inherently in it?

elisp is the best

Attached: rms_smug.jpg (800x636, 109K)

languages? they all the same
i can program any and don't even remember their names

Attached: 5china-v83-conf-8.png (800x600, 207K)

languages? they all the same
i can program any and don't even remember their names.

Attached: KILLS_CS.jpg (627x360, 21K)

At one of his visits, Andrei asked my opinion about Ada. I told him that Ada was such a mess that I shuddered at the thought that Western security would depend on it and that I would feel much safer if the Red Army were to adopt it as well. Andrei smiled and gave the now famous answer "Don't worry...."
- Dijkstra

Interesting stuff. Some rust books have finally came out that I'm interested in checking out but I haven't had time. The amount of libraries written in the language is great. It has a lot more traction that Nim or D ever had. Ada unfortunately doesn't. I tried looking for info in using Ada with QT and one for QT5 hasn't been written yet. I couldn't get the QT4 to work. Someone's already working on the Rust bindings.

It was the correct move to make
C++ will be fine on a plane that doesn't fly