@davesmith00000@mastodon.gamedev.place
@davesmith00000@mastodon.gamedev.place avatar

davesmith00000

@davesmith00000@mastodon.gamedev.place

Building a hobby 2D game engine in Scala, among other things...

This profile is from a federated server and may be incomplete. Browse more on the original instance.

vascorsd, to programming
@vascorsd@mastodon.social avatar

And am extremely confused with some of new syntax. So if I have a enum with a case X I can't simply add a method for a specific case by just doing

enum AST
case Str(v : String) {
def newMethodIWantHere...
}

Seems very weird. Probably doing something wrong again 🤔😮‍💨

davesmith00000,
@davesmith00000@mastodon.gamedev.place avatar

@vascorsd This had me stumped for a long time, too! Here is how I think you're supposed to do it:

enum AST:  
 case Str(v: String)  
 case Num(i: Int)

object AST:  
 object Str:  
 extension (s: Str)  
 def foo: String = "value: " + s.v

AST.Str("Hello").foo  
// AST.Num(0).foo // Does not compile  
realtegan, to random
@realtegan@wandering.shop avatar

For Americans looking at people posting in Celsius temperatures: don't try to convert, just remember this...

Zero is freezing,
Ten is not.
Twenty is warm and
Thirty is hot
(And forty is DAMNED hot)

davesmith00000,
@davesmith00000@mastodon.gamedev.place avatar

@realtegan Nice! Do you have one of those for Celsius users with no intuition for Fahrenheit? 😅

davesmith00000, to programming
@davesmith00000@mastodon.gamedev.place avatar

The UI work continues...

#scala #screenshotsaturday

davesmith00000,
@davesmith00000@mastodon.gamedev.place avatar

@vladimir_lu Indigo, it's a Scala.js game engine for functional programmers:

https://github.com/PurpleKingdomGames/indigo

davesmith00000, to random
@davesmith00000@mastodon.gamedev.place avatar

Indigo 0.17.0 released, with a host of improvements and fixes. 🕹️

https://github.com/PurpleKingdomGames/indigo/releases/tag/v0.17.0

davesmith00000, to random
@davesmith00000@mastodon.gamedev.place avatar

Progress! Window's now cascade their bounds to their content model, and if their content model is a component group then the new layout is configurably cascaded through the component tree. It's all rather crude, but should be useful nonetheless.

video/mp4

davesmith00000, to programming
@davesmith00000@mastodon.gamedev.place avatar

After a solid month or two of engine improvements, my little ASCII paint app looks like it did before! 💪
However, all the UI stuff now runs in a subsystem and all the layers are nested under one key, making the app logic far, far simpler. New Indigo release coming soon...

matadan, (edited ) to random
@matadan@mastodon.social avatar

There are some really great coders who don’t get and that’s OK but I wish they would not use that misunderstanding to just proclaim that it is useless. On the other hand we need to find a way to prove the usefulness without just saying that “you are holding it wrong”.

davesmith00000,
@davesmith00000@mastodon.gamedev.place avatar

@matadan I'm not disagreeing with you, truthfully, I just find the lack of nuance and empathy in the age old TDD debate frustrating.

TDD has great value in the right situation, as do other approaches.

davesmith00000, to programming
@davesmith00000@mastodon.gamedev.place avatar
davesmith00000, to programming
@davesmith00000@mastodon.gamedev.place avatar

Tyrian 0.10.0 released, featuring a new module that adds HTMX syntax support by @jponte!

https://github.com/PurpleKingdomGames/tyrian/releases/tag/v0.10.0

Server-side rendered Conway's Game of Life anybody?

#scala

video/mp4

davesmith00000, to programming
@davesmith00000@mastodon.gamedev.place avatar

Tyrian 0.9.0 is out! 💜

For all your #Scala elm-like frontend needs. 😄

Featuring a range of improvements, please see the release notes below for details.

https://github.com/PurpleKingdomGames/tyrian/releases/tag/v0.9.0

davesmith00000, to programming
@davesmith00000@mastodon.gamedev.place avatar

Ultraviolet 0.2.0 released

Our #Scala 3 to GLSL transpiler lib is up to date with Scala.js and has received a few minor improvements.

https://github.com/PurpleKingdomGames/ultraviolet/releases/tag/v0.2.0

davesmith00000, to programming
@davesmith00000@mastodon.gamedev.place avatar

The side project, of my side project, of my side project... is my... idle-hobby-pass-time?

#Scala

davesmith00000,
@davesmith00000@mastodon.gamedev.place avatar

There's a bug in here, that I have very carefully not demo'd.

video/mp4

davesmith00000,
@davesmith00000@mastodon.gamedev.place avatar

Let there be window content!

Slightly bizarre moment when I realised I could just embed the Elm arch inside the Elm arch to make all this work. So the window contents are miniature Indigo games.

(This is all #Scala 3 with @scala_js, btw.)

video/mp4

davesmith00000, to programming
@davesmith00000@mastodon.gamedev.place avatar

Saturday shader fun with shiny metaballs, written in #Scala.

video/mp4

davesmith00000,
@davesmith00000@mastodon.gamedev.place avatar

@capemo Hi! It's written using a game engine called Indigo in combination with this Scala 3 to GLSL lib:

https://github.com/PurpleKingdomGames/ultraviolet

davesmith00000, to programming
@davesmith00000@mastodon.gamedev.place avatar

Roguelike-Starterkit 0.3.0 released ⚔️

Rounding off our rash of releases is a tiny update to the Roguelike-starterkit, just keeping version parity with Indigo. 😀

https://github.com/PurpleKingdomGames/roguelike-starterkit/releases/tag/v0.3.0

#Scala #gamedev

video/mp4

davesmith00000, to programming
@davesmith00000@mastodon.gamedev.place avatar

Tyrian 0.8.0 Released!

Thanks to all who contributed! 💜

#Scala

https://github.com/PurpleKingdomGames/tyrian/releases/tag/v0.8.0

davesmith00000, to programming
@davesmith00000@mastodon.gamedev.place avatar

Indigo 0.15.0 Released 👾

This release overhauls Indigo's plugins. Provides a more consistent experience between Mill and sbt, and has out-of-the-box generators to help with a range of tasks. E.g. Automatically syncing assets and code.

#Scala #gamedev

https://github.com/PurpleKingdomGames/indigo/releases/tag/v0.15.0

davesmith00000, to programming
@davesmith00000@mastodon.gamedev.place avatar

Ultraviolet 0.1.3 released 🚀

Ultraviolet is our #Scala 3 to GLSL transpiler. It has many 'features', but as of this version there are no known bugs! (No doubt there are many unknown bugs lurking at the other end of the spectrum, just waiting to be found...)

https://github.com/PurpleKingdomGames/ultraviolet/releases/tag/v0.1.3

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • thenastyranch
  • rosin
  • GTA5RPClips
  • osvaldo12
  • love
  • Youngstown
  • slotface
  • khanakhh
  • everett
  • kavyap
  • mdbf
  • DreamBathrooms
  • ngwrru68w68
  • provamag3
  • magazineikmin
  • InstantRegret
  • normalnudes
  • tacticalgear
  • cubers
  • ethstaker
  • modclub
  • cisconetworking
  • Durango
  • anitta
  • Leos
  • tester
  • JUstTest
  • All magazines