Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Locked thread
poemdexter
Feb 18, 2005

Hooray Indie Games!

College Slice
teach groovy instead of java. much more forgiving and easy to dive into and you can always let java things creep in later and let it compile and run all the same.

Adbot
ADBOT LOVES YOU

NihilCredo
Jun 6, 2011

iram omni possibili modo preme:
plus una illa te diffamabit, quam multæ virtutes commendabunt

St Evan Echoes posted:

just use c# interactive for your first few lessons and then progress to writing c# classes and use c# until you die

does anybody use c# interactive? f# folks have been running scripts and encouraging people to make heavy use of the repl since the dawn of time, but when c# got scripts and a repl of its own i got the distinct impression that the millions of c# users collectively failed to give a single poo poo


is it just a case of "b-b-b-ut how do you expect me to properly do Single Responsibility Test-Driven Allman-Braced Agile Injection of Control in a script?!"

NihilCredo fucked around with this message at 20:51 on May 8, 2017

Shaggar
Apr 26, 2006
repls aren't useful for real development.

Bloody
Mar 3, 2013

NihilCredo posted:

does anybody use c# interactive? f# folks have been running scripts and encouraging people to make heavy use of the repl since the dawn of time, but when c# got scripts and a repl of its own i got the distinct impression that the millions of c# users collectively failed to give a single poo poo

i know one person who uses the c# repl and i dont know why

NihilCredo
Jun 6, 2011

iram omni possibili modo preme:
plus una illa te diffamabit, quam multæ virtutes commendabunt

Shaggar posted:

repls aren't useful for real development.

they're not. they're very useful for everything that comes before and after.

Luigi Thirty
Apr 30, 2006

Emergency confection port.

My GS runs out of memory trying to run the C compiler, linker, and editor at once

apparently I need one of those 4MB RAM expansion cards now

Or I could just write assembly forever

fritz
Jul 26, 2003

my first "actually taught in a programming course" language was logo, and im not gonna fight about it or anything but for kids you could do a lot worse

Bloody
Mar 3, 2013

"first language" doesnt matter imvho. my "first" language was either clisp, logo, qbasic, lego mindstorms graphical programming blocks thing, starcraft custom maps scripting language, or java. starcraft customs map scripting language was probably the most successful in terms interest garnered and desire to learn more generated but each language played its own significant role in turning me into a computer toucher

CRIP EATIN BREAD
Jun 24, 2002

Hey stop worrying bout my acting bitch, and worry about your WACK ass music. In the mean time... Eat a hot bowl of Dicks! Ice T



Soiled Meat

JawnV6 posted:

*hand-on-chest staggering backwards* j..just giving them pre-doped silicon??


but how do you expect them to learn?!??

Bloody
Mar 3, 2013

JawnV6 posted:

*hand-on-chest staggering backwards* j..just giving them pre-doped silicon??


but how do you expect them to learn?!??

i keep reading this as "shaggaring backwards"

HoboMan
Nov 4, 2010

Bloody posted:

i keep reading this as "shaggaring backwards"

:yossame:

Soricidus
Oct 21, 2010
freedom-hating statist shill

Shaggar posted:

repls aren't useful for real development.

idk. they don't seem to be useful for actual development in the way repl evangelists claim but I occasionally use jython or beanshell to figure out how to use some poorly documented java library by trial and error, and it's useful enough that I'm looking forward to getting a real java repl in jdk9

Condiv
May 7, 2008

Sorry to undo the effort of paying a domestic abuser $10 to own this poster, but I am going to lose my dang mind if I keep seeing multiple posters who appear to be Baloogan.

With love,
a mod


friends don't let friends use dynamic languages

logo was my first language and i still wouldn't recommend it over java. basic almost made me never program again

also, am i crazy, or is there no good reason to allow cycles in a dependency system. a bunch of what i'm assuming are node.jsers are saying java 9's jigsaw needs cyclic dependencies or else library A, which library B depends on, can't depend on library B for one function and that'd be a travesty

Doom Mathematic
Sep 2, 2008

poemdexter posted:

teach groovy instead of java. much more forgiving and easy to dive into and you can always let java things creep in later and let it compile and run all the same.

code:
take coffee with sugar, milk and liquor

Soricidus
Oct 21, 2010
freedom-hating statist shill

Condiv posted:

also, am i crazy, or is there no good reason to allow cycles in a dependency system. a bunch of what i'm assuming are node.jsers are saying java 9's jigsaw needs cyclic dependencies or else library A, which library B depends on, can't depend on library B for one function and that'd be a travesty

you are not crazy. if module a and module b appear to depend on each other then either:

  • they are not in fact logically separate, and belong in a single module; or
  • there exists in one of them a self-contained module c that should be extracted for both module a and module b to depend on

there is no third option

Maluco Marinero
Jan 18, 2001

Damn that's a
fine elephant.

Doom Mathematic posted:

code:

take coffee with sugar, milk and liquor

optional parens are an abomination in the eyes of god.

Doom Mathematic
Sep 2, 2008

Soricidus posted:

you are not crazy. if module a and module b appear to depend on each other then either:

  • they are not in fact logically separate, and belong in a single module; or
  • there exists in one of them a self-contained module c that should be extracted for both module a and module b to depend on

there is no third option

I agree entirely, but now manage this constraint in an environment where anybody can create a module depending on any other module.

Luigi Thirty
Apr 30, 2006

Emergency confection port.

I found a snackoverflow page asking about writing a 68K operating system for learning about OS theory and someone suggested making a homemade Amiga boot ROM since all the hardware is documented and WinUAE exists

Sapozhnik
Jan 2, 2005

Nap Ghost
I use the python repl as a desktop calculator

I feel like i should be using dc instead but ehhh

Arcsech
Aug 5, 2008
this node service which is extremely tightly coupled with mongodb and heavily reliant on mongoose is having performance problems

again

gently caress mEeEeE

Bloody
Mar 3, 2013

Sapozhnik posted:

I use the python repl as a desktop calculator

I feel like i should be using dc instead but ehhh

same but matlab

Xarn
Jun 26, 2015

JawnV6 posted:

my first college programming assignment was w/ Karel the Robot, a C framework that spun up a little GUI with a robot that walked around and put down tiles on a grid

it was just 1 assignment, went to real C w/ printf the next week, but i still think that had the spark of "usable" and to this day i don't understand coursework that starts with diving into linker options

Sup buddy, Karel was awesome.

carry on then posted:

surprise surprise, most practicing programmers look back fondly on their first language and will die on any hill to defend it as the one true choice of teaching languages

My first languages (not counting Karel) were Java and C in parallel... I think neither should be used to start teaching people.

Python on the other hand is p. okay :devil: (full disclosure, I recently worked with Python on non-trivial projects for half a year and wanted to kill myself by the end)


In general I think that introduction to programming shouldn't teach people job skill (which seems to be the reason my university teaches Java in intro to programming class :shrug:) but to make people think programatically and be able to, at least roughly, split their problem into subproblems, that are easier to solve in separation. This means that the most valuable property of language is unobtrusive and intuitive syntax.

Luigi Thirty
Apr 30, 2006

Emergency confection port.

I use Python as a desk calculator and unit converter :shrug:

Soricidus
Oct 21, 2010
freedom-hating statist shill

Doom Mathematic posted:

I agree entirely, but now manage this constraint in an environment where anybody can create a module depending on any other module.

that isn't the environment we're talking about though. jigsaw doesn't let anyone create a module depending on any other module - it rejects modules whose dependency graphs contain a cycle.

Arcsech
Aug 5, 2008

Arcsech posted:

this node service which is extremely tightly coupled with mongodb and heavily reliant on mongoose is having performance problems

again

gently caress mEeEeE

i got 99 problems and loving mongoose is all of them

Bloody
Mar 3, 2013

matlab is probably the best choice for an intro to programming course at the high school or college level. its broadly applicable to domains other than just computer science, they're likely to encounter it later, its quick to do interesting results-oriented things with, the syntax is pretty lightweight

Sapozhnik
Jan 2, 2005

Nap Ghost
Jigsaw is probably going to take two years or so to be fully assimilated by the java community but once maven works great in tandem with it it's gonna own

hifi
Jul 25, 2012

My point was that throwing people to the wild in programming is bad regardless of the langauge. Try explaining __exec__ in python in a high school class

Bloody
Mar 3, 2013

tbf its simplest in embedded. you put your first instruction at 0x0200 because the reset value of the program counter is 0x0200

why is it 0x0200? well, it had to be something, so it's that

Doom Mathematic
Sep 2, 2008

Soricidus posted:

that isn't the environment we're talking about though. jigsaw doesn't let anyone create a module depending on any other module - it rejects modules whose dependency graphs contain a cycle.

If your module A needs to use B, but for some reason B depends on C depends on D depends on E depends on A already, how do you use B? Assume that the maintainers of B, C, D and E are uncooperative.

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?

Bloody posted:

i suppose i could also just do it in haskell but feh

but you've already done the Haskell

by the way here's a 6502 in Haskell that generates hardware with Clash

Bloody
Mar 3, 2013

eschaton posted:

but you've already done the Haskell

by the way here's a 6502 in Haskell that generates hardware with Clash

quote:

rather something to wet the appetite of the roughly 12 people or so interested in both functional languages and FPGA's.

it me

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?

Shaggar posted:

repls aren't useful for real development.

this but the opposite

either you're going to use a real REPL or you're going to use your debugger as a limited REPL

obligatory video showing the best REPL ever created

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?

Luigi Thirty posted:

My GS runs out of memory trying to run the C compiler, linker, and editor at once

apparently I need one of those 4MB RAM expansion cards now

Or I could just write assembly forever

they make 8M cards get one of those

Illusive Fuck Man
Jul 5, 2004
RIP John McCain feel better xoxo 💋 🙏
Taco Defender

Doom Mathematic posted:

If your module A needs to use B, but for some reason B depends on C depends on D depends on E depends on A already, how do you use B? Assume that the maintainers of B, C, D and E are uncooperative.

if your module is that deep in people's dependency graph for valid reasons you shouldn't be adding new nontrivial dependencies

Or, the new functionality that depends on B should be a new module separate from A

Illusive Fuck Man fucked around with this message at 00:50 on May 9, 2017

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?

this was the biggest endorsement to me:

quote:

The one thing that never failed to work, was that when Clash generated hardware, it always behaved the same as the Haskell implementation. Initially I would generate and verify on the FPGA all the time, but since it always just worked I'd do it less and less frequently, relying on testing on the Haskell implementation.

if it could generate, what generated would both synthesize and act the same

Luigi Thirty
Apr 30, 2006

Emergency confection port.

eschaton posted:

they make 8M cards get one of those

I'm on a budget here those are 100 dollars

I ordered a 4M one for 50 dollars

spiritual bypass
Feb 19, 2008

Grimey Drawer
tdd and repls have a lot of overlap in their usefulness imo, both as reminders not to write big globs of code
code that's testable or usable in a repl is always better quality than code that isn't

jony neuemonic
Nov 13, 2009

NihilCredo posted:

does anybody use c# interactive?

i do all the time, but i seem to be in the minority. it's super useful for all the stuff repls have always been good at (quickly validating assumptions, exploring apis, whatever).

also i think go would be a good teaching language for all the same reasons it's kind of annoying in real life. it's simple to a fault.

Adbot
ADBOT LOVES YOU

Phobeste
Apr 9, 2006

never, like, count out Touchdown Tom, man

Bloody posted:

matlab is probably the best choice for an intro to programming course at the high school or college level. its broadly applicable to domains other than just computer science, they're likely to encounter it later, its quick to do interesting results-oriented things with, the syntax is pretty lightweight

i'm reporting you to the hague

  • Locked thread