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

Scheme and exceptions

Name: Anonymous 2011-05-30 10:29

R7RS will have EXCEPTIONS. Does it mean Scheme is ready for enterprise now?

Name: Anonymous 2011-06-28 0:39

>people think "statically typed" and "lexically scoped" are the same thing
>/wrists

Name: Anonymous 2011-06-28 1:03

>>78
ANLY PROGRAM IGNORES ERRORS
there's no spoon

Name: Anonymous 2011-06-28 1:29

>>81
>people
The ``in Lisp'' guy is not even a person.

Name: Anonymous 2011-06-28 1:55

>>83
I'm "in Lisp guy" and don't think, that "statically typed" and "lexically scoped" are the same thing.

For me, the word "static" associates with: conservativity, spongers from academia, type theory, OOP, inconvenience, top-down nightmare, traditional pseudoscience, complicated religion, design patterns, 1984, jewish mathematics, verbose ugliness, planned overengineering.

Name: Anonymous 2011-06-28 2:05

Is this big Scheme or little Scheme? Big Scheme was already setting up to be a shitty Common Lisp-1 so who cares. If it's little Scheme though I'll just stay with R5RS.

Name: Anonymous 2011-06-28 4:46

>>84
So ``in Lisp'' guy and Set Theory spammer are the same fucker

Name: Anonymous 2011-06-28 5:55

>>86
So slow.

Name: Anonymous 2011-06-28 8:55

>>86
Got any argument in defence of Set Theory?

Name: Anonymous 2011-06-28 9:59

>>87
Maybe he didn't visit /prog/ for a while, dickface.

Name: Anonymous 2011-06-28 10:47

>>89
he
Nice samefagging, cuntbag.

Name: Anonymous 2011-06-28 16:33

>>90
Nice being a cock sucking fagstorm, nigger.

Name: Anonymous 2011-06-28 17:39

>>85
Little Scheme is getting modules, parameters, (restartable) exceptions and records.

I don't care what big Scheme is going to be, but I like what little Scheme is becoming, especially if they drop SRFI-9 records.

I mean, we desperately need modules, we need records, parameters are nice to have standardized, and a nice interface for exceptions is better than error and ad-hoc, informally specified, bug-ridden, slow implementations of them on top of call/cc and dynamic/mutable state.

Name: Anonymous 2011-06-28 17:45

>>92
gay lisper

Name: Anonymous 2011-06-28 19:33

>>92
ad-hoc, informally specified, bug-ridden, slow
no
The important part of exceptions (not the try/catch bullshit but being able to return from a different function than the one you're currently in) is a very very basic use of call/cc. Dead fucking simple.

they are adding exceptions because people can't grasp call/cc. It's the only explanation.

Name: Anonymous 2011-06-28 21:01

>>94
is a very very basic use of call/cc.
call/cc, in absence of mutable/dynamic state, can't express exceptions. Delimited continuations can easily express both restartable and non-restartable exceptions, even in absence of state. You don't understand exceptions, continuations and how they relate, call/cc is not synonym of ``continuations''.

The important part of exceptions are not only the non-local exits, but being able to raise a value and handle it elsewhere with a dynamically bound exception handler. R7RS will have restartable exceptions.

Even if they were a ``very very basic use of call/cc'', in many systems capturing the continuation is slow, while implementing exceptions may be done much more efficiently.

Name: Anonymous 2011-06-29 2:38

>>95
but being able to raise a value and handle it elsewhere with a dynamically bound exception handler.

I'm honestly OK with that value just being a string or some error code or something. when I write in languages without exceptions, the thing I miss is not having to "thread up" the error, not the handling code. Most of the time the error handling isn't much more than printing it somewhere. Who actually puts a large amount of code in catch blocks? I'll just write an (unless ) or something checking for error.

I never said call/cc was a synonym of continuations. I've implemented call/cc (and continuations) for DSLs in C a couple of times. I've worked extensively in Java and C++. I've used setjmp to get something like exceptions in C. I get this shit. I just don't find exceptions as they are presented in C++ and Java to be useful. I actually prefer coroutines to exceptions (as far as things you can implement with continuations goes.) Deal with it.

Name: Anonymous 2011-06-29 2:39

the point of Scheme is to be minimal, not practical. Leave things like this to implementers.

Name: Anonymous 2011-06-29 3:27

>>96
I'm honestly OK with that value just being a string or some error code or something.
R7RS doesn't define any exception hierarchy, just the API. You can raise anything, but you probably want to define some ``exception?'' datatype.

Who actually puts a large amount of code in catch blocks?
Java does an extraordinarily bad job at dealing with exceptions, forcing you to write bogus try/catch statements. C++ exceptions are just bad.
Exceptions are meant to be used in exceptional (hence the name) cases (i.e. when a TCP connection fails) and to be handled in even more exceptional cases. (i.e. retrying to connect (restartable exception))

Threading some error value by hand is also unSchemey, leave C to C programmers.
I actually prefer coroutines to exceptions
They are two orthogonal concepts.

>>97
the point of Scheme is to be minimal, not practical. Leave things like this to implementers.
R7RS is trying hard to be minimal and useful: it's 67 pages long now and it's not going to get much bigger. It's the spiritual successor of R5RS, and I was/am strongly against R6RS, except when I wasn't. (syntax-case, exceptions, better records)

Name: Anonymous 2011-06-29 3:47

<-- fucking dubz, check the fuck out of them

Name: Anonymous 2011-06-29 3:52

>>99
nice but chek mine

Name: Anonymous 2011-06-29 4:09

101 get.

Name: Anonymous 2011-06-29 13:12

>>98
They are two orthogonal concepts.
I get that, it just seems to me that if
cond : (when,if) as call/cc : (exceptions,coroutines)
I'd rather coroutines were built-in than exceptions, because I more often reinvent them poorly.

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