Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Which touhou would you program with?

Name: Anonymous 2017-06-28 6:16

Discuss.

Name: Anonymous 2017-06-28 7:42

Tewi.

Name: Anonymous 2017-06-28 9:12

What programming language is this?

Name: Anonymous 2017-06-28 15:04

>>3
BulletML

Name: Anonymous 2017-06-28 15:11

Name: Anonymous 2017-06-29 0:45

E/JP/IN THREAD BRO

E
/JP/
I
N

THREAD

Name: Anonymous 2017-06-29 7:46

Patchy

Name: Anonymous 2017-06-29 13:48

Cirno. She knows C++.

Name: Anonymous 2017-06-30 0:52

>>8
Actually, Cirno uses Haskell https://github.com/MarisaKirisame/Cirno

Name: Anonymous 2017-06-30 8:10

>>6
Eggwing post

Name: Anonymous 2017-06-30 8:17

>>10
eggwing grow! check'em

Name: Anonymous 2017-06-30 16:19

>>9
>The Strongest Language In The World
That would be C

Name: Anonymous 2017-06-30 17:26

>>12
Um, no it's not. C and C based languages are a cancer brought on programming.

Name: Anonymous 2017-06-30 23:04

>>13
Why did the universities teach them? That never made any sense to me. C became popular through the universities even though it went against every single one of their beliefs about what a good programming language should be, not through industry. Pascal and Java also became popular through universities, but a lot of professors thought Pascal was good. It never made sense why these universities teaching Smalltalk, Simula 67, and Eiffel would suddenly switch to proprietary Java to teach OOP either.

Name: Anonymous 2017-06-30 23:39

>>14
C
Because it's lower level than the other languages.

Pascal
Pascal was made to be an introductory language for teaching students.

Java
It's an OOP language, and very much in demand.

Name: Anonymous 2017-07-01 0:08

>>15
Because it's lower level than the other languages.
No, it has pointers and it's not the only language with pointers. It's different because it lacks higher level concepts, which requires people to make scripting languages and other crap instead of using the language directly.

Pascal was made to be an introductory language for teaching students.
That's why it didn't make any sense to replace it with C.

It's an OOP language, and very much in demand.
Java wasn't in demand when they were teaching Smalltalk and Eiffel. OOP was in demand, but not Java. The new generation of students who graduated knowing Java created the demand for Java.

Name: Anonymous 2017-07-01 0:16

>>16
That's why it didn't make any sense to replace it with C.
How exactly do you teach low level concepts with Pascal?

Java wasn't in demand when they were teaching Smalltalk and Eiffel. OOP was in demand, but not Java.
Yes, but the C syntax made it more appealing to them.

Name: Anonymous 2017-07-01 0:49

>>17
How exactly do you teach low level concepts with Pascal?
You don't, that's what cpu architecture class covers.

Name: Anonymous 2017-07-01 1:07

>>16
>>18
More like they replaced pascal with python

Name: Anonymous 2017-07-01 1:24

>>17
How exactly do you teach low level concepts with Pascal?
Low-level depends a lot on the hardware. Mental midgets (good choice of words) can't envision running on more advanced hardware like the iAPX 432 because C causes brain damage. On that kind of hardware, there would be a very different view of what low-level means. There's no such thing as generic ``systems programming''. People are afraid to make anything that can't run C.

Yes, but the C syntax made it more appealing to them.
The C syntax made it more appalling to them. You're assuming most people who learned Java at the university were C programmers or liked C or C++ and that they like them because of the syntax. I think Java turned people off of programming, or at least statically typed compiled (it compiles to bytecode) languages. Why do you think there was this huge explosion in scripting languages? I don't even have a JVM on my computer, but systems tools on GNU/Linux are written in Python.

Name: Anonymous 2017-07-01 16:42

>>20
You're assuming most people who learned Java at the university were C programmers or liked C or C++
no, it sounds more like they thought it'd be easier for them to learn if both syntaxes were related

Name: Anonymous 2017-07-01 17:15

>>20
sounds more like a software engineering thing than computer science
everyone knows mental midgets prefer computer science

Name: Anonymous 2017-07-02 3:09

>>21
That's mental midget thinking. ``I'm going to use the syntax of a weakly typed language designed for pointers and pointer arithmetic as the basis of an object-oriented type-safe language.'' C's insanely bad for and switch can't even be blamed on that (contrast BLISS). This is because of the laziness and small brains of the C creators, and has nothing to do with the hardware or compiler size or speed.

Name: Anonymous 2017-07-02 3:44

>>23
That's mental midget thinking.
no it's not, C syntax is pretty easy to understand and using a similar one for both languages makes it easier for them to learn both
Whether the language is good or bad is irrelevant

lisp fizzbuzz:
(defun fizzbuzz ()
(loop for x from 1 to 100 do
(princ (cond ((zerop (mod x 15)) "FizzBuzz")
((zerop (mod x 3)) "Fizz")
((zerop (mod x 5)) "Buzz")
(t x)))
(terpri)))



Smalltalk fizzbuzz
(1 to: 100) do:
[:n |
((n \\ 3)*(n \\ 5)) isZero
ifFalse: [Transcript show: n].
(n \\ 3) isZero
ifTrue: [Transcript show: 'Fizz'].
(n \\ 5) isZero
ifTrue: [Transcript show: 'Buzz'].
Transcript cr.]



C fizzbuzz
int main() {
int i = 1;
while(i <= 100) {
if(i % 15 == 0)
puts("FizzBuzz");
else if(i % 3 == 0)
puts("Fizz");
else if(i % 5 == 0)
puts("Buzz");
else
printf("%d\n", i);
i++;
}
return 0;
}



Java fizzbuzz
public static void main(String[] args){
for(int i= 1; i <= 100; i++){
if(i % 15 == 0){
System.out.println("FizzBuzz");
}else if(i % 3 == 0){
System.out.println("Fizz");
}else if(i % 5 == 0){
System.out.println("Buzz");
}else{
System.out.println(i);
}
}
}

Name: Anonymous 2017-07-02 3:50

>>24
Your examples aren't the same.

Name: Anonymous 2017-07-02 5:00

Algol syntax was used as pseudocode since the 60's and will not go away.
C is just a modern algol, a lingua franca for expressing algorithms.

Name: Anonymous 2017-07-02 13:10

>>26
C is actually a modern way of making shrunken heads, mind-crippling instead of mind-expanding. When you read the Algol Bulletin[1], you will understand the difference. The first thing on AB33.3.3 is about functional composition with closures. The idea came from mathematics, not from another programming language. Mental giants, with knowledge of Fortran, Algol, Cobol, RPG, IPL, Lisp, and mathematics, created languages like Simula 67, Algol 68, PL/I, and CPL.

The people who made them used their brains to create something new by synthesizing and improving ideas, instead of poorly copying from other languages. Modern languages took so many things from PL/I and Simula 67 that most of them wouldn't be Turing complete or even usable for writing programs if you removed them all. That includes Common Lisp too.

C mental midgets looked at Simula 67, Smalltalk, Eiffel, Scheme, and Mesa, and created Java 1.0. Brendan Eich was also influenced by Scheme and Self when making JavaScript. This is because syntax and control structures are important for making a good language. If you copy from C, you get crap.

From what I know about their work on strongly typed capability-based machines[2][3] and how C can't run on them, I think these people would prefer it if we were stuck using BASIC, which could run on that hardware. C can't be a ``modern Algol'' when it's not even what Algol people would consider good in 1960. It's incredibly dishonest to say that a group that was writing garbage collectors in 1970[4] would want us using C in 2017. It's like calling C a modern Haskell. In fact, one of the Algol people said that Haskell is the modern Algol[5]. If you mentioned Fortran, COBOL, BASIC or some other language, I would have posted examples from them too. They are different from Algol but not like C either. People like to call Java a ``new COBOL'' and that's just as offensive to the COBOL programmers and creators. I respect these languages and the people who made them because they are good and had an influence on languages I like, which have nothing to do with C at all.

[1] http://archive.computerhistory.org/resources/text/algol/algol_bulletin/
[2] http://www.tendra.org/Currie82-praise.pdf
[3] http://www.mca-ltd.com/martin/Ten15/introduction.html
[4] http://www.softwarepreservation.org/projects/ALGOL/paper/ALGOL_68-Implementation.pdf
[5] http://foswiki.cs.uu.nl/foswiki/pub/IFIP21/Rome/algol.pdf

Name: Anonymous 2017-07-02 13:11

>>27
I disagree.

Name: Anonymous 2017-07-03 4:43

Mental Giants somehow lost all their market share to two C hackers with portable assembler.
C clearly had superior qualities if we don't have Algol compilers shilled on every corner(but Cobol,Fortran,Ada,Lisp do). Algol lost badly to C, get over it.

Name: Anonymous 2017-07-03 6:27

>>27
what was so great about COBOL that you think allowed higher-level, mathematical thinking? the only real interesting ideas I see there are English-like syntax and decimal arithmetic. unfortunately, its readability made it the prime language for uneducated code monkeys and its slow evolution and inadequate control flow structures made it the prime language for generating spaghetti code.

Name: Anonymous 2017-07-03 6:31

>>29
They may be mental giants, but most C programmers are mental midgets.

Name: Anonymous 2017-07-03 8:55

>>31
As a "mental midget".
I prefer to not spend my mental resources on fighting compilers.
I don't want to think of zeptohistomorphisms inside monads, i don't want to construct and debug continuations. I want to write simple stuff right now and forget about it.
I don't write programs just for the sake of some theoretical purity, i want to get stuff done.
If i need to write thousands of lines of mind-numbingly simple C code, i'd choose it over cryptic one-liner function composition.
I don't like to think over every single letter and operator, just write down algorithms fast.
It seems to be less productive for higher-level languages, but writing text isn't the bottleneck in programming - the bottleneck is translating mental models to code.

Name: Anonymous 2017-07-03 9:00

>>32
..as example:APL programs are very terse but much slower to write down, verify and debug.

Name: Anonymous 2017-07-03 9:13

>>32
I want to write simple stuff right now and forget about it.
This is how spaghetti code is created

Name: Anonymous 2017-07-03 9:17

>>34
Spaghetti code is when you create complex code with indirect jumps.
I don't write such stuff, i write simple and easy to debug code.
When you have such code, its easy to transform/optimize it later.
When you write spaghetti code, you can't transform/optimize it, since its monolithic.

Name: Anonymous 2017-07-03 9:27

>>35
*That of course doesn't applies to the code that use macros.

Name: Anonymous 2017-07-03 10:15

>>32
i'd choose it over cryptic one-liner function composition.
It's not cryptic if you write it yourself.

Name: Anonymous 2017-07-03 10:34

>>37
The idea is you read code much more often than writing it.
Your clever hacks, macros and operator soup which requires finer understanding of their composition,
either slows down comprehension or looks totally incomprehensible after few weeks.
If you have to publish code, you have to keep it dumbed-down and easy to read.
APL is a prime example where code become write-only easily.

Name: Anonymous 2017-07-03 11:26

>>38
APL can easily fall into the 'too clever' camp because it focuses on terseness, but terseness is not the same as high-level abstractions. classic functional programming ideas like map/filter/reduce are all about using high-level abstractions like higher-order functions and yet they don't make code harder to understand. 'high-level abstractions' doesn't mean 'code golf'

Name: Anonymous 2017-07-03 11:50

>>39
its the same as if APL operators were written more verbosely.
It adds cognitive load and requires to decode interactions of tokens.
>classic functional programming ideas like map/filter/reduce
These are just limited versions of for loops, i have no problem with them.
I'm talking about Haskell:lazy eval, monads, and functions composed like
https://stackoverflow.com/questions/12659951/how-does-this-piece-of-obfuscated-haskell-code-work
fix$(<$>)<$>(:)<*>((<$>((:[{- thor's mother -}])<$>))(=<<)<$>(*)<$>(*2))$1

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List