GithubHelp home page GithubHelp logo

adapton-lab.rust's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

adapton-lab.rust's Issues

Dynamic type errors in "eager" mergesort labs

The "eager" versions of mergesort in the lab catalog have dynamic type errors. Just discovered this, after adding dynamic type checking to Adapton engine recently.

Running lab: list-eager-mergesort1
thread '<unnamed>' panicked at 'Adapton engine: Detected a dynamic type error, possibly due to an ambiguous name:
	              at location: Loc { path:[,String("compute"),String("tree_of_list2")], id:ForkR(ForkR(ForkR(ForkL(Usize(8))))) }
	 location has result type: TypeId { t: 5100241585221884983 }
	but context expected type: TypeId { t: 12579407317080590652 }', /Users/hammer/.cargo/git/checkouts/adapton.rust-b16351c49ab23a81/d27287b/src/engine.rs:831
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
stack backtrace:
   0: adapton::engine::assert_graphnode_res_type
   1: adapton::engine::res_node_of_loc
   2: <adapton::engine::DCG as adapton::engine::Adapton>::cell
   3: adapton::engine::cell::{{closure}}
   4: <std::thread::local::LocalKey<T>>::with
   5: adapton::engine::cell
   6: adapton::collections::tree_of_list_rec::{{closure}}
   7: <adapton::collections::List<X> as adapton::collections::ListElim<X>>::elim_arg
   8: adapton::collections::tree_of_list_rec
   9: adapton::collections::tree_of_list_rec::{{closure}}
  10: <adapton::collections::List<X> as adapton::collections::ListElim<X>>::elim_arg
  11: adapton::collections::tree_of_list_rec
  12: adapton::collections::tree_of_list_rec::{{closure}}::{{closure}}
  13: <adapton::engine::App<Arg, Spurious, Res> as adapton::engine::Producer<Res>>::produce
  14: adapton::engine::loc_produce
  15: adapton::engine::clean_comp
  16: <adapton::engine::ForceDep<Res> as adapton::engine::DCGDep>::clean
  17: <adapton::engine::DCG as adapton::engine::Adapton>::force
  18: adapton::engine::force::{{closure}}
  19: <std::thread::local::LocalKey<T>>::with
  20: adapton::engine::force
  21: adapton::collections::tree_of_list_rec::{{closure}}
  22: <adapton::collections::List<X> as adapton::collections::ListElim<X>>::elim_arg
  23: adapton::collections::tree_of_list_rec
  24: adapton::collections::tree_of_list_rec::{{closure}}
  25: <adapton::collections::List<X> as adapton::collections::ListElim<X>>::elim_arg
  26: adapton::collections::tree_of_list_rec
  27: adapton::collections::tree_of_list_rec::{{closure}}::{{closure}}
  28: <adapton::engine::App<Arg, Spurious, Res> as adapton::engine::Producer<Res>>::produce
  29: adapton::engine::loc_produce
  30: <adapton::engine::DCG as adapton::engine::Adapton>::force
  31: adapton::engine::force::{{closure}}
  32: <std::thread::local::LocalKey<T>>::with
  33: adapton::engine::force
  34: adapton::collections::tree_of_list_rec::{{closure}}
  35: <adapton::collections::List<X> as adapton::collections::ListElim<X>>::elim_arg
  36: adapton::collections::tree_of_list_rec
  37: adapton::collections::tree_of_list_rec::{{closure}}
  38: <adapton::collections::List<X> as adapton::collections::ListElim<X>>::elim_arg
  39: adapton::collections::tree_of_list_rec
  40: adapton::collections::tree_of_list_rec::{{closure}}::{{closure}}
  41: <adapton::engine::App<Arg, Spurious, Res> as adapton::engine::Producer<Res>>::produce
  42: adapton::engine::loc_produce
  43: adapton::engine::clean_comp
  44: <adapton::engine::ForceDep<Res> as adapton::engine::DCGDep>::clean
  45: adapton::engine::clean_comp
  46: <adapton::engine::ForceDep<Res> as adapton::engine::DCGDep>::clean
  47: <adapton::engine::DCG as adapton::engine::Adapton>::force
  48: adapton::engine::force::{{closure}}
  49: <std::thread::local::LocalKey<T>>::with
  50: adapton::engine::force
  51: adapton::collections::tree_of_list_rec::{{closure}}
  52: <adapton::collections::List<X> as adapton::collections::ListElim<X>>::elim_arg
  53: adapton::collections::tree_of_list_rec
  54: adapton::collections::tree_of_list
  55: <main::catalog::EagerMergesort1 as adapton_lab::labdef::Compute<adapton::collections::List<usize>, adapton::collections::List<usize>>>::compute::{{closure}}
  56: <adapton::engine::DCG as adapton::engine::Adapton>::ns
  57: adapton::engine::ns::{{closure}}
  58: <std::thread::local::LocalKey<T>>::with
  59: adapton::engine::ns
  60: <main::catalog::EagerMergesort1 as adapton_lab::labdef::Compute<adapton::collections::List<usize>, adapton::collections::List<usize>>>::compute
  61: <X as adapton_lab::labdef::ComputeDemand<Input, Output>>::compute
  62: adapton_lab::labrun::get_engine_sample::{{closure}}::{{closure}}
  63: <adapton::engine::DCG as adapton::engine::Adapton>::cnt
  64: adapton::engine::manage::cnt::{{closure}}
  65: <std::thread::local::LocalKey<T>>::with
  66: adapton::engine::manage::cnt
  67: adapton_lab::labrun::get_engine_metrics
  68: adapton_lab::labrun::get_engine_sample::{{closure}}
  69: <adapton::engine::DCG as adapton::engine::Adapton>::ns
  70: adapton::engine::ns::{{closure}}
  71: <std::thread::local::LocalKey<T>>::with
  72: adapton::engine::ns
  73: adapton_lab::labrun::get_engine_sample
  74: <adapton_lab::labrun::LabState<rand::StdRng, Input, EditSt, Output, Editor, Archivist> as adapton_lab::labrun::SampleGen>::sample
  75: adapton_lab::labrun::<impl adapton_lab::labdef::Lab for adapton_lab::labdef::LabDef<Input, EditSt, Output, Editor, Archivist>>::run
  76: main::run_lab
  77: main::run_all_labs
  78: main::main2
  79: main::main::{{closure}}
  80: <std::panic::AssertUnwindSafe<F> as core::ops::FnOnce<()>>::call_once
  81: std::panicking::try::do_call
  82: __rust_maybe_catch_panic
  83: std::panicking::try
  84: std::panic::catch_unwind
  85: std::thread::Builder::spawn::{{closure}}
  86: <F as alloc::boxed::FnBox<A>>::call_box
  87: std::sys::imp::thread::Thread::new::thread_start
  88: _pthread_body
  89: _pthread_start

Labs depends on hard-coded path

Following the example code, I get the following error:

D:\Projekte\adapton-lab.rust>cargo run
    Updating registry `https://github.com/rust-lang/crates.io-index`
error: failed to load source for a dependency on `adapton`

Caused by:
  Unable to update file:///D:/Users/hammer/adapton

Caused by:
  failed to read `D:\Users\hammer\adapton\Cargo.toml`

Caused by:
  Das System kann den angegebenen Pfad nicht finden. (os error 3)

I noticed that this can be dealt with by simply adjusting the Cargo.toml file, but doing that, I get the following error message:

error: file not found for module `reflect`
  --> D:\Projekte\adapton.rust\src\lib.rs:35:9
   |
35 | pub mod reflect ;
   |         ^^^^^^^
   |
   = help: name the file either reflect.rs or reflect/mod.rs inside the directory "D:\\Projekte\\adapton.rust\\src"

error: aborting due to previous error

Build failed, waiting for other jobs to finish...
error: Could not compile `adapton`.

I am using a fresh install of the Rust compiler 1.14 and cargo 0.15.0-nightly on a Windows 10 machine and just pulled both the adapton and adapton lab repositories.

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.