Coder Social home page Coder Social logo

wolges's Introduction

Wolges

About

Wolges, a library of Andy Kurnia's experiments to understand how to better play the Orthogonal Morphemes Game of Words, also known as OMGWords.

Backronym idea: Weaving Out Letters Gathering Expected Scores.

It is named after Woogles.io, the best site to play the game on.

License

Copyright (C) 2020-2024 Andy Kurnia.
Released under the MIT license.

Bugs included.

Initial Setup

brew install rustup-init
rustup-init
(accept defaults)
(restart shell to activate .profile)

(cd src for convenience)
(put some word list .txt files and leaves.csv files in current directory)
#cargo run --release --bin buildlex -- english-klv leaves.csv leaves.klv
cargo run --release --bin buildlex -- english-klv2 leaves.csv leaves.klv2
cargo run --release --bin buildlex -- english-kwg CSW19.txt CSW19.kwg
cargo run --release --bin buildlex -- english-macondo CSW19.kwg CSW19 CSW19.dawg CSW19.gaddag
cargo run --release --bin buildlex -- english-kwg-alpha CSW19.txt CSW19.kad

Running

cargo run --release

Details

Details are not in this short readme.

GitHub Badge

  • Actions

wolges's People

Contributors

andy-k avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

laeuter

wolges's Issues

More build options would be appreciated

I like the speed of your dawg/gaddag builder very much and I would like to use it for my own formats, too. If you like them to be contributed, I'd certainly would like to do so.
My formats include

  • non-tree formats,
  • 2-byte arc formats,
  • nodes with headers,
  • letter lists external to the arcs,
  • letter masks to fast-check which letters are present in a node,
  • non-contiguous nodes (arcs are present at offsets according to letter),
  • another dawg type for fast-checking orthogonal words,
  • node order to improve cache usage further.

Some of the formats stem from my experiments with small dawgs sub-64kb wordlists (the wordlists are unpacked by JS code, and the format is described in the sources), others from my own fast Scrabble move finder (not really public).

Your code in src/build.rs isn't optimally suited for these use cases, but it would certainly be the correct home for my additions. If incorporatable, some changes would be necessary that would change the appearance of the code, and I wanted to ask, what amount is acceptable/appreciated.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.