Live data from Hacker News

Practical Scheme

practical-scheme.net

21–30 of 58 posts

Re: Practical Scheme

#21

Where's the "practical" one that site really reflected? I liked scheme as a learning tool and got highest grades. That doesn't change my impression that most of the sites covering it are mental masturbation. Puzzles, or programs for the sake of scheme itself. Where's the stuff to solve real world problems? (OK, mostly solved by other languages anyway... Still: where is the content that really wants a junior to try it…

It is hard to find people that can support it in production.

But for building makets of production systems to see where they are likely to fall over I've never found a better language.

The fact that you have to build everything from scratch is a plus when dealing with the eldrich horrors that lurk in business logic - you think you can use a standard queue? Hahaha let me tell you about a 6pm spike in latency that no one could explain and was driving the cellular network of a tier two city towards failure.

Re: Practical Scheme

#22

Where's the "practical" one that site really reflected? I liked scheme as a learning tool and got highest grades. That doesn't change my impression that most of the sites covering it are mental masturbation. Puzzles, or programs for the sake of scheme itself. Where's the stuff to solve real world problems? (OK, mostly solved by other languages anyway... Still: where is the content that really wants a junior to try it…

Due to the R-series of standards there are actually quite a lot of libraries you can use.

I'm not sure what you mean by "real world problems" but I think most would consider Cisco router firmware to be in that domain. In some sense, due to Cisco the Internet runs on two Lisp-like programming languages: Erlang and Chez.

If you look at TFA you'll find that it links over to a few articles that describe inventing a Scheme to solve things like high paced computer graphics production and large scale inventories.

Re: Practical Scheme

#23

Earlier quoted context omitted.

What you consider practical enough? The page links to a wiki software, a chat server, and a text preprocessor. Not popular sure but all are useful, practical programs you can use.

When did people start saying “a software”.

I knew a software developer a long time ago.

Re: Practical Scheme

#24
post #21

Where's the "practical" one that site really reflected? I liked scheme as a learning tool and got highest grades. That doesn't change my impression that most of the sites covering it are mental masturbation. Puzzles, or programs for the sake of scheme itself. Where's the stuff to solve real world problems? (OK, mostly solved by other languages anyway... Still: where is the content that really wants a junior to try it…

It is hard to find people that can support it in production. But for building makets of production systems to see where they are likely to fall over I've never found a better language. The fact that you have to build everything from scratch is a plus when dealing with the eldrich horrors that lurk in business logic - you think you can use a standard queue? Hahaha let me tell you about a 6pm spike in latency that no o…

The English term for "makets" is "models".

Re: Practical Scheme

#25

What scheme do I used if I want to compile to a standalone executable on both Linux and windows? (That’s not Racket)

I've found Chicken reasonably good at compiling to a standalone executable on Linux. Because of how it works I imagine you can get it to work with msys too.

Re: Practical Scheme

#26
post #4

What scheme do I used if I want to compile to a standalone executable on both Linux and windows? (That’s not Racket)

https://github.com/cisco/ChezScheme

I have not been able to get usable executables out of Chez, even on Linux, although it's nice and fast when used the normal way.

Re: Practical Scheme

#27
post #24
post #21

Earlier quoted context omitted.

It is hard to find people that can support it in production. But for building makets of production systems to see where they are likely to fall over I've never found a better language. The fact that you have to build everything from scratch is a plus when dealing with the eldrich horrors that lurk in business logic - you think you can use a standard queue? Hahaha let me tell you about a 6pm spike in latency that no o…

The English term for "makets" is "models".

Model is so overused in software and computer science that it has a dozen meanings that would come to mind before the meaning of maket does. By comparison maket is a word with an obvious and single meaning you can find in most dictionaries, or a Google search.

I should probably spell it maquette since a plethora of useless letters is the sine qua non of intellectual sophistication.

Re: Practical Scheme

#28

What scheme do I used if I want to compile to a standalone executable on both Linux and windows? (That’s not Racket)

I've always liked bigloo. It's probably the most pragmatic of the schemes in my opinion. It never gets the attention that chicken and gambit get, though, and I've always wondered why.

Re: Practical Scheme

#29

Earlier quoted context omitted.

What you consider practical enough? The page links to a wiki software, a chat server, and a text preprocessor. Not popular sure but all are useful, practical programs you can use.

When did people start saying “a software”.

[dead]

Re: Practical Scheme

#30
post #15

Earlier quoted context omitted.

Others have already pointed out several good options. Let me add one more: Gambit Scheme https://gambitscheme.org/

I might try this next, will check out and try to build it tomorrow Shame that there’s no way to run ./configure on native windows though, I’ll have to use MSYS2

Imho maintainers should just keep a set of pre-made header-files for a Windows compiler, a huge portion the work configure does is because we historically had:

- Bad compilers (that lacked stdlib features)

- Lacked package managers (so we need to detect versions instead of just specifying used libraries for the program)

- The mess of various nix/linux distros having differing paths (/bin or /local/bin or /usr/local/bin or whatever?) and nix binaries lacked a standardized way to just locate "themselves"

In contrast, Windows programs mostly just make an API call to detect where they live and then just load files from relative paths, this also allows for side-by-side installations of varying versions instead of multiple builds (Yes, some programs sadly needed installers but that's just bad engineering, whilst many programs have portable variants).

Considering Mac programs also are self contained I guess those also have some sane API's for program self-location.

Yes, I do realize that much of the centralization of programs harkens back to Unix multi-user paradigms with centralized management but personal computers has been the norm for some almost 40 years at this point (Even if we've moved to web mainframes instead).

Post reply on HN