Issue 1:
When using an ES6 import at the babel-node REPL, it fails.

Example sources:

// foo.js
import bar from './bar'
console.log(bar)

// bar.js
exports.baz = 1

babel generates the following code for foo.js:

'use strict';

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

var _bar = require('./bar');

var _bar2 = _interopRequireDefault(_bar);

console.log(_bar2['default']);

Passing the generated code from babel to iojs works fine:

$ babel foo.js | iojs
{ baz: 1 }

If you run the same module by hand at the REPL, or pipe it in, it fails:

$ cat foo.js | babel-node
> import bar from './bar'
'use strict'
> console.log(bar)
repl:3
console.log(bar);
^
ReferenceError: bar is not defined
at repl:3:13
at Object.exports.runInThisContext (vm.js:54:17)
at _eval (/home/tomxtobin/npm/lib/node_modules/babel/bin/_babel-node:54:13)
at REPLServer.replEval (/home/tomxtobin/npm/lib/node_modules/babel/bin/_babel-node:136:14)
at bound (domain.js:254:14)
at REPLServer.runBound [as eval] (domain.js:267:12)
at REPLServer.<anonymous> (repl.js:309:12)
at emitOne (events.js:77:13)
at REPLServer.emit (events.js:166:7)
at REPLServer.Interface._onLine (readline.js:208:10)

But if you pass the file as an argument to babel-node it works fine:

$ babel-node foo.js
{ bar: 1 }

If you keep everything in the REPL on the same line, it also works fine:

> import bar from './bar'; console.log(bar)
{ baz: 1 }
undefined

Versions:

$ babel --version
5.2.16
$ iojs --version
v2.0.0

Issue 2:
This used to work for me in 4.x, but since updating it doesn't seem like import works interactively any more.

[chris /tmp/aaa]$ npm i kefir
kefir@1.3.1 node_modules/kefir
[chris /tmp/aaa]$ babel-node --version
5.1.9
[chris /tmp/aaa]$ babel-node
> import Kefir from 'kefir';
'use strict'
> Kefir
ReferenceError: Kefir is not defined
at [object Object]:3:1
at _eval (/usr/local/lib/node_modules/babel/bin/_babel-node:54:13)
at REPLServer.replEval [as eval] (/usr/local/lib/node_modules/babel/bin/_babel-node:136:14)
at Interface.<anonymous> (repl.js:239:12)
at Interface.emit (events.js:95:17)
at Interface._onLine (readline.js:203:10)
at Interface._line (readline.js:532:8)
at Interface._ttyWrite (readline.js:761:14)
at ReadStream.onkeypress (readline.js:100:10)
at ReadStream.emit (events.js:98:17)
> [chris /tmp/aaa]$
[chris /tmp/aaa]$ echo "import Kefir from 'kefir'; console.log(Kefir);"|babel-node
> import Kefir from 'kefir'; console.log(Kefir);
{ DEPRECATION_WARNINGS: true,
Observable: [Function: Observable],
Stream: [Function: Stream],
Property: [Function: Property],
withInterval: [Function],
fromPoll: [Function],
interval: [Function],
sequentially: [Function],
repeatedly: [Function],
later: [Function],
merge: [Function],
concat: [Function],
Pool: [Function: Pool],
pool: [Function],
Bus: [Function: Bus],
bus: [Function],
zip: [Function],
combine: [Function],
sampledBy: [Function],
fromBinder: [Function],
emitter: [Function],
Emitter: [Function: Emitter],
never: [Function],
constant: [Function],
constantError: [Function],
repeat: [Function],
and: [Function],
or: [Function],
fromCallback: [Function],
fromNodeCallback: [Function],
fromPromise: [Function],
fromSubUnsub: [Function],
fromEvent: [Function],
Kefir: [Circular] }
undefined
> [chris /tmp/aaa]$