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

J-expressions make Javascript the acceptable Lisp

Name: Anonymous 2016-11-25 13:12

The consistent implementation of key enumeration order of objects in Javascript engines allows us to write specifications of composeable computations using generic JSON-serializable notation that we can call “J-expressions”.

{opname: main_parameter,
keyword1: value1,
keyword2: value2,
...}


J-expressions, in combination with functions that implement what the operation named opname is supposed to do, are then a systematic way to approach DSL construction within Javascript. The notation is as expressive as s-expressions.

Name: Anonymous 2016-12-04 13:11

>>39
And if you haven't heard that Smalltalk or Common Lisp are image-based, if the only concept of OOP you have is the statically-compiled crap, well.. then you have no idea of OOP, congratulations!

Name: Anonymous 2016-12-04 15:17

If the supposedly true OOP is about adding methods and members to objects during runtime for no fucking reason, I'd rather stay with COP and actually know what each object has.

Name: Anonymous 2016-12-04 15:36

>>42
That's because you're a static bitch who can't handle dynamicity.

Name: Anonymous 2016-12-04 21:36

>>42
That's fine today, but what about when you want to send similar, but different, objects through your old programs?

Name: Anonymous 2016-12-04 23:41

>>40
You're an authority on OOP based on what qualification? Have you written a textbook or otherwise taught a lecture about this in an accredited course?

Name: Anonymous 2016-12-05 0:07

You're an authority on OOP based on what qualification? Have you written a textbook or otherwise taught a lecture about this in an accredited course?
authority
kek
Authority is a useless concept.

Name: Anonymous 2016-12-05 1:16

>>46
Authority is earned based on either pioneering work that advances the state of art.

Name: Anonymous 2016-12-05 9:32

The Nazis gassed the jews in parallel.

Name: Anonymous 2016-12-05 11:26

authority is a spook

Name: Anonymous 2016-12-05 11:38

there's nothing in the definition of OOP that necessitates it being either static or dynamic. classes and prototypes are different interpretations of the same paradigm which in turn makes class-based languages different from prototype-based ones but at a higher level of abstraction, the underlying concepts and goals are similar.

Name: Anonymous 2016-12-05 13:41

>>50
Who chose you to define OOP?

Name: Anonymous 2016-12-05 13:53

>>51
I chose myself recursively

Name: Anonymous 2016-12-05 15:33

>>51
A call to cddaddar was associated with me.

Name: Anonymous 2016-12-05 16:30

JavaScript won't be an acceptable Lisp until it gets TCO and bignums.

Name: Anonymous 2016-12-05 18:32

>>54
Check my dubblers, Lisp weenie.

Name: Anonymous 2016-12-05 18:54

>>54
TCO
But this is an implementation detail.

Name: Anonymous 2016-12-05 19:32

>>56
Bounded vs unbounded recursion depth is not an ``implementation detail".

Name: Anonymous 2016-12-05 22:04

unbound my anus

Name: Anonymous 2016-12-06 1:57

>>58
e/prog/in ANUS meme, /prog/ro!

Name: Anonymous 2016-12-06 8:52

>>33
XML can represent any tree structure so obviously it can represent any Lisp program. this doesn't mean XML makes Java the acceptable Lisp. with some creative thinking, you can also use it to represent programs in other languages:

<preprocessor>
<include>stdio.h</include>
<define name="ANUS">10</define>
</preprocessor>

<function name="enterprise" ret="void">
<declare type="int">i</declare>
<for>
<init>i = 0</init>
<condition>i &lt; ANUS</condition>
<increment>i++</increment>
<loop-body>
<function-call name="printf" arg1="XML makes Java the acceptable C \n" />
</loop-body>
</for>
</function>

<function name="main" ret="int" arg1="argc" arg1-type="int" arg2="argv" arg2-type="char**">
<function-call name="enterprise" />
<return>0</return>
</function>


or maybe this:

<class name="Main">
<public>
<constructor>
<var class = "ConcreteEnterpriseFactory">
<name>x</name>
<assign>new /org/progrider/bbs/ConcreteEnterpriseFactory</assign>
</var>
<call-method>
x/build/haxMyAnus
</call-method>
</constructor>
</public>
</class>

<class name="AbstractEnterpriseFactory">
<public>
<method name="build" ret="EnterpriseInterface">
<return>/org/progrider/bbs/AbstractEnterpriseFactory/build_internal</return>
</method>
</public>
<private>
<method name="build_internal">
<return />
</method>
</private>
</class>

<class name="ConcreteEnterpriseFactory" extends="AsbtractEnterpriseFactory">
<private>
<method name="build_internal" ret="EnterpriseInterface">
<return>
<new>/org/progrider/bbs/EnterpriseClass</new>
</return>
</method>
</private>
</class>

<class name="EnterpriseInterface">
<public>
<static>
<method name="haxMyAnus" ret="void" />
</static>
</public>
</class>

<class name="EnterpriseClass" implements="EnterpriseInterface">
<public>
<constructor>
<assign value="XML makes Java the acceptable Java">enterprise-variable</assign>
</constructor>
<static>
<method name="haxMyAnus" ret="void" />
<call-method arg1=etnerprise-variable>/System/out/println</call-method>
</method>
</static>
</public>
<private>
<slot class="String">
<name>enterprise-variable</name>
</slot>
</private>
</class>


this doesn't make it any less horrible though. just because you can doesn't mean you should

Name: Anonymous 2016-12-07 0:21

>>60 proves it. XML is more powerful than LISP

Name: Anonymous 2016-12-07 7:49

>>61
you could write the same thing with s-expressions.

IHBT

Name: Anonymous 2016-12-07 12:53

>>62
Sexpressions do not support tags.

Name: Anonymous 2016-12-07 12:55

>>63
tags are syntactic sugar

Name: Anonymous 2016-12-07 23:00

*grabs anus*

Name: Anonymous 2016-12-08 1:15

(check 'dubs)

Name: Anonymous 2016-12-08 7:47

>>66
nice!

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