Pike
sTeam
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Pike
-
-❄️- 2023 Day 4 Solutions -❄️-
[LANGUAGE: Pike] (see https://pike.lysator.liu.se/)
- Pike programming language: Interpreted, GC, OOP, with C style syntax
-
Dala and Vale are memory-safe. Vala and Dale are not.
I'd rather honour him.
-
The C Interpreter: A Tutorial for Cin
I'm sure I remember Pike starting off as a literal C interpreter, but somewhere along the line decided to become it's own 'C-like' language.
https://pike.lysator.liu.se
Wikipedia seems to imply that it was separated out from LPmud's built-in 'C interpreter' which sounds about right.
-
MUD in Pike
In any other case, I dunno. I just like it cos it's basically LPC being used outside a MUD. Check out the site though, and maybe play with it too. pike.lysator.liu.se
- What is the most niche programming language that is still written?
-
Hacker News top posts: May 21, 2022
Pike Programming Language\ (45 comments)
-
Pike Programming Language
https://github.com/pikelang/Pike/blob/master/src/modules/Ino...
I guess it is more of packaging issue of using pike in that manner, perhaps this is something for the pikers to explore. Could be a great way to revitalize the language, the world could need a embedded strictly typed C like dynamic language.
sTeam
-
Pike Programming Language
the key value for me is that i can replace compiled code at runtime. this allows to build large long running systems that can be changed without needing to restart. this is a feature that comes out of LPC which was designed for online games where it was necessary to add new content and fix bugs while the game was running since the developers of the game were the advanced players themselves.
roxen uses that to allow reloading modules. the way it works there is that any currently active instances keep running with the old version, but new instances get the new version. since modules are freshly instantiated for each http request this works very well.
there is also open-sTeam which went a step further to use proxy objects, that is, any sTeam object is a proxy to the actual pike object, so my code will only reference sTeam objects which allows the pike objects in the background to be replaced without my code needing to update the object reference because the proxy handles that behind the scenes.
open-sTeam is not actively developed anymore by its original developers, but there is a copy of it here: https://gitlab.com/societyserver/sTeam and i still maintain and use it for myself. (i have added a half-assed REST API so i can do modern web development with it. (realss.com is an example of that. i can connect to sTeam using vi to update the text content and custom code (which is stored inside sTeam as source too))
besides in pike and LPC i have only seen the ability to update code at runtime in smalltalk and lisp. i am not aware of any other language offering something like that.
What are some alternatives?
gopl.io - Example programs from "The Go Programming Language"
Wren - The Wren Programming Language. Wren is a small, fast, class-based concurrent scripting language.
rustdesk - An open-source remote desktop, and alternative to TeamViewer.
tech-coops - A list of tech coops and resources concerning tech coops and worker owned cooperatives in general.
advent-of-code-2023 - My solutions for Advent of Code 2023, written in C#.
advent-of-code - :santa: :christmas_tree: :snowman: http://adventofcode.com/ solutions
advent-of-code-2023 - First time tackling the advent of code challenge. Lets go!