Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Language ShowOff Part #1: Lua

Name: Anonymous 2011-01-21 19:45

Pros:
   * Tiny
   * Crossplatform
   * Easy to embed
   * Fairly easy to extend
   * Has no external dependencies
   * Easy to learn due to simple syntax
   * Has metatables, which allow creating objects, and with that, allow OOP

Contra:
   * The builtin stdlib doesn't allow much more than just basic IO
   * The stackoriented API might be confusing to those unfamiliar with the concept of stackbased APIs
   * Due to the do ... end syntax, closures and co tend to look clumsy:
   
       pcall(function()
           stuff ...
       end)

Name: Anonymous 2011-01-21 19:48

(lisp-p >>1)
nil


No one cares.

Name: Anonymous 2011-01-21 19:49

>>2
*lispp

Name: Anonymous 2011-01-21 19:58

>>3
*lis?

Name: Anonymous 2011-01-21 20:00

>>1
Lua metatables suck shit, the tables-as-the-base-datastructure would have worked fine if it wasn't for how shitty they are. The semantics are so close to be Lispy, yet so far ;_;. Lua's failure makes me sad and angry. If only...

Name: Anonymous 2011-01-21 20:03

>>5
Shitty because of the syntax? Please explain.

Name: Anonymous 2011-01-21 20:07

>>4
*((compose lisp? scheme? (negate clojure?)) >>1)

Name: Anonymous 2011-01-21 20:07

>>5
That's my only real complaint about Lua. Enough to make me avoid it, too.

Name: Anonymous 2011-01-21 20:09

>>5
Tcl is the most lispier non-lisp language out there. Too bad it sucks self-ordinating binary O(logn) black-red dicks tree.

Name: Anonymous 2011-01-21 20:20

I HATE LUA. It really isn't “lightweight” like it says. Isn't there a Forth-like lightweight scripting language?

Name: Anonymous 2011-01-21 20:24

>>10
A Lisp macro on [ that read that stops at ] and reverses it.
[1 2 +] => (+ 2 1)

Name: Anonymous 2011-01-21 20:35

>>10
Yeah. Forth.

Name: Anonymous 2011-01-21 20:39

hair back whip

I whip my hair back in Forth

Name: Anonymous 2011-01-22 0:13

Lua: no integers allowed

Name: Anonymous 2011-01-22 1:27

>>14
How does that work?

Name: Anonymous 2011-01-22 3:47

Their scoping rules are broken. "Global by default" is shit. All code looks like

local local local local local
local local local local local
local local local local local local local local
local local local local
local local local local local local local local local local
local local local

Name: Anonymous 2011-01-22 5:10

>>15
It says integers.
You're allowed to have one integer.

Name: Anonymous 2011-01-22 5:25

Alright, fuck all you'all. Check out Luajit beta 2. Faster than your dynamic language o'choice. and now with an awesome ffi.
"faggots"

Name: Anonymous 2011-01-22 6:41

TCL is extremely minimal, concise and consistent.  It supports Unicod and treats code as data (strings).

Name: Anonymous 2011-01-22 6:48

>>19
see >>9

Name: Anonymous 2011-01-22 8:05

>>11
fickle ficl

Name: Anonymous 2011-01-22 8:27

>>18
Call me when Lua has a standard library on par with (Python|Ruby|Perl)'s, you lowly spammer you.

Name: Anonymous 2011-01-22 8:38

Call me when Lua has OPERATOR FOR EVERYTHING

Name: Anonymous 2011-01-22 8:46

>>23
ARE YOU an operator?
ARE YOU for everything?
ARE YOU an operator for everything?
If you answered ``Yes'' to all the above, Perl 6 might be exactly what you've looking for!

Name: Anonymous 2011-01-22 9:01

>>16
(let (let (let (let (let

Name: Anonymous 2011-01-22 9:07

>>25
That's not nearly as ugly when you're not stuck w/ S-exprs:

let ... in
let ... in
let ... in
code ...;;

Name: Anonymous 2011-01-22 9:09

>>25
(let*

Name: Anonymous 2011-01-22 9:12

>>26
;;
;_;

Name: Anonymous 2011-01-22 9:26

>>26
You're that guy who took away most of parens from Lisp and still claims it's a Lisp while hardheadedly refusing to make his reader macros public?

Fuck off.

Name: Anonymous 2011-01-22 9:46

>>29
I call him the ``\`\`in Lisp\'\' guy''.

Name: >>26 2011-01-22 11:57

>>29
No... that's not me... and that's not Lisp. You might want to look into ML or something.

Name: Anonymous 2011-01-22 12:59

>>31
...
...

...

Name: noko 2011-01-22 14:42

noko

Name: Anonymous 2011-01-22 16:14

I prefer Squirrel to Lua, it uses C-like braces instead of end, it has OO instead of the cludgy OO in Lua. The only thing I dont like in Squirrel and Lua is having to explicitly declare variables as local. I'll stick to Python and Ruby thank you.

Name: Anonymous 2011-01-22 17:18

Aye Tee Tee: toy languages.

Name: Anonymous 2011-01-22 17:37

>>34
The only reason OO is kludgy in Lua is because metatables are utterly broken. As for declaring variables as local manually, that's a great indicator of a sane language (though it doesn't apply to C++ and Java).

>>35
Fuck off, troll.

Name: Anonymous 2011-01-22 19:42

>>30
Can I call you the \\\\\`\\\\\`magic quotes guy\\\\\'\\\\\'?

Name: Anonymous 2011-01-22 20:29

>>37
Call me the ``\`\`\\\`\\\`\\\'\\\\\\\`\\\\\\\`\\\\\\\\\\\\\\`\\\\\\\\\\\\\\`in Lisp\\\\\\\\\\\\\\'\\\\\\\\\\\\\\' guy\\\\\\\'\\\\\\\'\\\'\'\'''

Name: Anonymous 2011-01-22 20:30

>>36
Is there a summary somewhere of what is wrong with Lua metatables?  Do you mean the particular implementation details in Lua, or the general concept?

Name: Anonymous 2011-01-22 20:35

>>39
Do you mean the particular implementation details in Lua, or the general concept?
Both. There are things you can override in metatables, and there are things you can't. That's really bad.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List