Live data from Hacker News

Show HN: Noric-bot – A bot to stress-test text-based MUDs, written in Scala 3

github.com

61–70 of 72 posts

Re: Show HN: Noric-bot – A bot to stress-test text-based MUDs, written in Scala 3

#61
post #31

Earlier quoted context omitted.

I’m a professional Scala dev, what exactly do you mean? Structural sharing instead of copying? Implicits?

package mypackage import shapeless._ import anorm._ import mything.MyObject._ import com.seriouscompany.Foo object MyThing { val a = new A() } What does A refer to? Where does it come from? One of the 15 files in the anorm package? Does it come from one of the 40 files in the shapeless package? What about mything.MyObject and the dozen mixin traits that it has? Alright, let me clone the repo, startup my 4GB IDE, wait…

I have been writing Scala professionally for 6 years now. I must say this is a problem I have never seen anybody face or discuss anywhere whatsoever.

Re: Show HN: Noric-bot – A bot to stress-test text-based MUDs, written in Scala 3

#63
post #32

I was an admin (wiz) on various MUDs and MUSHs many, many years ago, and of course an avid user. The mix of programming, creativity, and camaraderie was sometimes very special. Maybe my recollections are clouded by nostalgia, but it sometimes felt like a hacker fantasy, coding, role-playing, and working together for good (fun). I wish I could recapture that feeling, I wish there were time for it, and I wish there wer…

> The mix of programming, creativity, and camaraderie was sometimes very special. Maybe my recollections are clouded by nostalgia, but it sometimes felt like a hacker fantasy, coding, role-playing, and working together for good (fun).

I agree! I got into MUDs when I was 13-14 and they introduced me to good programming practices early on with things like CVS, checking patches in a group, and running dev environments for testing with various playtest groups.

The dev cycle was great too, with to-do lists based on long-term goals and player input, with coders/admins breaking up tasks for planning to get things done.

It's really hard to overstate how important that was in instilling good practices and a feel of "this is how things should be" in me as a kid, and it's definitely carried over to my professional life now, some 20 years later. I even wrote about it in my college entrance essays (something my mother mocked me for), but it was such a good experience that I don't regret it at all.

I actually found a split-off branch of a MUD I used to frequent/code for and after logging in and asking about people I remembered for a while, someone started a global in-MUD game -- one that /I'D/ made over a decade ago. That was an incredibly gratifying experience, knowing that some of my oldest, most amateur code was still out there and people were still getting some fun out of it. :)

Edit: If anyone out there was on some Wheel of Time MUDs, I was on The Weave/The True Source and As The Wheel Weaves.

Re: Show HN: Noric-bot – A bot to stress-test text-based MUDs, written in Scala 3

#64
post #62

not quite related but ... any recommendation on a good open source mud? most of the projects I've tried have been very raw, or unmaintained. eg https://ranviermud.com/

Evennia. Actively developed, and lets you write in modern Python.

http://www.evennia.com/

Re: Show HN: Noric-bot – A bot to stress-test text-based MUDs, written in Scala 3

#66
post #40
post #16

Cool project, but why engage in language flame war on the project readme: > I think Scala is the best mainstream language with a sophisticated type system. Sophisticated type systems are money in the bank. Going from TypeScript to Scala is like going from JavaScript to TypeScript.

> Sophisticated type systems are money in the bank. You better have money in the bank to allow for all the refactoring you will be doing once you realize your data model needs to change in unforeseen ways ;)

[deleted]

Re: Show HN: Noric-bot – A bot to stress-test text-based MUDs, written in Scala 3

#67
The CoffeeMUD MUD engine is very feature-full and nice (IMHO). It is written in Java, and has a web interface for most activity. You can get more info here: http://www.coffeemud.org/ There is also a Discord server at https://discord.gg/HgDxtas...

Re: Show HN: Noric-bot – A bot to stress-test text-based MUDs, written in Scala 3

#68
post #30

Earlier quoted context omitted.

Not only that, accusing TypeScript of being "unsophisticated" is just dumb. Unsound, inconsistent, overly complicated, poorly abstracted, improper paradigms.....any of those would be a more legitimate criticism than "unsophisticated".

Until tsc compiles just fine even when you wrote a function that uses an undeclared variable.

Those are called globals.

Avoid them.

Re: Show HN: Noric-bot – A bot to stress-test text-based MUDs, written in Scala 3

#69

Earlier quoted context omitted.

Not only that, accusing TypeScript of being "unsophisticated" is just dumb. Unsound, inconsistent, overly complicated, poorly abstracted, improper paradigms.....any of those would be a more legitimate criticism than "unsophisticated".

I think the author was trying to point out that Scala has type system features, like Higher-kinded types, which (although very useful in practice IMHO) are non-existent in other mainstream languages, including TypeScript. I think that's a legitimate and, most importantly, factually correct point to make. If you're interested in what these "Higher-kinded types" are: https://typelevel.org/blog/2016/08/21/hkts-moving-fo…

That's true. Though since TypeScript 2.8, you can use "conditional types".

An HKT encoding using conditional types: https://github.com/pelotom/hkts

Re: Show HN: Noric-bot – A bot to stress-test text-based MUDs, written in Scala 3

#70
post #55

Earlier quoted context omitted.

JavaScript or TypeScript don't have the problem (except for globals, but those are usually few and far between). Python doesn't have this problem (unless you use wildcard imports, which is often recommend against [1]). Java does not have this problem, except for protected/internal classes which have only local use anyway (yes there are wildcard imports, but they are rather rare [2]). Go has this problem for files in…

> for things such as implicits whose whole purpose is to not be explicitly named. Now that's an interesting perspective on a language that seems too magic. A whole ecosystem of objects who must not be named!

Implicits allow for a kind of flexibility and power that is absent from pretty much every other language. Allowing functions to implicitly introspect their caller’s context is incredibly useful. The only languages that can even half way do this kind of things without crazy dynamic introspection/reflection are those that support dynamically scopped variables (such as Common Lisp). And even that isn’t as powerful.
Post reply on HN