Dungeons are coming along nicely. Walls are still fragile/not always generating. The flowers & cacti are meant to be processed out. Oh, doors, still the bane of my existence.
Dungeons are coming along nicely. Walls are still fragile/not always generating. The flowers & cacti are meant to be processed out. Oh, doors, still the bane of my existence.
@screwtape Scheme (50 years) had a similar breaking change version, R6RS, that handles Unicode and has some essential libraries built in. And then the recidivists rejected it and made a broken R7RS that doesn't do that stuff, and maybe in 5-10 years there'll be an R7RS-large that's halfway usable.
All these languages have problems with churn or lack thereof, both are bad.
#lisp #scheme
Good news, updated eloston-chromium works again.
All my Scheme unit tests pass, and nothing tried to launch xquartz. Only interesting in the 10.1.0 release notes
https://github.com/cisco/ChezScheme/releases/tag/v10.1.0
> 2.3. New machine types for iOS (10.1.0)
The a6ios, ta6ios, arm64ios and tarm64ios machine types correspond to an iOS compilation target. Native-code support for iOS is currently limited to applications attached to a debugger as the platform does not allow executable code to be loaded at runtime.
<
#scheme
PLAI: Programming Languages Application and Interpretation
https://www.plai.org
Mostly Racket, undergraduate-level computing. Probably gentler introduction to Scheme than straight into SICP.
#scheme
schemesh: A Unix shell and Lisp REPL, fused together
% java -cp classes.jar silk.Scheme
> (display (+ 2 3))
55
> (define (hello name) (display "Hello, ") (display name) (display "!\n"))
hello
> (hello "Mark")
Hello, Mark!n"!n"
>
Guix online social event - Thursday 27th - come along and chat about all things #linux, #foss, #nix and #scheme associated!
Yeah, that's this Thursday so we can just get our first #guix meet-up of the year into February! What can I say, it's been a busy year!
As usual details are here:
https://libreplanet.org/wiki/Group:Guix/PatchReviewSessions2024
And on the linked meetup page!
ALSØ also, you may note that I'm violating my "tabs not spaces" preference here, but that's for C, Java, Python, etc. I'd like to use tabs in Scheme but indentation runs out of control if you do that. I go back and forth and currently I'm on "spaces in Scheme".
The LISP religious fanatics (Erik Naggum rot in Hell (doesn't exist)) who threaten your life if you don't indent like they do are wrong, but something like that style is useful.
#lisp #scheme
@ksaj
% ls -l
-rw-r--r-- 1 mdh staff 1729 Feb 18 18:56 hello.class
-rw-r--r-- 1 mdh staff 272 Feb 18 18:56 hello.scm
% ls -l /usr/local/share/kawa/lib/kawa.jar
-rw-r--r-- 1 mdh admin 3332103 Feb 18 17:14 /usr/local/share/kawa/lib/kawa.jar
Plus whatever the JVM is these days. It should be possible to unzip kawa.jar, put my stuff in, and ship a single jar file. On Mac, you can just double-click jars and they run.
I'm gonna add it to my #Scheme module examples.
https://mdhughes.tech/scheme/
Compiling!
% cat hello.scm
;; hello.scm
;; -*- coding: utf-8 -*-
(module-name <hello>)
(module-compile-options main: #t)
(let* ( (args (command-line))
(name (cond
((<= (length args) 1) "World" )
(else (cadr args) )
))
)
(format #t "Hello, ~A!~%" name)
)
% kawa -C hello.scm
(compiling hello.scm to hello)
# the classpath is ugly:
% java -cp /usr/local/share/kawa/lib/kawa.jar:. hello
Mark
Hello, Mark!
\o/
Kawa reads [] brackets different than () which is super fucking annoying.
The code examples show javafx, but that no longer ships with anything, so. I have to adapt some AWT graphics to it.
Uuuuuuugh. I thought I'd get a current (2020) version of Kawa Scheme running.
https://www.gnu.org/software/kawa/Source-distribution.html
There's two compile errors in current Java. Fixed one by adding
import kawa.lang.Record;
The other by deleting Sequence<Char> from a file, because I know that generic types are stupid and do nothing.
make check mostly works, but then errors on some XML shit I can't care about.
Launcher script `kawa` errors, readlink doesn't take -f arg in MacOS.
% kawa
#|kawa:1|# (display (+ 2 3))
5
#scheme
@screwtape (a . (b . nil)) is just list (a b), but ((nil . (a . nil)) . (b . nil)) etc makes a tree, (value . leafs) style. But usually you'd do that with records instead, not as efficient but more readable.
I really only use dotted pairs for alists, so nil in non-terminal position is rare, even an on/off set could be coded with (foo . #f)
It is odd that I had not heard about this #Scheme implementation until very recently. I can find almost no reference to it anywhere on the scheme.org website or the r7rs.org website, although they advertise compliance with the R7RS standard.
I installed the “LispPad” app (the Mac OS front-end to Swift LispKit) and
That said, I have found the LispPad GUI prety difficult to use, mostly because when I use the REPL, pressing enter does not execute the input, it seem like you must use the mouse to press a little “execute” button instead. The GUI seems to be designed more for use on tablets than on PCs. And I haven’t figured out how to use it from the terminal yet either.
It seem like a pretty good implementation though, and I am wondering why I haven’t heard much talk about it anywhere?
@mdhughes It occurs to me that #NaughtyDog were a #commonLisp company who wrote a #gameDev #scheme dialect. Did you think about that viz #Arrokoth and its game-creation-language ? Was it already intended to be a scheme? Do you have a piece of history I'm missing about Crash Bandicoot schemes?
@dthompson Hi
I wanted to ask what plans #hoot has for the wasi API?
Do you think #hoot can be used for automation and building cross-platform applications?
Square brackets and curly braces in Common Lisp! :taneŝima_ĝojas:
(set-macro-character #\] (get-macro-character #\)))
(set-macro-character #\[
(lambda (stream char)
(declare (ignore char))
(read-delimited-list #\] stream t)))
CL-USER> [cadr '{(1 3) 2 3}]
1
This makes my heart happy. So happy. Thanks, Paul Graham.