►
From YouTube: Lightning Talk - Quantum BogoSort — Jason Orendorff
Description
No description was provided for this meeting.
If this is YOUR meeting, an easy way to fix this is to add a description to your video, wherever mtngs.io found it (probably YouTube).
A
So
I
wrote
a
scheme
and
Russ
I've
never
done
a
lightning
talk
with
live
coding
in
it
before
so
I'm
just
gonna
dive
right
into
it.
This
is
this
is
scheme
it's
a
language
and
has
lots
of
parentheses
in
it
and
I
have
this
file
Amba
dot
scheme,
which
is
like
ten
lines
of
scheme?
And
you
call
this
function
amp
and
it's
cut
off,
so
you
can't
see
what
that
is
doing.
A
A
There
we
go
yeah,
so
you
call
em
and
give
it
some
arguments
and,
as
you
can
see,
it
just
returns.
The
first
argument
right.
So
if
I
define
a
variable
and
call
it
with
a
bunch
of
arguments,
then
the
value
of
the
variable
is
whatever
and
then,
if
there's
another
there's
another
function
in
this
in
this
library
called
require.
So
if
we
require
X
to
be
greater
than
2,
then
the
value
of
x
is
3,
got
it.
A
A
Alright,
then
I
could
say
all
right:
make
exit
digit
and
make
Y
be
a
digit,
and
then
we've
got
these
two
numbers
right
and
then,
if
I
require
that
the
product
of
x
and
y
be
equal
to
like
24,
then
that
happens
right
and
then,
if
I
require
X
to
be
greater
than
Y,
then
that
happens
right.
You
get
the
idea,
okay,
cool!
So.
A
So,
to
explain
how
this
works,
I
need
to
talk
a
little
bit
about
quantum
bogus
or
it,
which
is
this
algorithm.
It's
not
an
algorithm.
You
would
run
on
a
quantum
computer.
Instead,
it
like
uses
the
many-worlds
interpretation
of
quantum
mechanics
to
like
make
a
better
sorting
algorithm
one.
You
take
the
list
of
values
that
you
want
to
sort
and
you
just
like
shuffle
them
randomly
which
divides
the
universe
into
of
in
factorial
universes,
that's
just
a
thing
to
happen,
and
then,
if
the
list
is
not
sorted,
you
destroy
the
universe.
A
Okay,
so
so
the
other
thing
you
need
to
understand
is
continuations
I.
Think
I
have
like
two
minutes
left
the
continuation.
Is
it's
so
scheme
alright.
So
when
you
capture
the
continuation
of
your
program,
it's
like
taking
a
snapshot
of
your
stack.
Alright,
so
you
think
of
the
stack
is
the
call
chain
like
how
did
we
get
here?
But
what
the
stack
really
is.
Is
it's
the
future
of
your
program?
It's
what
happens
after
the
current
function
returns.
A
Where
is
it
going
next
right
and
then,
after
that
and
after
that,
the
continuation
of
your
program
right
so
the
stack
or
the
future?
That's
what
a
continuation
isn't
scheme
and
scheme
just
has
a
just
a
built-in
function
that
grabs
that
and
it's
useful
for
things
like
breaking
out
of
a
loop
or
implementing
exceptions,
because
in
you
know,
in
a
language
it
doesn't
have
syntax
or
like
keywords
right
and
that's
a
that's
an
you
have
to
do
that
somehow
and
you
they
do
it
they
can.
You
can
do
it
with
continuations.
A
This
is
too
powerful
to
actually
be
useful
in
practice,
because
it's
just
like
too
mind-bending
to
use
correctly,
but
it
coupled
with
the
ability
to
destroy
the
universe.
It
is
a
lot
of
fun.
So
now
I
have
to
explain
in
one
minute
how
this
actually
works
without
speaker,
nuts.
So
basically
the
amp
function
splits
the
universe
into
many
universes.
It
creates
one
universe
for
each
argument
that
you
pass
to
it
and
then
the
require
function.
A
It
just
takes
a
boolean
right,
any
boolean
value
right
and
if
that
boolean
is
false,
destroys
the
universe,
and
it
does
that
right
by
invoking
a
previously
captured
continuation
right,
which
which
which
basically
just
like
clobbers
the
current
state
of
the
program
and
replaces
it
with
the
previously
captured,
continue.
If
you
like
to
jump
back
in
time
and
you
redo
it
and
then
the
rest
of
it
is
just
this
like
crazily
hairy
custom
hand
coded
repple
that
uses
stupid,
vt100
escape
sequences
to
like
go
back
and
erase
every
you
didn't
mean
time.
A
So
if
you
have
a
terribly
important
and
practical
use
for
this,
please
be
careful,
because
if
there's
a
bug-
and
there
are
actually
no
solutions
to
your
problem,
you
will
destroy
all
the
universes.
We
don't
want
that,
but
here's
where
you
can
find
the
source
code
and
if
you
wanna
know
more
about,
am
but
or
more
about
schema
general.
This
is
the
book
to
grab.
It
gets
like
kind
of
philosophical
is
nice
that
way,
and
it's
got
a
lot
of
beautiful
stuff
in
it
that
I'd
had
forgotten.
Was
there
okay.