Skip to content

Commit 210b891

Browse files
authored
N18: Add gamelisp, dcli, shader-playground, chess (#492)
1 parent 14b1c5b commit 210b891

File tree

5 files changed

+99
-0
lines changed

5 files changed

+99
-0
lines changed
346 KB
Loading
66.3 KB
Loading
900 Bytes
Loading

content/posts/newsletter-018/index.md

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -775,6 +775,105 @@ Revitalized from the holiday break, the Mun core team got cracking; those
775775
[Mun]: https://mun-lang.org
776776
[mun-january]: https://mun-lang.org/blog/2021/02/05/this-month-january
777777

778+
### [GameLisp][gamelisp] v0.2
779+
780+
![logo](glisp-logo.png)
781+
782+
[GameLisp][gamelisp] ([source code][gamelisp-src],
783+
[playground][gamelisp-playground]) by [@fleabitdev]
784+
is a scripting language designed specifically for Rust game development.
785+
786+
This month, version 0.2.0 has been released. Some of the updates:
787+
788+
- Any `'static` Rust type, including types defined by external crates,
789+
can now be moved onto the garbage-collected heap and manipulated
790+
by GameLisp scripts.
791+
- Rust data on the garbage-collected heap can now contain pointers to other
792+
garbage-collected data, by implementing a `trace()` method.
793+
- Version 0.1 could only bind non-capturing Rust closures, but closures
794+
which capture `'static` data are now fully supported.
795+
- Rust function pointers can now be passed directly to GameLisp,
796+
rather than using the `rfn!` macro.
797+
The clunky `lib!` and `rdata!` macros have also been removed.
798+
- Updated documentation starting from the ["Rust Bindings"][gamelisp-doc-bindings]
799+
chapter.
800+
801+
For full details, see the [changelog][gamelisp-changelog].
802+
803+
_Discussions:
804+
[/r/rust](https://reddit.com/r/rust/comments/kp77vw/version_02_of_gamelisp)_
805+
806+
[gamelisp]: https://gamelisp.rs
807+
[gamelisp-src]: https://github.com/fleabitdev/glsp
808+
[gamelisp-playground]: https://gamelisp.rs/playground
809+
[gamelisp-changelog]: https://github.com/fleabitdev/glsp/blob/master/CHANGELOG.md
810+
[@fleabitdev]: https://twitter.com/fleabitdev
811+
[gamelisp-doc-bindings]: <https://gamelisp.rs/reference/rust-bindings.html>
812+
813+
### [chess-engine]
814+
815+
![cli + web version](chess.png)
816+
_Console and web clients for the chess-engine_
817+
818+
[chess-engine] by [@adam-mcdaniel] is a pure Rust, no-std, dependency-free
819+
chess engine built to run anywhere.
820+
821+
> I love chess a lot. It's definitely one of my favorite games ever.
822+
> However, I've always been disappointed when trying to write programs
823+
> that play chess digitally (particularly in a compiled language).
824+
> Although several amazing engines exist, it's near impossible to find
825+
> a neat library for chess-related-programming that runs on everything.
826+
>
827+
> [chess-engine] is a solution to my problem.
828+
> If you want a chess engine that runs on embedded devices, the terminal,
829+
> [the desktop (with a gui)][chess-gui], and [the web][chess-web],
830+
> this is probably your best bet.
831+
832+
_Discussions:
833+
[/r/rust](https://reddit.com/r/rust/comments/l65e86/a_nostd_chess_engine)_
834+
835+
[@adam-mcdaniel]: https://github.com/adam-mcdaniel
836+
[chess-engine]: https://github.com/adam-mcdaniel/chess-engine
837+
[chess-gui]: https://github.com/adam-mcdaniel/chess-engine/tree/main/examples/chess-gui
838+
[chess-web]: https://adam-mcdaniel.github.io/chess-engine/docs/book/index.html#average-ai
839+
840+
### [dcli]
841+
842+
![plaintext tables](dcliah.png)
843+
_Example of dcliah output_
844+
845+
[dcli] by [Mike Chambers][@mikechambers] is a library and a collection
846+
of utilities&apps that provide a command line interface (CLI) for viewing
847+
player stats and data from Destiny 2, using the [Destiny 2 API][destiny-api]:
848+
849+
- dclis - retrieves primary platform and membership ids for Destiny 2 players.
850+
- dclim - manages and syncs the remote Destiny 2 API manifest database.
851+
- dclias - downloads and syncs Destiny 2 Crucible activity history
852+
into a local sqlite3 database file.
853+
- dclic - retrieves character ids for the specified member.
854+
- dclims - searches the Destiny 2 manifest by hash ids (from API calls).
855+
- dclitime - generates date / time stamps for Destiny 2 weekly event moments.
856+
- dclia - displays information on player's current activity within Destiny 2.
857+
- dcliah - displays Destiny 2 activity history and stats.
858+
- dcliad - displays Destiny 2 Crucible activity / match details.
859+
860+
[dcli]: https://github.com/mikechambers/dcli
861+
[@mikechambers]: www.mikechambers.com
862+
[destiny-api]: https://github.com/Bungie-net/api
863+
864+
### Rust Support in [Shader Playground][shader-playground]
865+
866+
![source code in rust, compiler options, and spircv-coross output](shaderplay.jpeg)
867+
868+
[Shader Playground][shader-playground] ([source code][shader-playground-src])
869+
by [@tgjones] now allows you to try out writing shaders in Rust
870+
(using [rust-gpu]) without downloading or building anything.
871+
872+
[@tgjones]: https://github.com/tgjones
873+
[shader-playground]: http://shader-playground.timjones.io
874+
[shader-playground-src]: https://github.com/tgjones/shader-playground
875+
[rust-gpu]: https://github.com/EmbarkStudios/rust-gpu
876+
778877
### [Dimforge][dimforge]
779878

780879
[![Dimforge](dimforge.png)][dimforge]
214 KB
Loading

0 commit comments

Comments
 (0)