moor
moor copied to clipboard
A rewrite of the classic LambdaMOO server; but in Rust and on a modern tech stack
initially suspended state without spawning a worker thread, until the queue has space\. Spawn the task's thread\. https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/kernel/src/tasks/scheduler.rs#L1365 ```rust .world_state_source() .expect("Unable to instantiate database"); // TODO: support a queue-size on...
Will have to verify that it's enough that \.player on task control can be considered "owner" of the task, or there needs to be some more elaborate consideration here? https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/kernel/src/tasks/scheduler.rs#L1174...
we might be able to use a vector of delay\-futures for this instead, and just poll those using some futures\_util magic\. https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/kernel/src/tasks/scheduler.rs#L511 ```rust // Look for tasks that need to...
https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/kernel/src/tasks/command_parse.rs#L165 ```rust ] .contains(&verb.as_str()) { // TODO: Handle built-in commands like .program, .flush, etc. return Err(ParseCommandError::UnimplementedBuiltInCommand); } // Split into verb and argument string ```
https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/kernel/src/builtins/bf_verbs.rs#L645 ```rust disassembly.push(v_string(format!("{: >3}: {}", i, v))); } // TODO: dump fork vectors in program disassembly stream // Display main vector (program); opcodes are indexed by their offset disassembly.push(v_str("OPCODES:")); ```
https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/kernel/src/builtins/bf_verbs.rs#L370 ```rust return Err(E_TYPE); } // TODO: bf_verbs: fully-paren and indent options. For now we ignore these. // Retrieve the binary for the verb. let verb_info = bf_args ```
this function is hardcoded to just return \{\{\#0, 7777, 1\}\} this is on account that existing cores expect this to be the case but we have no intend of supporting...
This is a placeholder for now, should be set by the server on startup\. But right now there isn't a good place to stash this other than WorldState\. I intend...
right now we panic on unimplemented builtins, but we should just return an error and log, this was done this way to support discovering which builtins are unimplemented, but that's...
https://github.com/rdaum/moor/blob/47435a1442a1f5532c23944029e90982baa99bff/crates/kernel/src/builtins/bf_list_sets.rs#L304 ```rust false }; // TODO: Regex pattern cache? let Some((overall, match_vec)) = perform_regex_match(pattern.as_str(), subject.as_str(), case_matters, reverse)? else { ```